⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 steer.m

📁 matlab的steel金字塔小波分解源代码
💻 M
字号:
% RES = STEER(BASIS, ANGLE, HARMONICS, STEERMTX)%% Steer BASIS to the specfied ANGLE.  % % BASIS should be a matrix whose columns are vectorized rotated copies of a % steerable function, or the responses of a set of steerable filters.% % ANGLE can be a scalar, or a column vector the size of the basis.% % HARMONICS (optional, default is N even or odd low frequencies, as for % derivative filters) should be a list of harmonic numbers indicating% the angular harmonic content of the basis.% % STEERMTX (optional, default assumes cosine phase harmonic components,% and filter positions at 2pi*n/N) should be a matrix which maps% the filters onto Fourier series components (ordered [cos0 cos1 sin1 % cos2 sin2 ... sinN]).  See steer2HarmMtx.m% Eero Simoncelli, 7/96.function res = steer(basis,angle,harmonics,steermtx)num = size(basis,2);if ( any(size(angle) ~= [size(basis,1) 1]) & any(size(angle) ~= [1 1]) )  error('ANGLE must be a scalar, or a column vector the size of the basis elements');end%% If HARMONICS are not passed, assume derivatives.if (exist('harmonics') ~= 1)  if (mod(num,2) == 0)    harmonics = [0:(num/2)-1]'*2 + 1;  else    harmonics = [0:(num-1)/2]'*2;  endelse  harmonics = harmonics(:);  if ((2*size(harmonics,1)-any(harmonics == 0)) ~= num)    error('harmonics list is incompatible with basis size');  endend%% If STEERMTX not passed, assume evenly distributed cosine-phase filters:if (exist('steermtx') ~= 1)  steermtx = steer2HarmMtx(harmonics, pi*[0:num-1]/num, 'even');endsteervect = zeros(size(angle,1),num);arg = angle * harmonics(find(harmonics~=0))';if (all(harmonics))	steervect(:, 1:2:num) = cos(arg);	steervect(:, 2:2:num) = sin(arg);else	steervect(:, 1) = ones(size(arg,1),1);	steervect(:, 2:2:num) = cos(arg);	steervect(:, 3:2:num) = sin(arg);endsteervect = steervect * steermtx;if (size(steervect,1) > 1)	tmp = basis' .* steervect';	res = sum(tmp)';else	res = basis * steervect';end		

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -