乾貨超級詳細! 本文介紹了機器視覺中常用的 3 種“物體識別”方法

Mondo 科技 更新 2024-02-26

隨著機器視覺技術的飛速發展,許多需要人工操作的傳統任務逐漸被機器所取代。

傳統的目標識別方法大多是人工實現的,通過形狀、顏色、長寬、長寬比和長寬比來判斷識別的目標是否符合標準,最後定義一系列目標識別規則。 這種方法在一些簡單的案例中得到了很好的應用唯一的缺點是,所有的規則和演算法都必須隨著識別物件的變化而重新設計和開發,即使它是相同的產品,不同批次的變化也會造成無法重用的現實。

隨著機器學習和深度學習的發展,許多肉眼難以直接量化的特徵,都可以通過深度學習自動學習,這是深度學習的優勢和前所未有的吸引力。

有許多功能是我們無法用傳統演算法量化的,或者很難做到的,深度學習可以做到。 特別是,在影象分類和目標識別方面有顯著改進。

視覺的常用物件識別方法有三種:斑點分析、模板匹配和深度學習。 下面就為大家介紹三種常用的目標識別方法。

斑點分析

blobanalysis

在計算機視覺中,斑點是指由相似顏色、紋理和其他特徵組成的影象連線區域。 Blob 分析是對影象中同一畫素的連線域的分析(此連線域稱為 Blob)。 該過程是對影象進行二值化,對前景和背景進行分割,然後執行連線區域檢測以獲得 blob 塊。 簡單來說,斑點分析就是在“平滑”區域中找出具有“灰度突變”的小區域。

例如,假設有一塊剛剛生產的玻璃,表面非常光滑平整。 如果這塊玻璃上沒有瑕疵,那麼我們將無法檢測到“灰度突變”; 另一方面,如果玻璃生產線中由於各種原因在玻璃上出現凸起的氣泡、黑點或裂紋,那麼我們可以檢測玻璃上的紋理,二進位閾值影象中的色斑可以認為是乙個斑點。 而這些零件都是生產過程造成的缺陷,這個過程就是斑點分析。

斑點分析工具可以將物件與背景隔離開來,並計算目標的數量、位置、形狀、方向和大小,並提供關聯點之間的拓撲。 處理過程不是逐個分析單個畫素,而是處理影象行。 影象的每一行都由遊程長度程式碼 (RLE) 表示,以表示相鄰的目標範圍。 與基於畫素的演算法相比,該演算法大大提高了處理速度。

但另一方面,blob 分析不適用於以下影象:

1.低對比度影象;

2.必要的影象特徵不能用 2 個灰度級別來描述;

3.根據模板進行檢測(需要模式檢測)。

一般來說,斑點分析是檢測影象中的斑點,適用於背景單一、前景缺陷類別不分、識別準確率低的場景。

模板匹配方式

template matching

模板匹配是最原始、最基本的模式識別方法,它研究特定物件的圖案在影象中的位置,然後識別物件,這是乙個匹配問題。 它是影象處理中最基本和最常用的匹配方法。 換句話說,就是需要匹配的小影象,在大影象中搜尋乙個目標,知道地圖中有乙個目標要找,並且目標的大小、方向和影象元素與模板相同,可以在圖中找到目標,並通過統計計算平均值來確定其坐標位置, 影象的漸變、距離、方差和其他特徵。

這說明我們要找的模板就是圖中的標準,這裡的標準就是說標準一旦圖片或模板被改變,比如旋轉、修改某些畫素、翻轉圖片等,我們就無法匹配,這也是這個演算法的缺點。

因此,這種匹配演算法是在待檢測的影象上,從左到右、從上到下,將模板影象與小東西的影象進行比較。

該方法比斑點分析具有更好的檢測精度,還可以區分不同的缺陷類別,相當於一種搜尋演算法,根據待檢測影象上不同的ROIs,用指定的匹配方法搜尋和匹配模板庫中的所有影象,並要求缺陷的形狀、大小和方法具有較高的一致性, 因此,有必要構建更完整的模板庫,以獲得可用的檢測精度。

深度學習方法

deep learning method

2014年,R-CNN被提出,使得基於CNN的目標檢測演算法逐漸成為主流。 深度學習的應用提高了檢測精度和檢測速度。

