Dividing up a word into letters based on the coordinates already present?
1 回表示 (過去 30 日間)
古いコメントを表示
I was able to detect the letters in an Arabic word and record/save its coordinates. The word or image in question is:
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 件のコメント
採用された回答
Adam
2014 年 8 月 13 日
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 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!