                       "w": right - left,
                       "y": top,
                       "h": bottom - top,
                       "hash": f_hash,
                       "landmarks_xy": np.array(dfl_alignments["source_landmarks"], dtype="uint8")}
          logger.trace("Adding alignment: (frame: '%s', alignment: %s", sourcefile, alignment)
          alignments.setdefault(sourcefile, list()).append(alignment)
  
  
  class Draw():
 
</s> remove             landmarks_update = landmarks[:, :, idx].astype(int)
 </s> add             landmarks_update = landmarks[:, :, idx] </s> remove         matrix = cv2.invertAffineTransform(matrix)  # pylint: disable=no-member
 </s> add         matrix = cv2.invertAffineTransform(matrix)
 </s> remove         return cv2.transform(points, matrix)  # pylint: disable=no-member
 </s> add         return cv2.transform(points, matrix)
 </s> remove         cv2.addWeighted(overlay,  # pylint: disable=no-member
                        alpha, self.image, 1. - alpha, 0., self.image)
 </s> add         cv2.addWeighted(overlay, alpha, self.image, 1. - alpha, 0., self.image) </s> remove         interpolators = cv2.INTER_CUBIC, cv2.INTER_AREA  # pylint: disable=no-member
 </s> add         interpolators = cv2.INTER_CUBIC, cv2.INTER_AREA

                     "landmarks_xy": np.array(dfl_alignments["source_landmarks"], dtype="float32")}
                       "w": right - left,
                       "y": top,
                       "h": bottom - top,
                       "hash": f_hash,
                     "landmarks_xy": np.array(dfl_alignments["source_landmarks"], dtype="float32")}
          logger.trace("Adding alignment: (frame: '%s', alignment: %s", sourcefile, alignment)
          alignments.setdefault(sourcefile, list()).append(alignment)
  
  
  class Draw():
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 
tools/lib_alignments/jobs.py