Преобразование из Pix в Bitmap изменяет пикс

У меня есть Android AsyncTask, который многократно преобразует Pix в Bitmap с использованием метода ReadFile.readBitmap(bitmap) библиотеки Leptonica. Я выполняю это преобразование после завершения любой операции обработки изображения и получения из него объекта Pix.

Я считаю, что результат OCR с использованием Tesseract лучше, когда я не конвертирую Bitmap в Pix. Однако я не конвертировал Pix в Bitmap ни в одной из операций. Типичный цикл выглядит так:

 mOperation=CONVERT_TO_8;
 Pix pix2=convertOperation(pix);
 mOperation=PIX_TO_BITMAP;
 Bitmap bitmap2=convertPixToBitmap(pix2);
 publishProgress(bitmap2);
 mOperation=SCALE_PIX;//next operation...

Итак, что мне нужно сделать, если я хочу сохранить качество результата OCR, отображая растровое изображение как прогресс.


person vamsiampolu    schedule 11.11.2013    source источник


Ответы (1)


Я до сих пор не знаю ответа на этот вопрос, но, вероятно, да. Я использовал метод глубокого копирования, доступный в Leptonica, чтобы скопировать Pix во временный объект Pix перед преобразованием его в Bitmap. Теперь он работает отлично:

 Pix temp=pix.copy();
person vamsiampolu    schedule 14.11.2013