借鉴在慕客网上的学习,给大家分享一下。目前在自学之中,没什么编程背景,JAVA也在自学之中。希望志同道合的朋友能留个言,大家一起交流。
首先在主界面创建了3个按钮,这三个按钮分别是通过不同的机理来处理图像。PrimaryColor通过选取图像像素的HSI值来改变图像的色调,饱和度,亮度。
public static Bitmap handleImageEffect(Bitmap bm,float hue,float saturation,float lum){
Bitmap bmp=Bitmap.createBitmap(bm.getWidth(),bm.getHeight(),Bitmap.Config.ARGB_8888);
Canvas canvas=new Canvas(bmp);
Paint paint=new Paint(Paint.ANTI_ALIAS_FLAG);
ColorMatrix hueMatrix=new ColorMatrix();
hueMatrix.setRotate(0,hue);
hueMatrix.setRotate(1,hue);
hueMatrix.setRotate(2,hue);
ColorMatrix saturationMatrix=new ColorMatrix();
saturationMatrix.setSaturation(saturation);
ColorMatrix lumMatrix=new ColorMatrix();
lumMatrix.setScale(lum,lum,lum,1);
ColorMatrix imageMatrix=new ColorMatrix();
imageMatrix.postConcat(hueMatrix);
imageMatrix.postConcat(saturationMatrix);
imageMatrix.postConcat(lumMatrix);
paint.setColorFilter(new ColorMatrixColorFilter(imageMatrix));
canvas.drawBitmap(bm,0,0,