Преобразование цветного изображения с камеры Xoom в монохромное изображение для распознавания QR-кода - PullRequest
1 голос
/ 31 июля 2011

Я сделал приложение для Motorola Xoom, которое распознает QrCode, используя библиотеку xzing .Я уже сделал то же самое приложение на своем компьютере, и оно отлично работало на моем компьютере, но в Xoom ему трудно распознать QrCode.Нужно очень хорошее освещение без прямого точечного освещения.Проблема исходит от камеры.Фронтальная камера работает неплохо, но никогда не так хорошо, как веб-камера на моем labtop.Задняя камера хуже, даже если у нее лучшее разрешение.Довольно странно, что задняя камера дает худший результат, но, учитывая, что фокус не работает хорошо, я думаю, что это нормально.Чтобы получить хороший результат, вам нужна очень четкая картинка.

Сейчас я использую алгоритм zxing под названием PlanarYUVLuminanceSource .

Так что мне интересно, нашли ли вы, ребята, некоторые Хороший алгоритм для преобразования цветного изображения с камеры xoom в монохромное изображение .Библиотека xzing для распознавания монохромного изображения достаточно хороша, так что это просто монохромное изображение плохого качества.Не нужно рекомендовать мне другое устройство для чтения qrcode монохромных изображений.

1 Ответ

1 голос
/ 31 июля 2011
Bitmap yourPhoto = //The bitmap of the photo from your camera
Bitmap tempBitmap = Bitmap.createBitmap(yourPhoto.getWidth(), yourPhoto.getHeight(), Bitmap.Config.ARGB_4444);
Canvas c = new Canvas(tempBitmap);
Paint paint = null;
ColorMatrix cm = new ColorMatrix();
paint = new Paint();
cm.setSaturation(0);
ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
paint.setColorFilter(f);        
c.drawBitmap(yourPhoto, 0, 0, paint);

Теперь ваш «tempBitmap» содержит черно-белое изображение, которое вы ищете:)

...