847 Commits

Author SHA1 Message Date
torzdf 87ac39eb9e bugfix: TFLambdaOp to ScalarOp on legacy update 2026-08-02 14:35:30 +01:00
torzdf 00a2d77f3d bugfix: train data loading - resize function for arbitrary channels 2026-07-05 09:50:43 +01:00
torzdf fa79d4dcee Initializers to Torch (#1549)
* Update requirements

* Remove docker

* ICNR init to torch

* conv-aware: Output as Tensor rather than Variable

* Bugfix: Omit type object from automodsumm

* bugfix: Tensorboard unit test. Switch Sequential for Functional

* Suppress broken Keras test

* revert failing test
2026-05-29 11:40:03 +01:00
torzdf 6923cd2074 bugfix: lpips - disable grad 2026-05-22 16:54:11 +01:00
torzdf 53b2fd9f1e bugfix: Set color order for relevant loss functions 2026-05-22 12:09:05 +01:00
torzdf 815b11f104 Migrate optimizers to torch (#1547) 2026-05-21 08:44:57 +01:00
torzdf a0ff721004 Completely remove Keras from loss calculations (#1545)
* training: Completely remove Keras from loss calculations
2026-05-09 19:07:30 +01:00
torzdf 4b2a3cdc89 bugfixes:
- Installer: Force conda-forge for git on linux
  - GUI project: Fix issue with autosaving current settings
2026-05-01 10:34:52 +01:00
torzdf f7aa56a037 bugfix: Native torch loss functions running in Keras 2026-04-24 18:12:42 +01:00
torzdf 758a44a187 bugfix: GUI loading projects with removed options 2026-04-24 16:58:28 +01:00
torzdf fc1dcd1fd0 bugfix: Loss function device allocation 2026-04-24 10:24:24 +01:00
torzdf dd25f4533a All loss functions to Torch 2026-04-23 16:35:20 +01:00
torzdf 16fea0ebff Most loss functions to torch 2026-04-21 19:14:55 +01:00
torzdf e6ae291cd4 lpips: To torch + crop feature map zero-padding 2026-04-20 09:15:26 +01:00
torzdf 83fdd5f938 Train: Migrate data loading to Torch (#1540) 2026-04-16 19:19:53 +01:00
torzdf aa066ad7b2 bugfix: Aligned faces. Fix padding calculation 2026-04-08 10:02:06 +01:00
torzdf f403afbfa2 bugfix: legacy alignments conversion 2026-04-08 07:21:32 +01:00
torzdf 30d087acb9 bugfix: alignments datadict: Allow loading missing identities and masks 2026-04-08 07:16:37 +01:00
torzdf 604374100e bugfix: Aligned face - fix sub-crops + landmark mask mapping for coverage != 1.0 and y-offset != 0.0 2026-04-08 00:42:08 +01:00
torzdf 7203cf3dea bugfix: Align - Fix re-feed OOB cropping + loosen HRNet BBox 2026-04-05 19:14:34 +01:00
torzdf 32f427c00c Alignments: Migrate typed-dicts to dataclasses 2026-04-05 12:10:05 +01:00
torzdf cb2eace572 Remove legacy face set support 2026-03-31 00:03:05 +01:00
torzdf 4a5ac8f9a0 Bugfix: Extract/Convert - Don't error when an input frame is black 2026-03-29 18:47:52 +01:00
torzdf 0a0d1fabf0 convert bugfixes:
- ffmpeg writer: Exit audio buffer when no audio available
  - convert: correctly apply y-offset
  - Fix color adjust when "none" selected
2026-03-28 14:13:10 +00:00
torzdf 6ae823141c bugfix: vertical-offset in convert and preview 2026-03-27 15:11:05 +00:00
torzdf 7c0665fffa Replace imageio with pyav/ffmpeg-binaries (#1534) 2026-03-24 17:25:12 +00:00
torzdf d21781264d Extraction Overhaul (#1533)
* Extract refactor
2026-03-20 23:52:37 +00:00
torzdf dd2323bc70 Backported updates:
- Docs: Centralize sphinx requirements
- Logging: Handle Torch warnings and logging within our logging module
- Logging: More robust array logging handling
- Alignments: Store arrays as list in alignments file
- Alignments: Minor constants + Pose updates
- Add insightface_resnet network
- Update requirements
2026-03-12 10:27:16 +00:00
torzdf aa40efabf3 Backported code to support future updates 2026-02-27 19:30:27 +00:00
torzdf 4c2092623d bugfix: Don't query amd-smi under WSL2 2026-02-20 17:01:43 +00:00
torzdf 037738cbe2 bugfix: Collect AMD GPU stats when running in WSL2 2026-02-20 14:42:35 +00:00
torzdf 837bc2d51d Faceswap 3 (#1516)
* FaceSwap 3 (#1515)
* Update extract pipeline
* Update requirements + setup for nvidia
* Remove allow-growth option
* tf.keras to keras updates
* lib.model.losses - Port + fix all loss functions for Keras3
* lib.model - port initializers, layers. normalization to Keras3
* lib.model.autoclip to Keras 3
* Update mixed precision layer storage
* model file to .keras format
* Restructure nn_blocks to initialize layers in __init__
* Tensorboard
  - Trainer: Add Torch compatible Tensorboard callbacks
  - GUI event reader remove TF dependency
* Loss logging
  - Flush TB logs on save
  - Replace TB live iterator for GUI
* Backup models on total loss drop rather than per side
* Update all models to Keras3 Compat
* Remove lib.model.session
* Update clip ViT to Keras 3
* plugins.extract.mask.unet-dfl - Fix for Keras3/Torch backend
* Port AdaBelief to Keras 3
* setup.py:
  - Add --dev flag for dev tool install
* Fix Keras 3 syntax
* Fix LR Finder for Keras 3
* Fix mixed precision switching for Keras  3
* Add more optimizers + open up config setting
* train: Remove updating FS1 weights to FS2 models
* Alignments: Remove support for legacy .json files
* tools.model:
  - Remove TF Saved Format saving
  - Fix Backup/Restore + Nan-Scan
* Fix inference model creation for Keras 3
* Preview tool: Fix for Keras3
* setup.py: Configure keras backend
* train: Migration of FS2 models to FS3
* Training: Default coverage to 100%
* Remove DirectML backend
* Update setup for MacOS
* GUI: Force line reading to UTF-8
* Remove redundant Tensorflow references
* Remove redundant code
* Legacy model loading: Fix TFLamdaOp scalar ops and DepthwiseConv2D
* Add vertical offset option for training
* Github actions: Add more python versions
* Add python version to workflow names
* Github workflow: Exclude Python 3.12 for macOS
* Implement custom training loop
* Fs3 - Add RTX5xxx and ROCm 6.1-6.4 support (#1511)
* setup.py: Add Cuda/ROCm version select options
* bump minimum python version to 3.11
* Switch from setup.cgf to pyproject.toml
* Documentation: Update all docs to use automodapi
* Allow sysinfo to run with missing packages + correctly install tk under Linux
* Bugfix: dot naming convention in clip models
* lib.config: Centralise globally rather than passing as object
- Add torch DataParallel for multi-gpu training
  - GUI: Group switches together when generating cli args
  - CLI: Remove deprecated multi-character argparse args
  - Refactor:
    - Centralise tensorboard reading/writing + unit tests
    - Create trainer plugin interfaces + add original + distributed
* Update installers
2025-12-21 02:45:11 +00:00
torzdf d115fcbabf bugfux: GUI session data. Prevent crash on missing session data 2025-11-23 15:10:40 +00:00
torzdf 381b06f6d3 training: Add Learning Rate Warmup 2025-11-21 17:52:45 +00:00
torzdf 05857b63e1 bugfix: Correctly set learning rate from LR Finder when resuming 2025-11-21 15:19:12 +00:00
torzdf 57027092af bugfix: Correctly generate thumbnails for alignments when frames are missing 2025-11-06 17:51:56 +00:00
torzdf 50f895d3c1 bugfix: FFL loss - prevent divide by zero errors 2025-11-04 12:29:25 +00:00
torzdf b16b755d55 lr-finder: Log error on NaN 2025-10-23 18:18:39 +01:00
torzdf 3f53ee9cec Bugfix: Convert - Correctly error if a valid mask has not been selected 2024-08-02 18:35:34 +01:00
torzdf b6ac7b8039 bugfix: Manual tool. Allow working with image folders at EEN values > 1 2024-07-05 18:46:10 +01:00
torzdf 1f4fcff5dd bugfix: Alignments, prevent duplicate backup alignment file names 2024-05-19 11:04:48 +01:00
torzdf 13dd5b3a90 bugfix: Alignments - correctly update keys for multiple underscores in the filename 2024-04-26 17:39:46 +01:00
torzdf 0f947791f5 bugfix: Alignments remove version check for video file extension update
- Typofixes
2024-04-21 20:03:42 +01:00
torzdf be42b04064 Bugfix: Alignment file video key lookup for very old alignment files 2024-04-21 19:55:45 +01:00
torzdf 696692dc08 Fixups
- Deprecations - display correct long argument
  - Minor spelling + linting
2024-04-21 16:22:42 +01:00
torzdf dce7d98302 lib.align: Split lib.align.alignments to smaller modules:
- Move update objects to own module
  - Move Thumbnails to own module
  - docs update + linting/typing
2024-04-19 13:45:30 +01:00
torzdf 96528ee3e8 lib.align.detected_face: Split Mask objects to own aligned_mask module 2024-04-19 12:25:00 +01:00
torzdf 2bad105dc8 bugfix: Alignment tool, auto-detect alignments
- Random linting and typing
2024-04-19 11:33:52 +01:00
torzdf 957734dfc0 convert: Bugfix: Update legacy .png video alignments to include video file extension 2024-04-17 12:37:47 +01:00
torzdf 1c081aea7d Add ability to export and import alignment data (#1383)
* tools.alignments - add export job

* plugins.extract: Update __repr__ for ExtractorBatch dataclass

* plugins.extract: Initial implementation of external import plugins

* plugins.extract: Disable lm masks on ROI alignment data import

* lib.align: Add `landmark_type` property to AlignedFace and return dummy data for ROI Landmarks pose estimate

* plugins.extract: Add centering config item for align import and fix filename mapping for images

* plugins.extract: Log warning on downstream plugins on limited alignment data

* tools: Fix plugins for 4 point ROI landmarks (alignments, sort, mask)

* tools.manual: Fix for 2D-4 ROI landmarks

* training: Fix for 4 point ROI landmarks

* lib.convert: Average color plugin. Avoid divide by zero errors

* extract - external:
  - Default detector to 'external' when importing alignments
  - Handle different frame origin co-ordinates

* alignments: Store video extension in alignments file

* plugins.extract.external: Handle video file keys

* plugins.extract.external: Output warning if missing data

* locales + docs

* plugins.extract.align.external: Roll the corner points to top-left for different origins

* Clean up

* linting fix
2024-04-15 12:19:15 +01:00