YUV格式到RGB格式的轉換
YUYV格式到RGB格式的轉換:
為什麼YUYV格式要轉到RGB格式,視訊的顯示呼叫的多數API都是基於RGB格式,所以需要進行格式的轉換。
YUYV格式如下:
Y0U0Y1V0 Y2U1Y3V1..........
說明:一個Y代表一個畫素,而一個Y和UV組合起來構成一個畫素,所以第0個畫素Y0和第一個畫素Y1都是共用第0個畫素的U0和V0。而每個分量Y,U,V都是佔用一個位元組的儲存空間。所以Y0U0Y1V0相當於兩個畫素,佔用了4個位元組的儲存空間,平均一個畫素佔用兩個位元組。
RGB格式:
R0G0B0 R1G1B1.........
說明:一個畫素由三個分量構成,即一個畫素佔用三個位元組。
先區分一下YUV和YCbCr
YUV色彩模型來源於RGB模型,
該模型的特點是將亮度和色度分離開,從而適合於影象處理領域。
應用:模擬領域
Y'= 0.299*R' + 0.587*G' + 0.114*B'
U'= -0.147*R' - 0.289*G' + 0.436*B' = 0.492*(B'-Y')
V'= 0.615*R' - 0.515*G' - 0.100*B' = 0.877*(R'-Y')
R' = Y' + 1.140*V'
G' = Y' - 0.394*U' - 0.581*V'
B' = Y' + 2.032*U'
YCbCr模型來源於YUV模型。YCbCr是YUV 顏色空間的偏移版本.
應用:數字視訊,ITU-RBT.601建議
Y’ = 0.257*R' + 0.504*G' + 0.098*B' + 16
Cb' = -0.148*R' - 0.291*G' + 0.439*B' + 128
Cr' = 0.439*R' - 0.368*G' - 0.071*B' + 128
R' = 1.164*(Y’-16) + 1.596*(Cr'-128)
G' = 1.164*(Y’-16) - 0.813*(Cr'-128) -0.392*(Cb'-128)
B' = 1.164*(Y’-16) + 2.017*(Cb'-128)
PS: 上面各個符號都帶了一撇,表示該符號在原值基礎上進行了伽馬校正,伽馬校正有助於彌補在抗鋸齒的過程中,線性分配伽馬值所帶來的細節損失,使影象細節更加豐富。在沒有采用伽馬校正的情況下,暗部細節不容易顯現出來,而採用了這一影象增強技術以後,影象的層次更加明晰了。
所以說H264裡面的YUV應屬於YCbCr,也可以點http://www.fourcc.org/yuv.php獲得其他一些資訊.
相關文章
- 【視訊處理】YUV與RGB格式轉換
- YUV420P轉換為RGB32格式
- 為 CameraX ImageAnalysis 進行 YUV 到 RGB 的轉換
- YUV <——> RGB 轉換演算法演算法
- JavaScript rgb與十六進位制格式轉換JavaScript
- RGB2YUV 的verilog實現(RGB轉YUV)
- yuv 到 32 位 rgb 的 快速轉換演算法基mmx 實現 (轉)演算法
- 將BGR轉換成為YUV420SP影像格式
- 輕鬆使用 ffmpeg sdk 實現各種格式的rgb以及yuv raw
- 轉換vmware的vmdk格式到qcow2或者raw格式
- 如何用OpenCV將影像從sRGB格式轉換為Adobe RGB格式OpenCV
- 十六進位制和RGB顏色格式的相互轉換
- 日期格式的轉換
- csv格式怎麼轉換成excel?csv格式轉換成excel格式檔案的方法Excel
- 影像格式轉換
- [時間格式的轉換]
- 一招教你heic格式批量轉換png,必會的格式轉換!
- sql 日期格式轉換SQL
- ABAP日期格式轉換
- openssh key格式轉換
- 【視訊處理】YUV格式說明
- Python字典格式與JSON格式的相互轉換PythonJSON
- 怎麼將bmp格式圖片轉換jpg格式的
- 醫學影象資料格式和格式轉換
- SimpleDateFormat日期格式轉換的使用ORM
- Metal實現YUV轉RGB渲染視訊
- [SSL證書].pfx格式和.Cer格式的區別以及格式互相轉換
- 如何給視訊格式的檔案進行格式轉換 可以轉為音訊格式嗎?音訊
- Python將xml格式轉換為json格式PythonXMLJSON
- 如何將檔案PDF格式轉換成Word格式
- cer格式證書怎麼轉換為pfx格式
- heic格式轉換軟體
- Poi 匯入格式轉換
- Hive資料格式轉換Hive
- 萬能格式轉換工具
- C#日期格式轉換C#
- 轉換UTC時間格式
- 圖片格式轉換器有什麼,怎麼無損轉換heic格式