get_measure_positions (Image, PlateRegion, CalibDataID, I, Distance, Phi, RowCenter, ColumnCenter)
* 提取特征
threshold (Image, Region, 0, 120)
connection (Region, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, ['holes_num','rect2_len1','rect2_len2'], 'and', [1,120,120], [1,200,200])
fill_up (SelectedRegions, PlateRegion)
*从表的边框构造线条
gen_contour_region_xld (PlateRegion, Contours, 'center') //画轮廓
segment_contours_xld (Contours, ContoursSplit, 'lines', 7, 4, 2)//分割轮廓
regress_contours_xld (ContoursSplit, RegressContours, 'no', 1)//计算回归(后一步的先决条件,下一步包含direction or currature)
select_contours_xld (RegressContours, VerticalContours, 'direction', rad(45), rad(135), -0.5, 0.5) //过滤轮廓
select_contours_xld (VerticalContours, LongContours, 'length', 150, 500, -0.5, 0.5)
* 获取两条线段的端点
select_obj (LongContours, Contour, 1)//选第一条线
get_contour_xld (Contour, Rows, Columns)
RowBegin1 := Rows[0] //两端点
ColBegin1 := Columns[0]
RowEnd1 := Rows[|Rows| - 1]
ColEnd1 := Columns[|Columns| - 1]
select_obj (LongContours, Contour, 2)//第二条线
get_contour_xld (Contour, Rows, Columns)
RowBegin2 := Rows[0]
ColBegin2 := Columns[0]
RowEnd2 := Rows[|Rows| - 1]
ColEnd2 := Columns[|Columns| - 1]
get_calib_data_observ_points (CalibDataID, 0, 0, PoseIndex - 1, Row, Column, PoseIndex, _Pose) //获取点坐标
Row1 := Row[find(PoseIndex,21)] //第22个和28个点
Row2 := Row[find(PoseIndex,27)]
Column1 := Column[find(PoseIndex,21)]
Column2 := Column[find(PoseIndex,27)]
*找两个交点坐标
intersection_lines (Row1,