마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 비트맵 회전시 초록색으로(?) 이미지 변질 현상

0 추천

안녕하세요 . 

너무 답답해서 처음 가입후 질문을 올립니다 .

제 구조는 다음과 같습니다 . 

이미지 로딩 라이브러리 Glide를 사용하여(ARGB8888) 적용 하여 이미지 화질을 최상으로 하여 bitmap 을 받아오게합니다.  

(단순 이미지를 표시하여 화면에 보여주는것이아니라 bitmap 을 받아옵니다)  

비트맵을 가져온후 이미지 회전을 합니다 . 

회전코드 

Matrix matrix = new Matrix();
matrix.postRotate(90);
Bitmap resizedBitmap = Bitmap.createBitmap(bitmap
        , 0, 0, bitmap.getWidth()
        , bitmap.getHeight()
        , matrix
        , true);

 

여기서 계속 회전 버튼을 클릭하게되면 이미지가 점점 초록색? 으로 변하는것입니다 . 

갑자기 변하는것은 아니고 서서히 변하게되는데요..

흰색 배경이미지를 가져와서 테스트해보면 흰색이미지가 점점 초록색으로 변하는것을 확인하실수있습니다 . 

(1,2 번 해서는 잘모를수도있습니다. 5번정도하면 이미지가 약간 초록빛깔이 도는 이미지로 바뀌어있습니다 

이후 계속 클릭시 점점 초록빛이 더 심해집니다 )

너무 답답해서 질문올립니다 도움좀 주시기 바랍니다 

 

AceptablePark (160 포인트) 님이 2016년 1월 18일 질문

1개의 답변

0 추천
마지막의 filter 사용을 false 로 해도 역시 같은 문제가 있는지 확인 해보십시오.

만일 같은 문제가 계속 된다면

원본의 이미지와 변환 후의 이미지의 raw data를 직접 비교해서 확인해 보시고 정말 문제가 발생했다면 matrix를 사용한 회전은 문제가 있으므로 직접 회전을 구현하셔야 할 것 같습니다.

제가 생각할때는 저 filter가 문제를 일으키지 않나 의심스럽습니다.
컴러기 (22,230 포인트) 님이 2016년 1월 18일 답변
답변감사드립니다. 하지만 false로 바꾸어도 현상은 똑같이 나타납니다 .....
filter가 문제가 아니라면 이미지를 직접 수식을 이용하셔서 회전시키셔야할 것 같습니다.
현제 보여주신 코드만으로는 어떤 원인이 이미지의 색을 변화 시켜는지 짐작키 힘드나.
직접 http://egloos.zum.com/scripter/v/1618411 에서와 같은 공식을 응용해서 이미지를 회전시켜 보시는 방법을 사용해 보십시오.
...