          ret_faces = list()
          for idx, detect_face in enumerate(extract_media.detected_faces):
              check_item = detect_face["face"] if isinstance(detect_face, dict) else detect_face
              check_item.load_aligned(extract_media.image)
              if not self.filter.check(check_item):
                  logger.verbose("Skipping not recognized face: (Frame: %s Face %s)",
                                 extract_media.filename, idx)
                  continue
              logger.trace("Accepting recognised face. Frame: %s. Face: %s",
                           extract_media.filename, idx)
 
</s> remove         """ Filter in/out wanted/unwanted faces """
        if not self.filter:
 </s> add         """ Filters in or out any wanted or unwanted faces based on command line arguments.

        Parameters
        ----------
        extract_media: :class:`~plugins.extract.pipeline.ExtractMedia`
            The :class:`~plugins.extract.pipeline.ExtractMedia` object to perform the
            face filtering on.

        Returns
        -------
        :class:`~plugins.extract.pipeline.ExtractMedia`
            The original :class:`~plugins.extract.pipeline.ExtractMedia` with any requested filters
            applied
        """
        if not self._filter: </s> remove         """ Draw landmarks on image """
 </s> add         """ Draw landmarks on a face.

        Parameters
        ----------
        extract_media: :class:`~plugins.extract.pipeline.ExtractMedia`
            The :class:`~plugins.extract.pipeline.ExtractMedia` object that contains the faces to
            draw the landmarks on to

        Returns
        -------
        :class:`~plugins.extract.pipeline.ExtractMedia`
            The original :class:`~plugins.extract.pipeline.ExtractMedia` with landmarks drawn
            onto the face
        """ </s> remove             self.faces["dst"].append(AlignerExtract().transform(
 </s> add             self._faces["dst"].append(AlignerExtract().transform( </s> remove         self.faces["dst"] = list()
 </s> add         self._faces["dst"] = list() </s> remove         self.sample_size = sample_size
        self.display = display
        self.lock = lock
        self.trigger_patch = trigger_patch
        self.input_images = list()
        self.predicted_images = list()

        self.images = Images(arguments)
        self.alignments = Alignments(arguments,
                                     is_extract=False,
                                     input_is_video=self.images.is_video)
        if not self.alignments.have_alignments_file:
            logger.error("Alignments file not found at: '%s'", self.alignments.file)
 </s> add         self._sample_size = sample_size
        self._display = display
        self._lock = lock
        self._trigger_patch = trigger_patch
        self._input_images = list()
        self._predicted_images = list()

        self._images = Images(arguments)
        self._alignments = Alignments(arguments,
                                      is_extract=False,
                                      input_is_video=self._images.is_video)
        if not self._alignments.have_alignments_file:
            logger.error("Alignments file not found at: '%s'", self._alignments.file)
            if not self._filter.check(check_item):
          ret_faces = list()
          for idx, detect_face in enumerate(extract_media.detected_faces):
              check_item = detect_face["face"] if isinstance(detect_face, dict) else detect_face
              check_item.load_aligned(extract_media.image)
            if not self._filter.check(check_item):
                  logger.verbose("Skipping not recognized face: (Frame: %s Face %s)",
                                 extract_media.filename, idx)
                  continue
              logger.trace("Accepting recognised face. Frame: %s. Face: %s",
                           extract_media.filename, idx)
keep keep keep keep replace keep keep keep keep keep
 Smart Masks to Convert (#957)

- scripts.convert - Use Smart Masks for Convert
    * Make on-the-fly conversion an explicit option

- Move BlurMask to lib.faces_detect

- tools.preview - Fix for smart masks
    * Subclass from tk.Tk
    * Options to lib.gui.control_helper
    *variable cleanup

- lib.logger - Demote more tensorflow deprecation messages

- Documentation:
    * lib.faces_detect.BlurMask
    * plugins.convert.mask
    * lib.convert
    * scripts.convert
    * scripts.fsmedia
    * tools.preview 
scripts/fsmedia.py