Giter Club home page Giter Club logo

fastocr's Introduction

Fast OCR is a free and opensource Optical Character Recognition Service.

What The the service does?

This application receive a http multipart request with a image file, extract text using OCR from Tesseract and returns the result. I know it's not an UNIQUE project but my main goal is to make a fast and less resource intensive OCR web service.

Live Demo.

https://ocr.0x30c4.dev

Built With.

  • Docker - Platform and Software Deployment
  • FastApi - Backend Frame-work.
  • Nginx - For Load Balancing.
  • ReactJs - Front-end Frame-work

Prerequisites.

Make sure you have git, nodejs, make and Docker installed.

Version.

Deploy Docker Container (Production Version.).

Clone the repo.

$ git clone https://github.com/0x30c4/FastOCR

Create the data/media/uploads directory where all the images will be.

$ mkdir -p data/media/uploads 

You can change the uploads directory location by changing it from the .env.prod

Build the front-end with node. (Optional step)

$ cd front-end
$ npm run build
$ cd -

Create a docker volume for the postgres database to be persistent.

$ docker volume create pgdata

If you want to take backup of the databse then you can backup the /var/lib/docker/volumes/pgdata directory.

Build the container.

$ make build

Now deploy the production version of the image using make.

$ make up # to run in the foreground.
or 
$ make up op=-d # to run the container in background.

Check logs.

$ docker logs nginx_proxy # this is the nginx container.
$ docker logs ocr_api_srv # this is the FastApi app.
$ docker logs postgres # this is the postgres database.

You can add docker logs -f/--follow <container_name> to follow log output

Stop the container.

$ make down

Deploy Docker Container (Development Version.).

fastocr's People

Contributors

0x30c4 avatar dependabot[bot] avatar imgbotapp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

fastocr's Issues

No benchmark

It is nice that you created a Fast OCR.
Could you please document what do you mean with fast?
It is fast compared to what? It is fast to do what? It is fast running in which hardware?

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.