Salve Moçada Bunita do GUJ!
Bem... estou desenvolvendo uma aplicação para android na qual o cliente capturará uma imagem e dela selecionará uma area da imagem a ser manipulada pelo tesseract....
Ou seja... A pessoa vai "tirar uma foto" de um texto e selecionará uma area dessa imagem para que seja transformada em texto....
A parte da selecao da area eu já desenrolei: vide....
O que está pegando agora é a implementação do Tesseract....
Eu tentei seguir este tutorial até criei o projeto no Eclipse e chamei-o no meu projeto...
E criei esta função:public void ClickBotao(){
btGerarOCR.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Bitmap bitmap = ActivityMarcacaoCampos.this.IVSelecionar.getImagem().copy(Bitmap.Config.ARGB_8888, true);
TessBaseAPI baseAPI = new TessBaseAPI();
baseAPI.init(DATA_PATH, "en");
baseAPI.setImage(bitmap);
String lido = baseAPI.getUTF8Text();
baseAPI.end();
//Alerta("Ainta nao está criada esta função :(", "OCR lido na imagem:");
}
});
}
Que quando um certo botão é clickado ele pega uma imagem e "OCeRra" ela...
porém retorna este erro:
07-31 10:14:53.421: E/AndroidRuntime(26420): java.lang.ExceptionInInitializerError
07-31 10:14:53.421: E/AndroidRuntime(26420): at com.compras.ActivityMarcacaoCampos$1.onClick(ActivityMarcacaoCampos.java:80)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.view.View.performClick(View.java:2485)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.view.View$PerformClick.run(View.java:9080)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.os.Handler.handleCallback(Handler.java:587)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.os.Handler.dispatchMessage(Handler.java:92)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.os.Looper.loop(Looper.java:130)
07-31 10:14:53.421: E/AndroidRuntime(26420): at android.app.ActivityThread.main(ActivityThread.java:3687)
07-31 10:14:53.421: E/AndroidRuntime(26420): at java.lang.reflect.Method.invokeNative(Native Method)
07-31 10:14:53.421: E/AndroidRuntime(26420): at java.lang.reflect.Method.invoke(Method.java:507)
07-31 10:14:53.421: E/AndroidRuntime(26420): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
07-31 10:14:53.421: E/AndroidRuntime(26420): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
07-31 10:14:53.421: E/AndroidRuntime(26420): at dalvik.system.NativeStart.main(Native Method)
07-31 10:14:53.421: E/AndroidRuntime(26420): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load lept: findLibrary returned null
07-31 10:14:53.421: E/AndroidRuntime(26420): at java.lang.Runtime.loadLibrary(Runtime.java:429)
07-31 10:14:53.421: E/AndroidRuntime(26420): at java.lang.System.loadLibrary(System.java:554)
07-31 10:14:53.421: E/AndroidRuntime(26420): at com.googlecode.tesseract.android.TessBaseAPI.(TessBaseAPI.java:47)
07-31 10:14:53.421: E/AndroidRuntime(26420): ... 12 more
Alguem pode me ajudar??
Eu também vi o Tesjeract.... que é o JNI do Tesseract....
Alguem já trabalhou com ele?? tem alguma diferença??
Obrigado pela atenção!
Qualquer ajuda será bem vinda!
Fiquem com DEUS!
TessBaseAPI baseAPI = new TessBaseAPI();
No editor do Eclipse quando você pressiona "Ctrl + Space" ele até aparece a opção do "TessBaseAPI"... e quando execulta ele diz que não foi implementado :/


