Halcon斑點分析BlobAnalysis解析

2022-05-05 05:03:11 字數 2351 閱讀 8353

斑點分析的演算法非常簡單:在影象中,相關物件的畫素(也稱為前景)通過其灰度值來識別。例如,圖中示例顯示了液體中的組織顆粒。這些粒子是明亮的,液體(背景)是暗的。通過選擇明亮的畫素(閾值),可以很容易檢測到顆粒。在許多應用中,暗畫素和亮畫素的簡單條件不再成立,但結果相同可以通過額外的預處理或畫素選擇/分組的替代方法來實現。

在這種情況下,斑點分析的優點是halcon提供了大量運算元使其具有極大的靈活性。此外,這些方法通常具有很高的效能。斑點分析也可以與許多其他視覺任務相結合,例如作為預處理步驟,靈活地生成互動區域。

基本概念

斑點分析主要包括三個部分:

獲取影象

分割影象

採集影象後,接下來的任務是選擇前景畫素。這也稱為分割。結果

在halcon中通常將此過程為blob(二進位製大物件),資料型別為區域(a region)。

提取目標特徵

在最後一步中,將計算出諸如面積(畫素數),重心或方向之類的特徵

該基本概念的乙個示例是以下程式,該程式屬於上述示例。在此,從檔案中獲取影象。使用閾值(threshold)選擇大於120的所有畫素。然後,引入了乙個不太明顯的步驟:運算元連線(connection)將所有亮畫素的集合分離為所謂的連線元件。此步驟的效果是我們將劃分出多個區域,而不是閾值(threshold)返回的單個區域。該程式的最後一步是一些功能的計算。在此,運算元area_center確定了大小(畫素數)和重心。請注意area_center返回了三個值(每個引數有乙個值)。

read_image (image, 'particle')

threshold (image, brightpixels, 120, 255)

connection (brightpixels, particles)

area_center (particles, area, row, column)

擴充套件概念

在許多情況下,斑點分析將比上述示例更高階。原因是混亂或不均勻的照明。此外,經常需要進行後處理,例如將元素特徵轉換為真實世界單位或結果視覺化。

使用rio(region of interest)

可以通過使用感興趣區域來加快斑點分析。搜尋的斑點區域被限制越多。搜尋將更快更強大。

對齊rio或影象

在某些應用中,關注區域必須相對於另乙個物件對齊。或者影象本身可以對齊,例如通過旋轉或裁剪。

校正影象

與對齊類似,可能需要校正影象,例如消除鏡頭畸變或轉換影象的參考點。

預處理影象(過濾)

提取分割引數

代替使用固定的閾值,可以為每個影象動態提取它們。例如具有多個峰值的灰度值直方圖,每個物件類別乙個。在這裡,您可以使用運算元gray_histo_abs和histo_to_thresh。作為高階替代方案,可以將運算元intensity與參考影象結合使用,僅適用於背景:在設定過程中,將確定背景區域的平均灰度值。如果平均灰度值已更改,則可以相應調整閾值。

分割影象

對於分割,可以使用各種方法。最簡單的方法是threshold(閾值),指定乙個屬於前景物件的值範圍。另乙個非常常見的方法是dyn_threshold。在此,第二張影象將作為參考影象。通過這種方法,使用區域性閾值而不是全域性閾值。這些區域性閾值儲存在參考影象中。可以通過拍攝空背景將其設為靜態作為參考影象,也可以使用平滑濾鏡(例如mean_image)

處理區域

一旦斑點區域被分割。通常需要對其進行修改,例如,通過抑制小區域,給定方向或接近其他區域的區域。在這種情況下,形態運算元open_circle和opening_rectangle通常可用於抑制雜訊,closeing_circle和closing-rectanglel填補空白。可以使用select_shape,select_shape_std和select-proto-proto選擇具有特定功能的斑點。

特徵提取

最終處理時,將提取斑點的特徵,所需功能的型別取決於應用程式。型別列表可以在參考手冊的「regions/features"和"image/features"中找到。

將結果轉換為世界座標

諸如面積或重心之類的要素通常必須轉換為世界座標。這可以通過halcon相機

校準實現。

視覺化結果

最後,你可能要顯示影象的斑點(區域)和特徵。

靈感**於halcon官方文件

halcon資料型別分析

halcon的資料型別 halcon的兩類引數 圖形引數iconic image,region,xld 與控制引數control string,integer,real,handle 在halcon運算元的引數中,依次順序為 輸入圖形引數 輸出圖形引數 輸入控制引數 輸出控制引數 並且其輸入引數不會...

HALCON學習之blob分析

blob方法讀取 dev close window image acquisition 01 code generated by image acquisition 01 read image image,d 視覺 picture 硬幣.jpg get image size image,width,...

Halcon例程分析15 剔除 翼 形毛刺

開啟halcon,按下ctrl e開啟halcon自帶例程。工業領域 橡膠,人造材料,金屬薄片 fin.hdev fin.hdev detection of a fin dev update window off read image fins,fin 1 3 get image size fins...