Delete part of an image
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Alejandro Fernández
il 16 Gen 2020
Commentato: Alejandro Fernández
il 16 Gen 2020
Hi, explain below what I want to do to see if anyone would know how to fix it.
I start with an image like the following:
Now I make two circles, one with a smaller radius than the other, of which I know both its center and radius. They're not concentric but they never intersect
And finally what I want to achieve is that all the points that are outside the major circle as well as inside the minor circle become black
0 Commenti
Risposta accettata
Matt J
il 16 Gen 2020
Modificato: Matt J
il 16 Gen 2020
[m,n]=size(oldImage);
x=(1:n);
y=(1:m).';
mask = (x-innerCenterX).^2+(y-innerCenterY).^2>=innerRadius^2 & ...
(x-outerCenterX).^2+(y-outerCenterY).^2<=outerRadius^2 ;
newImage=oldImage.*mask;
3 Commenti
Matt J
il 16 Gen 2020
Appropriate type conversions will fix it,
newImage=uint16( double(oldImage).*mask );
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!