Repository Analysis

deepfakes/faceswap

Deepfakes Software For All

7.7 Low AI signal View on GitHub
7.7
Adjusted Score
7.7
Raw Score
100%
Time Factor
2026-05-29
Last Push
55,250
Stars
Python
Language
98,815
Lines of Code
371
Files
513
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 4HIGH 48MEDIUM 15LOW 446

Pattern Findings

513 matches across 13 categories. Click a row to expand file-level details.

Unused Imports241 hits · 241 pts
SeverityFileLineSnippet
LOWsetup.py4
LOWsetup.py25
LOWtools/sort/info_loader.py2
LOWtools/sort/sort.py3
LOWtools/sort/sort_methods_aligned.py5
LOWtools/sort/sort_methods.py7
LOWtools/mask/mask.py3
LOWtools/mask/mask.py23
LOWtools/mask/mask_import.py3
LOWtools/mask/loader.py4
LOWtools/mask/mask_output.py3
LOWtools/mask/mask_generate.py3
LOWtools/mask/mask_generate.py20
LOWtools/mask/mask_generate.py21
LOWtools/manual/globals.py3
LOWtools/manual/manual.py3
LOWtools/manual/thumbnails.py3
LOWtools/manual/detected_faces.py5
LOWtools/manual/face_viewer/viewport.py3
LOWtools/manual/face_viewer/frame.py3
LOWtools/manual/face_viewer/interact.py3
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/frame.py17
LOWtools/manual/frame_viewer/editor/mask.py3
LOWtools/manual/frame_viewer/editor/__init__.py4
LOWtools/manual/frame_viewer/editor/__init__.py5
LOWtools/manual/frame_viewer/editor/__init__.py6
LOWtools/manual/frame_viewer/editor/__init__.py7
LOWtools/manual/frame_viewer/editor/__init__.py7
LOWtools/manual/frame_viewer/editor/__init__.py8
LOWtools/model/model.py3
LOWtools/model/model.py18
LOWtools/model/model.py18
LOWtools/preview/preview.py3
LOWtools/preview/viewer.py3
LOWtools/preview/control_panels.py3
LOWtools/alignments/media.py3
LOWtools/alignments/alignments.py14
LOWtools/alignments/alignments.py14
LOWtools/alignments/alignments.py14
LOWtools/alignments/alignments.py15
LOWtools/alignments/alignments.py15
LOWtools/alignments/alignments.py15
LOWtools/alignments/alignments.py16
LOWtools/alignments/alignments.py16
LOWtools/alignments/jobs_frames.py3
LOWtools/alignments/jobs.py3
LOWtools/alignments/jobs_faces.py3
LOWplugins/plugin_loader.py3
LOWplugins/train/model/phaze_a.py5
LOWplugins/train/model/_base/io.py11
LOWplugins/train/model/_base/__init__.py4
LOWplugins/train/model/_base/__init__.py4
LOWplugins/train/model/_base/model.py6
LOWplugins/train/model/_base/settings.py12
LOWplugins/train/model/_base/settings.py25
181 more matches not shown…
Cross-File Repetition47 hits · 235 pts
SeverityFileLineSnippet
HIGHtools/sort/sort_methods_aligned.py0sort by metric score. order in reverse for distance sort.
HIGHtools/sort/sort_methods.py0sort by metric score. order in reverse for distance sort.
HIGHtools/sort/sort_methods.py0sort by metric score. order in reverse for distance sort.
HIGHplugins/extract/detect/retinaface.py0run model to get predictions parameters ---------- batch a batch of images ready to feed the model returns ------- the b
HIGHplugins/extract/detect/cv2_dnn.py0run model to get predictions parameters ---------- batch a batch of images ready to feed the model returns ------- the b
HIGHplugins/extract/detect/s3fd.py0run model to get predictions parameters ---------- batch a batch of images ready to feed the model returns ------- the b
HIGHplugins/extract/detect/mtcnn.py0run model to get predictions parameters ---------- batch a batch of images ready to feed the model returns ------- the b
HIGHplugins/extract/identity/vggface2.py0format the detected faces for prediction parameters ---------- batch the batch of aligned faces in the correct format fo
HIGHplugins/extract/identity/t_face.py0format the detected faces for prediction parameters ---------- batch the batch of aligned faces in the correct format fo
HIGHplugins/extract/mask/bisenet_fp.py0format the detected faces for prediction parameters ---------- batch the batch of aligned faces in the correct format fo
HIGHplugins/extract/mask/vgg_obstructed.py0format the detected faces for prediction parameters ---------- batch the batch of aligned faces in the correct format fo
HIGHplugins/extract/mask/vgg_clear.py0format the detected faces for prediction parameters ---------- batch the batch of aligned faces in the correct format fo
HIGHplugins/extract/align/hrnet.py0format the roi faces detection boxes for prediction parameters ---------- batch the batch of face detection bounding box
HIGHplugins/extract/align/cv2_dnn.py0format the roi faces detection boxes for prediction parameters ---------- batch the batch of face detection bounding box
HIGHplugins/extract/align/fan.py0format the roi faces detection boxes for prediction parameters ---------- batch the batch of face detection bounding box
HIGHplugins/extract/mask/bisenet_fp.py0neural network to process face image into a segmentation mask of the face
HIGHplugins/extract/mask/vgg_obstructed.py0neural network to process face image into a segmentation mask of the face
HIGHplugins/extract/mask/unet_dfl.py0neural network to process face image into a segmentation mask of the face
HIGHplugins/extract/mask/vgg_clear.py0neural network to process face image into a segmentation mask of the face
HIGHplugins/extract/mask/bisenet_fp.py0get the masks from the model parameters ---------- batch the batch to feed into the masker returns ------- the predicted
HIGHplugins/extract/mask/vgg_obstructed.py0get the masks from the model parameters ---------- batch the batch to feed into the masker returns ------- the predicted
HIGHplugins/extract/mask/unet_dfl.py0get the masks from the model parameters ---------- batch the batch to feed into the masker returns ------- the predicted
HIGHplugins/extract/mask/vgg_clear.py0get the masks from the model parameters ---------- batch the batch to feed into the masker returns ------- the predicted
HIGHlib/model/layers.py0compute the output shape based on the input shape. parameters ---------- input_shape: tuple the input shape to the layer
HIGHlib/model/layers.py0compute the output shape based on the input shape. parameters ---------- input_shape: tuple the input shape to the layer
HIGHlib/model/layers.py0compute the output shape based on the input shape. parameters ---------- input_shape: tuple the input shape to the layer
HIGHlib/model/layers.py0compute the output shape based on the input shape. parameters ---------- input_shape: tuple the input shape to the layer
HIGHlib/model/layers.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/layers.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/layers.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/layers.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/layers.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/normalization.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/normalization.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/normalization.py0this is where the layer's logic lives. parameters ---------- inputs: :class:`keras.kerastensor` input tensor, or list/tu
HIGHlib/model/layers.py0returns the config of the layer. a layer config is a python dictionary (serializable) containing the configuration of a
HIGHlib/model/layers.py0returns the config of the layer. a layer config is a python dictionary (serializable) containing the configuration of a
HIGHlib/model/layers.py0returns the config of the layer. a layer config is a python dictionary (serializable) containing the configuration of a
HIGHlib/model/normalization.py0creates the layer weights. parameters ---------- input_shape: tuple[int, ...] keras tensor (future input to layer) or ``
HIGHlib/model/normalization.py0creates the layer weights. parameters ---------- input_shape: tuple[int, ...] keras tensor (future input to layer) or ``
HIGHlib/model/normalization.py0creates the layer weights. parameters ---------- input_shape: tuple[int, ...] keras tensor (future input to layer) or ``
HIGHlib/model/normalization.py0calculate the output shape from this layer. parameters ---------- input_shape: tuple the input shape to the layer return
HIGHlib/model/normalization.py0calculate the output shape from this layer. parameters ---------- input_shape: tuple the input shape to the layer return
HIGHlib/model/normalization.py0calculate the output shape from this layer. parameters ---------- input_shape: tuple the input shape to the layer return
HIGHlib/infer/objects.py0append the data from the given batch object to this batch object parameters ---------- batch the object containing data
HIGHlib/infer/objects.py0append the data from the given batch object to this batch object parameters ---------- batch the object containing data
HIGHlib/infer/objects.py0append the data from the given batch object to this batch object parameters ---------- batch the object containing data
Hyper-Verbose Identifiers114 hits · 114 pts
SeverityFileLineSnippet
LOWtools/sort/sort_methods.py167 def _binning_linear_threshold(self, units: str = "", multiplier: int = 1) -> list[list[str]]:
LOWtools/mask/mask_import.py146 def _file_list_to_frame_number(self, file_list: list[str]) -> dict[int, str]:
LOWtools/manual/globals.py186 def var_update_active_viewport(self) -> tk.BooleanVar:
LOWtools/manual/face_viewer/frame.py394 def _bind_mouse_wheel_scrolling(self) -> None:
LOWtools/manual/face_viewer/frame.py734 def transport_index_from_frame(self, frame_index: int) -> int | None:
LOWtools/manual/frame_viewer/control.py58 def _update_total_frame_count(self, *args): # pylint:disable=unused-argument
LOWtools/manual/frame_viewer/frame.py255 def _add_filter_threshold_slider(self, frame):
LOWtools/manual/frame_viewer/frame.py455 def _set_selected_action_tkvar(self):
LOWtools/manual/frame_viewer/frame.py503 def _disable_enable_copy_buttons(self, *args): # pylint:disable=unused-argument
LOWtools/manual/frame_viewer/frame.py516 def _disable_enable_reload_button(self, *args): # pylint:disable=unused-argument
LOWtools/manual/frame_viewer/frame.py595 def _display_optional_buttons(self, *args): # pylint:disable=unused-argument
LOWtools/manual/frame_viewer/editor/mask.py138 def _set_tk_mask_change_callback(self) -> tk.StringVar:
LOWtools/manual/frame_viewer/editor/mask.py144 def _set_tk_cursor_shape_change_callback(self) -> tk.StringVar:
LOWtools/manual/frame_viewer/editor/mask.py332 def _update_mask_image_zoomed(self,
LOWtools/manual/frame_viewer/editor/mask.py355 def _update_mask_image_full_frame(self,
LOWtools/manual/frame_viewer/editor/_base.py576 def _add_annotation_format_controls(self):
LOWtools/manual/frame_viewer/editor/landmarks.py211 def _update_cursor_point_mode(self, item_id):
LOWtools/manual/frame_viewer/editor/landmarks.py234 def _update_cursor_select_mode(self, event):
LOWtools/manual/frame_viewer/editor/landmarks.py337 def _snap_selection_to_points(self):
LOWtools/manual/frame_viewer/editor/bounding_box.py116 def _update_anchor_annotation(self, face_index, bounding_box, color):
LOWtools/manual/frame_viewer/editor/bounding_box.py202 def _check_cursor_bounding_box(self, event):
LOWtools/manual/frame_viewer/editor/extract_box.py72 def _update_anchor_annotation(self, face_index, extract_box, color):
LOWtools/preview/preview.py522 def _generate_converter_arguments(arguments: Namespace,
LOWtools/preview/preview.py597 def _update_converter_arguments(self) -> None:
LOWtools/preview/control_panels.py359 def _get_control_panel_options(self,
LOWtools/alignments/alignments.py70 def _get_alignments_locations(self) -> dict[str, list[str | None]]:
LOWplugins/plugin_loader.py267 def get_available_convert_plugins(convert_category: str, add_none: bool = True) -> list[str]:
LOWplugins/train/model/phaze_a.py321 def _validate_encoder_architecture(self) -> None:
LOWplugins/train/model/realface.py61 def get_dense_width_upscalers_numbers(self):
LOWplugins/train/model/_base/io.py124 def multiple_models_in_folder(self) -> list[str] | None:
LOWplugins/train/model/_base/io.py585 def _get_optimizer_and_group_ids(self) -> tuple[K_Optimizer,
LOWplugins/train/model/_base/settings.py83 def _set_keras_mixed_precision(cls, enable: bool) -> None:
LOWplugins/train/model/_base/settings.py125 def _get_mixed_precision_layers(self, layers: list[dict]) -> list[str]:
LOWplugins/train/model/_base/settings.py190 def get_mixed_precision_layers(self,
LOWplugins/train/model/_base/inference.py62 def _get_valid_inputs_for_layer(self, layer) -> list[keras.Layer]:
LOWplugins/train/model/_base/state.py169 def add_mixed_precision_layers(self, layers: list[str]) -> None:
LOWplugins/train/trainer/distributed.py119 def _handle_torch_gpu_mismatch_warning(
LOWplugins/convert/writer/pillow.py37 def _check_transparency_format(self) -> None:
LOWplugins/convert/writer/opencv.py38 def _check_transparency_format(self) -> None:
LOWtests/tools/preview/viewer_test.py47 def get_faces_display_instance(self, columns: int = 5, face_size: int = 256) -> FacesDisplay:
LOWtests/tools/preview/viewer_test.py111 def test_set_display_dimensions(self) -> None:
LOWtests/tools/preview/viewer_test.py310 def test__crop_destination_faces(self,
LOWtests/tools/alignments/media_test.py802 def test_get_roi_size_for_frame(self,
LOWtests/lib/utils_test.py353def fixture_get_model_instance(monkeypatch: pytest.MonkeyPatch,
LOWtests/lib/utils_test.py387def test_get_model_model_filename_input(
LOWtests/lib/utils_test.py410def test_get_model_attributes(get_model_instance: GetModel) -> None:
LOWtests/lib/utils_test.py426def test_get_model_properties(get_model_instance: GetModel) -> None:
LOWtests/lib/utils_test.py486def test_get_model__download_model(mocker: pytest_mock.MockerFixture,
LOWtests/lib/utils_test.py519def test_get_model__write_zipfile(mocker: pytest_mock.MockerFixture,
LOWtests/lib/utils_test.py555def test_get_model__unzip_model(mocker: pytest_mock.MockerFixture,
LOWtests/lib/utils_test.py578def test_get_model__write_model(mocker: pytest_mock.MockerFixture,
LOWtests/lib/training/data_augmentation_test.py105def test_constants_get_transform(config: dict[str, T.Any],
LOWtests/lib/training/data_augmentation_test.py123def test_constants_get_warp_to_landmarks(size: int, batch_size: int) -> None:
LOWtests/lib/training/data_augmentation_test.py196def test_constants_from_config(size: int,
LOWtests/lib/training/data_augmentation_test.py230def test_image_augmentation_init(size: int,
LOWtests/lib/training/data_augmentation_test.py250def test_image_augmentation_random_lab(size: int,
LOWtests/lib/training/data_augmentation_test.py271def test_image_augmentation_random_clahe(size: int, # pylint:disable=too-many-locals
LOWtests/lib/training/data_augmentation_test.py322def test_image_augmentation_color_adjust(size: int,
LOWtests/lib/training/data_augmentation_test.py347def test_image_augmentation_transform(size: int,
LOWtests/lib/training/data_augmentation_test.py392def test_image_augmentation_random_flip(size: int,
54 more matches not shown…
Deep Nesting49 hits · 49 pts
SeverityFileLineSnippet
LOWsetup.py735
LOWtools/effmpeg/effmpeg.py91
LOWtools/effmpeg/effmpeg.py216
LOWtools/effmpeg/effmpeg.py365
LOWtools/effmpeg/effmpeg.py465
LOWtools/effmpeg/effmpeg.py483
LOWtools/manual/detected_faces.py508
LOWtools/manual/detected_faces.py548
LOWtools/manual/face_viewer/viewport.py155
LOWtools/manual/frame_viewer/frame.py563
LOWtools/manual/frame_viewer/frame.py595
LOWtools/preview/control_panels.py460
LOWtools/preview/control_panels.py617
LOWtools/alignments/alignments.py157
LOWtools/alignments/jobs_faces.py118
LOWtools/alignments/jobs_faces.py422
LOWplugins/plugin_loader.py22
LOWplugins/train/model/phaze_a.py215
LOWplugins/train/model/_base/io.py450
LOWplugins/extract/detect/retinaface.py67
LOWplugins/extract/align/hrnet.py553
LOWplugins/extract/align/hrnet.py618
LOWplugins/convert/writer/patch.py129
LOWtests/utils.py81
LOWtests/lib/config/ini_test.py210
LOWtests/lib/model/layers_test.py21
LOWscripts/extract.py267
LOWscripts/extract.py1001
LOWlib/utils.py775
LOWlib/serializer.py264
LOWlib/serializer.py302
LOWlib/video.py787
LOWlib/image.py241
LOWlib/config/config.py229
LOWlib/config/config.py142
LOWlib/config/objects.py109
LOWlib/training/tensorboard.py197
LOWlib/system/ml_libs.py547
LOWlib/align/aligned_face.py303
LOWlib/gui/options.py349
LOWlib/gui/wrapper.py676
LOWlib/gui/display_analysis.py331
LOWlib/gui/menu.py532
LOWlib/gui/control_helper.py359
LOWlib/gui/control_helper.py1123
LOWlib/gui/control_helper.py1419
LOWlib/gui/analysis/event_reader.py559
LOWlib/model/optimizers/adabelief.py160
LOWlib/gpu_stats/rocm.py332
Hallucination Indicators4 hits · 30 pts
SeverityFileLineSnippet
CRITICALtools/manual/detected_faces.py510 :attr:`~tools.manual.manual.TkGlobals.var_filter_mode.get()`."""
CRITICALtools/manual/detected_faces.py550 :attr:`~tools.manual.manual.TkGlobals.var_filter_mode.get()`. """
CRITICALtools/preview/control_panels.py243 "color": app._patch.converter.cli_arguments.color_adjustment.replace("-", "_"),
CRITICALtools/preview/control_panels.py244 "mask_type": app._patch.converter.cli_arguments.mask_type.replace("-", "_"),
Excessive Try-Catch Wrapping29 hits · 29 pts
SeverityFileLineSnippet
LOWtools/sort/sort_methods.py778 except Exception:
LOWplugins/plugin_loader.py45 except Exception: # pylint:disable=broad-except
LOWplugins/convert/writer/patch.py152 except Exception as err: # pylint:disable=broad-except
LOWplugins/convert/writer/pillow.py85 except Exception as err: # pylint:disable=broad-except
LOWplugins/convert/writer/opencv.py84 except Exception as err: # pylint:disable=broad-except
LOWscripts/train.py266 except Exception as err:
LOWscripts/train.py524 except Exception as err:
LOWscripts/extract.py318 except Exception:
LOWscripts/extract.py338 except Exception:
LOWlib/convert.py190 except Exception as err: # pylint:disable=broad-except
LOWlib/logger.py113 except Exception: # pylint:disable=broad-except
LOWlib/logger.py558 except Exception: # pylint:disable=broad-except
LOWlib/utils.py771 except Exception as err: # pylint:disable=broad-except
LOWlib/serializer.py140 except Exception as err:
LOWlib/serializer.py168 except Exception as err:
LOWlib/image.py145 except Exception as err: # pylint:disable=broad-except
LOWlib/image.py1361 except Exception as err: # pylint:disable=broad-except
LOWlib/multithreading.py154 except Exception: # pylint:disable=broad-except
LOWlib/multithreading.py341 except Exception:
LOWlib/cli/launcher.py200 except Exception: # pylint:disable=broad-except
LOWlib/system/sysinfo.py151 except Exception as err: # pylint:disable=broad-except
LOWlib/system/sysinfo.py237 except Exception as err: # pylint:disable=broad-except
LOWlib/gui/menu.py264 except Exception as err: # pylint:disable=broad-except
LOWlib/gui/utils/misc.py76 except Exception: # pylint:disable=broad-except
LOWlib/gui/utils/image.py363 except Exception as err: # pylint:disable=broad-except
LOWlib/infer/plugin_utils.py161 except Exception as err: # pylint:disable=broad-except
LOWlib/gpu_stats/rocm.py355 except Exception as err: # pylint:disable=broad-except
LOWlib/gpu_stats/nvidia.py56 except Exception as err: # pylint:disable=broad-except
LOWlib/gpu_stats/apple_silicon.py73 except Exception as err: # pylint:disable=broad-except
Self-Referential Comments7 hits · 21 pts
SeverityFileLineSnippet
MEDIUM.install/macos/faceswap_setup_macos.sh444 # Create a shortcut to launch into the GUI
MEDIUM.install/macos/faceswap_setup_macos.sh455 # Create a simple .app wrapper to launch GUI
MEDIUM.install/linux/faceswap_setup_x64.sh459 # Create a shortcut to launch into the GUI
MEDIUM.install/linux/faceswap_setup_x64.sh469 # Create a shell script to launch the GUI and add a desktop shortcut
MEDIUMtools/manual/frame_viewer/editor/mask.py250 # Create a bounding box rectangle ROI
MEDIUMlib/gui/theme.py370 # Create the elements with the new images
MEDIUMlib/gui/custom_widgets.py318 # Create a new Tcl command whose name is the widget's path name, and
AI Slop Vocabulary6 hits · 18 pts
SeverityFileLineSnippet
MEDIUM.install/macos/faceswap_setup_macos.sh259 # Options pertaining to additional apps that are required
MEDIUM.install/macos/faceswap_setup_macos.sh270 # Options pertaining to the installation of conda
MEDIUM.install/macos/faceswap_setup_macos.sh305 # Options pertaining to the installation of faceswap
MEDIUM.install/linux/faceswap_setup_x64.sh276 # Options pertaining to the installation of conda
MEDIUM.install/linux/faceswap_setup_x64.sh309 # Options pertaining to the installation of faceswap
MEDIUMplugins/convert/color/color_transfer.py118 # space, being sure to utilize the 8-bit unsigned integer data
Redundant / Tautological Comments7 hits · 10 pts
SeverityFileLineSnippet
LOW.install/macos/faceswap_setup_macos.sh208 # Check if conda is in PATH
LOW.install/macos/faceswap_setup_macos.sh392 # Check if an environment with the given name exists
LOW.install/linux/faceswap_setup_x64.sh226 # Check if conda is in PATH
LOW.install/linux/faceswap_setup_x64.sh399 # Check if an environment with the given name exists
LOWtools/sort/sort.py236 # Check if non-dissimilarity sort method and group method are not the same
LOWlib/utils.py77 # Check if environment variable is set, if so use that
LOWlib/training/preview_tk.py925 if not self._initialized: # Set initialized to True for GUI
Over-Commented Block6 hits · 6 pts
SeverityFileLineSnippet
LOWplugins/extract/detect/mtcnn.py141# found at
LOWplugins/extract/mask/bisenet_fp.py161# Permission is hereby granted, free of charge, to any person obtaining a copy
LOWdocs/conf.py1# Configuration file for the Sphinx documentation builder.
LOW.github/workflows/pytest.yml41 steps:
LOWlib/model/optimizers/lion.py1#! /usr/env/bin/python3
LOWlib/model/optimizers/adabelief.py1#! /usr/env/bin/python3
Cross-Language Confusion1 hit · 5 pts
SeverityFileLineSnippet
HIGHlib/video.py732 self._graph.push(frame.reformat(format=vid.pix_fmt))
Decorative Section Separators1 hit · 3 pts
SeverityFileLineSnippet
MEDIUMlib/model/optimizers/lion.py16# ==============================================================================
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippet
MEDIUMplugins/train/trainer/distributed.py111 logger.warning("Batch size %s is sub-optimal for %s GPUs. You may want to adjust your "