Multiply Image with a mask
15 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Thorsten
2015-11-4
编辑:Thorsten
2015-11-4
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 个评论
Thorsten
2015-11-5
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!