OpenCV  4.7.0
Open Source Computer Vision
Public Member Functions | Protected Attributes | List of all members
cv::wechat_qrcode::WeChatQRCode Class Reference

WeChat QRCode includes two CNN-based models: A object detection model and a super resolution model. Object detection model is applied to detect QRCode with the bounding box. super resolution model is applied to zoom in QRCode when it is small. More...

#include <opencv2/wechat_qrcode.hpp>

Public Member Functions

 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="")
 Initialize the WeChatQRCode. It includes two models, which are packaged with caffe format. Therefore, there are prototxt and caffe models (In total, four paramenters). More...
 
 ~WeChatQRCode ()
 
std::vector< std::string > detectAndDecode (InputArray img, OutputArrayOfArrays points=noArray())
 Both detects and decodes QR code. To simplify the usage, there is a only API: detectAndDecode. More...
 
float getScaleFactor ()
 
void setScaleFactor (float _scalingFactor)
 set scale factor QR code detector use neural network to detect QR. Before running the neural network, the input image is pre-processed by scaling. By default, the input image is scaled to an image with an area of 160000 pixels. The scale factor allows to use custom scale the input image: width = scaleFactor*width height = scaleFactor*width More...
 

Protected Attributes

Ptr< Impl > p
 

Detailed Description

WeChat QRCode includes two CNN-based models: A object detection model and a super resolution model. Object detection model is applied to detect QRCode with the bounding box. super resolution model is applied to zoom in QRCode when it is small.

Constructor & Destructor Documentation

◆ WeChatQRCode()

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 = "" 
)

Initialize the WeChatQRCode. It includes two models, which are packaged with caffe format. Therefore, there are prototxt and caffe models (In total, four paramenters).

Parameters
detector_prototxt_pathprototxt file path for the detector
detector_caffe_model_pathcaffe model file path for the detector
super_resolution_prototxt_pathprototxt file path for the super resolution model
super_resolution_caffe_model_pathcaffe file path for the super resolution model

◆ ~WeChatQRCode()

cv::wechat_qrcode::WeChatQRCode::~WeChatQRCode ( )
inline

Member Function Documentation

◆ detectAndDecode()

std::vector<std::string> cv::wechat_qrcode::WeChatQRCode::detectAndDecode ( InputArray  img,
OutputArrayOfArrays  points = noArray() 
)
Python:
cv.wechat_qrcode.WeChatQRCode.detectAndDecode(img[, points]) -> retval, points

Both detects and decodes QR code. To simplify the usage, there is a only API: detectAndDecode.

Parameters
imgsupports grayscale or color (BGR) image.
pointsoptional output array of vertices of the found QR code quadrangle. Will be empty if not found.
Returns
list of decoded string.

◆ getScaleFactor()

float cv::wechat_qrcode::WeChatQRCode::getScaleFactor ( )
Python:
cv.wechat_qrcode.WeChatQRCode.getScaleFactor() -> retval

◆ setScaleFactor()

void cv::wechat_qrcode::WeChatQRCode::setScaleFactor ( float  _scalingFactor)
Python:
cv.wechat_qrcode.WeChatQRCode.setScaleFactor(_scalingFactor) -> None

set scale factor QR code detector use neural network to detect QR. Before running the neural network, the input image is pre-processed by scaling. By default, the input image is scaled to an image with an area of 160000 pixels. The scale factor allows to use custom scale the input image: width = scaleFactor*width height = scaleFactor*width

scaleFactor valuse must be > 0 and <= 1, otherwise the scaleFactor value is set to -1 and use default scaled to an image with an area of 160000 pixels.

Member Data Documentation

◆ p

Ptr<Impl> cv::wechat_qrcode::WeChatQRCode::p
protected

The documentation for this class was generated from the following file: