使用C 將RGB24轉換為YUV420格式

2021-10-19 02:04:54 字數 880 閱讀 6935

1.原料準備!首先我們獲得rgb原始資料,這裡不能使用jpg等壓縮格式,需要先將轉換為rgb格式的裸資料儲存!這裡提供乙個** ,可以做轉換!

2.轉碼:使用下面的**即可轉換為yuv420!有需要的同學可以試試看!

filestream fs = new filestream("./test.rgb", filemode.open);

binaryreader br = new binaryreader(fs);

int length = (int)fs.length;

byte yuv = br.readbytes((int)fs.length);

br.close();

fs.close();

//將rgb 資料轉化為420後傳遞

//1.讀取rgb資料

int height = 240;

int width = 320;

byte r, g, b;

byte yuvlist = new byte[width * height * 3 / 2]; //儲存yuv資料

//2.轉為yuv資料

// 開始資料轉換

int count = 0;

int ycount = 0;

for (int i = 0; i < height; i++)}}

//將二進位製流寫入檔案

fs = new filestream("./1.yuv", filemode.openorcreate);

binarywriter bw = new binarywriter(fs);

bw.write(yuvlist);

bw.close();

fs.close();

(YUV420轉化RGB24)編譯通過

做了一段時間的攝像頭,看了網上很多帖子,也學習了不少東西,自己總結下,希望給需要的人以參考 自己測試過,沒有問題,廢話少說。說說我的環境吧 系統 fc4,ubuntu 7.04,8.04 均測試過 攝像頭 網眼v2000 介面 qt3.3 核心首先ov511 預設輸出是yuv420,一下是實現yuv...

如何將24位RGB顏色轉換16位RGB顏色

有許多朋友第一次使用16位彩色顯示屏會遇到如何將24位rgb顏色轉換為對應的16位rgb顏色的問題,我們知道24位rgb是分別由8位紅色,8位綠色以及8位藍色組成 rrrrrrrr gggggggg bbbbbbbb 例如 24位rgb紅色表示方法為 11111111 00000000 000000...

Python 每日一題 145 轉換RGB顏色值

題目 轉換rbg顏色值 我們知道在網頁中的顏色值設定都是用16進製制的rgb來表示的,比如 ffffff,表示r 255,g 255,b 255的白色。現在請設計乙個函式可以轉換rgb的16進製制至10進製,或者轉換10進製至16進製制輸出格式。例 print color ffffff 255,25...