ZV_POSECORRECT -- 向量补正

类型

变换

描述

对输入向量进行补正,可对向量中的点位置添加平移量从而实现自定义位置,通常用于自定义定位输出点。比如定位输出的mark点坐标为x1,y1,angle1,那么想将定位坐标指定为mark点旁边的某个位置x2,y2的话,因此可对定位点进行矫正,即transx = x2-x1,transy = y2-y1,ZV_POSECORRECT(x1,y1,angle1,transx,transy,0)

语法

ZV_POSECORRECT(vecx,vecy,veca,transx,transy,tab_vec_corr)

参数:

vecx:输入向量的起始x坐标

vecy:输入向量的起始y坐标

veca:输入向量的角度,顺时针为正

transx:对向量坐标的平移量x

transy:对向量坐标的平移量y

tab_vec_corrTABLE索引,输出参数,补正后的向量参数,依次为xyangle

适用控制器

支持ZV功能或者5系列以上的控制器

例子

16

ZV_SETSYSINT("ShapeCreateLevel",4)'设置为完全创建模板特征

ZVOBJECT img,mat,model,match_img,color_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)'获取匹配结果矩阵的第一行,分别是:匹配分数scorex坐标、y坐标、旋转角度angle、缩放比例scale

ZV_GRAYTORGB(match_img,color_img)'灰度图转化为RGB图像

TABLE(10, 1, 0, -95, 0, 1, -55)'将数据存入到TABLE(0)

ZV_MATGENDATA(mat,2,3,10)'变换矩阵

ZV_POSECORRECT(TABLE(1),TABLE(2),TABLE(3),-105,35,20)'对输入向量(1,1,30)进行xy方向分别平移-10535个像素后进行补正,补正后的向量存入开始索引为20TABLE

ZV_MARKER(color_img,TABLE(20),TABLE(21),0,30,zv_color(0,255,0))'绘制标记