How to obtain the array of black pixel columnwise??

2 次查看(过去 30 天)
here I want to get the size of the letter.For that i want the array of black pixels columnwise.I know to calculate the entire pixels of the word.But please help me with this.

采纳的回答

Walter Roberson
Walter Roberson 2015-12-15
col_idx_first_black = sum(cumprod(YourImage,1)) + 1;
col_idx_last_black = size(YourImage,1) - sum(cumprod(flipud(YourImage),1));
col_letter_size = max(0, col_idx_last_black - col_idx_first_black + 1);
Note: col_letter_size will be 0 for columns that contain no black. The first occupied row for the column will be in col_idx_first_black and the last occupied row for the column will be in col_idx_last_black (but those will have misleading values if the row has no black.)
  8 个评论
Walter Roberson
Walter Roberson 2015-12-17
It is visiting every column and locating the first black pixel in the column and returning the row index within the column. It also visits every column and locates the last black pixel in the column and returns the row index within the column. It also calculates the difference between the first and last index for each column in order to tell you the "size" in rows of the letter in that column -- but keep in mind that two columns that are the same "size" for the letter might have very different locations within the column.
The total number of rows in the image is size(YourImage,1)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image and Video Ground Truth Labeling 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by