Halcon创建模板并进行模板匹配

在进行图像处理时,很多时候创建模板并通过匹配模板进行图像基准点的分析能大大提高ROI的选取准确度和效率。

下面通过实例来讲述模板匹配的快速学习应用。

 

首先创建模板

先读取图像,对读取的图像创建模板并保存,创建模板要挑选的是所有图像都存在的特征或区域以保证在实际处理时程序都能够正常进行图像分析处理。

Halcon中以draw开头的算子都是需要人在图像上手动绘制,

代码如下:

*读取图像
read_image (Image, 'H:/NEW IMAGE/21.tiff')
*在图像上手动绘制ROI,即选择绘制的模板区域
draw_rectangle1 (WindowHandle, Row1, Column1, Row2, Column2)
*将绘制的模板区域生成矩形
gen_rectangle1 (Rectangle, Row1, Column1, Row2, Column2)
*提取出区域的图像,作为模板图像
reduce_domain (Image, Rectangle, ImageReduced1)
*创建模板
create_shape_model (ImageReduced1, 'auto', -0.39, 0.79, 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
*将创建的模板存成指定路径的文件
write_shape_model (ModelID, 'E:/modle1.shm')

模板创建完后下面的处理程序只需要上面代码最后保存的那个模板文件,代码如下:

*读取图像
read_image (Image1, 'H:/NEW IMAGE/13.tiff')
*读取模板文件
read_shape_model ('E:/modle1.shm', ModelID1)
*在图像中查找模板,并返回模板的中心坐标
find_shape_model (Image1, ModelID1, -0.39, 0.78, 0.5, 1, 0.5, 'least_squares', 0, 0.9, Row1, Column1, Angle1, Score1)
*匹配到模板
if(|Row1|>=1)
*在图像中显示模板
    dev_display_shape_matching_results (ModelID1, 'red', Row1, Column1, Angle1, 1, 1, 0)
endif

以上就是简单的模板创建以及模板匹配,希望对大家有所帮助,谢谢。

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值