簡體   English   中英

Android圖像處理,像素顏色和陰影

[英]Android Image Processing,Pixel colors and shades

我正在使用一個調色板應用程序,在該應用程序中,我必須生成一種顏色的不同陰影並將其轉換為其他顏色及其陰影。 這是從位圖獲取所有像素的代碼。

這里mImage是我的位圖。

        int width = mImage.getWidth();
        int height = mImage.getHeight();
        int[] pixels = new int[width * height];
        mImage.getPixels(pixels, 0, width, 0, 0, width, height);

您可以進一步看到此鏈接,這些鏈接可能會告訴您如何生成陰影。

問題:我正在使用-34454323之類的整數值獲取所有顏色。 我對於如何找到給定的整數代碼是某種純色陰影或本身是純色感到非常困惑。

另一個問題:是否有任何直接方法可以將像素的色相和飽和度屬性更改為某些目標像素。

就像將深藍色像素轉換為淺紅色像素一樣。

您可以使用BitmapShader,這是Romain Guy提供的關於它的不錯的教程http://www.curious-creature.org/2012/12/13/android-recipe-2-fun-with-shaders/

之所以會出現這種奇怪的錯誤,是因為getPixels返回了數組“ packed ints”-每個數組都代表一個Color對象(請參見此處的完整文檔)。 int的每個8位分別是B,G,R顏色。

如果您想要像素的RGB的確切值,則需要執行以下操作

// code untested
int R = (intcolor >> 16) & 0xff;
int G = (intcolor >> 8) & 0xff;
int B = intcolor & 0xff;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM