Halcon編程實驗-(2)硬幣識別【目的:圖像形態學的應用】

程序流程

1.圖像採集
2.圖像灰度化
3.圖像二值化
4.填充所有孔洞
5.圖像形態學開運算
6.計算所有連通域
7.特徵提取(面積+圓度)
8.顯示定位、面積等

本次實驗重點知識:圖像形態學的應用

環境

筆記本電腦摺疊90度,利用其攝像頭完成實驗平臺搭建,在擴展屏上進行代碼編輯
在這裏插入圖片描述

相關代碼:

* Image Acquisition 01: Code generated by Image Acquisition 01
open_framegrabber ('DirectShow', 1, 1, 0, 0, 0, 0, 'default', 8, 'rgb', -1, 'false', 'default', '[0] ', 0, -1, AcqHandle)
grab_image_start (AcqHandle, -1)
dev_update_window ('off')
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
while (true)
    dev_update_window ('off')
    grab_image_async (Image, AcqHandle, -1)
*     dev_display (Image)
    rgb1_to_gray (Image, GrayImage)
*     dev_display (GrayImage)
    threshold (GrayImage, Regions, 180, 255)
    fill_up (Regions, RegionFillUp)
*     dev_display (Regions)
    opening_circle (RegionFillUp, RegionOpening, 6) //開運算
*     dev_display (RegionOpening)
    connection (RegionOpening, ConnectedRegions)
*     dev_display (ConnectedRegions)
    
    select_shape (ConnectedRegions, SelectedRegions, ['area','circularity'], 'and', [15111.3,0.7419], [17560.7,2])
*     dev_display (SelectedRegions)
    area_center (SelectedRegions, Area, Row, Column)
    disp_message (WindowHandle, '面積:'+Area+' 中心位置:('+Row+','+Column+')', 'window', 0, 0, 'black', 'true')
    dev_display (Image)
    dev_display (SelectedRegions)
    
endwhile
close_framegrabber (AcqHandle)

實驗效果
在這裏插入圖片描述
在這裏插入圖片描述
原圖像:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章