0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

計算機視覺中的Blob分析

新機器視覺 ? 來源:CSDN ? 作者:山水之間2018 ? 2020-08-28 14:29 ? 次閱讀

圖像處理(image processing)

用計算機對圖像進行分析,以達到所需結(jié)果的技術(shù)。又稱影像處理。圖像處理一般指數(shù)字圖像處理。數(shù)字圖像是指用工業(yè)相機、攝像機、掃描儀等設(shè)備經(jīng)過拍攝得到的一個大的二維數(shù)組,該數(shù)組的元素稱為像素,其值稱為灰度值。圖像處理技術(shù)一般包括圖像壓縮,增強和復原,匹配、描述和識別3個部分。

Blob分析(Blob Analysis)在計算機視覺中的Blob是指圖像中的具有相似顏色、紋理等特征所組成的一塊連通區(qū)域。Blob分析(Blob Analysis)是對圖像中相同像素的連通域進行分析(該連通域稱為Blob)。其過程其實就是將圖像進行二值化,分割得到前景和背景,然后進行連通區(qū)域檢測,從而得到Blob塊的過程。簡單來說,blob分析就是在一塊“光滑”區(qū)域內(nèi),將出現(xiàn)“灰度突變”的小區(qū)域?qū)ふ页鰜怼?/p>

舉例來說,假如現(xiàn)在有一塊剛生產(chǎn)出來的玻璃,表面非常光滑,平整。如果這塊玻璃上面沒有瑕疵,那么,我們是檢測不到“灰度突變”的;相反,如果在玻璃生產(chǎn)線上,由于種種原因,造成了玻璃上面有一個凸起的小泡、有一塊黑斑、有一點裂縫,那么,我們就能在這塊玻璃上面檢測到紋理,經(jīng)二值化(Binary Thresholding)處理后的圖像中色斑可認為是blob。

而這些部分,就是生產(chǎn)過程中造成的瑕疵,這個過程,就是Blob分析。Blob分析工具可以從背景中分離出目標,并可以計算出目標的數(shù)量、位置、形狀、方向和大小,還可以提供相關(guān)斑點間的拓撲結(jié)構(gòu)。在處理過程中不是對單個像素逐一分析,而是對圖像的行進行操作。圖像的每一行都用游程長度編碼(RLE)來表示相鄰的目標范圍。這種算法與基于像素的算法相比,大大提高了處理的速度。

適用范圍

針對二維目標圖像和高對比度圖像,適用于有無檢測和缺陷檢測。常用于二維目標圖像、高對比度圖像、存在/缺席檢測、數(shù)值范圍和旋轉(zhuǎn)不變性需求。

顯然,紡織品的瑕疵檢測,玻璃的瑕疵檢測,機械零件表面缺陷檢測,可樂瓶缺陷檢測,藥品膠囊缺陷檢測等很多場合都會用到blob分析。

另一方面,Blob分析并不適用于以下圖像:

1.低對比度圖像;

2.必要的圖像特征不能用2個灰度級描述;·

3.按照模版檢測 (圖形檢測需求)

主要處理技術(shù)

Blob分析主要內(nèi)容包括但不限于以下幾點:

(1)圖像分割:將圖像中的目標和背景分離。

(2)去噪:消除或減弱噪聲對目標的干擾。

(3)場景描述:對目標之間的拓撲關(guān)系進行描述。

(4)特征量計算:計算目標的2-D形狀特征。

圖像分割(Image Segmentation)

因為 Blob分析是一種對閉合目標形狀進行分析處理的基本方法。在進行Blob分析以前,必須把圖像分割為構(gòu)成斑點(Blob)和局部背景的像素集合。Blob分析一般從場景的灰度圖像著手進行分析。在Blob分析以前,圖像中的每一像素必須被指定為目標像素或背景像素。典型的目標像素被賦值為1,背景像素被 賦值為0。有多種技術(shù)可將圖像分割為目標像素和背景像素。這些技術(shù)包括:二元閾值(Binary Thresholding)、空間量化誤差(Spatial~ mtization Error)、軟件二元閾值和像素加權(quán)(SoftBinary Thresholding and Pixel Weighting)、相關(guān)閾值(Relative Thresholds)、閾值圖像(Threshold Image)。

圖像分割是圖像處理的一大類技術(shù),在Blob分析中擬提供分割技術(shù)包括:直接輸入、固定硬閾值、相對硬閾值、動態(tài)硬閾值、固定軟閾值、相對軟閾值、像素映射、閾值圖像。其中固定軟閾值和相對軟閾值方法可在一定程度上消除空間量化誤差,從而提高目標特征量的計算精度。

自動全局閾值分割方法一:

計算直方圖;

尋找出現(xiàn)頻率最多的灰度值;

在threshold中使用與最大值有一定的距離的值作為閥值;

halcon代碼實現(xiàn):

