1 简介 水果分级技术能够保证水果的质量,提高消费者的满意度,增强水果产业的竞争力和利润水平。农业现代化进程的加快使得农产品品质检测和分级技术显得更加重要。在我国,水果品
1 简介
水果分级技术能够保证水果的质量,提高消费者的满意度,增强水果产业的竞争力和利润水平。农业现代化进程的加快使得农产品品质检测和分级技术显得更加重要。在我国,水果品质检测绝大部分仍停留在靠人工感官进行识别判断的原始阶段,这种主观评定效率低,误差大。这导致了我国出口水果的外观质量较差,良莠不齐,大小不一,在国际市场上缺乏竞争力,提高我国水果的品质检测水平是当务之急。与其它检测技术相比,计算机视觉技术的特点是速度高、信息量大、功能多,而且可以测量定量指标。
2 部分代码
function [ImageOut] = HomoFilter(ImageIn, High, Low, C, Sigma)Img = double(ImageIn); % 转换图像矩阵为双精度型,不会改变数据本身
[Height, Width] = size(ImageIn); % 返回的行数和列数
CenterX = floor(Width / 2); % 中心点坐标
CenterY = floor(Height / 2);
LogImg = log(Img + 1); % 图像对数数据
Log_FFT = fft2(LogImg); % 傅里叶变换
for Y = 1 : Height
for X = 1 : Width
Dist= (X - CenterX) * (X - CenterX) + (Y - CenterY) * (Y - CenterY); % 点(X,Y)到频率平面原点的距离
H(Y, X)=(High - Low) * (1 - exp(-C * (Dist / (2 * Sigma * Sigma)))) + Low; % 同态滤波器函数
end
end
H = ifftshift(H); % 对H做反中心化
Log_FFT = H.* Log_FFT; % 滤波,矩阵点乘
Log_FFT = ifft2(Log_FFT); % 反傅立叶变换
Out = exp(Log_FFT)-1; % 取指数
% 指数处理ge = exp(g)-1;% 归一化到[0, L-1]
Max = max(Out(:));
Min = min(Out(:));
Range = Max - Min;
for Y = 1 : Height
for X = 1 : Width
ImageOut(Y, X) = uint8(255 * (Out(Y, X) - Min) / Range);
end
end
end
3 仿真结果
4 参考文献
[1]彭良刚, 吴有富. 一种基于计算机视觉的水果质量识别系统[C]// 2013.