Why did the image duplicated 3 times?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Shu Yi Ho
le 13 Août 2019
Commenté : stanley Nwade
le 12 Oct 2020
How do I make it to display only once instead of 3 times for "after adjusting brightness" & "number of circles detected"?
[x,y] = size(ori_roi{i});
%%Replace each pixel of the image
for a=1:1:x
for b=1:1:y
C(a,b) = ori_roi{i}(a,b) + imageBrightness;
end
end
0 commentaires
Réponse acceptée
Geoff Hayes
le 13 Août 2019
Modifié(e) : Geoff Hayes
le 13 Août 2019
Shu - it looks like your original image is in colour so consider this line of code
[x,y] = size(ori_roi{i});
i suspect that y is three times what it should be...and so your image is replicated three times. For example,
Z = randi(255,100,50,3);
[x y] = size(Z);
Where x is 100 (correct) but y is 150 (incorrect!). And so the code
for a=1:1:x
for b=1:1:y
C(a,b) = Z(a,b) + 0;
end
end
creates C which is a 100x150 array.
To fix you can use
[x y, ~] = size(ori_roi{i});
so that the third dimension is ignored and your x and y should now be the correct height and width of your original image.
1 commentaire
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Get Started with Image Processing Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!