📄 compute_total_variation.m
字号:
function TV = compute_total_variation(y, options)% compute_total_variation - compute the total variation of an image%% TV = compute_total_variation(y, options);%% See also: perform_tv_projection, grad, div.%% Copyright (c) 2007 Gabriel Peyreoptions.null = 0;nbdims = 2;if size(y,1)==1 || size(y,2)==1 nbdims = 1;endif size(y,1)>1 && size(y,2)>1 && size(y,3)>1 nbdims = 3;endif nbdims==1 TV = sum( abs(diff(y)) ); return;endweight_tv = getoptions(options, 'weight_tv', ones(size(y)) );tv_norm = getoptions(options,'tv_norm', 'l2');% options.bound = 'per';g = grad(y, options);switch tv_norm case 'l2' TV = sqrt( sum(g.^2,nbdims+1) ); case 'l1' TV = sum( abs(g),nbdims+1); case 'linf' TV = max( abs(g),[],nbdims+1); otherwise error('Unknown norm.');endTV = TV .* weight_tv;TV = sum(TV(:));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -