影像辨識流程介紹

影像辨識流程介紹

更新於 發佈於 閱讀時間約 3 分鐘

針對辨識物的不同,流程就會不一樣,在依照現實狀況進行刪減,以下說明為個人常用的流程。


基本流程:

  1. 讀圖
  2. 灰階
  3. 濾波 (看圖片雜訊多不多)
  4. 二值化
  5. 連通區域
  6. 特徵篩選
  7. 特徵資訊
  8. 辨識 - (OCR,量測,瑕疵檢測等。)
簡單流程表示

簡單流程表示


名詞介紹

Gray 灰階

將原始的彩色圖像轉換為灰階圖像。這樣做的目的是為了將圖像中的彩色信息轉換為單一的亮度值,方便後續的處理。

Filtering 濾波

濾波是一個用於去除圖像中噪聲的過程。通過應用不同類型的濾波器,可以平滑圖像增強邊緣或者去除不需要的細節,從而改善後續處理的效果。

Thresholding 二值化

是一種常見的影像處理技術,其目的是將灰度影像轉換為只有兩個值的黑白影像。這兩個值通常表示為0和255,或者0和1。

在二值化過程中,我們設定一個閾值,用來判斷每個像素的灰度值。

如果像素的灰度值大於閾值,則將其設為一個值(如255或1),表示白色;

如果像素的灰度值小於等於閾值,則將其設為另一個值(如0),表示黑色。

Connected Components 連通區域

是一種在影像處理中常用的技術,用於尋找並標識影像中連通的區域。當我們在影像中有許多區域需要識別分割時,連通區域的概念就變得很重要。

具體來說,Connected Components 演算法會將一幅影像分割成許多連通的區域,這些區域通常是指像素彼此相鄰且具有相同性質(如顏色、亮度等)的區域。這些區域可以是圖像中物體、背景其他特定的區域

在影像處理中,我們常常使用 Connected Components 來執行物體檢測、分割和識別等任務。例如,在機器視覺中,我們可以使用 Connected Components 來找出影像中的各個物體,並對它們進行進一步的處理和分析。

Feature Selection 特徵篩選

在這個步驟中,從圖像中提取出來的特徵進行篩選,選擇出最具代表性和信息量的特徵。這些特徵可以是圖像中的邊緣、角點、紋理等,通常用於後續的物體識別或分類。

Feature Information 特徵資訊

這一步是將從圖像中提取的特徵轉換為可供機器學習算法理解數據格式。這些特徵資訊通常被用於訓練機器學習模型,從而實現圖像識別、量測、瑕疵檢測等應用。

Recognition 辨識

利用機器學習模型其他演算法識別圖像中物體文字其他感興趣的目標。

光學字符識別(OCR)、對象偵測、量測、瑕疵檢測等任務,具體取決於應用的需求和目標。


avatar-img
螃蟹_crab的沙龍
137會員
237內容數
本業是影像辨識軟體開發,閒暇時間進修AI相關內容,將學習到的內容寫成文章分享。
留言
avatar-img
留言分享你的想法!
螃蟹_crab的沙龍 的其他內容
伽瑪校正(Gamma correction)被視為影像增強的一種方法之一。 通過調整 gamma 值,可以改變圖像的亮度和對比度,從而使圖像更清晰或更具有視覺效果。 以下將利用cv2.LUT及numpy的組合實現伽瑪校正,及詳細介紹cv2.LUT 函式應用。
介紹OpenCV中的cv2.matchTemplate和cv2.minMaxLoc函數的使用方法和參數,提供程式範例以及相關特徵匹配的詳細介紹,讓讀者對此有更深入的瞭解。
[OpenCV應用][Python]找出圖像中的四個方位的邊緣點求出寬高 呈上篇應用Numpy找到的座標點,那我們如何捨棄掉差異過大的座標點呢? 可能圖像物件邊緣不佳,採樣就會差異過大,造成計算出的寬高是不準確的。 遇到這種狀況,就可以使用下方的程式範例來篩選座標點。 為求方便,此範例跟圖
使用反三角函數鐘的反正切函數 math.atan2() 計算出兩個座標之間的角度。 實現方法 邊界的最大最小值,相減求得對邊,鄰邊由檢測ROI的寬或高,求得角度 定義旋轉方向性,由邊界最大最小值的座標位子得知,旋轉方向性 程式範例 利用圖中白色物體的上邊界兩個座標點位,算出物體旋轉角度。
觀看本文將可以學習到如何利用Numpy求得物件的邊緣點,及算出物件的寬跟高。 有詳細的程式邏輯說明,及各函式用法說明。 綠點及紅點則是採樣到的邊界點,比較粗的點是偵測到的最大值 完整程式碼 import cv2 import numpy as np import matplotl
瞭解二值化影像的應用和程式語法,包括物體檢測和分割、邊緣檢測、圖像分析和測量、文檔辨識,以及使用cv2.threshold的參數和程式範例。
伽瑪校正(Gamma correction)被視為影像增強的一種方法之一。 通過調整 gamma 值,可以改變圖像的亮度和對比度,從而使圖像更清晰或更具有視覺效果。 以下將利用cv2.LUT及numpy的組合實現伽瑪校正,及詳細介紹cv2.LUT 函式應用。
介紹OpenCV中的cv2.matchTemplate和cv2.minMaxLoc函數的使用方法和參數,提供程式範例以及相關特徵匹配的詳細介紹,讓讀者對此有更深入的瞭解。
[OpenCV應用][Python]找出圖像中的四個方位的邊緣點求出寬高 呈上篇應用Numpy找到的座標點,那我們如何捨棄掉差異過大的座標點呢? 可能圖像物件邊緣不佳,採樣就會差異過大,造成計算出的寬高是不準確的。 遇到這種狀況,就可以使用下方的程式範例來篩選座標點。 為求方便,此範例跟圖
使用反三角函數鐘的反正切函數 math.atan2() 計算出兩個座標之間的角度。 實現方法 邊界的最大最小值,相減求得對邊,鄰邊由檢測ROI的寬或高,求得角度 定義旋轉方向性,由邊界最大最小值的座標位子得知,旋轉方向性 程式範例 利用圖中白色物體的上邊界兩個座標點位,算出物體旋轉角度。
觀看本文將可以學習到如何利用Numpy求得物件的邊緣點,及算出物件的寬跟高。 有詳細的程式邏輯說明,及各函式用法說明。 綠點及紅點則是採樣到的邊界點,比較粗的點是偵測到的最大值 完整程式碼 import cv2 import numpy as np import matplotl
瞭解二值化影像的應用和程式語法,包括物體檢測和分割、邊緣檢測、圖像分析和測量、文檔辨識,以及使用cv2.threshold的參數和程式範例。