Class Dictionary


  • public class Dictionary
    extends java.lang.Object
    Dictionary/Set of markers, it contains the inner codification BytesList contains the marker codewords where: - bytesList.rows is the dictionary size - each marker is encoded using nbytes = ceil(markerSize*markerSize/8.) - each row contains all 4 rotations of the marker, so its length is 4*nbytes bytesList.ptr(i)[k*nbytes + j] is then the j-th byte of i-th marker, in its k-th rotation.
    • Field Detail

      • nativeObj

        protected final long nativeObj
    • Constructor Detail

      • Dictionary

        protected Dictionary​(long addr)
      • Dictionary

        public Dictionary()
      • Dictionary

        public Dictionary​(Mat bytesList,
                          int _markerSize,
                          int maxcorr)
      • Dictionary

        public Dictionary​(Mat bytesList,
                          int _markerSize)
    • Method Detail

      • getNativeObjAddr

        public long getNativeObjAddr()
      • __fromPtr__

        public static Dictionary __fromPtr__​(long addr)
      • identify

        public boolean identify​(Mat onlyBits,
                                int[] idx,
                                int[] rotation,
                                double maxCorrectionRate)
        Given a matrix of bits. Returns whether if marker is identified or not. It returns by reference the correct id (if any) and the correct rotation
        Parameters:
        onlyBits - automatically generated
        idx - automatically generated
        rotation - automatically generated
        maxCorrectionRate - automatically generated
        Returns:
        automatically generated
      • getDistanceToId

        public int getDistanceToId​(Mat bits,
                                   int id,
                                   boolean allRotations)
        Returns the distance of the input bits to the specific id. If allRotations is true, the four posible bits rotation are considered
        Parameters:
        bits - automatically generated
        id - automatically generated
        allRotations - automatically generated
        Returns:
        automatically generated
      • getDistanceToId

        public int getDistanceToId​(Mat bits,
                                   int id)
        Returns the distance of the input bits to the specific id. If allRotations is true, the four posible bits rotation are considered
        Parameters:
        bits - automatically generated
        id - automatically generated
        Returns:
        automatically generated
      • generateImageMarker

        public void generateImageMarker​(int id,
                                        int sidePixels,
                                        Mat _img,
                                        int borderBits)
        Generate a canonical marker image
        Parameters:
        id - automatically generated
        sidePixels - automatically generated
        _img - automatically generated
        borderBits - automatically generated
      • generateImageMarker

        public void generateImageMarker​(int id,
                                        int sidePixels,
                                        Mat _img)
        Generate a canonical marker image
        Parameters:
        id - automatically generated
        sidePixels - automatically generated
        _img - automatically generated
      • getByteListFromBits

        public static Mat getByteListFromBits​(Mat bits)
        Transform matrix of bits to list of bytes in the 4 rotations
        Parameters:
        bits - automatically generated
        Returns:
        automatically generated
      • getBitsFromByteList

        public static Mat getBitsFromByteList​(Mat byteList,
                                              int markerSize)
        Transform list of bytes to matrix of bits
        Parameters:
        byteList - automatically generated
        markerSize - automatically generated
        Returns:
        automatically generated
      • get_bytesList

        public Mat get_bytesList()
      • set_bytesList

        public void set_bytesList​(Mat bytesList)
      • get_markerSize

        public int get_markerSize()
      • set_markerSize

        public void set_markerSize​(int markerSize)
      • get_maxCorrectionBits

        public int get_maxCorrectionBits()
      • set_maxCorrectionBits

        public void set_maxCorrectionBits​(int maxCorrectionBits)
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable