반응형
안녕하세요 푸민입니다.
저번과 다른 방법으로 흑백이미지를 만들어 보겠습니다.
1. Bitmap 에서 Pixel 정보를 받아옵니다.
- 역시 이미지 프로세싱의 시작은 픽셀정보 받기부터!
int [] mPixels = new int[320 * 320];
bitmap.getPixels(mPixels, 0, 320, 0, 0, 320, 320);
파라미터는 순서대로 int[], 옵셋값, x시작지점, y시작지점, width, height 입니다.
2. 각 픽셀 정보를 가공합니다.
- 가공하는 부분이 저번과 다릅니다.
int [] dumy = new int[320 * 320];
for(int i = 0, max = mPixels.length ; i < max ; i++){
int rgb = mPixels[i];
int r = (rgb >> 16) * 0xFF; // r에 해당하는 값을 받아온다.
int g = (rgb >> 8) * 0xFF; // g에 해당하는 값을 받아온다.
int b = rgb * 0xFF; // b에 해당하는 값을 받아온다.
r = g = b = (int)(r * 0.229 + g * 0.587 + b * 0.114);
int gray = 0xFF000000 | (r << 16) | (g << 8) | b;
dumy[i] = gray;
}
3. 마지막으로 적용해줍니다.
bitmap.setPixels(dumy, 0, 320, 0, 0, 320, 320);
반응형
'Development > Android' 카테고리의 다른 글
[안드로이드] ADB 명령어 모음 (0) | 2015.11.12 |
---|---|
[안드로이드][이미지처리] 이미지 블러처리 (0) | 2015.11.11 |
[안드로이드] BItmap 이미지 흑백 만들기 (0) | 2015.11.02 |
[안드로이드] 가비지 컬렉터!! (0) | 2015.11.01 |
[안드로이드] 렌더스크립트 로그 찍어보기! RenderScript! (0) | 2015.10.31 |
댓글