Dividing up a word into letters based on the coordinates already present?
2 views (last 30 days)
Show older comments
I was able to detect the letters in an Arabic word and record/save its coordinates. The word or image in question is:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/154350/image.jpeg)
The points are represented by red and yellow markers (Which were plotted using the plot command)
I got these markers by first converting the image to logical, complementing it, skeletonizing it, then using a modified chain code algorithm to detect the letters.
The red markers are:
110 287
123 325
115 150
109 185
120 219
The yellow markers are:
103 267
99 142
105 109
37 186
Having these coordinates I would like to isolate the letters as separate images or matrices. that is split up or extract the letters and save them individually for further processing.
I thought having the coordinates would make a simple procedure of just cropping out the original image but apparently that is not working. I have tried
test = img(:,109,:,120)
test = im(185:109,219:120);
And these are not working.
How would I go about splitting this up?
Thank you
0 Comments
Accepted Answer
Adam
on 13 Aug 2014
The first of your options would only work on a 4d matrix.
The second would work if you swap round your indices - you have to have min:max:
test = im( 109:185, 120:219 ).
Assuming im is a matrix of size at least 185 * 219 that will cut out the rectangle you describe there, though not the individual letters distinct from each other.
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!