how to convert the pixel values of the image in the range of (0-255) into (0-1)?
19 次查看(过去 30 天)
显示 更早的评论
Hi i have to convert the image pixel values in the range of (0-255) into (0-1) Is there any function or program available?
0 个评论
回答(3 个)
Azzi Abdelmalek
2013-2-28
编辑:Azzi Abdelmalek
2013-2-28
im1=imread('yourfile');
b=linspace(0,1,255);
im2=arrayfun(@(x) b(x+1),im1)
4 个评论
Jan
2013-2-28
Surprising. Then I'd suggest:
im2 = reshape(b(im1(:) + 1), size(im1));
But this looks less attractive, of course. Anyway, it is still faster.
Azzi Abdelmalek
2013-2-28
编辑:Azzi Abdelmalek
2013-2-28
Surprising. You are right, I messed up, in fact I've tried b(im) instead of b(im+1), did not even read the error message, thinking it was caused by the matrix dimension. im contains 0 that causes the error. b(im1) worked for a tif image that does not contains a 0
Image Analyst
2013-2-28
Yes, there is a built-in function. It is called mat2gray().
normalizedImage = mat2gray(grayLevelImage);
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!