          points = np.array([[0, 0], [0, size - 1], [size - 1, size - 1], [size - 1, 0]], np.int32)
          points = points.reshape((-1, 1, 2))
          matrix = cv2.invertAffineTransform(matrix)  # pylint: disable=no-member
          logger.trace("Returning: (points: %s, matrix: %s", points, matrix)
          return cv2.transform(points, matrix)  # pylint: disable=no-member
  
      @staticmethod
      def get_feature_mask(aligned_landmarks_68, size, padding=0, dilation=30):
          """ Return the face feature mask """
          logger.trace("aligned_landmarks_68: %s, size: %s, padding: %s, dilation: %s",
 
</s> remove         matrix = cv2.invertAffineTransform(matrix)  # pylint: disable=no-member
 </s> add         matrix = cv2.invertAffineTransform(matrix)
 </s> remove         points = cv2.transform(points,  # pylint: disable=no-member
                               matrix, points.shape)
 </s> add         points = cv2.transform(points, matrix, points.shape)
 </s> remove         retval = cv2.warpAffine(image,  # pylint: disable=no-member
                                matrix, (size, size), flags=interpolators[0])
 </s> add         retval = cv2.warpAffine(image, matrix, (size, size), flags=interpolators[0])
 </s> remove         cv2.fillConvexPoly(mask,  # pylint: disable=no-member
                           l_eye_hull, (1, 1, 1))
        cv2.fillConvexPoly(mask,  # pylint: disable=no-member
                           r_eye_hull, (1, 1, 1))
        cv2.fillConvexPoly(mask,  # pylint: disable=no-member
                           mouth_hull, (1, 1, 1))
 </s> add         cv2.fillConvexPoly(mask, l_eye_hull, (1, 1, 1))
        cv2.fillConvexPoly(mask, r_eye_hull, (1, 1, 1))
        cv2.fillConvexPoly(mask, mouth_hull, (1, 1, 1))
 </s> remove             mask = cv2.dilate(mask,  # pylint: disable=no-member
                              kernel, iterations=1)
 </s> add             mask = cv2.dilate(mask, kernel, iterations=1)

        return cv2.transform(points, matrix)

          points = np.array([[0, 0], [0, size - 1], [size - 1, size - 1], [size - 1, 0]], np.int32)
          points = points.reshape((-1, 1, 2))
          matrix = cv2.invertAffineTransform(matrix)  # pylint: disable=no-member
          logger.trace("Returning: (points: %s, matrix: %s", points, matrix)
        return cv2.transform(points, matrix)
  
      @staticmethod
      def get_feature_mask(aligned_landmarks_68, size, padding=0, dilation=30):
          """ Return the face feature mask """
          logger.trace("aligned_landmarks_68: %s, size: %s, padding: %s, dilation: %s",
keep keep keep keep replace keep keep keep keep keep
 Landmarks stored and used as floating point numbers (#928)

* remove and fix int adjustments
* masking rounding 
lib/aligner.py