<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 數(shù)字視頻基本知識探討

          數(shù)字視頻基本知識探討

          作者: 時間:2012-11-07 來源:網(wǎng)絡(luò) 收藏
          nbsp; ‘4個字節(jié),填入固定值0
          End Type
          在BMP中記錄的圖像數(shù)據(jù)不一定就是RGB或Y的值,可以只是一個”編號”,而這個”編號”對應(yīng)的實(shí)際RGB顏色要從顏色表中查出來。24位真彩圖因為直接記錄了RGB值,所以是不需要顏色表的,因此在24位真彩BMP文件中沒有顏色表這部分,而其它的情況下就必須有一個顏色表。顏色表一共256項,每一項4個字節(jié),前三個字節(jié)分別代表B、G、R值,最后一個字節(jié)為0。我們來以8位灰度圖舉例說明,8位灰度圖是黑白圖像,記錄的實(shí)際上就是亮度分量Y,根據(jù)RGB三基色原理,R=Y、B=Y、G=Y的時候合成的就是一個亮度為Y的灰色像素,極限的情況,當(dāng)R=255、G=255、B=255時表示最白的像素,當(dāng)R=0、G=0、B=0時表示最黑的像素。因此顏色表的值應(yīng)為:0,0,0,0,1,1,1,0,2,2,2,0,3,3,3,0……..255,255,255,0。
          BMP文件的最后部分記錄圖像數(shù)據(jù),也是數(shù)據(jù)量最大的部分。一幀圖像的像素數(shù)據(jù)填入BMP文件的順序是:先填最下面的一行,從左到右依次一個個像素依次填入,這樣一行行一直到填完最上面的一行。對于8位灰度圖,對每個像素數(shù)據(jù)只需填入一個字節(jié)的Y值。對于24位真彩圖,要填3個字節(jié),注意:先填B值,再填G值,最后是R值。
          總結(jié)一下:灰度圖的BMP文件由“文件頭+圖像特征描述塊+顏色表+圖像數(shù)據(jù)Y”組成。24位真彩圖由“文件頭+圖像特征描述塊+圖像數(shù)據(jù)BGR”組成。如果讀者對于這些不熟悉,可以在WINDOWS的畫圖工具中畫一副圖,保存為上面的格式,然后用二進(jìn)制編輯工具比如UltraEdit 來觀察和分析文件的內(nèi)容。關(guān)于BMP文件的更多知識,讀者可以進(jìn)一步查閱資料。
          現(xiàn)在再回頭討論一下視頻保存為BMP圖像的格式。對于流,由于一幀中有效的行數(shù)是固定的576行,所以如果把它轉(zhuǎn)換成576行的BMP圖像,當(dāng)然最簡單,而且可以取得較好的效果。而如果取別的值,比如600行或者400行,那么就必須進(jìn)行插值運(yùn)算,依據(jù)現(xiàn)有的行計算出假想中的行,這樣的轉(zhuǎn)換其運(yùn)算量很大,對圖像的質(zhì)量也有一定損失,一般要用專門的硬件來實(shí)現(xiàn)(一般高檔的視頻捕捉卡帶有這樣的功能)。那么是不是說只能轉(zhuǎn)換成576行呢?當(dāng)然也不是,比如可以轉(zhuǎn)換成288行,隔一行取一行,實(shí)際上就是只采集了一場。另外還可以丟棄一些行,比如只取中間的480行,而上下各丟掉48行,這樣得到的圖像雖然被裁剪了,但清晰度不會下降。再來看看一行中應(yīng)該采多少個像素。由于模擬視頻信號幅值在一行中是連續(xù)變化的,因此采樣數(shù)沒有行數(shù)那樣的限制。比如我們可以采400個像素,當(dāng)然也可以采401個像素,這取決于我們對水平分辨率的要求,一行中所采得的像素越多,則分辨率越高,但需要注意亮度信號的帶寬是有限的,采樣率高到一定程度后,再提高就沒有意義了。前面說了,CCIR601標(biāo)準(zhǔn)的規(guī)定是一行采720個有效像素。除了這個標(biāo)準(zhǔn)外,比較常用的另一種標(biāo)準(zhǔn)是一行采768個有效像素。說到這兒,順便說一下,在計算機(jī)上用視頻捕捉卡捕捉圖像時,驅(qū)動程序提供的圖像格式是固定的幾種,比如768*576、720*576、384*288、320*288等,為什么只提供這些格式,以前不明白的讀者現(xiàn)在知道了吧!
          現(xiàn)在我們知道了模擬視頻變換為流后的格式,也知道了怎樣創(chuàng)建和保存BMP文件,但是我們還不能把從流中截取的圖像數(shù)據(jù)保存為BMP文件,因為數(shù)字視頻流是用YUV描述的,而BMP文件是用RGB描述的。它們之間怎么轉(zhuǎn)換呢?這就是色彩空間轉(zhuǎn)換的問題。
          RGB和YUV的對應(yīng)關(guān)系用代數(shù)方程式表示如下:
          Y = 0.299R + 0.587G + 0.114B
          U = - 0.147R- 0.289G + 0.436B
          V = 0.615R - 0.515G - 0.100B
          或者:
          R=Y+1.14V
          B=Y+2.03U
          G=Y-0.58V-0.39U
          CCIR601標(biāo)準(zhǔn)中定義的值與上面略有不同。在考慮了人的視覺系統(tǒng)和CRT顯示器的非線性特性之后,推薦的轉(zhuǎn)換方程如下:
          R = Y + 1.371 V
          G = Y - 0.698 *V - 0.336 U
          B = Y + 1.732 U
          不過讀者要注意,上面的方程中的UV值因為符號擴(kuò)展的原因平移了128,實(shí)際應(yīng)該使用下面的這個修正的方程:
          R = Y + 1.371 * (V - 128)
          G = Y - 0.698 * (V - 128) - 0.336 * (U - 128)
          B = Y + 1.732 * (U - 128)
          對于上面的方程有幾點(diǎn)說明:1、有一些采集卡會指定U、V為有符號數(shù)或無符號數(shù),使用上面的方程時不要考慮這些,而認(rèn)為Y、U、V是從采集卡得到的一個0到255之間的無符號的值。2、用上面的公式計算出的R、G、B值可能會超出0到255的范圍,應(yīng)該在計算完后進(jìn)行檢查,如果值小于0,則修正為0,如果值大于255,則修正為255。上面的轉(zhuǎn)換方法經(jīng)過我的實(shí)際使用,證明其效果是良好的。hubeitv
          空談了這么多,來點(diǎn)更直觀的吧!我們來看看一幀實(shí)際的圖像。右邊這幀圖像是用武漢萬德數(shù)碼技術(shù)有限公司生產(chǎn)的VC302嵌入式視頻捕捉卡得到的,信號源是電視機(jī)的視頻輸出。圖像的像素分辨率是320*240(采集了一場中的288行,每行360個像素,但只從中截取了240行,每行截取了320個像素),第一幅是Y分量描述出的黑白圖像,第二幅是U分量描述,第三幅是V分量描述,第四幅是YUV合成后的彩色圖像。黑白圖像與如此模糊的UV分量圖合成后竟然可以得到色彩這么真實(shí)的彩色圖像,你是不是有點(diǎn)難以相信?我也不敢相信,但這就是事實(shí)!從這些圖的比較中我們可以得出這樣的結(jié)論:1、Y分量基本上保留了彩色圖像的輪廓細(xì)節(jié),其分辨率是較高的。2、UV分量主觀感覺十分模糊,分辨率低,只是大約地描述了整塊的色彩,這正是所謂的“大面積著色”。3、我們在觀察合成的彩色圖像的時候并沒有覺得圖像的色彩模糊,這說明人眼對色彩細(xì)節(jié)的分辨能力是多么差!
          接著,我們來討論一下圖像的顯示問題。這個問題屬于軟件的范疇,大部分讀者都比較熟悉,我不準(zhǔn)備說太多。一種方法是把得到的YUV數(shù)據(jù)轉(zhuǎn)換成RGB后來顯示。另一種辦法是直接用YUV數(shù)據(jù)來顯示,現(xiàn)在的顯卡都具備把YUV數(shù)據(jù)通過硬件直接轉(zhuǎn)換為RGB的能力,通過使用Direct Draw技術(shù),把YUV數(shù)據(jù)直接提交給顯卡,這樣就省掉了軟件轉(zhuǎn)換所花費(fèi)的CPU時間。在嵌入式領(lǐng)域,可以使用數(shù)字接口的液晶顯示器顯示,要根據(jù)其具體情況來處理。
          最后,說一下視頻開發(fā)中常見的一些問題。1、首先要注意區(qū)分視頻信號的制式。我國的電視臺發(fā)送的信號是PAL制信號,所以電視機(jī)的視頻輸出是PAL制。但是電視機(jī)也可以接受其它制式的信號,比如VCD機(jī)的視頻輸出有很多是NTSC制的,在電視機(jī)上也可以播放。在我國市場上銷售的攝像機(jī)(我說的是工業(yè)攝像機(jī),而不是家用的攝錄像機(jī))大部分是PAL制的,但也有的是NTSC制,而且有的可以通過機(jī)身上的撥碼開關(guān)來設(shè)定制式。2、有些DVD機(jī)采用了一些特別的辦法來提高清晰度,比如所謂的“逐行掃描”,它們輸出的信號與標(biāo)準(zhǔn)信號相比有一些差別,在電視機(jī)上播放是不會有問題的,但是一些采集卡卻不能識別,導(dǎo)致采集的圖像紊亂,所以在調(diào)試過程中要慎用DVD作信號源。3、分辨率的問題。分辨率一般是指垂直方向能分辨的等間隔排列的黑白條紋的最大線數(shù)。我們先來看看模擬視頻,視頻信號行正程的時間是52μs,而視頻信號的帶寬最大6 MHz,假定1Hz可以描述2個像素點(diǎn),這樣算來最多的線數(shù)=52μ*6M*2=624線。而實(shí)際上在編輯、存儲、傳輸、還原過程中會有很多損失,所以電視機(jī)上的圖像分辨率是遠(yuǎn)低于這個值的,一般約在240-340線左右。對于攝像機(jī)的視頻輸出,有的黑白攝像機(jī)標(biāo)稱分辨率高達(dá)600線,理論上這個分辨率是有可能達(dá)到的。而彩色攝像機(jī)標(biāo)稱的分辨率有380線、420線、480線等規(guī)格。再來看看數(shù)字視頻流,數(shù)字視頻中一行采樣的像素數(shù)是固定的,CCIR601的規(guī)定是720個像素,如果用線來表示,極限值是720線,可見大于模擬視頻的分辨率。 在安防監(jiān)控工程中,最常用的視頻源是420線或480線的彩色攝像機(jī),扣除傳輸過程中的損失,最后能達(dá)到380線就不錯了,保存為圖像時每行取360像素比較恰當(dāng),再增加像素數(shù),清晰度雖然仍有提高,但已不太明顯。在工業(yè)領(lǐng)域,有時對分辨率有特別苛刻的要求,


          關(guān)鍵詞: 數(shù)字視頻

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();