1. 程式人生 > >計算機視覺(Computer Vision)基本概念

計算機視覺(Computer Vision)基本概念

1. 影象分割

    從影象中將某個特定區域與其他部分進行分離並提取出來的處理就是影象分割。因為影象分割處理實際上就是區分影象中的“前景目標”和“背景”,所以通常又稱之為影象的二值化處理。影象分割在影象分析、影象識別、影象檢測等方面佔有非常重要的低位。

    在計算機視覺領域,影象分割(Segmentation)指的是將數字影象細分為多個影象子區域(畫素的集合)(也被稱作超畫素)的過程。影象分割的目的是簡化或改變影象的表示形式,使得影象更容易理解和分析。影象分割通常用於定點陣圖像中的物體和邊界(線,曲線等)

    更精確的,影象分割是對影象中的每個畫素加標籤的一個過程,這一過程使得具有相同標籤的畫素具有某種共同視覺特性。影象分割的結果是影象上子區域的集合(這些子區域的全體覆蓋了整個影象),或是從影象中提取的輪廓線的集合(例如邊緣檢測)。一個子區域中的每個畫素在某種特性的度量下或是由計算得出的特性都是相似的,例如顏色、亮度、紋理。鄰接區域在某種特性的度量下有很大的不同。


    在影象分割的處理中,其實可以將影象視作是由畫素組成的有序集合,而影象分割就是將此集合按照某種規則劃分出若干子集的過程。

    在影象分割的處理中,其實可以將影象視作是由畫素組成的有序集合,而影象分割就是將此集合按照某種規則劃分出若干子集的過程。

    影象分割的方法依照分割時所依據的影象特徵不同,大致可以分為三大類:

    1)閾值方法:這種方法是根據影象的灰度值分佈特性來確定某個閾值來進行影象分割;

    2)邊界分割法:這種方法是通過檢測出封閉某個區域的邊界來進行影象分割的。通俗的講,這類方法實際上就是沿著閉合的邊緣線將其包圍的區域剪切出來;

   3)區域提取方法:這類方法的特點是根據特定區域與其他背景區域特性上的不同來進行影象分割。

2. 歐氏距離( Euclidean Distance)

通常我們總是習慣在相應的起點和終點之間用直線段相連, 並求取相應的直線距離, 即歐氏距離。

    但是, 這種方法並非對所有的情況都有效, 當兩點間的直線段有一部分不落在所考慮的區域之內時(如小船在湖泊中航行的例子), 歐氏距離對所討論的問題實際上是沒有意義的, 這就是歐距離在 空間分析過程中的侷限性。其原因在於定義區域中兩點間的距離時, 沒有考慮到區域的連通性, 只考慮了起點和終點間的抽象距離。

3. 測地距離(Geodesic Distance)

    測地距離是數學形態學中的一個重要概念,主要用於流域分割(流域又稱集水區域,是指流經其中的水流和其它物質從一個公共的出水口排出從而形 成一個集中的排水區域)。

    如下圖一連通圖形所示,A、B是其中兩點,按通常歐式距離( Euclidean distance)也稱歐幾里得距離,它是一個通常採用的距離定義,它是在m維空間中兩個點之間的真實距離)的定義,A、B間的距離應為直線段AB的長度,但是有時線段AB的一部分可能會不包括在連通圖形X內,如在下圖中線段AB就有一段沒有包含在連通的圖形中,因此這種距離有其不合理的一面。現用如下方法重新定義A、B之間的距離:由於下圖是連通的,故在所給圖一的連通圖形中至少有一條線路可以連線A、B兩點,如下圖一所示,所有這些線中最短的一條稱為A、B間的測地弧。測地弧的長度稱為A、B間的測地距離,記為D(A-B)。

    

4. SIFT特徵

      SIFT(Scale-invariant feature transform):尺度不變特徵變換,是用於影象處理領域的一種描述。這種描述具有尺度不變性,可在影象中檢測出關鍵點,是一種區域性特徵描述子。
      SIFT特徵是基於物體上的一些區域性外觀的興趣點而與影像的大小和旋轉無關。對於光線、噪聲、微視角改變的容忍度也相當高。基於這些特性,它們是高度顯著而且相對容易擷取,在母數龐大的特徵資料庫中,很容易辨識物體而且鮮有誤認。使用SIFT特徵描述對於部分物體遮蔽的偵測率也相當高,甚至只需要3個以上的SIFT物體特徵就足以計算出位置與方位。在現今的電腦硬體速度下和小型的特徵資料庫條件下,辨識速度可接近即時運算。SIFT特徵的資訊量大,適合在海量資料庫中快速準確匹配。

4.1 SIFT演算法的特點

     SIFT演算法具有如下一些特點:
     1)SIFT特徵是影象的區域性特徵,其對旋轉、尺度縮放、亮度變化保持不變性,對視角變化、仿射變換、噪聲也保持一定程度的穩定性;
