#红绿蓝颜色编码RGB
# 1.紅綠藍(lán)三色每個色調(diào)的度數(shù)按強(qiáng)弱分成0-255個度,三個顏色各用八位表示共占24位,一個整數(shù)?占四字節(jié)(byte)共32bit,舍棄前八位用后八位剛好可以表示一個紅、綠、藍(lán)各顏色配兌的編碼。所以剛好可以用一個整數(shù)表示一個有顏色的圖片。
# 2.要提取紅、綠、藍(lán)各自的度數(shù),只需提取對應(yīng)八位二進(jìn)制轉(zhuǎn)換為十進(jìn)制,可以采用移位法獲得,左側(cè)無數(shù)時,直接右移留下需要的那八位取成二進(jìn)制,左側(cè)有數(shù)時先做移把對應(yīng)二進(jìn)制之前的部分?jǐn)D出,然后左移剩下想要的那八位轉(zhuǎn)換成二進(jìn)制,
# 3左移后又右移時注意,左移后再右移可能會把左邊最高當(dāng)成符號位當(dāng)負(fù)數(shù)輸出,要做無符號右移
#? 4.拆分各顏色編碼:可以采取與0和1組成的編碼與之相與去掉有效位之外的1,然后左移剩下需要的幾位編碼轉(zhuǎn)換成十進(jìn)制就行,相與時選和原序列相同的01編碼,將需要保留的位對應(yīng)的位全設(shè)為一,其余全設(shè)為零,然后與原系列相與,然后就可的到頭尾帶零的小目標(biāo)系列,然后左移直到剩下想要的系列即可
#5.合并各顏色編碼:將紅色編碼放在高24-16位其余位設(shè)為1,與全1的32位系列相與得第一個系列,然后將15-8的系列設(shè)為綠的的編碼其余全設(shè)成一得到32位二進(jìn)制系列,與第一個系列相與得到第二序列,在將7-1位設(shè)為藍(lán)色編碼,其余全設(shè)為1,然后與第二個序列相與得到第三個系列。然后把第三個系列前八位置零即可得到對應(yīng)的紅綠藍(lán)組成的編碼,轉(zhuǎn)成對應(yīng)十進(jìn)制就可以的到對應(yīng)的顏色代碼
總結(jié)
以上是生活随笔為你收集整理的#红绿蓝颜色编码RGB的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年全球CT和PET扫描仪收入大约
- 下一篇: PyTorch logit函数