grayI=rgb2gray(I);
[COUNT, x]=imhist(grayI);
under_50=0;
for i=0:50
under_50=under_50+COUNT(x==i);
end
under_50
total= size(1,1)*size (1,2)*size (1,3);
percent=under_50/total
if(percent>0.1)
w0 = 0.95;
else if(percent<0.001)
w0=0.95;
else if (percent>0.05)
w0=0.3;
else
w0=0.95;
end
end
end
这段话matlab里的每句翻译是什么?我看不懂。。
grayI=rgb2gray(I); %%将真彩色图像I转换为灰度强度图像grayI
[COUNT, x]=imhist(grayI); %% 该函数用于获取图像数据直方图,imhist(I,n)其中,I为灰度的输入图像,n为指定的灰度级数目,缺省值为256;
%%COUNT和x分别为返回直方图数据向量和相应的彩色向量。
under_50=0; %%定义一个变量
for i=0:50 %%i从0递增到50
under_50=under_50+COUNT(x==i); %%用under_50保存COUNT数组元素之和
end
under_50 %%输出under_50的值
total= size(1,1)*size (1,2)*size (1,3); %% size(A,dim) 当dim:1 时,表示返回行数;当dim:2时,表示返回列数;当dim:3时,表示返回页数。假设A为三维矩阵:2*3*4,那么size(A,1)=2,size(A,2)=3,size(A,3)=4。
percent=under_50/total
if(percent>0.1) %%r如果percent大于0.1,令w=0.95
w0 = 0.95;
else if(percent<0.001) %%r如果percent小于0.001,令w=0.95
w0=0.95;
else if (percent>0.05) %%r因为percent>0.1的话会执行第一个if下的语句,所以该条件应该理解为percent大于0.05且percent<0.1时,令w=0.3
w0=0.3;
else %%不满足以上条件时,令w=0.95
w0=0.95;
end
end
end