Line 1: |
Line 1: |
| Currently, all products are edited manually. This project is about automatic or semi-automatic detection of a number of things using OCR and Computer vision. | | Currently, all products are edited manually. This project is about automatic or semi-automatic detection of a number of things using OCR and Computer vision. |
| | | |
− | == Current state == | + | == Product Opener improvements == |
− | * OCR extraction of Ingredients using Tesseract 2 (production) and 3 (.net) | + | * Process all uploaded images using Tesseract and/or the New Cloud based engine |
− | * Uses the French dictionary for all languages | + | * Return JSON to mobile client and/or web client for suggestions to the user |
− | <pre>
| + | * Add support to search into OCR results |
− | -- /home/off-fr/cgi# grep get_ocr *
| + | |
− | Ingredients.pm:use Image::OCR::Tesseract 'get_ocr';
| + | == TODO == |
− | Ingredients.pm: $text = decode utf8=>get_ocr($image,undef,'fra');
| + | * Process Open Beauty Facts images |
− | </pre>
| + | * Process the Belgian Food Photographs |
− | * Has a small custom dictionary for French ( /usr/share/tesseract-ocr/tessdata/fra.user-words) | + | |
− | **https://code.google.com/p/tesseract-ocr/wiki/FAQ#How_do_I_provide_my_own_dictionary
| |
| == Short term goals == | | == Short term goals == |
| * Use the right standard dict for each language | | * Use the right standard dict for each language |
| * Integrate custom lists from Global Ingredients Taxonomy | | * Integrate custom lists from Global Ingredients Taxonomy |
| * USDA UNII list of ingredients (will also work for Open Beauty Facts) | | * USDA UNII list of ingredients (will also work for Open Beauty Facts) |
− | * Integrate custom lists from the live instances; language per language.
| + | |
− | ** http://de.openfoodfacts.org/zutaten
| |
− | ** http://uk.openfoodfacts.org/ingredients + http://us.openfoodfacts.org/ingredients
| |
− | **http:// fr.openfoodfacts.org/ingredients
| |
− | ===Dictionaries ===
| |
− | * https://openfoodfacts.slack.com/files/teolemon/F08FC3T6V/deu.user-words
| |
− | * https://openfoodfacts.slack.com/files/teolemon/F08FBT3BM/eng.user-words
| |
− | * https://openfoodfacts.slack.com/files/teolemon/F08FBNBLG/fra.user-words
| |
− | * https://openfoodfacts.slack.com/files/teolemon/F08FBQ45D/nld.user-words
| |
− | * https://openfoodfacts.slack.com/files/teolemon/F08FBQ45V/spa.user-words
| |
| | | |
| === Testing === | | === Testing === |
− | **Create a golden set
| + | ==== Create a golden set of products that are complete ==== |
− | *** e.g. someproduct.jpg -> ingredients image | + | * Product |
− | *** someproduct.golden -> ingredients text | + | ** Category: "Ingredients complete" "Ingredient images selected" |
− | *** then we create a script that runs the OCR through the images, compare with the golden text, and report some accuracy measures | + | ** Get the ingredients image |
− | *** Draft Script: https://lite6.framapad.org/p/OFF_OCR_Script
| + | ** Get the canonical (typed by contributors) ingredient list |
− | | + | ** Get the ingredients list generated with the current OCR system |
− | | + | ** Generate the ingredient list on your laptop based on the image, and the custom dictionary above |
− | | + | ** Compare the result with the canonical/golden test and report some accuracy measures |
− | | + | * Draft Script: https://lite6.framapad.org/p/OFF_OCR_Script |
| + | === Easy wins === |
| * Process all images and make products searchable, even if not filled yet | | * Process all images and make products searchable, even if not filled yet |
| | | |
Line 59: |
Line 50: |
| Extracting areas is already great work: if we can extract logos or patterns, it will be faster for humans to double check and turn that into text. | | Extracting areas is already great work: if we can extract logos or patterns, it will be faster for humans to double check and turn that into text. |
| | | |
| + | [[Category:Roadmap]] |
| [[Category:Project]] | | [[Category:Project]] |
− | [[Category:Product Opener]] | + | [[Category:ProductOpener]] |
| + | [[Category:OCR]] |
| + | [[Category:Artificial Intelligence]] |