|
类型 |
形状模板匹配 | ||||||||||||
|
描述 |
使用单形状模板,在图像img上进行匹配查找 | ||||||||||||
|
语法 |
ZV_SHAPEFIND(model,img,matchs,min_score[,nums=0,min_dist=0,min_thresh=-1,accuracy=3,speed=9,polar=0]) 参数: model:ZVOBJECT类型,形状模板 img:ZVOBJECT类型,待匹配的搜索图像,不能和模板图片1:1等比大小,8U单通道 matchs:ZVOBJECT类型,匹配结果,矩阵类型,n行5列,每行一个匹配目标,列依次为匹配分数score、x坐标、y坐标、旋转角度angle、缩放比例scale min_score:最小匹配分值,(0,100],分值越高匹配的目标越准确,越低容易将非目标当成目标 nums:最大匹配数量,[0, 无穷),当num大于真实目标时,以目标分数从高到低输出所有目标;当num小于真实目标时,以目标分数从高到低输出num个目标;当num为0时,以目标分数从高到低输出所有目标 min_dist:匹配最小距离,表示两目标之间允许存在的最小距离。当minDist小于等于0时内部将选择合适的距离,当minDist小于或等于两目标距离时两个目标将被匹配到,当minDist大于两目标距离时低分值目标,将被删除仅留下高分值目标被匹配到 min_thresh:目标轮廓的最低边缘阈值,minThresh小于零时将使用创建模板时的阈值 accuracy:匹配精度,0-像素精度,1-插值精度,2-最小二乘拟合精度,大于等于3-最小二乘拟合迭代精度 speed:匹配速度0-10,越大速度越快,但可能丢失目标,大于10时取10 polar:匹配极性
| ||||||||||||
|
适用控制器 |
支持ZV功能或者5系列以上的控制器 | ||||||||||||
|
例子 |
ZV_SETSYSINT("ShapeCreateLevel",4)'设置为完全创建模板特征 ZVOBJECT img,model,match_img,results,rigid_mat,model_contlist, dst_contlist ZV_READIMAGE(img, "model.jpg", 0)'以原图像格式读取图片 ZV_SHAPECREATE(img,model,0,360,1,1,50,0,0,0,0)'创建模板 ZV_SHAPECONTOURS(model, model_contlist, 0)'获取模板轮廓 ZV_READIMAGE(match_img, "1.png", 0)'以原图像格式读取图片 ZV_SHAPEFIND(model,match_img,results,90,1,0,-1,3,9,0)'模板匹配 ZV_MATGETROW(results,0,5,0)'获取匹配结果矩阵的第一行,分别是:匹配分数score、x坐标、y坐标、旋转角度angle、缩放比例scale ZV_GETRIGIDVECTOR(rigid_mat,0,0,0,TABLE(1),TABLE(2),TABLE(3))'计算刚性变换矩阵 ZV_CONTAFFINE(model_contlist,rigid_mat,dst_contlist)'轮廓仿射变换 ZV_GRAYTORGB(match_img,color_img)'灰度图转化为RGB图像 ZV_CONTLIST(color_img,dst_contlist,ZV_COLOR(0,255,0),0)'绘制轮廓 | ||||||||||||
|
相关指令 |