正文

圖像處理(4)

Android多媒體開發(fā)高級編程 作者:(美)艾佛瑞


在這個示例中,兩個效果是相鏈接的。如果只想增加對比度而不增加亮度,那么實(shí)際上必須降低亮度來補(bǔ)償在顏色強(qiáng)度方面的增加。

通常,當(dāng)調(diào)整亮度時,對每種顏色只使用矩陣的最后一列會更加簡單。這僅僅是添加到顏色值的量,而無須乘以已有的顏色值。

因此,為了降低亮度,可以使用矩陣代碼如下。

ColorMatrix cm = new ColorMatrix();

float brightness = -25;

cm.set(new float[] {

     1, 0, 0, 0, brightness,

     0, 1, 0, 0, brightness,

     0, 0, 1, 0, brightness,

     0, 0, 0, 1, 0 });

paint.setColorFilter(new ColorMatrixColorFilter(cm));

將這兩種轉(zhuǎn)換合在一起將產(chǎn)生如下代碼。

ColorMatrix cm = new ColorMatrix();

float contrast = 2;

float brightness = -25;

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));

此操作的結(jié)果如圖3-16所示。


上一章目錄下一章

Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號