卷積神經網路不僅可以提取更高層次和更好的表現力特徵,還可以在同一模型中提取、選擇和分類特徵。

在這方面,主流演算法主要有兩種型別:

第一種是基於分類結合RPN網路的R-CNN系列二階目標檢測演算法(TwoStage)

另一種型別是一階目標檢測演算法(單階段),它將目標檢測轉換為回歸問題。

目標檢測的任務是找出影象或**中感興趣的物件,同時檢測它們的位置和大小,這是機器視覺領域的核心問題之一。

目標檢測過程中存在許多不確定因素,如影象中目標數量的不確定性,物體外觀、形狀和姿態的不同,以及目標成像過程中光線、遮擋等因素的干擾,導致檢測演算法存在一定的難度。

自進入深度學習時代以來,目標檢測的發展主要集中在兩個方向:R-CNN系列等兩階段演算法和YOLO、SSD等一階段演算法。 兩者的主要區別在於,兩階段演算法需要提出建議(乙個可能包含要檢查物件的預選框),然後進行細粒度的物件檢測。 OneStage演算法將直接提取網路中的特徵,以對物件進行分類和定位。

在二階演算法中,區域提取演算法的核心是卷積神經網路CNN,它首先使用CNN骨幹提取特徵,然後找到候選區域,最後滑動視窗確定目標類別和位置。

R-CNN首先通過SS演算法提取約2k個感興趣區域,然後對感興趣區域進行特徵提取。 缺陷:感興趣區域的權重不能相互共享,存在重複計算,中間資料需要單獨儲存以占用資源,影響輸入強制縮放的檢測精度。

SPP-NET在最後乙個卷積層和第乙個全連線層之間做一些處理,以保證輸入全連線層的大小相同,從而解決了輸入影象大小有限的問題。 SPP-NET候選區域包含整個影象,整個影象和所有候選區域的特徵可以通過卷積網路一次性獲得。

fastr-cnn利用SPP-Net的特徵金字塔,提出將各種大小候選區域的特徵圖對映成統一尺度的特徵向量,首先將不同大小的候選區域劃分為Mn個塊,然後對每個區塊進行Maxpooling,得到乙個值。 這樣,所有候選區域特徵圖都統一為m-n維特徵向量。 但是,使用 SS 演算法生成候選框非常耗時。

特徵圖進入RPN網路後,針對每個特徵點預設9個不同大小和形狀的錨點框,計算錨點框與真實目標框的交偏比,該位置是否有目標,將預定義的錨點框分為前景或背景, 然後根據偏差損失對RPN網路進行訓練,進行位置回歸,對ROI的位置進行修正。最後,校正後的 ROI 被傳遞到後續網路。然而,在檢測過程中,RPN網路需要對目標進行回歸篩選,以區分前景和背景目標,後續檢測網路對RPN輸出的ROI進行精細分類和位置回歸,導致模型引數大量。

Maskr-CNN 向 Fasterr-CNN 新增並行 MASK 分支,為每個 ROI 生成乙個畫素級二進位掩碼。 在 Fasterr-CNN 中,使用 roipooling 來生成均勻比例的特徵圖,這樣當原始影象被對映回來時,它就會錯位,使畫素無法準確對齊。 這對目標檢測的影響相對較小,但對於畫素級分割任務,該錯誤不容忽視。 maskr-cnn採用雙線性插值來解決畫素無法精確對齊的問題。 但是,由於兩階段演算法的繼承,實時效能仍然不理想。

一階演算法在整個卷積網路中進行特徵提取、目標分類和位置回歸,通過逆向計算得到目標位置和類別,在識別精度略弱於兩階段目標檢測演算法的前提下,大大提高了速度。

yolov1 將輸入影象均勻縮放到 448 448 3,然後將其分成 7 7 個網格,每個網格負責兩個邊界框 bbox 的位置和置信度。 這兩個b-box對應同乙個類別,乙個大目標和乙個小目標。 bbox的位置不需要初始化,而是在權重初始化後由yolo模型計算,模型在訓練過程中隨著網路權重的更新而調整b-box的位置。 但是,該演算法不能很好地檢測小目標,並且每個網格只能有乙個類別。

Yolov2將原始影象劃分為13 13個網格,通過聚類分析確定每個網格設定了5個錨框,每個錨框**1個類別,目標位置通過錨框與網格之間的偏移量進行回歸。

