【Halcon图像】NCC模板匹配

        图像匹配是通过对图像内容,特征,结构,纹理,灰度等的对应关系,进行相似性和一致性的分析,寻求相似图像目标的方法。

        机器视觉的图像匹配,通常先确定目标,在某张样图中选择目标作为模板,然后在待匹配的图像中分析,是否有模板相似区,如果有,则进一步确定位姿,因此也被称作模板匹配。

        图像像素的灰度值信息,包含了图像记录的所有信息。基于图案像素灰度值的匹配,是最基本的匹配算法。通常直接利用整幅图像的灰度信息,建立两幅图像之间的相似性度量,然后采用搜索算法寻找相似性度量值最大或最小的变换模型的参数值。

        NCC模板匹配,是典型的基于灰度值匹配的算法,具有不受比例因子误差的影响,和抗干扰抗噪声能力强的优点。

【Halcon图像】NCC模板匹配_第1张图片

        算子:

        create_ncc_model() 创建NCC模板

        find_ncc_model() 搜索NCC模板

        模板:

        【Halcon图像】NCC模板匹配_第2张图片

 

        结果:

【Halcon图像】NCC模板匹配_第3张图片 

*关闭窗口
dev_close_window ()

*打开窗口
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)

*读取图像
read_image (Image, 'printer_chip/printer_chip_01')

*画矩形区域
draw_rectangle1 (WindowHandle, Row1, Column1, Row2, Column2)

*生成矩形区域
gen_rectangle1 (Rectangle, Row1, Column1, Row2, Column2)

*裁剪区域
reduce_domain (Image, Rectangle, ImageReduced)

*创建NCC模板
create_ncc_model (ImageReduced, 'auto', -0.39, 0.79, 'auto', 'use_polarity', ModelID)

*清理窗口
dev_clear_window ()

*读取图像
read_image (Image2, 'printer_chip/printer_chip_01')

*搜索NCC模板
find_ncc_model (Image2, ModelID, -0.39, 0.79, 0.5, 1, 0.5, 'true', 0, Row, Column, Angle, Score)

*显示匹配结果
dev_display_ncc_matching_results (ModelID, 'red', Row, Column, Angle, 0)





【Halcon图像】NCC模板匹配_第4张图片 



 

 

 

 

你可能感兴趣的:(视觉,计算机视觉,opencv,深度学习,图像处理)