0

我将条形码用于扫描应用程序。所有扫描的页面都需要检查条形码。由于条形码总是在同一个位置,我可以裁剪该区域以加快处理速度。问题是,只有一些扫描的页面中有条形码。其他人没有。

  • 在带有条形码的页面上搜索条形码大约需要 1-3 秒。
  • 在没有条形码的页面上搜索条形码大约需要 10 秒

现在条形码应该很容易在有条形码的那些页面上找到,因为这些页面只包含这个 Code128,否则就是一张普通的白皮书。我可以设置任何选项来加快该过程吗?TryHarder-Flag 已经设置为 false,顺便说一句。

有人有想法吗?

4

2 回答 2

5

看起来您的图书馆正在查看整个图像以查找条形码,如果没有,则需要很长时间 - 因为它会遍历整个图像(线性复杂性)。另一方面,如果它找到一个(并且应该向下几行/列) - 它可能会使用一条或多条水平线来提取条形码数据,这在这些情况下会非常快。

为了加快您的应用程序的速度,我建议您首先尝试自己检测条形码,如果检测到,请将其传递给 zxing。您可以通过检查图像中间行的像素值来做到这一点,如果没有发现“像黑色”像素,则假设没有条形码。

希望这可以帮助!

于 2012-07-16T14:44:16.007 回答
0

除了 ananthonline 提供的解决方案外,您还可以尝试以下方法来加快处理速度:

  1. 像你已经完成的那样裁剪该区域。
  2. 由于页面仅包含 Code128,您可以在代码中指定条形码类型。否则,zxing 将检查并验证所有支持的条形码类型,这会大大降低性能。
于 2012-07-17T04:55:18.843 回答