matlab源代码实现halcon中scale_image_range算子,此算子常见于图像的预处理功能,可用于将图像的背景与前景的对比度增加,有利于下一步图像阈值分割。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%scale_image_range
%Author:Zhu
%时间:2022.6
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
image = imread("F:\\fabrik.png");
image_matrix=image(:,:,1);
image_matrix=double(image_matrix);
[height,width,channels]=size(image);
image_out = zeros(height,width);
lowValue = 10;
highValue = 70;
for i=1:height
for j=1:width
if(image_matrix(i,j)<lowValue)
image_out(i,j) = 0;
elseif(image_matrix(i,j)>highValue)
image_out(i,j) = 255;
else
image_out(i,j)=(image_matrix(i,j)-lowValue)*255/(highValue-lowValue);
end
end
end
%显示图像
image_out = uint8(image_out);
subplot(1,2,1);
imshow(image);
subplot(1,2,2);
imshow(image_out);
Halcon算子
scale_image_range (Image, ImageScaled, 10, 70)
实现效果
Matlab效果
Halcon实现效果