jenly1314 / WeChatQRCode

⛄ 基于OpenCV开源的微信二维码引擎移植的二维码扫码识别库
https://jenly1314.github.io/WeChatQRCode/
Apache License 2.0
608 stars 120 forks source link

请问,微信那种效果怎么实现? #1

Closed jiqianwen closed 2 years ago

jiqianwen commented 3 years ago

多个二维码识别结果固定在屏幕上,显示箭头让用户选择哪个二维码

jenly1314 commented 3 years ago
  1. 自定义一个View,这个自定义View主要用于展示扫码结果图片和多码的位置,根据码的位置绘制箭头;对外暴露点击箭头事件。(展示多码选择的场景)
  2. 将自定义的View布局在扫码界面上层。
  3. 在扫码结果回调方法内处理扫码结果,停止分析图像(停止扫码);如果是结果是一个码,按常规处理,如果结果是多个码,并将多个码的图片和结果显示到自定义的View上,当用户点击箭头时,处理对应箭头的点击事件,返回集合中位置对应的结果。
jiqianwen commented 3 years ago
  1. 自定义一个View,这个自定义View主要用于展示扫码结果图片和多码的位置,根据码的位置绘制箭头;对外暴露点击箭头事件。(展示多码选择的场景)
  2. 将自定义的View布局在扫码界面上层。
  3. 在扫码结果回调方法内处理扫码结果,停止分析图像(停止扫码);如果是结果是一个码,按常规处理,如果结果是多个码,并将多个码的图片和结果显示到自定义的View上,当用户点击箭头时,处理对应箭头的点击事件,返回集合中位置对应的结果。

我也是这么想的,但是看你demo里只返回了码的识别结果,并没有返回识别码的坐标和图像

jenly1314 commented 3 years ago

demo只是演示基本扫码识别效果,不会将所有的场景都演示出来。因为这些场景是需求决定的。

需要坐标,你可以看看 WeChatQRCodeDetector.detectAndDecode(Mat img, List\<Mat> points) 这个方法。

jiqianwen commented 3 years ago

demo只是演示基本扫码识别效果,不会将所有的场景都演示出来。因为这些场景是需求决定的。

需要坐标,你可以看看 WeChatQRCodeDetector.detectAndDecode(Mat img, List points) 这个方法。

好的,感谢

jenly1314 commented 2 years ago

具体实现可参见:MLKit