How to obtain the array of black pixel columnwise??
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Poornima Gokhale
le 15 Déc 2015
Commenté : Poornima Gokhale
le 17 Déc 2015
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.
0 commentaires
Réponse acceptée
Walter Roberson
le 15 Déc 2015
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 commentaires
Walter Roberson
le 17 Déc 2015
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)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Image and Video Ground Truth Labeling dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!