          """ Perform the extraction process """
          print('Starting, this may take a while...')
          Utils.set_verbosity(self.args.verbose)
  
          if self.args.multiprocess and GPUStats().device_count == 0:
              # TODO Checking that there is no available GPU is not
              # necessarily an indicator of whether the user is actually
              # using the CPU. Maybe look to implement further checks on
              # dlib/tensorflow compilations
              self.extract_multi_process()
 
</s> remove     @staticmethod
    def compile_color_space(image_bgr):
        """ cv2 and numpy inputs differs in rgb-bgr order
        this affects chance of dlib face detection so
        pass both versions """
        image_rgb = image_bgr[:, :, ::-1].copy()
        return (image_rgb, image_bgr)
 </s> add     def scale_mtcnn(self):
        """ Set scaling for mtcnn """
        pixel_count = self.width * self.height
        if pixel_count > VRAM.scale_to:
            self.input_scale = (VRAM.scale_to / pixel_count)**0.5

    def scale_dlib(self):
        """ Set scaling for dlib

        DLIB is finickity, and pure pixel count won't help as when an
        initial portrait image goes in, rotating it to landscape sucks
        up VRAM for no discernible reason. This does not happen when the
        initial image is a landscape image.
        To mitigate this we need to make sure that all images fit within
        a square based on the pixel count
        There is also no way to set the acceptable size for a positive
        match, so all images should be scaled to the maximum possible
        to detect all available faces """

        max_length_scale = int(VRAM.scale_to ** 0.5)
        max_length_image = max(self.height, self.width)
        self.input_scale = max_length_scale / max_length_image
        if (hasattr(self.args, 'multiprocess')
                and self.args.multiprocess
                and GPUStats().device_count == 0):
          """ Perform the extraction process """
          print('Starting, this may take a while...')
          Utils.set_verbosity(self.args.verbose)
  
        if (hasattr(self.args, 'multiprocess')
                and self.args.multiprocess
                and GPUStats().device_count == 0):
              # TODO Checking that there is no available GPU is not
              # necessarily an indicator of whether the user is actually
              # using the CPU. Maybe look to implement further checks on
              # dlib/tensorflow compilations
              self.extract_multi_process()
keep keep keep keep replace keep keep keep keep keep
 Merge staging to Master (#470)

* DLib scaling amends (#461)

* Scaling area fix and rework of frames and bounding boxes

* Update DLib scaling and initialization

* Extract - Detector reinitialization bugfix

* Slight OriginaHightRes Model re-factoring (#464)

* Model re-factoring, might fix red screen of death on multi-gpu configurations

* Limited trainer support for various INPUT_SIZE

* Auto Extraction multiprocess bugfix

* Sort tool bugfixes and linting 
scripts/extract.py