0
두 개의 컬러 사진을 회색조로 변환하고 픽셀별로 비교하는 데 사용하는 코드입니다. 내 애플 리케이션 강제 폐쇄를 유지합니다. 코드는 다음과 같습니다.ColorBitmap을 GrayscaleBitmap으로 변환하면 충돌이 계속됩니다.
public boolean equals(Bitmap bitmap1, Bitmap bitmap2) {
Bitmap grayscaleBitmap1 = Bitmap.createBitmap(
bitmap1.getWidth(), bitmap1.getHeight(),
Bitmap.Config.RGB_565);
Canvas c = new Canvas(grayscaleBitmap1);
Paint p = new Paint();
ColorMatrix cm = new ColorMatrix();
cm.setSaturation(0);
ColorMatrixColorFilter filter = new ColorMatrixColorFilter(cm);
p.setColorFilter(filter);
c.drawBitmap(bitmap1, 0, 0, p);
Bitmap grayscaleBitmap2 = Bitmap.createBitmap(
bitmap2.getWidth(), bitmap2.getHeight(),
Bitmap.Config.RGB_565);
Canvas c1 = new Canvas(grayscaleBitmap2);
c1.drawBitmap(bitmap2, 0, 0, p);
ByteBuffer buffer1 = ByteBuffer.allocate(grayscaleBitmap1.getHeight()
* grayscaleBitmap1.getRowBytes());
grayscaleBitmap1.copyPixelsToBuffer(buffer1);
ByteBuffer buffer2 = ByteBuffer.allocate(grayscaleBitmap2.getHeight()
* grayscaleBitmap2.getRowBytes());
grayscaleBitmap2.copyPixelsToBuffer(buffer2);
return Arrays.equals(buffer1.array(), buffer2.array());
}
여기는 logcat입니다.
내게 어색했다. 감사. –
나는 어떻게 작성해야 this.please 체크 –
내가 어떻게 해야할지, 그냥 AsyncTask에 몇 가지 코드를 붙여 그것을 토스트했다 실현하지 않았다. –