function [ obj, X1 ] = BTV( X0,Y,stepLength,lambda,P,a)
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
X0 = double(X0);
Y = double(Y);
BTV_term = 0;
dBTV = zeros(size(X0,1),size(X0,2),'double');
for i=-P:P
for j=0:P
if(i+j >= 0)
Xshift = circshift(X0,[j,i]);
BTV_term = BTV_term + power(a,abs(i)+abs(j))*sum(sum(abs(X0-Xshift)));
Xsign = sign(X0 - Xshift);
dBTV_temp = Xsign;
dBTV_temp = dBTV_temp - circshift(Xsign,[-j,-i]);
dBTV = dBTV + power(a,abs(i)+abs(j))*dBTV_temp;
end
end
end
obj = sum(sum((Y-X0).*(Y-X0)))/2;
obj = obj + lambda * BTV_term;
X1 = X0 - stepLength*((X0 - Y) + lambda*dBTV);
%X1 = X0 - stepLength*lambda*dBTV;
end
test_TV.rar_TV_去高斯噪声_高斯噪声
版权申诉
35 浏览量
2022-09-23
04:20:31
上传
评论
收藏 47KB RAR 举报
小波思基
- 粉丝: 72
- 资源: 1万+
最新资源
- 以简单、易用、高性能为目标、开源的时序数据库,支持Linux及Windows, Time Series Database.zip
- python-leetcode面试题解之第198题打家劫舍-题解.zip
- python-leetcode面试题解之第191题位1的个数-题解.zip
- python-leetcode面试题解之第186题反转字符串中的单词II-题解.zip
- 一个基于python的web后端高性能开发框架,下载可用
- python-leetcode面试题解之第179题最大数-题解.zip
- python-leetcode面试题解之第170题两数之和III数据结构设计-题解.zip
- python-leetcode面试题解之第168题Excel表列名称-题解.zip
- python-leetcode面试题解之第167题两数之和II输入有序数组-题解.zip
- python-leetcode面试题解之第166题分数到小数-题解.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