Changes

Jump to navigation Jump to search
25 bytes added ,  13:44, 19 February 2018
no edit summary
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  
**Create a golden set
+
* USDA UNII list of ingredients (will also work for Open Beauty Facts)
*** e.g.  someproduct.jpg -> ingredients image
+
 
*** someproduct.golden -> ingredients text
+
 
*** then we create a script that runs the OCR through the images, compare with the golden text, and report some accuracy measures
+
=== Testing ===
*** Draft Script: https://lite6.framapad.org/p/OFF_OCR_Script
+
==== Create a golden set of products that are complete ====
* Integrate custom lists from the live instances; language per language.
+
* Product
** http://de.openfoodfacts.org/zutaten
+
** Category: "Ingredients complete" "Ingredient images selected"
** http://uk.openfoodfacts.org/ingredients + http://us.openfoodfacts.org/ingredients
+
** Get the ingredients image
**http:// fr.openfoodfacts.org/ingredients
+
** Get the canonical (typed by contributors) ingredient list
** USDA UNII list of ingredients (will also work for Open Beauty Facts)
+
** 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
 +
 
==  Long-term goals ==
 
==  Long-term goals ==
* Get dictionaries translations from Wikidata
+
* Get dictionaries translations from Wikidata
* Investigate Ocropus for complex layout extractions
+
* Investigate Ocropus for complex layout extractions
* Investigate Open CV for detection of patterns, logos…
+
* Investigate Open CV for detection of patterns, logos…
    
== Targets ==  
 
== Targets ==  
Line 35: Line 39:  
* Text (distorted - bottle case, diagonally - with low light, bright light)
 
* Text (distorted - bottle case, diagonally - with low light, bright light)
 
* Standardized layouts (US Nutrition labels)
 
* Standardized layouts (US Nutrition labels)
 +
** Store in separate image for further reference
 
* Standardized text (quantities, EU Packaging codes)
 
* Standardized text (quantities, EU Packaging codes)
 +
** Store in separate image for further reference
 
* Barcodes (extraction in uploaded images)
 
* Barcodes (extraction in uploaded images)
 
** Store in separate image for further reference
 
** Store in separate image for further reference
Line 44: 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]]

Navigation menu