          final_faces = list()
          image = faces["image"]
          detected_faces = faces["detected_faces"]
          for face in detected_faces:
              face.load_aligned(image, size=size, align_eyes=align_eyes)
              final_faces.append({"file_location": self.output_dir / Path(filename).stem,
                                  "face": face})
          faces["detected_faces"] = final_faces
  
      def output_faces(self, filename, faces):
 
</s> remove     def align_face(self, faces, align_eyes, size, filename):
 </s> add     def align_face(self, faces, size, filename): </s> remove         self.faces = [self.extract_one_face(alignment, image.copy())
                      for alignment in alignments]
 </s> add         self.faces = [self.extract_one_face(alignment, image.copy()) for alignment in alignments] </s> remove         face.load_aligned(image, size=self.size, align_eyes=self.align_eyes)
 </s> add         face.load_aligned(image, size=self.size)
        face = self.align_eyes(face, image) if self.align_eyes_bool else face </s> remove             for idx, faces in enumerate(tqdm(self.extractor.detected_faces(),
                                             total=to_process,
                                             file=sys.stdout,
                                             desc="Running pass {} of {}: {}".format(
                                                 phase + 1,
                                                 self.extractor.passes,
                                                 self.extractor.phase.title()))):
 </s> add             desc = "Running pass {} of {}: {}".format(phase + 1,
                                                      self.extractor.passes,
                                                      self.extractor.phase.title())
            status_bar = tqdm(self.extractor.detected_faces(),
                              total=to_process,
                              file=sys.stdout,
                              desc=desc)
            for idx, faces in enumerate(status_bar): </s> remove         face = np.clip(AlignerExtract().transform(image,
                                                  self.reference["matrix"],
                                                  size,
                                                  self.reference["padding"])[:, :, :3] / 255.0,
                       0.0, 1.0)
 </s> add         face = AlignerExtract().transform(image,
                                          self.reference["matrix"],
                                          size,
                                          self.reference["padding"])
        face = np.clip(face[:, :, :3] / 255., 0., 1.)
            face.load_aligned(image, size=size)
          final_faces = list()
          image = faces["image"]
          detected_faces = faces["detected_faces"]
          for face in detected_faces:
            face.load_aligned(image, size=size)
              final_faces.append({"file_location": self.output_dir / Path(filename).stem,
                                  "face": face})
          faces["detected_faces"] = final_faces
  
      def output_faces(self, filename, faces):
keep keep keep keep replace keep keep keep keep keep
 Align eyes deprecation (#851)

* align eyes removal

* add align_eyes tool 
scripts/extract.py