請問16bits BMP如何得知RGB數據 |
答題得分者是:syntax
|
shanesss
一般會員 發表:14 回覆:18 積分:6 註冊:2008-08-19 發送簡訊給我 |
|
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
看似屬於 影音多媒體程式設計討論區(C Builder) 但其實是屬於 新手區的文章
簡單的說,就是 「簡單的」bits數據轉換 bits conversion H = 1 ~ 8 隨便設一個 R = ((0xFF7F >> 11) * H) & 0xFF G = (((0xFF7F & 0x07E0) >> 5) * H) & 0xFF B = ((0xFF7F & 0x001F) * H) & 0xFF RGB32 = (R << 16) | (G << 8) | B) ===================引 用 shanesss 文 章=================== 例如: 一個BMP 16bits RGB565格式, 某個pixel 資料為0xFF7F, 我知道B佔5bits G佔6bits B佔5bits 但要如何轉成0~255範圍內的顏色數據呢?(例如R為0x55,G為0xF1,B為0x13) 像BMP 32bits一樣.. 謝謝 |
shanesss
一般會員 發表:14 回覆:18 積分:6 註冊:2008-08-19 發送簡訊給我 |
感謝syntax指導,
但是我得到RGB32的值為0x1F3B1F, 正確數值是0x7EFFFF 是哪裡需要注意嗎? 其實我是要做二值化轉換,需要知道每個pixel的RGB正確數值, 目前就16bits有問題(無法很精準) 還有 H = 1 ~ 8 隨便設一個 R = ((0xFF7F >> 11) * H) & 0xFF G = (((0xFF7F & 0x07E0) >> 5) * H) & 0xFF B = ((0xFF7F & 0x001F) * H) & 0xFF H是隨便設一個值?? 那這樣不就可以忽略H嗎? 謝謝 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |