f就是你导入的rgb图片。
首先按照上面的代码建立一个.m文件,将文件存盘,命名为 colorgrad.m
然后在matlab命令窗口输入如下命令:
>>f=imread('test.jpg') %这里的test.jpg是图片文件名
>> [VG,A,PPT]=colorgrad(f,0)
>>figure; imshow(PPT);
function [VG,A,PPG]=colorgrad(f,T)
%COLORGRAD Computes the vector gradient of an RGB image.
% [VG,VA,PPG]=COLORGRAD(F,T) computes the vector gradient,VG,
% and corresponding angle array,VA,(in radians) of RGB image
% F.It also computes PPG,the per-plane composite gradient
% obtained by summing the 2-D gradients of the individual color
% planes.Input T is a threshold in the range [0,1].If it is
% included in the argument list,the values of VG and PPG are
% threshoulded by letting VG(x,y)=0 for values <= T and VG(x,y)=
% VG(x,y) otherwise.Similar comments apply to PPG.If T is not
% included in the argument list then T is set to 0.Both output
% gradients are scaled to the range [0,1].
if (ndims(f) ~= 3) | (size(f, 3) ~= 3)
error('Input image must be RGB.');