亞像素Sub Pixel

亞像素Sub Pixel

評估圖像處理算法時,一般會考慮是否具備亞像素精度。html

亞像素概念的引出:算法

圖像處理過程當中,提升檢測方法的精度通常有兩種方式:一種是提升圖像系統的光學放大倍數和CCD相機的分辨率能力;另外一種是引入亞像素細分技術來彌補硬件的不足以提升圖像系統的分辨率。函數

如使用亞像素細分技術將精度提到到0.01像素,就至關於提升了100倍的圖像系統分辨率。優化

[分辨率能夠從顯示分辨率與圖像分辨率兩個方向來分類。spa

顯示分辨率(屏幕分辨率)是屏幕圖像的精密度,是指顯示器所能顯示的像素有多少。因爲屏幕上的點、線和麪都是由像素組成的,顯示器可顯示的像素越多,畫面就越精細,一樣的屏幕區域內能顯示的信息也越多。顯示分辨率必定的狀況下,顯示屏越小圖像越清晰,反之,顯示屏大小固定時,顯示分辨率越高圖像越清晰。
圖像分辨率則是單位英寸(PPI,pixel per inch)中所包含的像素點數,其定義更趨近於分辨率自己的定義。]

優勢:大大節省系統的硬件投入成本,下降技術應用的難度,擴大其應用範圍。3d

亞像素細分技術最先是由Hueckel M F在a local visual operator which recognizes edges and lines中提出。目前此技術已取得了很好的成果。htm

亞像素Sub Pixel概述
  1. 亞像素定義:

    像素是成像面的基本單位也是最小單位,一般被稱爲圖像的物理分辨率。對象

    如130萬像素爲1280*1024;blog

    若是成像系統要顯示的對象尺寸小於物理分辨率時,成像系統是沒法正常辨識出來的。ci

    實際上,亞像素細分算法是軟件上對物理分辨率的近似優化結果。

    例如:某CMOS成像芯片,其像素間距爲4.5um。在成像時,對物理世界中連續的圖像進行了離散化處理,這時成像面上每個像素點只表明其附近的顏色。

    而兩個像素之間有4.5um的距離,在宏觀上能夠看做是連在一塊兒的,但在微觀上它們之間還有無限更小的東西存在,是兩個物理像素之間的「像素」,這些更小的東西就稱爲「亞像素」。

    【注】:實際上,「亞像素」應該是存在的,只是硬件上沒有比像素更細微的傳感器把它檢測出來而已,因而在軟件上把它能夠近似地計算出來。

    亞像素Sub Pixel概述

    亞像素精度是指相鄰兩像素之間細分狀況。輸入值一般爲二分之一,三分之一或四分之一。這意味着每一個像素將被分爲更小的單元從而對這些更小的單元實施插值算法。例如,若是選擇四分之一,就至關於每一個像素在橫向和縱向上都被看成四個像素來計算。所以,若是一張5x5像素的圖像選擇了四分之一的亞像素精度以後,就等於建立了一張16x16的離散點陣,進而對該點陣進行插值。

     

    插值: 在離散數據的基礎上補插連續函數,使得這條連續曲線經過所有給定的離散數據點。插值是離散函數逼近的重要方法,利用它可經過函數在有限個點處的取值情況,估算出函數在其餘點處的近似值。插值:用來填充圖像變換時像素之間的空隙。

  2. 簡單示例來講明一下:

    以下圖所示:

    較大的點是真實的物理像素點,在物理像素點之間較小的點是亞像素點。

    假設:在理想成像條件下,一個點通過數字化後,在數字圖像上表現爲四個物理像素點的矩形,下圖所示,左上角的四個標記1,2,3,4圍起來的矩形所示。

    若是取整像素值做爲目標的中心座標,

    與採用亞像素方法求出的中心座標相差0.5個物理像素。

    亞像素Sub Pixel概述
    亞像素Sub Pixel概述
  3. 亞像素算法的創建和選擇:

    亞像素定位算法的前提條件是:目標不是孤立的單個像素點,而必須是由必定灰度分佈和形狀分佈的一系列像素點組成。

    通常要通過三個步驟:

    ① 粗定位過程:

    對檢測的目標進行初步定位,獲得像素的精度;

    ② 肯定搜索範圍:

    爲了提升精度和下降運算量,在目標位置附近選擇合適大小的小領域區域做爲分析的搜索區域。

    ③ 細定位過程

    根據區域特色,選擇合適的亞像素算法進行細定位分析以獲得亞像素的精度。

    亞像素Sub Pixel概述
  4. 亞像素細分算法

    ①:幾何方法

    利用圖像中某一目標的幾何特徵獲得亞像素的測量數據,通常是規則形狀的目標,如圓,三角形、正方形等形狀。

    常見的幾何方法有形心法和灰度重心法

    形心法是對圖像中圓、橢圓和矩形等中心對稱的目標進行高精度定位的最簡單的亞像素算法。

    因爲形心法是根據被測目標的幾何特性來肯定位置,因此須要對圖像進行二值化運算,識別 出要處理的目標區域。同時,此算法也要求目標圖像的干擾噪聲儘量小,這樣就不會產生 太大的偏差,通常可進行圖像預處理來減小偏差的產生。當目標圖像的對比度較好時,形心法的精度能夠達到0.1個像素。

     

    灰度重心法是基於形心法的基本原理而造成的經常使用亞像素算法。

    在圖像的亞像素級邊緣提取中,它當作是以灰度或灰度的導數爲權值的加權重心。它的好處在於算法充分利用了對稱目標中每一點的灰度值,一般可得到比形心法更高的定位精度。

    ②:矩估計方法

    矩估計方法是目前亞像素算法中研究最普遍,應用最多的方法。因爲矩是基於積分的運算, 所以矩也被認爲是對噪聲不敏感的穩定特徵,同時矩還具備被測目標的矩特性在成像先後 保持不變的性質。根據矩的這種顯著特色能夠採用模板運算的方式對物體形狀的邊緣進行 亞像素細分。常見的算法有空間矩、灰度矩和ZOM正交矩等。

    ③:插值法

    線性插值是插值算法中最簡單的一種。毫無疑問,它是經過等間隔的線性插值算法來實現對邊緣過渡的細分。所以,其算法最爲簡單,速度快,但精度也不高。

    多項式插值法則改善了線性插值的缺陷,它採用了多項式插值函數來對邊緣進行亞像素細分。

    亞像素Sub Pixel概述
    亞像素Sub Pixel概述
  5. 實踐中,

    許多算法,都具備亞像素精度;對算法進行評估的一個指標是是否具備亞像素精度。

    這是什麼意思呢?

    能夠這樣理解:圖像採用某種算法,通常得出的像素座標爲整數int(x,y);可是若是得出的像素座標不是整數如float(x,y);即數值計算的結果不爲整數;能夠說成算法具備亞像素精度(Sub Pixel Accuracy)的優勢。

    計算的數值比整數值更爲精確,若是須要得出整數,能夠把返回的小數值近似爲最接近的整數。

    亞像素Sub Pixel概述
相關文章
相關標籤/搜索