当前位置: 技术问答>java相关
关于图象过滤的问题?一定给分!!!!!
来源: 互联网 发布时间:2015-01-07
本文导语: class GrayFilter extends RGBImageFilter { public GrayFilter() { this.canFilterIndexColorModel = true; } public int filterRGB(int x,int y,int rgb) { int alpha,r,g,b; int gray; alpha = rgb & (0xFF 16) & 0xFF; g = (rgb >> 8) & 0xF...
class GrayFilter extends RGBImageFilter
{
public GrayFilter()
{
this.canFilterIndexColorModel = true;
}
public int filterRGB(int x,int y,int rgb)
{
int alpha,r,g,b;
int gray;
alpha = rgb & (0xFF 16) & 0xFF;
g = (rgb >> 8) & 0xFF;
b = (rgb >> 0) & 0xFF;
gray = (r + g + b) / 3;
return alpha | gray 8) & 0xFF; // 从传入颜色取出对应绿色的值,8-15位到低8位要右移8位
b = (rgb >> 0) & 0xFF; // 从传入颜色取出对应蓝色的值 0-7位不需移位
gray = (r + g + b) / 3; //每一色彩项的值,加起来除3就是对应的灰度值。
return alpha ¦ gray
{
public GrayFilter()
{
this.canFilterIndexColorModel = true;
}
public int filterRGB(int x,int y,int rgb)
{
int alpha,r,g,b;
int gray;
alpha = rgb & (0xFF 16) & 0xFF;
g = (rgb >> 8) & 0xFF;
b = (rgb >> 0) & 0xFF;
gray = (r + g + b) / 3;
return alpha | gray 8) & 0xFF; // 从传入颜色取出对应绿色的值,8-15位到低8位要右移8位
b = (rgb >> 0) & 0xFF; // 从传入颜色取出对应蓝色的值 0-7位不需移位
gray = (r + g + b) / 3; //每一色彩项的值,加起来除3就是对应的灰度值。
return alpha ¦ gray