halcon学习之图像相减算子sub_image

在我们编写halcon程序中可能常会用到图像相减算子sub_image,例如在做高斯高通滤波的时候,最后的结果是要用原图像减去滤波后的图像才能得到锐化图像。该算子的参数形式如下:

sub_image(ImageMinuend , ImageSubtrahend : ImageSub : Mult , Add :)

第一个参数是被减图像,第二个参数是减数图像,第三个参数是结果图像,第四个参数是乘数因子,第五个参数是灰度补充值

算子可以用以下计算式子表达:

ImageSub =( ImageMinuend - ImageSubtrahend ) *Mult + Add

之所以乘以Mult是要拉大两幅图像相减后的对比度,加上一个Add是为了增加相减后的图像的整体亮度。

例子:

dev_close_window()
read_image(Image1,'fabrik')
get_image_size(Image1,width,height)
dev_open_window(0,0,width/1.2,height/1.2,'black',windowhandle)
dev_display(Image1)
dev_open_window(height/1.2, 0, width/1.2, height/1.2, 'black', WindowHandle1)
dev_open_window(0, width/1.2, width/1.2, height/1.2, 'black', WindowHandle2)
dev_set_window(WindowHandle1)
read_image(Image2, 'monKey')
dev_set_window(WindowHandle2)
*两幅图像相减乘以2拉大对比度,加上10提高整体亮度
sub_image(Image1, Image2, ImageSub, 2.0, 10.0)

你可能感兴趣的:(Halcon,halcon,sub_image,图像相减方法,机器视觉)