how to get LSB in 8-bit grayscale images

2 次查看(过去 30 天)
hi, i have one image (8-Bit Gray-scale Image) and i want to omit it's Least_Significant_Bit of it. But i don know how to do it.
  1 个评论
Matt J
Matt J 2013-10-27
编辑:Matt J 2013-10-27
You should not completely rewrite your question after it has been answered. It creates much confusion. Best to start a new one...

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2013-10-26
You can use bitset()

更多回答(2 个)

Matt J
Matt J 2013-10-26
编辑:Matt J 2013-10-26
Whatever the problem is, it doesn't originate in the code you've shown. I get no such result
>> img=uint8(randi([0,255],512)); LSBImg =( im2uint8(img) - rem(im2uint8(img), 2)); g= imsubtract(img,LSBImg);
>> whos img LSBImg g
Name Size Bytes Class Attributes
LSBImg 512x512 262144 uint8
g 512x512 262144 uint8
img 512x512 262144 uint8
  1 个评论
Image Analyst
Image Analyst 2013-10-27
编辑:Image Analyst 2013-10-27
What code? I didn't see any code - perhaps he edited it away. The code Matt J has look similar to a question I answered in http://www.mathworks.com/matlabcentral/answers/90789#answer_100248 except that I operated on the uint8 image directly and didn't use im2uint8:
% Set LSB = 0
grayImage2 = grayImage - rem(grayImage, 2);

请先登录,再进行评论。


Image Analyst
Image Analyst 2013-10-27
Try this:
% Set LSB = 0
grayImage2 = grayImage - rem(grayImage, 2);

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by