* 讀取一張圖像read_image ( Image, '原圖.jpg' ) * 獲取圖像大小get_image_size ( Image, Width, Height) * 關閉已經打開的窗口dev_close_window ( ) * 打開新窗口dev_open_window ( 0 , 0 , Width, Height, 'black' , WindowHandle) * 對圖像進行閾值操作threshold ( Image, Region, 0 , 50 ) * 對區域進行連通處理connection ( Region, ConnectedRegions) * 過濾出產品的外輪廓區域select_shape ( ConnectedRegions, SelectedRegions, 'ra' , 'and' , 10 , 200 ) * 對輪廓區域進行填充fill_up ( SelectedRegions, RegionFillUp) * 將區域轉化為最小外接圓shape_trans ( SelectedRegions, RegionTrans, 'outer_circle' ) * 通過補集運算獲取產品缺口區域difference ( RegionTrans, RegionFillUp, RegionDifference) * 對缺口區域進行腐蝕操作erosion_circle ( RegionDifference, RegionErosion, 1 ) * 把一個區域轉變為一個二進制字節圖像。region_to_bin ( RegionErosion, BinImage, 255 , 0 , 656 , 492 ) * 對圖像進行閾值操作threshold ( BinImage, Region1, 255 , 255 ) * 對閾值區域連通處理connection ( Region1, ConnectedRegions1) * 設置輸出對象顯示顏色dev_set_color ( 'blue' ) * 過濾出想要的缺口區域select_shape ( ConnectedRegions1, SelectedRegions1, [ 'ra' , 'rb' ] , 'and' , [ 5 , 1 ] , [ 10 , 5 ] ) * 統計出缺口的數目count_obj ( SelectedRegions1, Number) * 顯示圖像dev_display ( Image) * 顯示缺陷區域dev_display ( SelectedRegions1)