how to extract data from table image?

4 Comments

I performed ocr. it didnt extract properly
Train the ocr on that character set.
The images are pretty low quality.
I have experienced the OCR having a really rough time with vertical and horizontal lines...

Sign in to comment.

Answers (1)

You need to have at least 20 lines in the numbers for ocr() to work -- it says so in the help. Also, you can get rid of lines by thresholding and removing the largest blob, but you might want to use them to extract each rectangle one at a time so you can do ocr on just that one rectangle. If you still need help, attach a higher resolution image

2 Comments

Abdelrahman
Abdelrahman on 11 Mar 2023
Edited: Abdelrahman on 11 Mar 2023
Can you elaborate more how to get rid of the lines please?
If the lines are connected to the edge of the image you can do
mask = grayImage > somethreshold;
mask = imclearborder(mask);
otherwise, the grid looks like it would be the biggest blob in the mask you can use bwareafilt
mask = mask & ~bwareafilt(mask, 1);

Sign in to comment.

Categories

Find more on Convert Image Type in Help Center and File Exchange

Asked:

on 8 Jan 2019

Commented:

on 11 Mar 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!