gray_histo(Image,Image,AbsoluteHisto,RelativeHisto)

PeakGray := sort_index(AbsoluteHisto)[255]

threshold(Image,Region,0,PeakGray -25)

自動全局閾值分割方法二:

多次迭代平滑;

查找兩個波峰;

使用threshold找到兩波峰之間的最小值

bin_threshold(Image,Region)

常用圖像分割算子:

threshold:全局閾值二值化

bin_threshold:自動閾值二值化

dyn_threshold:本地閾值二值化

watersheds:分水嶺

連通性分析(Connectivity Analysis)

當圖像被分割為目標像素和背景像素后,必須進行連通性分析,以便將目標圖像聚合為目標像素或斑點的連接體。

連通性分析的三種類型如下:

*全圖像連通性分析(Whole Image ConnectivityAnalysis)在全圖像連通性分析中,被分割圖像的所有的目標像素均被視為構(gòu)成單一斑點的像素。即使斑點像素彼此并不相連,為了進行Blob分析,它們?nèi)员灰暈閱我坏陌唿c。所有的Blob統(tǒng)計和測量均通過圖像中的目標像素進行計算;

*連接Blob分析(Connected Blob analysis) 連接Blob分析通過連通性標準,將圖像中目標像素聚合為離散的斑點連接體。一般情況下,連接性分析通過連接所有鄰近的目標像素構(gòu)成斑點。不鄰近的目標像素則不被視為是斑點的一部分;

*標注連通性分析(Labeled Connectivity Analysis) 在 機器視覺應用中, 由于所進行的圖像處理過程不同,可能需對某些已被分割的圖像進行Blob分析,而這些圖像并未被分割為目標像素和背景像素。例如:圖像可能被分為四個不同 像素集合,每一集合代表不同的像素值范圍。這類分割稱為標注連通性分析。當對標注分割的圖像進行連通性分析時,將連接所有具有同一標注的圖像。標注連通分析不再有目標和背景的概念。

BLOB分析之圖一

形態(tài)學操作:形態(tài)學操作的目的是去除噪聲點的影響。

特征值計算:對每個目標進行特征量計算,包括面積、周長、質(zhì)心坐標等特征。

特征提取

1)區(qū)域特征

面積area,力矩Moments,平行于主軸的最小矩形smallest_rectangle1,任意方向的最小矩形smallest_rectangle2,

最小圓形smallest_circle,convexity:凸包面積,contlength:區(qū)域邊界長度

形狀特征roundness,circularity,compactness,rectangularity

2)灰度特征

簡單灰度值特征:區(qū)域的平均灰度值

區(qū)域的最小和最大灰度值

BLOB分析之圖二

場景描述:對場景中目標之間的拓撲關(guān)系進行描述。

分析過程

Blob分析的主要過程(常用套路):

獲取圖像->分割圖像(區(qū)分前景像素和背景像素)->特征提?。ū热缑娣e、重心、旋轉(zhuǎn)角度等)

halcon代碼實現(xiàn):

read_image(Image,'particle')

threshold(Image, BrightPixels,120,255)

connection(BrightPixels,Particles)

area_center(Particles,Area,Row,Column)

Blob分析拓展

在實際應用中,需要處理更多步驟,因為很多實際因素,目標信息很難處理。比如圖像中有很多雜斑(很難提取目標位),光照不均等。

還有Blob分析需要后期處理。比如將特征信息轉(zhuǎn)換成實際坐標信息,顯示目標物等。

獲取圖像->應用ROI->定位ROI->矯正圖像->圖像預處理->動態(tài)獲取分割參數(shù)->分割圖像->處理區(qū)域->特征提取->將像素坐標轉(zhuǎn)換到世界坐標->結(jié)果顯示或者輸出

圖像預處理常用算子:

mean_image:均值濾波

gauss_image:高斯濾波

median_image:中值濾波

動態(tài)獲取分割參數(shù)常用算子:

gray_histo_abs:灰度直方圖

histo_to_thresh:直方圖二值化

應用舉例

找出圖片的毛刺

進一步對上述"BLOB分析之圖二"進行以下形態(tài)學處理及特征值處理,

完整代碼如下:

最終得到結(jié)果如下:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 圖像處理
    +關(guān)注

    關(guān)注

    27

    文章

    1279

    瀏覽量

    56587
  • 計算機視覺
    +關(guān)注

    關(guān)注

    8

    文章

    1694

    瀏覽量

    45905
  • BLOB
    +關(guān)注

    關(guān)注

    0

    文章

    13

    瀏覽量

    10122

