Locating texts in images using machine vision algorithms
This project aims to use only image processing techniques to locate text regions in the image. More detailed information about the approach is given this link
https://muthu.co/extracting-text-regions-from-an-image-using-geometric-properties/
pip install text-detector
import matplotlib.patches as mpatches
import matplotlib.pyplot as plt
from skimage.io import imread
from text_detector import detect_text_regions
image_sample = 'sample_images/image7.jpg'
image = imread(image_sample)
box_groups = detect_text_regions(image)
fig, ax = plt.subplots()
for box in box_groups:
minr = box[0]
minc = box[1]
maxr = box[2]
maxc = box[3]
rect = mpatches.Rectangle((minc, minr), maxc - minc, maxr - minr,
fill=False, edgecolor='red', linewidth=2)
ax.add_patch(rect)
ax.add_patch(rect)
ax.imshow(image)
ax.set_axis_off()
plt.tight_layout()
plt.show()
Original | Detected Text Regions |
---|---|
All my experiments are in this notebook also part of the project where I make changes to the algorithm and them move it to the detector file. Text Segmentation in Image.ipynb
The accuracy depends a lot on the threshold parameters in the utils.thresholds.py
file which may need tweaking for different kinds of datasets.
B. Epshtein, E. Ofek and Y. Wexler, "Detecting text in natural scenes with stroke width transform," 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, San Francisco, CA, 2010, pp. 2963-2970.
Tran, Tuan Anh Pham et al. “Separation of Text and Non-text in Document Layout Analysis using a Recursive Filter.” TIIS 9 (2015): 4072-4091.
Chen, Huizhong, et al. "Robust Text Detection in Natural Images with Edge-Enhanced Maximally Stable Extremal Regions." Image Processing (ICIP), 2011 18th IEEE International Conference on. IEEE, 2011.