实现步骤:
1、重新计算每个像素点的RGB值:
int fr= (int) colorBlend(noise(),(tr*0.393)+(tg*0.769)+(tb*0.189),tr);int fg= (int) colorBlend(noise(),(tr*0.349)+(tg*0.686)+(tb*0.168),tg);int fb= (int) colorBlend(noise(),(tr*0.272)+(tg*0.534)+(tb*0.131),tb);
2、获取混合的权重系数:
private double noise(){ return Math.random()*0.5+0.5;}
3、根据权重系数,将该像素点重新混合:
private double colorBlend(double scale,double dest,double src){ return (scale*dest+(1.0-scale)*src);}