Here is what I did for a client (What you are asking is the same).
Assuming that you have access to certain type of a pattern on the image (or the center of the hole), you could always detect the template to obtain the location of a possible unwarp:
Note that in the transformed image, two region of interests are defined and the region within which we would ...
Do not struggle forming a database of images to match via descriptors. This would be too computationally cumbersome and would require immerse amount of training. Such a scalable solution doesn't exist out of the box yet. I would rather rely on Neural Networks or SVMs to train the possible appearances of characters.
Of course using a classifier relies on ...
You're after an algorithm in the family of "DeConvolution".
Specifically in your case, is called Blind Deconvolution.
Yet if you have some assumption the Blur you can use Wiener Filter or Lucy Richardson.
Both of them are actually the MMSE Estimator just with different assumption of the noise.
Both of the methods are actually "Inverse Filter" on an Low Pass ...
A short answer to your question is "NO". To my best knowledge, there is no such a smart end-to-end OCR system that can handle various OCR tasks. However, there are OCR products could reasonably handle some tasks under controlled environments.
You seem to be confused of different OCR related tasks and you erroneously believe these tasks are quite similar ( ...
As far as I understood you're seeking the best similarity measuring function. There are zillions of metrics for that purpose, in fact any clustering algorithm such as SVM, K-means and neural network based approaches in one or other way do that. Take a look at these links :
Here is a possible solution:
Use FFT2 to find angle of text and approximate spaces between lines
Rotate the image to be at 0 angle
Sum the image column-wise
Find threshold that splits lines of text from non text lines
Show lines on rotated image.
It can be improved by finding a more complex curve (rather than line).
Here are the results:
As said in the comments an efficient way is to first detect letters, words and text with OCR. Then try to expand each text zone to its corresponding text bubble.
Depending on the text bubble design there are different approaches. However, a solution that could work well and be robust would be to perform edge detection on the near surrounding of the ...
I guess image denoising and image super-resolution techniques could be used to enhance license plate images.
Here are a few relevant links:
Image denoising based - SNIDER: Single Noisy Image Denoising and Rectification for Improving License Plate Recognition
Image super-resolution based - Multiframe Superresolution of Vehicle License Plates Based on ...
There's been forms like that forever: In Germany, the Überweisung (wire transfer) / Verrechnungsscheck (Cheque for accounting) have always been on things like this:
and as far as I can tell, that works pretty well with 1990's tech.
Note how the boxes are part of the "background" and are color-wise probably designed to simply disappear in a first ...
Turns out, the trick to solve this was just to realize that from frame to frame the background was changing, but the text was staying constant. So by doing an | operation on the pixel values of a few consecutive frames, it was crazy simple to get only the text.
The shapes you are interested in are very regular while the noise you are trying to deal with will be less regular. Ideally, you will only have two shapes at the end of your processing: wide rectangles for the horizontal parts of the display and tall rectangles for the vertical parts. You can leverage this fact in how you shape your structuring element when ...
Yes, if applied properly, HOG is a good feature extractor even for OCR. I could point you towards an OpenCV sample and a MATLAB digit classification tutorial which do exactly that. However, if you like to get state-of-the-art performance, I would suggest deep learning methods, more specifically convolutional neural networks. Many works demonstrated the power ...
This problem is called (ink) bleeding. A popular approach is to separate or segment the document image using graphical models. Relevant papers include:
Document Ink Bleed-Through Removal with Two Hidden Markov Random Fields and a Single Observation Field
User-Assisted Ink-Bleed Reduction
Bleed-through removal in degraded documents
Directed Assistance for ...
It looks like using the polartocartesian transformation is destroying the characters (look at the "M", "E" before and after...). I think it will be a better idea to think about some rotations mechanism using imrotate.
Any way, I'd try the following additional pre-proc:
1. you might want to perform some morphological operations on the image after the ...
I think you could specify a higher DPI for higher 'resolution' (which effectively changes the pixel number of your image) in loading the data.
Resizing the data will usually cause small changes to your data that are usually irreversible (unless you know exactly the correct parameters for resizing).
Aha, this is a quite funny story that I've heard about CV. Are you a bio guy? Any way, here are my suggestions.
If you are a bio guy and just want to finish this project ( I mean successfully identify each insect in a video frame ), go for barcode, QR etc. They are labels though their contents are not directly readable by eyes. However, you will have a ...