jonathanpalma / react-native-tesseract-ocr

Tesseract OCR wrapper for React Native
MIT License
561 stars 172 forks source link

Support Tesseract 4.0 #98

Closed dllz closed 3 years ago

dllz commented 3 years ago

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] The Android library this uses only supports tesseract 3.0, this is because the framework underneath last got updated 2 years ago. There is a fork of that library that seems to of upgraded to v4.1 of tesseract. https://github.com/alexcohn/tess-two Describe the solution you'd like A clear and concise description of what you want to happen. Switch your underlying android implementation to the other tess-two library that supports the newer version of tesseract.

arunahuja94 commented 3 years ago

There is the fork of tess-two library upgraded to v4.1 https://github.com/adaptech-cz/Tesseract4Android and the dependency for that is

dependencies {
    implementation 'cz.adaptech.android:tesseract4android:2.1.1'
}
dllz commented 3 years ago

@arunahuja94 Is it easy to switch across to this? I imagine the function signatures changed between versions?

jonathanpalma commented 3 years ago

@dllz I decided not to use alexcohn's fork since it might not receive long term support (you can check it here), however I have been looking for another option and I think the one suggested by @arunahuja94 seems pretty stable at first look. I will try to dedicate some time to check if it is something feasible in the next few days but if this is something you have already worked on, please feel free to submit a PR and I will review it. Thank you guys!

dllz commented 3 years ago

I have not had a chance to work on it yet, been finishing up some other things first. That being said I will start digging into it tonight and keep you updated.

arunahuja94 commented 3 years ago

@dllz it is working after changing the dependencies , but the output has not improved , image preprocessing is required for that, haven't found any good way to to do that in react native yet

dllz commented 3 years ago

@arunahuja94 Surprisingly for my use case I have noticed a huge improvement, speed is a lot better as well on mobile, worse in emulator, also switching to the 'best' data files made a big difference https://github.com/tesseract-ocr/tessdata_best

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.