gpt4 book ai didi

android - 使用 Vision API 扫描反色二维码

转载 作者:太空狗 更新时间:2023-10-29 16:27:23 24 4
gpt4 key购买 nike

在努力让我的应用检测到这个 QRCode 几个小时后:original QRCode

我意识到问题出在 QRCode 外观上。反转颜色后,检测工作正常。 inverted QRCode .

有没有办法让 Vision API 检测到第一个 QRCode?我尝试启用所有符号系统,但没有成功。我想这是可能的,因为应用程序 QR Code Reader检测到它。

最佳答案

我改进了 google 示例应用程序“barcode-reader”以检测倒置彩色条形码和常规条形码。

这里是谷歌示例应用程序的链接:

https://github.com/googlesamples/android-vision/tree/master/visionSamples/barcode-reader

我通过编辑“CameraSource”类来做到这一点,包:“com.google.android.gms.samples.vision.barcodereader.ui.camera”

我添加了一个参数:private boolean isInverted = false;

并更改函数void setNextFrame(byte[] data, Camera camera):

void setNextFrame(byte[] data, Camera camera) {
synchronized (mLock) {
if (mPendingFrameData != null) {
camera.addCallbackBuffer(mPendingFrameData.array());
mPendingFrameData = null;
}

if (!mBytesToByteBuffer.containsKey(data)) {
Log.d(TAG,
"Skipping frame. Could not find ByteBuffer associated with the image " +
"data from the camera.");
return;
}

mPendingTimeMillis = SystemClock.elapsedRealtime() - mStartTimeMillis;
mPendingFrameId++;
if (!isInverted){
for (int y = 0; y < data.length; y++) {
data[y] = (byte) ~data[y];
}
isInverted = true;
} else {
isInverted = false;
}
mPendingFrameData = mBytesToByteBuffer.get(data);

// Notify the processor thread if it is waiting on the next frame (see below).
mLock.notifyAll();
}
}

关于android - 使用 Vision API 扫描反色二维码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47283709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com