Java实现根据分量计算rgb值,并分离rgb分量
使用BufferedImage操作,希望根据分量设置rgb的值,然后读取图片获取rgb值后分离分量。我使用公式((R*256+G)*256+B)计算出RGB的值使用公式i...
使用BufferedImage操作,希望根据分量设置rgb的值,然后读取图片获取rgb值后分离分量。
我使用公式((R * 256 + G) * 256 + B)计算出RGB的值
使用公式
int R = (pixel & 0xff0000) >> 16;
int G = (pixel & 0xff00) >> 8;
int B = (pixel & 0xff);
计算分量,结果不一致。
有没有准确的公式? 展开
我使用公式((R * 256 + G) * 256 + B)计算出RGB的值
使用公式
int R = (pixel & 0xff0000) >> 16;
int G = (pixel & 0xff00) >> 8;
int B = (pixel & 0xff);
计算分量,结果不一致。
有没有准确的公式? 展开
2017-09-06
展开全部
要看清是RGB、还是BGR、、、、另外java中的byte再转成int时是会使用补数的(即是看到是负的)
int R = (pixel>>16) & 0xff;
int G = (pixel>>8) & 0xff;
int B = (pixel & 0xff);
int R = (pixel>>16) & 0xff;
int G = (pixel>>8) & 0xff;
int B = (pixel & 0xff);
追问
是RGB没错,另外我现在使用colorModel将分量转为RGB和将RGB分离分量
然后不能使用jpeg和jpg格式,因为这两种格式不准确,R、G、G三个分量经常会比真正的分量上下浮动1到2。很奇怪为什么
不过使用png可以准确求出分量。
结帖了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询