原文標題:Halcon案例之BLOB分析

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    機器視覺計算機視覺的關(guān)系簡述

    計算機視覺是一門獨立的學科,有著30年左右的歷史,集圖像處理、模式識別、人工智能技術(shù)為一體,著重服務于一幅或多幅圖像的計算機分析。機器視覺
    發(fā)表于 05-13 14:57

    基于OpenCV的計算機視覺技術(shù)實現(xiàn)

    基于OpenCV的計算機視覺技術(shù)實現(xiàn)OpencV是用來實現(xiàn)計算機視覺相關(guān)技術(shù)的開放源碼工作庫,是計算機
    發(fā)表于 11-23 21:06 ?0次下載
    基于OpenCV的<b class='flag-5'>計算機</b><b class='flag-5'>視覺</b>技術(shù)實現(xiàn)

    計算機視覺與機器視覺區(qū)別

     “計算機視覺”,是指用計算機實現(xiàn)人的視覺功能,對客觀世界的三維場景的感知、識別和理解。計算機視覺
    的頭像 發(fā)表于 12-08 09:27 ?1.2w次閱讀

    計算機視覺的發(fā)展歷史_計算機視覺的應用方向

    計算機視覺40多年的發(fā)展,盡管人們提出了大量的理論和方法,但總體上說,計算機視覺經(jīng)歷了4個主要歷程。即: 馬爾
    的頭像 發(fā)表于 07-30 17:21 ?7017次閱讀

    計算機視覺常用算法_計算機視覺有哪些分類

    本文主要介紹了計算機視覺常用算法及計算機視覺的分類。
    的頭像 發(fā)表于 07-30 17:34 ?1.4w次閱讀

    計算機視覺的重要研究方向

    主要介紹計算機視覺的幾個重要的研究方向。主要包括圖像分類、目標檢測、語義分割、實例分割、全景分割等。通過對這幾個計算機視覺任務的對比,我們
    的頭像 發(fā)表于 11-19 14:32 ?1.1w次閱讀

    計算機視覺入門指南

    出現(xiàn),且它們可以集成到移動應用。 今天,由于其廣泛應用和巨大潛力,計算機視覺成為最熱的人工智能和機器學習子領(lǐng)域之一。其目標是:復制人類視覺的強大能力。 但是,到底什么是
    的頭像 發(fā)表于 11-27 09:52 ?2809次閱讀

    計算機視覺助力醫(yī)療應用

    計算機視覺是醫(yī)療保健行業(yè)的一個相當新的趨勢,其中圖像用于幫助識別和預測患者的診斷,提高準確性,利用計算機圖像來做到這一點。圖像被拍攝并上傳到系統(tǒng),然后通過
    發(fā)表于 07-21 16:25 ?1635次閱讀

    計算機視覺的基礎(chǔ)概念和現(xiàn)實應用

    本文將介紹計算機視覺的基礎(chǔ)概念和現(xiàn)實應用,對任何聽說過計算機視覺但不確定它是什么以及如何應用的人,本文是了解計算機
    的頭像 發(fā)表于 11-08 10:10 ?1441次閱讀

    計算機視覺識別是如何工作的?

    計算機視覺識別是一種人工智能技術(shù),旨在使計算機系統(tǒng)從數(shù)字圖像、視頻等視覺信息識別和提取有意義信息的能力。
    的頭像 發(fā)表于 02-09 13:41 ?3567次閱讀

    什么是機器視覺計算機?

    機器視覺是用于通過分析視頻和圖像幫助計算機做出決策的硬件和軟件的集成。在制造業(yè),機器視覺通常用于生產(chǎn)線上,以便在產(chǎn)品的每個階段進行自動檢查
    的頭像 發(fā)表于 12-26 17:51 ?937次閱讀
    什么是機器<b class='flag-5'>視覺</b><b class='flag-5'>計算機</b>?

    人工智能計算機視覺方向是什么

    人工智能計算機視覺方向是什么 人工智能計算機視覺方向是指利用人工智能技術(shù)對圖像和視頻進行各種分析、解釋和操作的過程。
    的頭像 發(fā)表于 08-15 16:06 ?1591次閱讀

    計算機視覺的主要研究方向

    計算機視覺(Computer Vision, CV)作為人工智能領(lǐng)域的一個重要分支,致力于使計算機能夠像人眼一樣理解和解釋圖像和視頻的信息。隨著深度學習、大數(shù)據(jù)等技術(shù)的快速發(fā)展,
    的頭像 發(fā)表于 06-06 17:17 ?789次閱讀

    計算機視覺屬于人工智能嗎

    和解釋視覺信息,從而實現(xiàn)對圖像和視頻的自動分析和處理。 計算機視覺的基本概念 2.1 計算機視覺
    的頭像 發(fā)表于 07-09 09:11 ?1045次閱讀

    機器視覺計算機視覺有什么區(qū)別

    機器視覺計算機視覺是兩個密切相關(guān)但又有所區(qū)別的概念。 一、定義 機器視覺 機器視覺,又稱為計算機
    的頭像 發(fā)表于 07-16 10:23 ?446次閱讀