Code Monkey home page Code Monkey logo

memento's Introduction

Memento - Meme organizer

Organize your memes by having the window to:

  • Fix the meme orientation
  • Fetching the OCR from the meme and renaming the particular image with the initial 60 characters
  • Option to track all text from the image and store in /OCR-text/
  • Using OpenCV to segment Image and text to get the recognized text to edit the meme and store in /Memento/
  • Single or multiple option choosing support

Demo run: Youtube

Currently in beta state

memento features

Note: Make sure you have a OCR tool like tesseract and certain data value for comparing OCR, eg tesseract-data-eng along with Pillow and Wand for image conversion and loading to draw along with numpy and cv2 for all Image processing required to crop the image with border values defined

Installation

Install using PIP:

$ sudo pip install mementor
$ memento <dirname>

else

Clone the source locally:

$ git clone https://github.com/aryaminus/memento
$ cd memento
$ git checkout feature/CV-UI
$ python3 memento.py <dirname>

Stepwise working

Todo

  • Fix for subprocess to accept spaced directories
  • Add choice to fetch full OCR text
  • String stream to allow user to choose the particular feature of memento
  • Using OpenCV to partition image and text section to edit the text
  • Listing the images in the directory to edit a particular image only
  • Apply NLTK with window to edit the fetched text to modify and fix typos in meme
  • Apply Classification to organize the memes baised on the image category template for prediction model
  • Add GUI with tkinter to attach text to a meme image

Reference

  1. PDFtoTXT
  2. OCR
  3. Saram
  4. Meme-maker

Contributing

  1. Fork it (https://github.com/aryaminus/memento/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

Enjoy!

memento's People

Contributors

aryaminus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

memento's Issues

could not able to rotate an image according to orientation

I tried to rotate the image but it ( stdoutdata = subprocess.getoutput('tesseract' + arguments % filename)) tries to get the output but it was not able to split the lines it shows error like "Too few characters"
how could i solve this issue can you please help me to solve this issue.

Memento

Hey

Sorry to bother you so soon already but i really got excited when i saw that you update memento and wanted to give it a spin.

So i installed everything on ubuntu to get it working and made a map inside memento and did python memento.py memes, then the script runs and when i enter 1 or any other number and get this message( see attachment) How can i fix this?

I don't think it has anything to do with tesseract, because i did a tesseract ocr on an image with an output to .txt and it extracted the data..

Have i missed installing a module or something?

Hope you can help me out :)

memento screenshot

Recognize more fonts and train tesseract for different meme formats

Hi there,

I was wondering if it is possible for your wonderful script to recognize more fonts? I'm having the most problems with the font impact and was wondering if i can add more fonts for tesseract to recognize? Also can i train tesseract for different meme formats? And if so, how could i do this?

Hoping you can help me out,

Kind regards,

kevin

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.