1. 程式人生 > >專業的談談0~255,16~235的產生和歷史及合理設定,專業叫法Y/C伸張壓縮

專業的談談0~255,16~235的產生和歷史及合理設定,專業叫法Y/C伸張壓縮

電視機產生的歷史比PC顯示器悠久,這是人都該知道的。TV的誕生伴隨著時代的侷限性,首先是黑白電視機誕生的最早,為了討好黑白電視機使用者,彩色電視機必須相容黑白電視機,注意:誕生彩色電視機的時候,全地球公民都在用黑白電視機,你敢和他們對抗?全部拋棄黑白電視機使用者?P.S. QQ好像也是這麼個一回事...

因此二個可惡的東西誕生了,首先彩色電視機的彩色訊號必須壓縮,研究人員們討巧的截去了最不敏感的色彩資訊,色差分量就是這麼來地。於是Y/C伸張和壓縮也就一起發生了。RGB 0-255的模式無法運作於已有的黑白電視傳輸系統中,因為頻寬有限。因此必須改用色差分量來傳輸,並且壓縮至16~235的色階範圍。

其二,逐行輸出一樣不可行,要相容黑白電視機,原有的電視頻寬就不夠。因此“聰明”的科研人員們發明了隔行模式,將一副電視畫面拆分成二個場去輸出。由於電視掃描速度快,觀眾不會察覺。卻省下了一半的訊號頻寬。就這樣,造成了子孫後代們的無盡痛苦...可惡的交錯波紋啊...至今仍然不能完美解決。



好了,先不談反交錯的問題。就談今天的0-255。注意,老有些底子不行,還到處當講師的中鳥在這個地方提微軟,這玩意兒和微軟沒關係。他只不過解釋了一下0-255,不是他說了算。人家PC輸出就是這麼跑的,微軟只不過順勢在Windows中也這麼用罷了。

好了,PC是0-255,電視攝像機記錄下的是16-235 (由於電視機先入為主,所有的視訊記錄系統全部已經預設16-235為事實標準,不會再改)。那麼放到電腦上看,那就是PC視訊中不會有最黑的黑色0,最白的白色255也不會在視訊中存在。因此顏色會顯得似乎發白,高亮處不夠亮。

有些喜歡數學的同學,就出了個點子。那就是Y/C伸張。既然你視訊系統全部做Y/C壓縮。那我就想辦法還原一下。公式懶得講了,在excel文件裡,以前研究過懶得找。用數學的方法把16當0來處理,其他17~235的色階,我就儘量平均的分佈於1~255之中。那麼睜大你的眼睛看了


219個色階放到255個色階中會是什麼結果?不蠢的人都明白,有36個色階沒有顯示任何東西,色階的跳躍不可避免!這也是前思路幾個版主一直主張你調整顯示器而不是做Y/C伸張的原因。要想完美看視訊,只能到電視機或者投影機上!或者你調整顯示器把16顯示成最黑,一切OK,因為PC最亮的255也不準確,完美的顯示器應該擁有太陽的亮度,可那是不可能的事情,人類對暗部細節更敏感。白色調低根本就影響不大。所以調整顯示器也是不錯的選擇。你要在顯示器上更完美的看視訊,請這麼做。

好了,這中間誰有錯,誰也沒錯。完美的視訊本來就是給電視機,投影機放的。人家標準裡,就沒考慮你在電腦上看的人。注意Windows 7 codecs的選項,會問你是在電視投影機上看,還是PC上,很討巧。Y/C伸張到底該不該存在。微軟說,不關我的事,既然不可能完美的轉換16-235到0-255,也就不可能成為標準,我不參合,你們自己看著辦。 前ATi攬了過來,我要討好使用者,我的顯示卡驅動視訊全部開啟Y/C伸張,那樣色彩鮮豔一點,普通使用者知道個屁,他肯定以為好啦。NV說,媽的,播放器該做的事,關我什麼屁事。播放器自己選擇到底要不要做Y/C伸張啊。本來Y/C伸張就不是什麼標準。後來迫於使用者的壓力,驅動中也加入了調整0-255的選項。


就是這麼一檔子破事,你們整天無休止的吵來吵去,累不累?來點有料的行不?一年四季沒完沒了就說這個事。你們到底搞清楚沒有?我再問你一句,你看得出區別,分得清好壞不?二張一樣的照片,人類也會本能的作出一個更好,一個更壞的選擇,人性的弱點。就和到菜市場本能的挑蘋果一個道理,挑來挑去,最後只要不是壞掉的,一樣是全部被人買光。每次買回蘋果你都會心安理德,可你反思過沒有,別人家買到的蘋果,就一定比你差?作為消費者永遠只選擇最適合自己的,就這樣了。