当前位置: 动力学知识库 > 问答 > 编程问答 >

Cannot get the original colored bitmap after tesseract processing - android

问题描述:

I use tesseract library for android to capture certain text from an image. I know that the captured image is not saved anywhere, it gets recycled. I need to find the original colored bitmap. I have been trying to locate the original colored bitmap, but all I could find was a grayscaled bitmap:

Bitmap bitmap = activity.getCameraManager().buildLuminanceSource(data, width, height).renderCroppedGreyscaleBitmap();

When I save this bitmap to the sdcard, I get a gray scaled image. renderCroppedGreyscaleBitmap() method is as follows:

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;

}

I would greatly appreciate if someone can tell me to get the original colored image captured. Do I have to change this method to get the colored image(RGB)?

分享给朋友:
您可能感兴趣的文章:
随机阅读: