OCR SaaS: Difference between revisions

No edit summary
No edit summary
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
'''OCR SaaS'''
[[Category:AOCR]]
=OCR SaaS=
:::;SaaS: Software as a Service. Read more about what SaaS means at [http://en.wikipedia.org/wiki/Software_as_a_service| Wikipedia]


'''Needs:'''
==Needs:==
- Accept incoming request and return a refId of the job.
*Accept incoming request and return a refId of the job.
- Process the ocr with the available OCR engines
*Process the ocr with the available OCR engines
- Support zBar for barcode detection
*Support zBar for barcode detection
- Support language detection
*Support language detection
- Support calling endpoints
*Support calling endpoints
- Support round-robin features to share service evenly
*Support round-robin features to share service evenly


'''Future needs:'''
==Future needs:==
- Socket.io support
*Socket.io support
- Cleaning techniques
*Cleaning techniques
- Techniques to determine if the OCR is handwriting or type
*Techniques to determine if the OCR is handwriting or type
- Support imagemagick adjustment techniques for better results
*Support imagemagick adjustment techniques for better results
- Support custom training files
*Support custom training files
- Support Abbyy and OmniPage
*Support Abbyy and OmniPage
- Support EverNote
*Support EverNote
- Support OpenCV image detection features
*Support OpenCV image detection features
*Support OCR outputs that maintain word/character locations (such as hOCR generated by Tesseract - http://code.google.com/p/hocr-tools/)


Current Plans:
==Current Plans:==
- Use NodeJS along with some
*Use NodeJS along with some


Possible Routes
==Possible Routes==
- imageAdd
*imageAdd
- imageRemove
*imageRemove
- imageStatus
*imageStatus
- queueInfo
*queueInfo
- ping
*ping


----
----


'''imageAdd( uri, [id], [endpoint] )'''
'''imageAdd( uri, [id], [endpoint] )'''
returns:
returns:
   {  
   {  
Line 39: Line 43:


'''imageRemove( refId )'''
'''imageRemove( refId )'''
returns:
returns:
   {
   {
   success: bool
   success: bool
   }
   }
==Questions:==
Q1: How will the OCR server get the images to process?  One-at-a-time image uploads aren't that hard and can be scripted, but is there any need for submitting larger datasets via FTP or other mechanisms?

Latest revision as of 15:48, 17 April 2014

OCR SaaS

SaaS
Software as a Service. Read more about what SaaS means at Wikipedia

Needs:

  • Accept incoming request and return a refId of the job.
  • Process the ocr with the available OCR engines
  • Support zBar for barcode detection
  • Support language detection
  • Support calling endpoints
  • Support round-robin features to share service evenly

Future needs:

  • Socket.io support
  • Cleaning techniques
  • Techniques to determine if the OCR is handwriting or type
  • Support imagemagick adjustment techniques for better results
  • Support custom training files
  • Support Abbyy and OmniPage
  • Support EverNote
  • Support OpenCV image detection features
  • Support OCR outputs that maintain word/character locations (such as hOCR generated by Tesseract - http://code.google.com/p/hocr-tools/)

Current Plans:

  • Use NodeJS along with some

Possible Routes

  • imageAdd
  • imageRemove
  • imageStatus
  • queueInfo
  • ping

imageAdd( uri, [id], [endpoint] )

returns:

 { 
  success: bool
, refId: uuid 
 }

imageRemove( refId )

returns:

 {
  success: bool
 }


Questions:

Q1: How will the OCR server get the images to process? One-at-a-time image uploads aren't that hard and can be scripted, but is there any need for submitting larger datasets via FTP or other mechanisms?