SSD 保留了網格劃分方法,但從底層網路的不同卷積層中提取特徵。 隨著卷積層數的增加,錨盒的尺寸由小到大設定,從而提高SSD對多尺度目標的檢測精度。

Yolov3 使用聚類分析為每個網格預設 3 個錨框,僅使用暗網的前 52 層,並使用大量殘差層。 使用下取樣來減少池化對梯度下降的負面影響。 Yolov3通過上取樣提取深層特徵,使其與待融合的淺層特徵維度相同,但通道數不同,通過在通道維度上拼接實現特徵融合,融合26 255和52 52 255的特徵圖,相應的檢測頭也採用全卷積結構。

Yolov4在原有YOLO目標檢測架構的基礎上,採用了近年來CNN領域最優的優化策略,在資料處理、骨幹網路、網路訓練、啟用功能、損失功能等方面進行了不同程度的優化。 到目前為止,已經提出了許多高精度的目標檢測演算法,包括最近在視覺領域的Transformer研究,這也一直在提高目標檢測演算法的準確性。

總之,表示的選擇會對機器學習演算法的效能產生巨大影響用於監督學習培訓的前饋網路可以被認為是表徵學習的一種形式。 據此,傳統的演算法如斑點分析、模板匹配等是人工設計的來表示它們的特徵,而神經網路則通過演算法自動學習來學習物件的適當特徵表示,比手動特徵設計更高效、更快捷,不需要太多專業的特徵設計知識,因此可以識別不同的形狀, 不同場景下的大小、紋理等物件,檢測的準確性會隨著資料集的增加而進一步提高。

文章**:機器視覺沙龍。

免責宣告:本文的目的是傳達更多資訊,僅供讀者學習和交流。 文章版權歸原作者所有,如有侵權,請聯絡刪除。

相關問題答案

    本文介紹訊息佇列RocketMQ版如何實現消費冪等性

    在本文中,讓我們談談訊息佇列中最重要的最佳實踐之一 消費冪等性 消費冪等性是指當 RocketMQ 消費者重複消費一條訊息時,重複消費的結果與一次消費的結果相同,多次消費對業務系統沒有任何負面影響。例如,在支付場景中,消費者消費了一條扣款訊息,從訂單中扣款元。如果由於網路不穩定或其他原因反覆下發扣款...

    建議收集一篇解釋IPO資訊披露的文章

    隨著社會經濟的不斷發展,越來越多的公司開始認真考慮進行首次公開募股 IPO 以從公眾那裡獲得資金。IPO不僅為企業提供了重要的資金支援,而且可以顯著提高企業的知名度和市場競爭力。然而,在IPO的複雜過程中,公司必須遵守嚴格的資訊披露要求,以確保投資者的知情權得到充分尊重,權益得到保護。因此,IPO過...

    什麼是戰略諮詢公司?

    幾乎所有的世界強企業背後都有戰略諮詢公司。有人說戰略諮詢公司是醫生,有人說是醫生和老師,有人說是戰略家,那麼問題來了,戰略諮詢公司到底是什麼?戰略諮詢公司是做什麼的?戰略諮詢公司對企業的作用是什麼?戰略諮詢公司在商業世界中的地位是什麼?從嚴肅的意義上講,戰略諮詢是現代管理科學與企業實踐相結合的產物,...

    這篇文章解釋了關於中醫脈搏的整個事情

    我在網上看到這篇文章,作者結合自己的親身經歷分析了脈控的原理,給我留下了深刻的印象,我就和大家分享一起學習。他是這樣說的 對於乙個初學者來說,自己感受脈搏診斷確實是乙個挑戰。我花了將近六七年的時間學習中醫,但我不知道我在做什麼來解決我的脂肪肝問題。直到研究脈搏診斷的第 年,奇蹟般的事情才發生了,並有...

    純債券基金收益年終盤點說明購買純債券基金注意事項

    我是小火軍,點選上方 關注 每天為你分享通俗易懂的 財經乾貨 和 財經故事 大家好,我是小火君。現在是年底,大家的整體回報率是多少?今年整體低迷,如果年初就開始持 型 收益概率並不理想。但如果購買純粹的債券 那又如何呢?今天,我們就來看看購買純債券的好處 以及購買債券的注意事項 我每天都在網際網絡上...