          """
          faces_seen = 0
          consecutive_no_faces = 0
          batch = list()
          is_plaidml = GPUStats().is_plaidml
          while True:
              item = self._in_queue.get()
              if item != "EOF":
                  logger.trace("Got from queue: '%s'", item["filename"])
                  faces_count = len(item["detected_faces"])
 
</s> remove                     if is_plaidml and feed_faces.shape[0] != self._batchsize:
 </s> add                     if is_amd and feed_faces.shape[0] != self._batchsize: </s> remove         self.logger = None
        if log:
            # Logger is held internally, as we don't want to log
            # when obtaining system stats on crash
            self.logger = logging.getLogger(__name__)  # pylint: disable=invalid-name
            self.logger.debug("Initializing %s", self.__class__.__name__)

        self.plaid = None
        self.initialized = False
        self.device_count = 0
        self.active_devices = list()
        self.handles = list()
        self.driver = None
        self.devices = list()
        self.vram = None

        self.initialize(log)

        self.driver = self.get_driver()
        self.devices = self.get_devices()
        self.vram = self.get_vram()
        if not self.active_devices:
            if self.logger:
                self.logger.warning("No GPU detected. Switching to CPU mode")
 </s> add         # Logger is held internally, as we don't want to log when obtaining system stats on crash
        self._logger = logging.getLogger(__name__) if log else None
        self._log("debug", "Initializing {}".format(self.__class__.__name__))

        self._plaid = None
        self._initialized = False
        self._device_count = 0
        self._active_devices = list()
        self._handles = list()
        self._driver = None
        self._devices = list()
        self._vram = None

        self._initialize(log)

        self._driver = self._get_driver()
        self._devices = self._get_devices()
        self._vram = self._get_vram()
        if not self._active_devices:
            self._log("warning", "No GPU detected. Switching to CPU mode") </s> remove                 self.device_count = 0
        if self.logger:
            self.logger.debug("GPU Device count: %s", self.device_count)

    def get_active_devices(self):
        """ Return list of active Nvidia devices """
        if self.plaid is not None:
            self.active_devices = self.plaid.active_devices
 </s> add                 self._device_count = 0
        self._log("debug", "GPU Device count: {}".format(self._device_count))

    def _get_active_devices(self):
        """ Obtain the indices of active GPUs (those that have not been explicitly excluded by
        CUDA_VISIBLE_DEVICES or plaidML) and allocate to :attr:`_active_devices`. """
        if self._is_plaidml:
            self._active_devices = self._plaid.active_devices </s> remove             self.device_count = pynvx.cudaDeviceGetCount(ignore=True)
 </s> add             self._device_count = pynvx.cudaDeviceGetCount(ignore=True) </s> remove                     formatted += self.format_text(item[0], item[1])
 </s> add                     formatted += self._format_text(item[0], item[1])
        is_amd = get_backend() == "amd"
          """
          faces_seen = 0
          consecutive_no_faces = 0
          batch = list()
        is_amd = get_backend() == "amd"
          while True:
              item = self._in_queue.get()
              if item != "EOF":
                  logger.trace("Got from queue: '%s'", item["filename"])
                  faces_count = len(item["detected_faces"])
keep keep keep keep replace keep keep keep keep keep
 Core Updates (#1015)

- Remove lib.utils.keras_backend_quiet and replace with get_backend() where relevant
- Document lib.gpu_stats and lib.sys_info
- Remove call to GPUStats.is_plaidml from convert and replace with get_backend()
- lib.gui.menu - typofix 
scripts/convert.py