tess-two를 통해 안드로이드 애플리케이션에 OCR 기능 추가
그곳에서는 Speaker Deck 슬라이드를 표시할 수 있지만 텍스트를 복사할 수 없습니다.
이에 따라 https://github.com/noboru-i/SlideViewer/pull/44/files 변경까지 더해 OCR 기능이 추가됐다.
tess-two 가져오기
Tesseract 나는 OCR의 프로그램 라이브러리를 사용하기로 결정했다.
rmtheis/tess-twoTesseract의 자물쇠 라이브러리는 안드로이드를 쉽게 가져올 수 있을 것 같다.
README에 적힌 대로 추가
compile 'com.rmtheis:tess-two:6.2.0'
.또한 NDK가 필요하므로 참조프로젝트에 C/C++ 코드 추가 | Android Studio로 설치했습니다.
이제 SDK Manager에서 [LDB], [Cmak], [NDK] 세 개만 설치하면 됩니다.
언어 파일 다운로드
Pre-requisites에 기재된 바와 같이
.traineddata
등의 서류가 필요하다.OcrUtil.download 실현해 보았습니다.
디렉터리 이름에도 규칙이 있는 것 같습니다. 이런 느낌. 에서 디렉터리를 생성했습니다.
OkHttp
에서 다운로드하고 FileOutputStream
에 쓰십시오.해석
https://github.com/noboru-i/SlideViewer/pull/44/files#diff-58c7b26f0bf059f14d726dd10196893bR426
glide의 asBitmap을 사용하여 Bitmap을 얻습니다.
OcrUtil.recognizeText
실제 해석 처리를 진행했다.그림도
Bitmap.Config.ARGB_8888
형식이 아닌 경우가 있는데 그러면 오류가 발생하기 때문에 통일로 전환해야 한다.결실
이런 느낌으로 텍스트를 분석할 수 있다.
다만, 배경의 이미지가 복잡한 상황, 문자가 사소한 상황 등은 잘 식별되지 않는 경우가 많다.
또 일본어 사전을 내려받을 수 있는 기능도 있지만, 그 기능을 이용했더라도 일본어에 대한 인식 정밀도는 낮았다.
또 두 가지 언어를 동시에 사용할 수 없어 일본어와 영어가 섞인 텍스트에 대한 식별이 프로그램적으로 아무것도 하지 않으면 의미가 없을 수도 있다.
Reference
이 문제에 관하여(tess-two를 통해 안드로이드 애플리케이션에 OCR 기능 추가), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/noboru_i/items/d08694c6ab9585bd561c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)