                                    if landmarks
                                    else np.zeros((68, 2))])
          elif group_method == 'group_face_yaw':
              temp_list = []
              for img in tqdm(self.find_images(input_dir),
                              desc="Reloading",
                              file=sys.stdout):
                  landmarks = self.get_landmarks(img)
                  temp_list.append(
 
</s> remove                 landmarks = face_alignment.Extract(
                    input_image_bgr=cv2.imread(img),
                    detector='dlib-cnn',
                    verbose=True,
                    input_is_predetected_face=True).landmarks
                temp_list.append([img, np.array(landmarks[0][1])
 </s> add                 landmarks = self.get_landmarks(img)
                temp_list.append([img, np.array(landmarks) </s> remove             landmarks = face_alignment.Extract(
                input_image_bgr=cv2.imread(img),
                detector='dlib-cnn',
                verbose=True,
                input_is_predetected_face=True).landmarks
            img_list.append([img, np.array(landmarks[0][1])
 </s> add             landmarks = self.get_landmarks(img)
            img_list.append([img, np.array(landmarks) </s> remove             landmarks = face_alignment.Extract(
                input_image_bgr=cv2.imread(img),
                detector='dlib-cnn',
                verbose=True,
                input_is_predetected_face=True).landmarks
            img_list.append([img, np.array(landmarks[0][1])
 </s> add             landmarks = self.get_landmarks(img)
            img_list.append([img, np.array(landmarks) </s> remove             landmarks = face_alignment.Extract(
                input_image_bgr=cv2.imread(img),
                detector='dlib-cnn',
                verbose=True,
                input_is_predetected_face=True).landmarks
 </s> add             landmarks = self.get_landmarks(img)
            self.launch_aligner()
                                    if landmarks
                                    else np.zeros((68, 2))])
          elif group_method == 'group_face_yaw':
            self.launch_aligner()
              temp_list = []
              for img in tqdm(self.find_images(input_dir),
                              desc="Reloading",
                              file=sys.stdout):
                  landmarks = self.get_landmarks(img)
                  temp_list.append(
keep keep add keep keep keep keep keep keep
 Extraction - Speed improvements (#522) (#523)

* Extraction - Speed improvements (#522)

* Initial Plugin restructure

* Detectors to plugins. Detector speed improvements

* Re-implement dlib aligner, remove models, FAN to TF. Parallel processing

* Update manual, update convert, implement parallel/serial switching

* linting + fix cuda check (setup.py). requirements update keras 2.2.4

* Add extract size option. Fix dlib hog init

* GUI: Increase tooltip width

* Update alignment tool to support new DetectedFace

* Add skip existing faces option

* Fix sort tool to new plugin structure

* remove old align plugin

* fix convert -skip faces bug

* Fix convert skipping no faces frames

* Convert - draw onto transparent layer

* Fix blur threshold bug

* fix skip_faces convert bug

* Fix training 
tools/sort.py