思路:
根据“依据国家标识 …” 这一行字样 判定
将字段分割成前段 和后段
提取矩形 得到两个矩形的中心
判定坐标是否相等(或者差值 是否在阈值之内)!
halcon 代码:
list_files ('C:/Users/77200/Desktop/ImageC', 'files', Files)
for Index := 0 to |Files|-1 by 1
read_image (BcB30hu006l00b9k14jdy1, Files[Index])
gen_rectangle1 (ROI_0, 120, 0, 1200, 1150)
reduce_domain (BcB30hu006l00b9k14jdy1, ROI_0, ImageReduced)
decompose3 (ImageReduced, Image1, G, Image3)
mean_image (G, ImageMean,55,55)
* median_image (G, ImageMedian, 'circle', 1, 'continued')
dyn_threshold ( G, ImageMean,RegionDynThresh,3, 'light')
dilation_circle (RegionDynThresh, RegionDilation, 5.5)
* closing_circle (RegionDilation, RegionClosing, 1)
* opening_circle (RegionDilation, RegionOpening, 7)
* connection (RegionDilation, ConnectedRegions)
* fill_up_shape (ConnectedRegions, RegionFillUp, 'area', 15000, 30000)
* opening_rectangle1 (RegionDilation, RegionOpening, 1,5)
connection (RegionDilation, ConnectedRegions1)
select_shape (ConnectedRegions1, SelectedRegions, 'area', 'and', 5000, 12000)
count_obj (SelectedRegions, Number)
smallest_rectangle1 (SelectedRegions, Row11, Column11, Row21, Column21)
gen_rectangle1 (Rectangle, Row11[Number-2], Column11[Number-2], Row21[Number-2], Column21[Number-2])
area_center (Rectangle, Area, r1, c1)
gen_rectangle1 (Rectangle1, Row11[Number-1], Column11[Number-1], Row21[Number-1], Column21[Number-1])
area_center (Rectangle1, Area1, r2, c2)
endfor