Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

OpenCV Models #24

Open
arpit-dwivedi opened this issue Oct 8, 2020 · 3 comments
Open

OpenCV Models #24

arpit-dwivedi opened this issue Oct 8, 2020 · 3 comments

Comments

@arpit-dwivedi
Copy link
Member

Add in the comments the links of resources you found and also add these things:

  1. Algorithms used for each given link
  2. Libraries used
  3. Approx lines of codes.

In the end, also conclude which one is better.

@Rishav-hub
Copy link
Contributor

Rishav-hub commented Oct 8, 2020

Attached file text_extraction.zip

  • After downloading this file initialize your virtual environment -> pip install pytesseract install it if not installed,-> download TesseractOCR from here ->there is a .ipynb file Text_Extraction.ipynb all the code are written there -> the dataset are named as text, text1.

  • TesseractOCR - This is a type of OCR ( Optical character recognization) which is developed by Google. Tesseract includes a new neural network subsystem configured as a text line recognizer. It basically uses the concepts of LSTM's (Long Short Term Memory) and RNN's.

  • But, before using this library there are certain preprocessing steps that are needed to be followed. Those are Smoothing image, threshold to obtain binary image, removing noise, dilation,

  • Basically, the process of extraction goes like this,
    image

  • There are more steps that are included for better extraction that would be covered while writing code. They're also the flow of how LSTM works in Tesseract in this article.

  • The libraries used are cv2, NumPy, pytesseract( had to be installed using pip in venv).

  • The Processing part itself requires 20 - 27 lines. And the contour detection and the drawing of the rectangle part requires about 15 - 20 lines. All about 35 - 47 lines.

@JulianBenny
Copy link
Contributor

I started of by reading this medium article to get a basic overview of Object tracking. This gives us a basic idea of the same and has few links to research papers and their codes in which object tracking has been implemented using different algorithms.

Tracking without bells and whistles - ICCV 2019
This research paper is on the problem of tracking multiple objects in a video sequence. It uses "tracking by detection" algorithm to solve the same.Their tracker is called Tracktor. Their algorithm claims to have great results in MOT Challenge.
Their github repo is properly documented for us to refer.

Tracking Objects as Points
This paper as the name suggests tracks objects as points.
Their model takes the current frame, the previous frame, and a heatmap rendered from previous tracking results as input, and predicts the current detection heatmap as well as their offsets to centers in the previous frame.

Simple object tracking with Open CV
This article uses centroid tracking algorithm.
-Accept bounding box coordinates and compute centroids
-Compute Euclidean distance between new bounding boxes and existing objects
-Update (x,y) coordinates of existing objects
-Register new objects
-De-register old objects.
This article guides you step by step, for the whole algorithm with clear explanations for the code as well.

This last article seems like a good choice because of all the explanations. But their algorithm seems a little basic.
This is my initial research, so making final decision on which is better will be a naive choice as of now.

@JulianBenny
Copy link
Contributor

Object Tracking

object-tracking.zip

Navigate to the folder where you have downloaded the above file.
Run this command, python object_tracker.py --prototxt deploy.prototxt \ --model res10_300x300_ssd_iter_140000.caffemodel

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

3 participants