Class WeChatQRCode


  • public class WeChatQRCode
    extends Object
    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.
    • Field Detail

      • nativeObj

        protected final long nativeObj
    • Constructor Detail

      • WeChatQRCode

        protected WeChatQRCode​(long addr)
      • WeChatQRCode

        public WeChatQRCode​(String detector_prototxt_path,
                            String detector_caffe_model_path,
                            String super_resolution_prototxt_path,
                            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_path - prototxt file path for the detector
        detector_caffe_model_path - caffe model file path for the detector
        super_resolution_prototxt_path - prototxt file path for the super resolution model
        super_resolution_caffe_model_path - caffe file path for the super resolution model
      • WeChatQRCode

        public WeChatQRCode​(String detector_prototxt_path,
                            String detector_caffe_model_path,
                            String super_resolution_prototxt_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_path - prototxt file path for the detector
        detector_caffe_model_path - caffe model file path for the detector
        super_resolution_prototxt_path - prototxt file path for the super resolution model
      • WeChatQRCode

        public WeChatQRCode​(String detector_prototxt_path,
                            String detector_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_path - prototxt file path for the detector
        detector_caffe_model_path - caffe model file path for the detector
      • WeChatQRCode

        public WeChatQRCode​(String detector_prototxt_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_path - prototxt file path for the detector
      • WeChatQRCode

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

      • getNativeObjAddr

        public long getNativeObjAddr()
      • __fromPtr__

        public static WeChatQRCode __fromPtr__​(long addr)
      • detectAndDecode

        public List<String> detectAndDecode​(Mat img,
                                            List<Mat> points)
        Both detects and decodes QR code. To simplify the usage, there is a only API: detectAndDecode
        Parameters:
        img - supports grayscale or color (BGR) image.
        points - optional output array of vertices of the found QR code quadrangle. Will be empty if not found.
        Returns:
        list of decoded string.
      • detectAndDecode

        public List<String> detectAndDecode​(Mat img)
        Both detects and decodes QR code. To simplify the usage, there is a only API: detectAndDecode
        Parameters:
        img - supports grayscale or color (BGR) image. empty if not found.
        Returns:
        list of decoded string.