2)獨特性(Distinctiveness)好:資訊量豐富,適用於在海量特徵資料庫中進行快速、準確的匹配;
3)多量性:即使少數的幾個物體也可以產生大量的SIFT特徵向量;
4)高速性:經優化的SIFT匹配演算法甚至可以達到實時的要求;
5)可擴充套件性:可以很方便的與其他形式的特徵向量進行聯合。

4.2 SIFT特徵檢測編輯

    SIFT特徵檢測主要包括以下4個基本步驟:
    1)尺度空間極值檢測
          搜尋所有尺度上的影象位置。通過高斯微分函式來識別潛在的對於尺度和旋轉不變的興趣點。
2)關鍵點定位
在每個候選的位置上,通過一個擬合精細的模型來確定位置和尺度。關鍵點的選擇依據於它們的穩定程度。
3)方向確定
基於影象區域性的梯度方向,分配給每個關鍵點位置一個或多個方向。所有後面的對影象資料的操作都相對於關鍵點的方向、尺度和位置進行變換,從而提供對於這些變換的不變性。
4)關鍵點描述
在每個關鍵點周圍的鄰域內,在選定的尺度上測量影象區域性的梯度。這些梯度被變換成一種表示,這種表示允許比較大的區域性形狀的變形和光照變化。

4.3 SIFT特徵匹配

     SIFT特徵匹配主要包括2個階段:
     第一階段:SIFT特徵的生成,即從多幅影象中提取對尺度縮放、旋轉、亮度變化無關的特徵向量。
     第二階段:SIFT特徵向量的匹配。
  

5. BOW (bag of words) 詞袋模型

    SIFT特徵雖然也能描述一幅影象,但是每個SIFT向量都是128維的,而且一幅影象通常都包含成百上千個SIFT向量,在進行相似度計算時,這個計算量是非常大的,通行的做法是用聚類演算法(如K-means)對這些向量資料進行聚類,然後用聚類中的一個簇代表BOW中的一個視覺詞,將同一幅影象的SIFT向量對映到視覺詞序列生成碼本,這樣每一幅影象只用一個碼本向量來描述,這樣計算相似度時效率就大大提高了。

6. Haar-like特徵

    Haar-like特徵:Haar特徵值反映了影象的灰度變化情況。最早是由Papageorgiou等應用於人臉表示。
    Haar特徵分為三類:邊緣特徵、線性特徵、中心特徵和對角線特徵,組合成特徵模板。特徵模板內有白色和黑色兩種矩形,並定義該模板的特徵值為白色矩形畫素和減去黑色矩形畫素和。  
    例如:臉部的一些特徵能由矩形特徵簡單的描述,如:眼睛要比臉頰顏色要深,鼻樑兩側比鼻樑顏色要深,嘴巴比周圍顏色要深等。但矩形特徵只對一些簡單的圖形結構,如邊緣、線段較敏感,所以只能描述特定走向(水平、垂直、對角)的結構。

7. DPM特徵(可變部件模型

    DPM(Deformable Part Model):可變部件模型
    DPM是一個非常成功的目標檢測演算法,連續獲得VOC(Visual Object Class)07,08,09年的檢測冠軍。目前已成為眾多分類器、分割、人體姿態和行為分類的重要部分。2010年Pedro Felzenszwalb被VOC授予"終身成就獎"。DPM可以看做是HOG(Histogrrams of Oriented Gradients)的擴充套件,大體思路與HOG一致。先計算梯度方向直方圖,然後用SVM(Surpport Vector Machine )訓練得到物體的梯度模型(Model)。有了這樣的模板就可以直接用來分類了,簡單理解就是模型和目標匹配。DPM只是在模型上做了很多改進工作。

8. 計算機視覺基本任務

    計算機視覺的三個基本任務:

     1)物件檢測(object detection)

     2)物件跟蹤(object tracking)

     3)物件分割(object segmentation)

8.1 物件檢測

     物件檢測的目標:檢測並定點陣圖像或視訊中的各類物件。物件類別:如人臉、行人、小汽車等。

     演算法主要有:Haar-like、HOG、LBP、DPM

     HOG: 不能檢測人的各種變化(人的關節會動)。

     DPM:需要離線訓練且訓練樣本成本高。在實際使用時,不能處理大的變化。

     Video可比靜態影象提供額外的資訊:optical flow和motion constraints,這些資訊可以輔助物件檢測。運動特徵計算量大。

8.2 物件檢測的非監督學習

     對於影象或視訊,收集完整的訓練資料成本很高。所以基本一個基本模型,進行線上學習,從而獲得分類的經驗。

8.3 跟蹤單個物件

     1)Mean-shift 

           所有相關的方法其計算量很大

8.4 跟蹤多個物件 

      1)Markov-Chain Monte-Carlo Data Association (MCMCDA)

8.5 人體分割(Human Segmentation)

      把人從背景中扣出來。  

      1)Superpixels