android图像编辑和处理(三)

改变图像的对比度、亮度、整体色调等:

ColorMatrix:一个数字数组,可以对图像的像素进行操作,但是操作的事颜色值--每个像素的Red(红)、Green(绿)、Blue(蓝);

                          ColorMatrix cm=new ColorMatrix();
				cm.set(new float[]{
						2,0,0,0,0,
						0,1,0,0,0,
						0,0,1,0,0,
						0,0,0,1,0
				});
				paint.setColorFilter(new ColorMatrixColorFilter(cm));
new float[]中的第一行包含单个像素的红色部分上发生的操作;第二行影响的绿色部分;第三行影响的蓝色部分;而最后一行操作像素的Alpha值。

新的红色值=2*128+0*128+0*128+0*0+0;(表示红色值翻了两倍)

新的蓝色值=0*128+1*128+0*128+0*0+0;

新的绿色值=0*128+0*128+1*128+0*0+0;

新的Alpha值=0*128+0*128+0*128+1*0+0;


改变对比度和亮度:

                                float contrast=2;
				float brightness=-25;
				ColorMatrix cm=new ColorMatrix();
				cm.set(new float[]{
						contrast,0,0,0,brightness,
						0,contrast,0,0,brightness,
						0,0,contrast,0,brightness,
						0,0,0,contrast,0
				});
				paint.setColorFilter(new ColorMatrixColorFilter(cm));

改变饱和度:

ColorMatrix类有内置的方法可用于改变饱和度

cm.setSaturation(0.5f);//改变饱和度,传入大于1的数字将增加饱和度,传入0~1数字减少饱和度,0值将产生一幅灰度图像。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值