How to train Tesseract to read game scores - image-processing

I'm starting to use Tesseract, my goals is to be able to read basketball game images and read the scores and the game time. I have attached a sample image. Tesseract was able to pickup some, this is what it detected for the attached image.
‘\ semis
1ST 50.9
Some image, it's not able to pickup anything. I went thru the training section but it talks about fonts and such which I do not know. Different games may have a slightly different scorebox. Does anyone know how I can train Tesseract to be able to pickup the boxscore data of the screen or is there a different solution out there?
thanks
testimage

Related

How to draw bounding boxes for predicted classes for a custom trained image classifier using fastai

I have created and guns and knives image classifier using fastai model resnet34. I am able to predict the class in an image but I want to extend it for real time analysis of a video footage. I want to get bounding boxes around the guns and knives but am not able to understand how I can get this. Can somebody please guide me through.
So I would do it in two steps. First, learn how to get bounding boxes in fastai. Example here.
If you have that you can use opencv to load a video frame by frame and label it. OpenCV example.
When you have both it's quite easy to do it in real time. Just label frames loaded from your webcam. This process is quite expensive so you probably want to lower image resolution before inference. I've done it in tensorflow and it worked quite nicely. This repository was extremely useful

Extracting foreground objects from an image to run through convolution neural net

I am new to computer vision and image recognition. For my first CV project I am developing a tool that detects apples (the fruit) in images.
What I have so far:
I developed a convolution neural net in Python using tensorflow that determines whether something is an apple or not. The drawback is that my CNN only works on images where the apple is the only object in the image. My training data set looks something like:
What I want to achieve: I would like to be able to detect an apple in an image and put a border around them. The images however would be full of other objects like in this image of a picnic:
Possible approaches:
Sliding Window: I would break my photo down into smaller image. I would start with a large window size in the top left corner and move to right by a step size. When I get to right border of the image I would move down a certain amount of pixels and repeat. This is effectively a sliding window and every one of these smaller images would be run through my CNN.
The window size would get smaller and smaller until an apple is found. The downside of this is that I would be running hundreds of smaller images through my CNN which would take a long time to detect an apple. Additionally if there isn't an apple present in the image, a lot of time would be wasted for nothing.
Extracting foreground objects: Another approach could be to extract all the foreground elements from an image (using OpenCV maybe?) and running those objects through my CNN.
Compared to the sliding window approach, I would be running a handful of images through my CNN vs. hundreds of images.
These are two approaches I could think of, but I was wondering if there are better ones out there in terms of speed. The sliding window approach would eventually work, but it will take a really long time to get the border window of the apple.
I would really appreciate if someone could give me some guidance (maybe I'm on a completely wrong track?), a link to some reading material or some examples of code for extracting foreground elements. Thanks!
A better way to do this is to use the Single Shot Multibox detector (SSD), or "You Only Look Once" (YOLO). Until this approach was designed, it was common to detect objects the way you suggest in the question.
There is a python implementation of SSD is here. OpenCV is used in the YOLO implementation. You can train the networks anew for Apples, in case the current versions do not detect them, or your project requires you to build a system from scratch.

Searching interesting places on image for visual recognition process?

Imagine a huge 360° panoramic shot from security camera. I need to find people on this image. Suppose I already have some great classifier to tell if some picture is a picture of a single human being.
What I don't understand - is how to apply this classifier to the panoramic shot, which can contain multiple people? Should I apply it to all possible regions of the image? Or there is some way to search for "interesting points" and feed only regions around this points to my classifier?
Which keywords to google / algorythms to read about to find out ways to search regions of image, that may (or may not) contain information for following classification?

Is it possible to Recognize the Character drawn on iPhone screen using Tesseract OCR?

From the past 2 weeks i am trying to implement "Recognize the character drawn on iPhone screen".
i Search for this and i found Tesseract OCR.
By using Tesseract OCR we are able to recognize characters from a picture.
Now my question is Is it possible to recognize the character drawn on iPhone screen using Tesseract OCR?
if it Possible give me some initial steps to achieve this task.
Computer Vision is all about training. You need to create several hundred (maybe thousand) sample shots of what you might be trying to parse in order to train Tesseract to detect it. Once you think you have it trained enough, train more with new images. Then again withe even newer images. The more sample data the better. Once you have a trained AI, taking a screenshot of the users input is trivial, then pass it to Tesseract to parse. Be sure to include a "Help us train with this image" feature in your app in case you get it wrong, so you can train on real-time data from users.

Open CV Features Extraction and Image Matching

I want to develop an automatic image annotator and an image search application. I have tried using Color Histogram from Open CV's tutorials. It is not giving good results . I used Color Histogram so that I can easily distinguish between night scene or a day scene .
I also want to incorporate shape and texture features for matching images . I did not find anything for extracting shape and texture features from images using Open CV .Please let me know how to extract these features using Open CV or if there is any other library that can hep me in extraction of these features .
I have tried SURF features but for dissimilar images they are not giving good matches .Like two images of Horse in completely different context .
I have a training set of 15K annotated images from the Mir Flick Data Sets and I have a set of around 100 tags . I have read many research papers that give the theoretical approach to this problem but I am unable to implement it.
Thanks in advance .
You want to do a lot of difficult things without knowing exactly which approach will you take. I suggest you to start reading this tutorial on the topic.
You need to extract features, get descriptors of those features in order to be recognizable. Then do the matching. From matches you can get 3D position. That is the begining. Once you are able to do that you can focus on more difficult problems.

Resources