Zastąpienie koloru w mapie bitowej

Mam zdjęcia, które wyświetlam w mojej aplikacji. Są one pobierane z Internetu. Obrazy te są obrazami obiektów na prawie białym tle. Chcę, aby to tło było białe (#FFFFFF). Myślę, że jeśli spojrzę na piksel 0,0 (który powinien być zawsze biały), mogę uzyskać wartość koloru i zastąpić każdy piksel w obrazie o tej wartości białym.

To pytanie zostało zadane wcześniej i wydaje się, że odpowiedź brzmi:

int intOldColor = bmpOldBitmap.getPixel(0,0);

Bitmap bmpNewBitmap = Bitmap.createBitmap(bmpOldBitmap.getWidth(), bmpOldBitmap.getHeight(), Bitmap.Config.RGB_565);
Canvas c = new Canvas(bmpNewBitmap);
Paint paint = new Paint();

ColorFilter filter = new LightingColorFilter(intOldColor, Color.WHITE);
paint.setColorFilter(filter);
c.drawBitmap(bmpOriginal, 0, 0, paint);

Jednak to nie działa.

Po uruchomieniu tego koduCały obraz wydaje się być kolorem, który chciałem usunąć. Tak jak w przypadku całego obrazu jest teraz 1 jednolity kolor.

Miałem również nadzieję, że nie będę musiał przechodzić przez każdy piksel na całym obrazie.

Jakieś pomysły?

questionAnswers(1)

yourAnswerToTheQuestion