在我们编写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)
本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:


