|
- *几何定位加仿射变换的联合应用
- *读取图像
- read_image (Image, '图片/1-1.bmp')
- *绘制圆和矩形
- gen_circle (Circle, 621.442, 867.321, 60.3191)
- gen_rectangle2 (Rectangle, 202.659, 391.7, rad(12.5414), 91.8371, 23.2433)
- *创建模板区域
- gen_rectangle2 (ModelRegion, 329.79, 653.167, rad(31.9349), 155.516, 153.043)
- *减小定义域
- reduce_domain (Image, ModelRegion, ImageReduced)
- *创建模板
- create_shape_model (ImageReduced, 'auto', rad(-90), rad(180), 'auto', 'auto', 'use_polarity', 'auto', 'auto', ModelID)
- *获取模板轮廓
- get_shape_model_contours (ModelContours, ModelID, 1)
- *获取模板中心
- area_center (ModelRegion, Area, Row, Column)
- *显示模板轮廓
- dev_display_shape_matching_results (ModelID, 'red', Row, Column, 0, 1, 1, 0)
- * Image Acquisition 01: Code generated by Image Acquisition 01
- list_files ('图片', ['files','follow_links'], ImageFiles)
- tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
- for Index := 0 to |ImageFiles| - 1 by 1
- read_image (Image, ImageFiles[Index])
-
- *查找模板
- find_shape_model (Image, ModelID, rad(-90), rad(180), 0.8, 1, 0.5, 'least_squares', 0, 0.9, Row1, Column1, Angle, Score)
-
- *计算仿射变换矩阵
- vector_angle_to_rigid (Row, Column, 0, Row1, Column1, Angle, HomMat2D)
-
- affine_trans_contour_xld (ModelContours, ContoursAffineTrans, HomMat2D)
- *显示模板匹配结果
- dev_display_shape_matching_results (ModelID, 'red', Row1, Column1, Angle, 1, 1, 0)
-
- *实现跟随
- affine_trans_region (Circle, RegionAffineTrans1, HomMat2D, 'nearest_neighbor')
- affine_trans_region (Rectangle, RegionAffineTrans2, HomMat2D, 'nearest_neighbor')
-
- *显示跟随
- dev_display (RegionAffineTrans1)
- dev_display (RegionAffineTrans2)
-
- stop ()
- endfor
复制代码
|
|