84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
如何将一张普通图片转成64级灰度图片?在Java或者Android平台上。
人生最曼妙的风景,竟是内心的淡定与从容!
public static Bitmap convertGreyImg(Bitmap img) { int width = img.getWidth(); //获取位图的宽 int height = img.getHeight(); //获取位图的高 int[] pixels = new int[width * height]; //通过位图的大小创建像素点数组 img.getPixels(pixels, 0, width, 0, 0, width, height); int alpha = 0xFF << 24; for (int i = 0; i < height; i++) { for (int j = 0; j < width; j++) { int original = pixels[width * i + j]; int red = ((original & 0x00FF0000) >> 16); int green = ((original & 0x0000FF00) >> 8); int blue = (original & 0x000000FF); int grey = (int) ((float) red * 0.3 + (float) green * 0.59 + (float) blue * 0.11); grey = alpha | (grey << 16) | (grey << 8) | grey; pixels[width * i + j] = grey; } } Bitmap result = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); result.setPixels(pixels, 0, width, 0, 0, width, height); return result; }
參考資料:Android實現圖片相似度
去看下Android的這個類別ColorMatrixAndroid的矩陣(一):ColorMatrix
參考資料:Android實現圖片相似度
去看下Android的這個類別ColorMatrix
Android的矩陣(一):ColorMatrix