Multiply Image with a mask
35 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a specific Dicom image (uint16) and i want to multiply it with a mask (double) and then use the final image to generate other information. As I know it is better if an image is uint16 than double but in order to multiply those two i have to convert one of them as uint16 or double..My code works right only when i turn my image into double, otherwise it returns me black image..Is there any differnece between double and uint16 images?What can I do to make my code work right and have uint16 image??
0 Kommentare
Akzeptierte Antwort
Thorsten
am 4 Nov. 2015
Bearbeitet: Thorsten
am 4 Nov. 2015
You can convert the mask to uint16:
X = uint16(2^16*rand(10)); % sample image
M = zeros(size(X)); M(4:6, 6:8) = 1; % create sample mask
Y = uint16(M).*X; % combine image and mask
5 Kommentare
Thorsten
am 5 Nov. 2015
Maybe it just looks black. If you use imshow, the default range from black to white is 0..65535. You can use imshow(X, []) to adapt the range to the values in the image.
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!