How to draw a horizontal line passing through the given points?

2 次查看(过去 30 天)
I have a word in which I have the row index of the first black pixel in the column and the row index of the last black pixel in the column. So I want to draw a horizontal line joining all the first black pixels and all the last black pixels so that i can get the size of the word from those lines. Please help me with the code. First pixels
last pixels

回答(2 个)

Image Analyst
Image Analyst 2015-12-17
Let's say your image is called grayImage, and that your pixel columns are called "firstPixels" and "lastPixels" and of course you have your row indexes "firstRow" and "lastRow". So then just loop
for k= 1 : length(firstPixels)
% Set row to zero for this word in the first row.
grayImage(firstRow, firstPixels(k):lastPixels(k)) = 0;
% Set row to zero for this word in the last row.
grayImage(lastRow, firstPixels(k):lastPixels(k)) = 0;
end
  3 个评论
Image Analyst
Image Analyst 2015-12-18
You have to call imshow() after you change the grayImage variable.
If you don't want lines burned into the image, you can use the line() function to put it into the graphical overlay.

请先登录,再进行评论。


Image Analyst
Image Analyst 2015-12-18
You might want to look at Brett's File Exchange submission: http://www.mathworks.com/matlabcentral/fileexchange/48466-text-recognizer

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by