              if item == "EOF":
                  break
              image, face = item
  
              bounding_box = [dlib.rectangle(int(face[0]), int(face[1]),
                                             int(face[2]), int(face[3]))]
              retval = {"image": image,
                        "detected_faces": bounding_box}
              self.finalize(retval)
  
          self.queues["out"].put("EOF")
 
</s> remove             image, face = item
 </s> add             face = item["face"] </s> remove             item = self.queues["in"].get()
 </s> add             item = self.get_item() </s> remove                 detected_faces = self.process_output(faces, rotmat)
                retval = {"filename": filename,
                          "image": image,
                          "detected_faces": detected_faces}
                self.finalize(retval)
        except:
            retval = {"exception": True}
            self.queues["out"].put(retval)
            raise
 </s> add             detected_faces = self.process_output(faces, rotmat)
            item["detected_faces"] = detected_faces
            self.finalize(item) </s> remove                 filename, image = item
                detect_image = self.compile_detection_image(image, False, False)

                for angle in self.rotation:
                    current_image, rotmat = self.rotate_image(detect_image, angle)
                    faces, points = detect_face(current_image, **self.kwargs)
                    if self.verbose and angle != 0 and faces.any():
                        print("found face(s) by rotating image {} degrees".format(
                            angle))
                    if faces.any():
                        break

                detected_faces = self.process_output(faces, points, rotmat)
                retval = {
                    "filename": filename,
                    "image": image,
                    "detected_faces": detected_faces}
                self.finalize(retval)
        except:
            retval = {"exception": True}
            self.queues["out"].put(retval)
            raise
 </s> add             detected_faces = self.process_output(faces, points, rotmat)
            item["detected_faces"] = detected_faces
            self.finalize(item)

        logger.debug("Thread Completed Detect")
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
              if item == "EOF":
                  break
              image, face = item
  
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
            bounding_box = [dlib.rectangle(  # pylint: disable=c-extension-no-member
                int(face[0]), int(face[1]), int(face[2]), int(face[3]))]
            item["detected_faces"] = bounding_box
            self.finalize(item)
  
          self.queues["out"].put("EOF")
keep keep keep keep replace replace replace replace replace keep keep
 Logging (#541)

* Convert prints to logger. Further logging improvements. Tidy  up

* Fix system verbosity. Allow SystemExit

* Fix reload extract bug

* Child Traceback handling

* Safer shutdown procedure

* Add shutdown event to queue manager

* landmarks_as_xy > property. GUI notes + linting. Aligner bugfix

* fix FaceFilter. Enable nFilter when no Filter is supplied

* Fix blurry face filter

* Continue on IO error. Better error handling

* Explicitly print stack trace tocrash log

* Windows Multiprocessing bugfix

* Add git info and conda version to crash log

* Windows/Anaconda mp bugfix

* Logging fixes for training 
plugins/extract/detect/manual.py