|
이유는 컬러인 픽셀의 데이타 이기 때문입니다.
0~255는 한 채널의 레벨?값이고 채널은 R, G, B 세개로 구성되어 있습니다. 일반 비트맵에서는 알파채널을 포함하지는 않겠지요.
원하시는것이 그레이 레벨의 비트맵을 읽어오는 것인듯 한데,
컬러에서 그레이 레벨의 전환은 즉, 24bit 이미지(컬러)에서 8bit 이미지(256흑백)로 변환하는 공식이 있습니다.
I = R * r상수 + G * g상수 + B * b상수의 형태를 취합니다.
각각의 상수값은 정확히 기억이 안납니다. 인터넷을 검색해 보시기 바랍니다. 절대 0.33의 식으로 3 채널이 균등하지 않습니다.( *^^* )
만족할 결과를 얻으시길 바랍니다.
이용태 님이 쓰신 글 :
: Bitmap->Canvas->Pixels[x][y] 함수를 이용하여... 화면에 표시되어 있는 이미지의 픽셀값을 읽어올 수가 있습니다.
:
: 그런데.. 이 값을 읽어와서 확인을 해보면 아주 큰 값이 저장되어 있습니다.
:
: 전 0~255사이의 값이 나올 줄 알았는데 그렇지 않더군요...
:
: Pixels[][]를 이용하여 현재 읽어들인 픽셀값을 0~255 사이의 값으로 조정하고자 하려면 어떻게 해야 합니까?
:
: 답변 부탁드립니다.
|