2011-07-31 21 views
1

我已經在摩托羅拉Xoom上使用xzing庫來識別QrCode。我已經在我的計算機上完成了相同的應用程序,並且在我的計算機上完美運行,但在Xoom上,很難識別QrCode。它需要非常好的照明,沒有直射光。問題來自相機。前置攝像頭工作不壞,但從來沒有我的labtop攝像頭好。即使它具有更好的分辨率,後置攝像頭也是最差的。後座攝像頭給出的最差結果有點奇怪,但鑑於焦點不太好,我認爲這很正常。你需要一張非常清晰的照片才能獲得好的效果。將彩色圖像從Xoom相機轉換爲單色圖像以識別qr代碼

現在我使用zxing的算法叫做PlanarYUVLuminanceSource

所以我想知道你們是否已經找到了一些好的算法,用於將彩色圖像從xoom相機轉換爲單色圖像。用於識別單色圖像的xzing庫已經足夠好了,所以它只是質量差的單色圖片。無需向我推薦另一張單色圖像qrcode閱讀器。

回答

1
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」包含你正在尋找:)

+0

我會看它的儘快黑白圖像。在我的代碼中測試它並不是真正的海峽前進過程。 – darkzangel

+0

這實際上比我的解決方案還要糟糕。 GRR – darkzangel

相關問題