ก่อนอื่นเราจะมาทำความรู้จักกับคำว่า OCR กันก่อน
OCR หรือ optical character recognition คือการรู้จำอักขระด้วยแสง หรือก็คือการแปลงไฟล์ภาพเอกสาร ให้เป็นไฟล์ข้อความโดยอัตโนมัติทีนี้เมื่อเราจะนำ OCR มาใช้กับการเขียน Application บนระบบปฎิบัติการ Android เนี่ย ( ซึ่งในที่นี้เราเลือกใช้ OCR ที่ชื่อ Tesseract ) เราจะเรียกใช้ด้วย Library ของมัน แต่ก่อนอื่นต้องมีการ Build Library ก่อนนะคะ มีขั้นตอนดังนี้
* อย่าลืมติดตั้ง Android NDK แล้วก็ Apace Ant ด้วย
1. โหลด source หรือ clone จากลิงค์นี้ https://github.com/rmtheis/tess-two โปรเจคนี้จะมี tools สำหรับคอมไพล์ Tesseract, Leptonica และ JPEG libraries สำหรับใช้งานบน Android. และเป็น Eclipse Android library
2. Build project นี้โดยใช้ commands (ของ Linux จะสะดวกกว่า แนะนำให้ใช้ Terminal ของ Ubuntu ในการ Build ) พิมพ์คำสั่งดังนี้
- เข้าไปที่ project-directory ของ project tess-two ด้วยคำสั่ง
cd <project-directory>/tess-two
- ก่อนจะใช้คำสั่ง ndk-build อย่าลืม set path Android NDK (วิธี set path บน Ubuntu)
ndk-build
android update project --path .
- ก่อนจะใช้คำสั่ง ant release อย่าลืม set path Apace Ant (วิธีการคล้ายๆ กับการ set path Android NDK )
ant release
เป็นอันเสร็จขั้นตอนการ Build project library
ต่อไปจะเป็นการนำ project นี้ไปทำเป็น library
ในที่นี้เราจะใช้ร่วมกับ Eclipse นะคะ1. เปิด Eclipse ขึ้นมา
2. import project tess-two
- File > Import
- เลือก Existing Projects into Workspace
- คลิก Browser แล้วเลือก Folder ที่จะ import คลิก OK > finish
- คลิกขวาที่ Project tess-two > properties
- Android > ติ๊กถูกที่ Is Library > OK
เป็นอันจบขั้นตอนการนำ Tesseract มาทำเป็น Library สำหรับใช้ในการเขียน Application ของ Android ค่ะ
android update project --path แล้วขึ้น
ตอบลบbash: android: command not found
คับ แก้ไงอ่ะ
ต้อง set path ทุกครั้งก่อนค่ะ วิธีทำก็คล้ายๆ กันกับ NDK ค่ะ ลองดู
ลบถ้าไม่ได้ set path ให้เรียกโดย C:\android-ndk-r9b\ndk-build
ลบผมแตกไฟล์ NDK ไว้ในไดร์ C
android update project --path ก็เหมือนกันครับ
ลบE:\adt-bundle-windows-x86_64-20131030\sdk\tools\android update project --path
ลองทำใน Ubuntu ดูค่ะ อันนี้ทำใน Ubuntu เคยลองทำใน Windows แล้วค่อนข้างจะมีปัญหาเรื่องพวกคำสั่ง command อ่ะค่ะ แต่ถ้าจะทำใน Windows จะใช้โปรแกรมจำลอง Terminal ของ Ubuntu ในการพิมพ์คำสั่งค่ะ
ลบความคิดเห็นนี้ถูกผู้เขียนลบ
ตอบลบสวัสดีครับ
ตอบลบผมกำลังทำโปรเจ็คกับTesseractแต่ว่าผมก็ทำการtrainให้มันรู้จักภาษาไทยไม่เป็นครับ
มีอะไรช่วยแนะนำผมด้วยครับ
ขอบคุณครับ
Train ตามขั้นตอนนี้เลยค่ะ https://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3 แนะนำว่าทำบน Linux จะมีปัญหาน้อยกว่า Windows ค่ะ
ลบคำสั่งข้อที่ 2 ใช้ windows ทำได้มั้ยครับ
ตอบลบคือตอนนี้ ผมจะทำโปรเจ็คจบ เกี่ยวกับการทำ แอพ ocr อ่ะ ครับ ผมขอติดต่อโดยตรงได้มั้ย พอจะมีเวลาช่วยสอนได้รึป่าวครับ
ตอบลบw.sethanoo-oat@hotmail.com อีเมลล์ นะครับ
ขอบคุณล่วงหน้านะครับ
ติดตรงไหนก็ถามมาได้ค่ะ จะพยายามตอบ อันนี้ก็ทำเป็นโปรเจ็คจบเหมือนกัน แต่มันก็นานแล้วมีเลือนๆบ้างเหมือนกัน 555
ลบไดคำตอบไหมครับ
ลบandroid update project --path
ตอบลบแล้วขึ้น 'android' is not recognized as an internal or external command, operable program of batch file
แก้ยังไงหรอครับ
ในการทำ android update project --path
ต้องทำใน directory ไหนหรอครับ