          alignment["w"] = self.w
          alignment["y"] = self.y
          alignment["h"] = self.h
          alignment["landmarksXY"] = self.landmarksXY
          return alignment
  
      def from_alignment(self, alignment, image=None):
          """ Convert a face alignment to detected face object """
          self.x = alignment["x"]
 
</s> remove         """ Crop an image around bounding box to the face """
 </s> add         """ Crop an image around bounding box to the face
            and capture it's dimensions """ </s> remove                  landmarksXY=None):
 </s> add                  frame_dims=None, landmarksXY=None): </s> remove         alignments = self.alignments.get_alignments_for_frame(frame)
 </s> add         alignments = self.alignments.get_faces_in_frame(frame) </s> remove         for alignment in alignments:
            face, matrix = self.extract_one_face(alignment, image.copy())
            self.faces.append(face)
            self.matrices.append(matrix)
 </s> add         self.faces = [self.extract_one_face(alignment, image.copy())
                      for alignment in alignments]
        alignment["frame_dims"] = self.frame_dims
          alignment["w"] = self.w
          alignment["y"] = self.y
          alignment["h"] = self.h
        alignment["frame_dims"] = self.frame_dims
          alignment["landmarksXY"] = self.landmarksXY
          return alignment
  
      def from_alignment(self, alignment, image=None):
          """ Convert a face alignment to detected face object """
          self.x = alignment["x"]
keep keep add keep keep keep keep keep keep
 Fix convert-adjust (#531)

* Add dimensions to alignments + refactor

* Add frame_dims + funcs to DetectFaces. Add alignments lib

* Convert Adjust working

* Refactor and tidy up 
lib/faces_detect.py