一、
二、
#include "opencv2/opencv.hpp" #include <QDebug> using namespace std; using namespace cv; int main(int argc, char *argv[]) { cv::Mat img = imread("E:/Document/images/qrcode.png"); cv::QRCodeDetector qrcodeDetector; std::vector<cv::Point> points; cv::Mat straightImg; //img:含有QR二维码的图像。 //points:包含QR二维码的最小区域四边形的四个顶点坐标。 //straight_qrcode:经过校正和二值化的QR二维码。 std::string codeText= qrcodeDetector.detectAndDecode(img, points, straightImg); qDebug()<<"code:"<<QString::fromStdString(codeText); qDebug()<<"points size:"<<points.size(); //标示二维码边框 rectangle(img,points[0],points[2],Scalar(0, 255, 0),2); imshow("test", img); waitKey(0); return 0; }