← Вакансіі

Improve OCR accuracy using Tesseract in Python

Бюджэт: $200.0 FIXED / ⭐ 0.00 (0) Poland

ocr-tesseract, python, ocr-algorithms, machine-learning

Пераважная кваліфікацыя

  • Вопыт: Сярэдні
I have a small script in Python which reads Amazon price charts and extracts price ranges from those images using Tesseract library. Comments taken out, the script is only about 100 lines. A price range is a set of min price, max price values on "Y" (vertical) axis in the price chart image, along with respective Y-axis (vertical axis) positions, where Y-axis position goes from bottom left corner of the image to the top. Both Python and Tesseract are latest versions. E.g. for example price chart image attached (working.png), the script returns the following correct JSON response: "priceMin": 0, "priceMax": 1500, "yMin": 24, "yMax": 454. So min price is $0 and it's detected at Y (vertical position) 24 pixels counting from bottom left corner of the image upwards, and max price is $1,500, detected at Y-position = 454 px. Take a look at the attached image and you'll immediately see what I mean. Problem is, sometimes (approximately 15 charts out of 100) the script FAILS to correctly determine min or max price values along with their Y-coordinates. It then returns the next closest price on Y-axis, but that causes issues elsewhere. E.g. for another file attached, notworking.png, the response is "priceMin": 10, "priceMax": 30, "yMin": 69, "yMax": 249 priceMax:30 and yMax:249 is wrong; it should rather be priceMax:50. I'm looking for someone to go in and modify the script to improve OCR accuracy. The font in the price charts is always the same, so perhaps there's a way to train Tesseract to improve accuracty of character recognition closer to 100%. All price charts are always the same dimensions (1000px wide , 500px vertically PNG images). The position of Y-axis in each image slightly varies because obviously larger prices e.g. "$1,500" need more space to render than e.g. "$10". I've attached the script and example working and not working price charts, single price chart of each type. However, we operate and analyze hundreds of thousands of price charts, so I can provide as many "working" and "not working" images as necessary. The script is invoked from the command line as "minmax2.py %path_to_image_file%". If you place the script and price chart in the same directory, you can simply run it as "minmax2.py pricechart.png". We run it on the latest Ubuntu Linux. The acceptance criteria could be "make the script working on 20 price charts that are failing right now, and keep 20 that are detected correctly right now still working, without hardcoding anything", but I'm open to suggestions. I'll obviously provide the working and not working images before start. Please let me know your fixed price to fix and how long it'll take. This is a one-off, fixed-price job and I'm ready to hire and escrow funds right away. Please start your response with the word ILLFIX. Thank you.
Адкрыць заказ

AI-чарнавік адказу

Згенеруйце кароткі cover letter па гэтай вакансіі. Перад адпраўкай адрэдагуйце.

Увайдзіце, каб згенерыраваць AI-чарнавік.

Увайсці