public AztecDetectorResult detect ( boolean isMirror ) throws NotFoundException { // 1. Get the center of the aztec matrix Point pCenter = getMatrixCenter ( ) ; // 2. Get the center points of the four diagonal points just outside the bull's eye // [topRight, bottomRight, bottomLeft, topLeft] ResultPoint [ ] bullsEyeCorners = getBullsEyeCorners ( pCenter ) ; if ( isMirror ) { ResultPoint temp = bullsEyeCorners [ 0 ] ; bullsEyeCorners [ 0 ] = bullsEyeCorners [ 2 ] ; bullsEyeCorners [ 2 ] = temp ; } // 3. Get the size of the matrix and other parameters from the bull's eye extractParameters ( bullsEyeCorners ) ; // 4. Sample the grid BitMatrix bits = sampleGrid ( image , bullsEyeCorners [ shift % 4 ] , bullsEyeCorners [ ( shift + 1 ) % 4 ] , bullsEyeCorners [ ( shift + 2 ) % 4 ] , bullsEyeCorners [ ( shift + 3 ) % 4 ] ) ; // 5. Get the corners of the matrix. ResultPoint [ ] corners = getMatrixCornerPoints ( bullsEyeCorners ) ; return new AztecDetectorResult ( bits , corners , compact , nbDataBlocks , nbLayers ) ; }
Detects an Aztec Code in an image .