1、圖像獲取與採集ui
一、本地圖片讀取spa
① 單張讀取3d
直接傳入圖片路徑便可,能夠用絕對路徑,也能夠用相對路徑:regexp
read_image (Image, 'C:/Users/Administrator/Desktop/1.png')blog
② 編號連續的圖片讀取(000、00一、002……)遞歸
* 分別讀取003.jpg、004.jpg、005.jpg、006.jpg接口
for i := 3 to 6 by 1圖片
read_image (Image, 'C:/Users/Administrator/Desktop/pic/' + i$'.3' + '.jpg')文檔
endforit
③ 讀取文件夾(及子文件夾)下所有圖片
list_files ('D:/photo', ['files','follow_links'], ImageFiles)
tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima)$','ignore_case'], ImageFiles)
for Index := 0 to |ImageFiles| - 1 by 1
read_image (Image, ImageFiles[Index])
* Image Acquisition 01: Do something
endfor
算子list_files中能夠有多個參數,例如:
'directories':讀取文件夾
'recursive':遞歸,讀取子文件夾裏面的文件
'max_depth 3':支持3級文件目錄深度的文件檢索
'max_files 1000':最大文件數目不超過1000個
……
二、相機採集圖像(以筆記本攝像頭爲例)
執行「助手」——「打開新的Image Acquisition」:
若是沒連其餘的相機,那麼點擊「自動檢測接口」則會檢測出「DirectShow」,此時點擊「實時」圖標就能夠用筆記本攝像頭實時採集圖像了:
而後點「插入代碼」就能夠看到採集圖像的Halcon代碼了:
2、常見圖像格式介紹
jpg——(有損壓縮)
png——(無損壓縮)
bmp——(無損、一般不壓縮)
其餘還有gif、tiff、ico等格式的圖片,可是通常視覺項目中只會用到jpg、png、bmp這三種格式。通常相機採圖輸出的就是bmp格式的圖片,這種圖片的主要缺點是文件太大,佔磁盤。png圖片是無損壓縮圖片,具備和bmp相同的保真度,png和bmp能夠互相無損轉換,同一張圖,png格式只有bmp格式體積的1/3或者更少,jpg一般體積更小,可是因爲有畫質損失,通常不多使用。
總之,不一樣格式的圖片在文件大小以及保真度上有明顯差別。
bmp格式圖片文件大小的計算:
以這張500W黑白相機(2448 * 2048)拍攝的圖片爲例。黑白相機是8位黑白圖像,一個像素佔據1 Byte的空間。
2048 * 2448 /1024 = 4896 KB,能夠看出跟上圖中的4898KB是即爲接近的,其差別忽略不計,所以通常這麼算就行。
若是是彩色相機,通常輸出24位圖像,圖像大小擴大爲3倍。
或者記住一句口訣:500萬相機輸出的黑白圖像通常是5MB,1000萬相機輸出的黑白圖像通常是10MB;若是是彩色圖像,則大小乘以3。
3、Region介紹
一、簡介
Region能夠理解爲符合某些性質像素的集合,Region的形狀能夠是任意的,例如圓、橢圓、矩形、或者其餘不規則圖形,甚至單獨的一個點均可以成爲一個Region。
二、最多見相關算子
獲取Region的面積和中心點座標:
area_center(Regions : : : Area, Row, Column)
根據特徵篩選Region,這些特徵能夠是面積、寬、高、最小內接圓、圓度、矩形度等參數:
select_shape(Regions : SelectedRegions : Features, Operation, Min, Max : )
一般用於在一堆Region中選擇面積最大的那個:
select_shape_std(Regions : SelectedRegions : Shape, Percent : )
三、Region的聯合操做
上面四種算子操做分別是:並集、交集、差集、補集。
四、Region轉換操做
shape_trans(Region : RegionTrans : Type : )
五、其餘常見region算子(幫助文檔檢索「region」得到更多相關算子信息)
draw_region
move_region
paint_region
read_region
write_region
region_features
sort_region
zoom_region
……