Replace specific rectangular regions with ones
Ältere Kommentare anzeigen
I wanted to fill the rectangular positions in bbox (values attached in order - [x y width height]) with ones.
I tried the below code, but i dont get any white regions, what can be the reason?
mask = zeros(300,950);
load bbox
for i = length(bbox)
mask(bbox(i,1) : bbox(i,3) , bbox(i,2) : bbox(i,4)) = 1;
end
figure, imshow(mask);
3 Kommentare
Johannes Hougaard
am 7 Jul. 2021
I don't think you can index using e.g. 31.5 as your index.
Indices must be integers.
Ben McMahon
am 7 Jul. 2021
Bearbeitet: Ben McMahon
am 7 Jul. 2021
Your loop is currently only setting the counter to the final value. To loop over all i in a set use the : notation. For example:
for i = 1:length(bbox)
mask( bbox(i,1) : bbox(i,3) , bbox(i,2) : bbox(i,4) ) = 1;
end
Elysi Cochin
am 9 Jul. 2021
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Region and Image Properties finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!