目录
1、预操作,设置系统信息,关闭窗口更新,关闭窗口并打开一个固定纵横比的窗口
2、给定标准:1 in = 0.0373cm,长度9,误差-0.2~+0.8
1、boundary(Region : RegionBorder : BoundaryType : )
2、select_mask_obj(Objects : SelectedObjects : Mask : )
一、程序源码分析
在这个程序中,生鱼条在涂上面包屑之前要先测量它们的大小。首先,将鱼条从背景中分割出来。然后测量它们的尺寸,与所需的最小尺寸进行比较,并显示结果。
1、预操作,设置系统信息,关闭窗口更新,关闭窗口并打开一个固定纵横比的窗口
dev_update_off ()
dev_close_window ()
read_image (Image, 'food/fish_sticks_raw_01')
dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle)
set_display_font (WindowHandle, 16, 'mono', 'true', 'false')
dev_set_draw ('margin')
*允许返回空对象
get_system ('store_empty_region', StoreEmptyRegion)
set_system ('store_empty_region', 'true')
2、给定标准:1 in = 0.0373cm,长度9,误差-0.2~+0.8
cm_per_pix := 0.0373
TargetLength := 9.0
ToleranceHigh := 0.8
ToleranceLow := 0.2
3、循环读取图像,读取图像中生鱼条的长度信息
NumImages := 10
for I := 1 to NumImages by 1read_image (Image, 'food/fish_sticks_raw_' + I$'.2')
操作代码段
endfor
-
操作代码段
-
通过阈值分割、连通域打散、面积筛选,将鱼条从背景分割出来
threshold (Image, Region, 50, 255)
connection (Region, ConnectedRegions)
fill_up (ConnectedRegions, RegionFillUp)
select_shape (RegionFillUp, SelectedRegions, 'area', 'and', 1000, 99999)
