2016-04-27 3 views
0

Я разработчик Android, и я интегрирую Tesseract для сканирования OCR. для моего приложения у меня есть требование обнаружить OCR с любого угла телефона и в любом режиме (портретном или альбомном) телефона. Для этого я пытаюсь получить ориентацию и угол наклона OCR, и на основе этого я буду обрабатывать изображение и обрабатывать OCR.Ориентация и обнаружение скриптов (OSD) с использованием Tesseract в Android

Я отправился через различные сообщения, чтобы найти способ получить ориентацию, но не смог добиться успеха. Согласно одному из поста упоминается, чтобы получить ориентацию и угол наклона, используя следующую логику:

inputfile = "/usr/src/tesseract-3.02/eurotextUpsideDown.png"; 
image = pixRead(inputfile); 

api->Init("/usr/src/tesseract-3.02/", "eng"); 
api->SetPageSegMode(tesseract::PSM_AUTO_OSD); 
api->SetImage(image); 
api->Recognize(0); 

tesseract::PageIterator* it = api->AnalyseLayout(); 
tesseract::Orientation orientation; 
tesseract::WritingDirection direction; 
tesseract::TextlineOrder order; 
float deskew_angle; 

it->Orientation(&orientation, &direction, &order, &deskew_angle); 
printf("Orientation: %d;\nWritingDirection: %d\nTextlineOrder: %d\n" \ 
     "Deskew angle: %.4f\n", 
     orientation, direction, order, deskew_angle); 

Но андроида я не могу найти поддерживаемый метод AnalyseLayout() в TessBaseApi.java классе.

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

Любая информация будет полезной.

ответ

0

Вы как-то ответили на свой вопрос здесь. Причина, по которой метод AnalyseLayout недоступен, заключается в том, что он не был реализован в Android API (на сегодняшний день). Вам нужно будет реализовать его самостоятельно.

Вместо этого вы можете взглянуть на метод Leptica Skew.findSkew. Вот пример его использования в классе SkewTest.

 Смежные вопросы

  • Нет связанных вопросов^_^