嵌入式視頻處理基礎(一)
引言:
作為消費者,我們對於各種形式的視頻系統都已經非常熟悉了。但是從嵌入式開發人員的角度來看,視頻就好像是一張紛繁復雜的網絡,裏面充滿了各種不同的分辨率、格式、標準與顯示等。
人類視覺感知:
理解眼睛如何工作將對理解視頻和圖像技術的發展過程非常重要。正如您所見到的,視頻的格式和壓縮算法都取決於眼睛對各種不同類型的激勵產生什麽樣的反應。
人類眼睛結構
人類眼睛內有兩種類型的視覺細胞:視桿細胞和視錐細胞。視桿細胞主要對光的強度比較敏感,而對顏色不敏感,這些細胞是人類具有夜視能力。另一方面,視錐細胞則不會因為光的強度發生而發生調節,但是卻對波長範圍在400nm(紫色)-700nm(紅色)之間的光比較敏感。所以說,視錐細胞是人類對色彩進行感知的基礎。
從紫色到紅色
視錐細胞類型:
視錐細胞有三種類型,每一種相應於不同的色素,3種細胞分別對紅色、綠色和藍色波長最敏感,盡管這3種細胞對色彩的反應也存在大量的重疊。綜合起來看,人類的視錐細胞對綠色區域的反應是最強的,綠色光的波長為555nm。這就是為什麽在LCD顯示系統上為綠色通道分配比紅色和藍色通道更多比特的原因。
視桿細胞和視錐細胞
紅綠藍視錐細胞的發現直接導致了三原色原理的發展,根據該原理,幾乎任何顏色都可以用不同比例的單一的紅色、綠色和藍色混合而成。
RGB三原色
由於人類眼睛內的視桿細胞要比視錐細胞多的多,所以人類的眼睛對光的強度要比對色彩更加敏感。這樣,人類就可以通過對色彩信息進行下采樣而節約視頻和圖像信息占用的帶寬。
人類眼睛感知特點:
人類眼睛對亮度的感知是對數曲線的,而不是線性的。換句話說,產生大約50%灰度圖像(正好在黑色和白色中間)所需的實際光強度僅僅為產生純白色所需光強度的18%。這一特性對照相機的傳感器和顯示技術來說是及其重要的,這一點可以在伽馬校正(gamma correction)中看到。另外,這一效果還使得對高光強度的量化誤差的敏感度降低,許多媒體編碼算法都利用這一特點獲得自己的優勢。
對數曲線
另一比較奇特的視覺特點是人類眼睛會根據視野環境自動調節,人類的眼睛總會產生自己的參考白色,即使是在低照明或者人工照明的情況下也是如此。由於照相機的傳感器沒有這種特性,這就給白平衡控制帶來的問題,所謂白平衡就是照相機找到其絕對白色的參考點。
人類眼睛對高頻信息的敏感度比低頻信息弱。更重要的是,盡管眼睛能夠覺察出靜態圖像中的細微之處和色彩分辨率,但是它對快速移動的圖像卻沒有這種能力。因此,可以利用變換編碼(DCT、FFT等)和低通濾波器來降低為表示圖像和視頻序列所需的總的帶寬。
DCT變換級數
當圖像的刷新頻率低於每秒50-60次(即50-60Hz)時,眼睛就能夠覺察出圖像的“閃爍”。在昏暗的光照條件下,這個刷新會降低到大約24Hz。除此之外,人類的眼睛還傾向於註意大片的純色區域,而不太註意局部區域。這些特性對於隔行掃描視頻和顯示技術來說具有在重要影響。
視頻信號:
從根本上說,視頻其實就是一個二維數組,數組內容是按一定的幀速率刷新的亮度和色度數據,以此來表達運動的感覺。在CRT(陰極射線管)電視和顯示器上,模擬視頻信號控制一個電子束按從上到下、從左到右的順序照亮屏幕上的熒光粉。
亮度信號的成分舉例
模擬信號中嵌入的同步信號定義了電子束何時開始在熒光粉上“繪畫”,何時電子束無效,這樣電子束就可以從右回到左,並準備開始下一行的掃描,或者從下回到上開始準備下一場或者幀的掃描。
HSYNC、VSYNC和FIELD信號之間的時序關系
HSYNC是水平同步信號,它規定了一個視頻幀中每一視頻行(從左到右)的有效起始點。水平消隱(horizontal blanking)是指一段時間間隔,即電子槍從屏幕的右側返回到下一行的左側所用的時間。
VSYNC是垂直同步信號,它定義了一副新視頻圖像的起始點(從上到下)。垂直消隱(vertical blanking)也是指一段時間間隔,即電子槍從屏幕中圖像的右下角返回到左上角所用的時間。
FIELD信號用於隔行視頻,表示當前正在顯示的是哪個場。這個信號在逐行掃描視頻系統中是不使用的。
視頻信息的傳送最初是從黑到白的相對亮度顯示開始的,由此就誕生了黑白電視系統。空間中某一點的電壓電平直接相關於該點處圖像的亮度水平。後來當彩色電視出現的時候,為了向後兼容過的黑白電視系統,就在現有的亮度信號前面增加了彩色同步信息。彩色信息也稱作色度。
色度
廣播電視系統:
模擬視頻在編碼亮度和彩色信息時有不同的標準。有兩個標準主導的廣播電視領域,分別是NTSC和PAL。其中NTSC標準由美國國家電視委員會制定,而PAL標準是作為NTSC的一個分支開發出來的,在色彩失真性能方面有所提高。
視頻分辨率:
水平分辨率是指圖像中每一行中像素的個數,垂直分辨率是指屏幕上顯示的一幀圖像中有多少個水平的像素行。標清(Standard Definition, SD)的NTSC系統是隔行掃描,具有480行的有效像素,每一行具有720個有效像素(也就是說,總共720*480像素)。幀刷新率大約為30幀/秒(實際為29.97fps),隔行掃描場的刷新率大約為60場/秒(實際為59.94場/秒)。
高清(High-Definition,HD)系統通常采用逐行掃描方式,比標清(SD)系統具有更高的水平和垂直分辨率。我們將主要討論標清系統,而不是高清系統,不過我們的討論大多數也可以推廣到高清系統中更高的幀速率和像素速率。
標清到高清
當我們說到視頻時,一般有兩個主要的分支,分別有各自的分辨率和幀速率。這兩個分支就是計算機圖像格式和廣播視頻格式。表中各個類別中常見的屏幕分辨率和幀速率。雖然這兩個分支產生於兩個不同的領域,具有完全不同的要求(例如,計算機圖像使用RGB逐行掃描方式,而廣播視頻則使用YcbCr隔行掃描方式),但是,在今天的嵌入式領域內,這兩種格式幾乎可以互換。也就是說,VGA格式比較接近於NTSC“D-1”廣播格式,而QVGA格式則大體相當於GIF格式。不過應該註意到,盡管D-1是720像素*486行,但通常卻將其看作720*480像素(這實際上是應用於DVD和其他數字視頻的NTSC“DV”格式中的一種約定)。
圖形與廣播準
由於篇幅,嵌入式視頻基礎這期內容先分享到這裏,下期更精彩。
版權所有權歸卿萃科技,轉載請註明出處
作者:卿萃科技ALIFPGA
原文地址:卿萃科技FPGA極客空間 微信公眾號
掃描二維碼關註卿萃科技FPGA極客空間
嵌入式視頻處理基礎(一)