as3.0 Flex 图像处理

as3.0 Flex 图像处理
已知的一些图像处理,主要是得到颜色过滤矩阵,不完整,大家一起来补充。
//颜色转换数组,所有的0都是可调值
public var colorArray:Array = [1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0];
1.处理图像为灰度:
//取值范围0~3
colorArray[0] = (1-0)*0.3086+0;
colorArray[1] = (1-0)*0.6094;
colorArray[2] = (1-0)*0.0820;
colorArray[5] = (1-0)*0.3086;
colorArray[6] = (1-0)*0.6094+0;
colorArray[7] = (1-0)*0.0820;
colorArray[10] = (1-0)*0.3086;
colorArray[11] = (1-0)*0.6094;
colorArray[12] = (1-0)*0.0820+0;
colorArray[18] = 1;
image.filters = [new ColorMatrixFilter(colorArray)];
2.亮度调节:
var brightness:Number;//取值范围0~5
colorArray[0] = brightness;
colorArray[6] = brightness;
colorArray[12] = brightness;
colorArray[18] = 1;
img.filters = [new ColorMatrixFilter(colorArray)];
3.饱和度调节:
var saturation:Number;//取值范围0~3
colorArray[0] = (1-saturation)*0.3086+saturation;
colorArray[1] = (1-saturation)*0.6094;
colorArray[2] = (1-saturation)*0.0820;
colorArray[5] = (1-saturation)*0.3086;
colorArray[6] = (1-saturation)*0.6094+saturation;
colorArray[7] = (1-saturation)*0.0820;
colorArray[10] = (1-saturation)*0.3086;
colorArray[11] = (1-saturation)*0.6094;
colorArray[12] = (1-saturation)*0.0820+saturation;
colorArray[18] = 1;
img.filters = [new ColorMatrixFilter(colorArray)];
4.对比度调节:
var contrast:Number;//取值范围0~1
var a:Number = contrast*11;
var b:Number = 63.5-(contrast*698.5);
colorArray[0] = a;
colorArray[4] = b;
colorArray[6] = a;
colorArray[9] = b;
colorArray[12] = a;
colorArray[14] = b;
colorArray[18] = 1;
img.filters = [new ColorMatrixFilter(colorArray)];
5.水平翻转:
var planeBitmapData:BitmapData = new BitmapData( img.width, img.height );
var planeMatrix : Matrix = new Matrix(-1, 0, 0, 1, img.contentWidth, 0 );
planeBitmapData.draw( img, planeMatrix );
var planeBitmap:Bitmap = new Bitmap(planeBitmapData);
img.source = planeBitmap;
6.垂直翻转:
var apeakBitmapData:BitmapData = new BitmapData( img.width, img.height );
var apeakMatrix : Matrix = new Matrix(1, 0, 0, -1, 0, img.contentHeight );
var apeakBitmap:Bitmap = new Bitmap(apeakBitmapData);
apeakBitmapData.draw( img, apeakMatrix );
img.source = apeakBitmap;
7.浮雕效果:
img.filters = [new ConvolutionFilter(3,3,[-10,-1,0,-1,1,1,0,1,10])];
 
转自: http://blog.sina.com.cn/s/blog_4c73b2c70100mfux.html
原文地址:https://www.cnblogs.com/xxjudfc/p/3713217.html