opencv+微信开源二维码WeChatQrCode配置及使用全套

2025-05-09 07:21:30

opencv在4.5以后,可以联合微信开源二维码WeChatQrCode进行编译使用。较opencv原始的QRCode识别准确率显著提升,对一些环境较差,拍摄不清晰的二维码均可自动适应。

1、编译

opencv下载链接

https://github.com/opencv

具体编译方法,详见博客Opencv4.5.1 微信二维码识别功能 QRCode 编译与使用 C++_二维码opencv c++-CSDN博客

因为下载特别慢,编译比较复杂,可以直接下载编译好的直接使用,包含下述3中的第三方依赖,链接如下:

https://download.csdn.net/download/zhangyan513/90125949?spm=1001.2014.3001.5501

2、使用示例

int TazkEzecute:: RecognizeuRCode(cv:: Mat ina, int thresholdialue, std:: stringe result)

{

// 读取图像

Mat image =ima. clone() ;

Vector transforn;

vector qrResult;

cv.: Ptr detector;

detector = cv.: makePtr (

"E:/3rdPartyLib/opencv_wechatQR/include/opencv2/openev_3rdparty-wechat_qrcode/detect.prototxt",

"E:/3rdPartyLib/opencv_wechatQR/include/opencv2/opencv_3rdparty-wechat_qrcode/detect. caffemodel",

"E: /3rdPartyLib/opencv_wechatQR/include/opencv2/opencv_3rdparty-wechat_qrcode/sr.prototxt",

"E:/3rdPartyLib/opencv_wechatQR/include/opencv2/opencv_3rdparty-wechat_qrcode/sr. caffemodel");

qrResult = detector-›detectAndDecode (image, transform) ;

if (qrResult.size () › 0)

{

result =qrResult [0] ;

}

}

3、第三方依赖

微信二维码使用CNN神经网络实现,因此可见,需要依赖第三方模型文件,函数说明:

cv::wechat_qrcode::WeChatQRCode::WeChatQRCode (

const std::string &detector_prototxt_path = "",

const std::string &detector_caffe_model_path = "",

const std::string &super_resolution_prototxt_path = "",

const std::string &super_resolution_caffe_model_path = "" )

详细可见链接:

https://docs.opencv.org/5.x/d5/d04/classcv_1_1wechat__qrcode_1_1WeChatQRCode.html

第三方模型文件下载链接:

https://download.csdn.net/download/zhangyan513/90125949?spm=1001.2014.3001.5501

对应填入即可使用

最新发表
友情链接