程式碼:點我
圖引:點我
這次作業做的是YUV色彩模型轉換
上圖為介面,已經將圖給叫進來,右邊分別為BG平面、BR平面、GR平面及UV平面,底下有對應的B/G/R/Y可以輸入,因為會做轉換所以Y可以跟RGB使用同樣的值
上圖為4個平面在BGRY=0時的狀況
上圖為轉換後的影像狀況,右下角為所點選轉換的色彩
上圖為BGRY=100時的狀況
上圖為轉換後的影像狀況
最困難的部分不外乎是YUV的色彩轉換,不過因為老師有給公式所以總體上也不會說難到一個無法的地步
iC=iY-16;
iD=iU-128;
iE=iV-128;
iR=((298*iC+409*iE+128)>>8);
iG=((298*iC-100*iD-208*iE+128)>>8);
iB=((298*iC+516*iD+128)>>8);
此為YUV轉RGB的轉換公式
再來是將圖轉換顏色,這個需要先將RGB轉成YUV再轉成RGB
iY=((66*iR+129*iG+25*iB+128)>>8)+16;
iU =((-38*iR-74*iG+112*iB+128)>>8)+128;
iV =((112*iR-94*iG-18*iB+128)>>8)+128;
此為RGB轉YUV的轉換公式
途中需要把RGB換成所點選的RGB而非原圖的RGB
這次作業是本學期最難的作業,難度至少比之前的作業難上兩倍之多,什麼時候該怎麼轉換的邏輯是必要的,除此之外其實沒什麼
沒有留言:
張貼留言