MATLAB: Drawing bounding box for the skew text regions

bounding boxconvex hullImage Processing Toolboxskew

I want to draw the bounding box for the skew text regions. Like the given Image.

Best Answer

Use bwconvhull() and regionprops()
binaryImage = grayImage < 128; % Threshold.
joinedBlobs = bwconvhull(binaryImage, 'union'); % Get convex hull of all blobs.
props = regionprops(joinedBlobs, 'BoundingBox'); % Find bounding box.
boundingBox = props.BoundingBox; % Pull from field of structure into 1x4 vector.
You'll have to get rid of that outer black box first though so that you have ONLY the letters and not some frame or boundary.
To determine angle of skew, you might look at the radon transform. Demo attached.