converting floating point value to integer
7 次查看(过去 30 天)
显示 更早的评论
I have an image in floating point value,i have to convert it into integer ,can anyone suggest an idea please
I have values for example ,i have taken some pixels from my image,and my whole image pixels values in these ranges only,now i want to convert this floating point into an integer value and i want to read image from those intteger value pixels
0.0004 0.0004 0.0004 0.0003 0.0003 0.0002
0.0006 0.0005 0.0005 0.0005 0.0004 0.0003
0.0008 0.0007 0.0007 0.0007 0.0006 0.0005
6 个评论
Jan
2011-12-14
And again: What is the range of the input (max value - min value) and what is the wanted range for the output?
采纳的回答
Andrei Bobrov
2011-12-14
A = [ 0.0004 0.0004 0.0004 0.0003 0.0003 0.0002
0.0006 0.0005 0.0005 0.0005 0.0004 0.0003
0.0008 0.0007 0.0007 0.0007 0.0006 0.0005]
[a b c] = unique(A);
B = im2uint8(linspace(0,1,numel(a)))
out = reshape(B(c),size(A))
imagesc(out)
ADD
B = linspace(0,1,numel(a))
out = reshape(B(c),size(A))
image(bsxfun(@plus,out,zeros(1,1,3)))
更多回答(1 个)
Jan
2011-12-14
A = [0.0004 0.0004 0.0004 0.0003 0.0003 0.0002;
0.0006 0.0005 0.0005 0.0005 0.0004 0.0003;
0.0008 0.0007 0.0007 0.0007 0.0006 0.0005];
B = uint8((A - min(A(:))) * (255 / (max(A(:) - min(A(:))))));
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!