Matlab底层源代码实现Halcon scale_image_range(可用于背景分割)

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效果
Matlab底层源代码实现Halcon scale_image_range(可用于背景分割)_第1张图片
Halcon实现效果
Matlab底层源代码实现Halcon scale_image_range(可用于背景分割)_第2张图片

你可能感兴趣的:(matlab,matlab,图像处理,开发语言)