谁能告诉我这个函数的作用是什么?对图像做了什么处理?最好能每一句都解释。

public Bitmap renderCroppedGreyscaleBitmap() {
int width = getWidth();
int height = getHeight();
int[] pixels = new int[width * height];
byte[] yuv = yuvData;
int inputOffset = top * dataWidth + left;

for (int y = 0; y < height; y++) {
int outputOffset = y * width;
for (int x = 0; x < width; x++) {
int grey = yuv[inputOffset + x] & 0xff;
pixels[outputOffset + x] = 0xFF000000 | (grey * 0x00010101);
}
inputOffset += dataWidth;
}

Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
return bitmap;
}
}

第1个回答  2014-06-05
首先是提取原始图像的像素值byte[] yuv

然后逐个像素值进行灰度化int grey

最后二值化,将结果放在int[] pixels里边

最后返回二值图像return bitmap;
第2个回答  2014-05-04
个人认为,这是一个 bitmap 图像生成的函数
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); 这个地方是 生成指定宽高和格式的bitmap
第3个回答  2011-05-21
很多变量都是在类里定义的,还有自定义的类,这怎么给你解析?把完整的代码发过来再说。
相似回答