필터 지우기
필터 지우기

how can i remove bits from a 8 bit pixel ?

조회 수: 1 (최근 30일)
niranjan v
niranjan v 2019년 1월 7일
댓글: Walter Roberson 2019년 1월 10일
There is an 8 bit pixel and im considered as 5 bits of msb and 3 bits of lsb . so i want to remove 3 lsbs from the pixel. is it possible?

채택된 답변

Walter Roberson
Walter Roberson 2019년 1월 7일
No. In MATLAB all of the numeric datatypes , and char as well , are defined as being multiples of 8 bits long. It is not possible to remove 3 bits from any numeric datatype or from char.
The size of the datatype logical is not specified in MATLAB . On the other hand there is no documented mechanism for setting more than true or false for logical . There is evidence that logical is one byte and that it could be hacked to store additional values... but none of those hacks would permit removing 3 bits from a logical .
I recommend that instead of trying to remove bits from pixels that you extract bits instead . see bitget and bitset.
  댓글 수: 2
niranjan v
niranjan v 2019년 1월 10일
thank you sir for giving valuble information but i have to work on first 5 bits only and i dont need remaining 3 bits. is this possible sir?
Walter Roberson
Walter Roberson 2019년 1월 10일
bitget can tell you the value of those bits.
or if the datatype is uint8 then divide the value by 8.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

태그

Community Treasure Hunt

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

Start Hunting!

Translated by