← Main README | Features | Usage | Advanced | Architecture | Troubleshooting | Style Guide | Changelog | ToC
This guide covers special installation requirements for certain dependencies in Dataset Forge. These steps are critical for correct operation, especially on Windows. Please read carefully and follow the order for each component.
You must install the correct CUDA-enabled version of torch/torchvision/torchaudio before installing other requirements.
Quick Steps:
venv312\Scripts\activate
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121- Replace
cu121with your CUDA version if needed. See PyTorch Get Started for details. - If you skip this, pip will install the CPU-only version by default.
- Only after this, run
pip install .orpip install -r requirements.txt.
Troubleshooting:
- Mismatched CUDA/cuDNN versions will cause import errors or no GPU support.
- See requirements.txt and PyTorch docs.
(for getnative functionality/native resolution detection)
-
Extract the following file from
assets/getnative.zip:getnative.exe
-
Add the
getnative.exefile's path to your PATH.
VapourSynth must be installed before getnative.
Steps (Windows):
- Download and install VapourSynth (includes imwri plugin).
- Open a terminal and run:
python vsrepo.py install descale
python vsrepo.py install ffms2
python vsrepo.py install lsmas
python vsrepo.py install imwri
python vsrepo.py install akarin
python vsrepo.py install resize2- Activate your virtual environment:
venv312\Scripts\activate- Install getnative:
pip install getnativeSteps (Windows):
- Git clone the getnative repo:
git clone https://github.com/Infiziert90/getnative.git
cd getnative-
Extract the following folder from
assets/vapoursynth_install.zip:vapoursynth_install
-
Copy the contents of the
vapoursynth_installfolder to ./getnative/ repo root and REPLACE existing files. -
Follow the steps outlined in
env_create.mdwhich should be in your ./getnative/ repo root.
Troubleshooting:
-
Install VapourSynth before getnative or any requirements that depend on it.
-
If getnative fails to import, check that VapourSynth is installed and on your PATH.
-
Also make sure directory containing
vsrepo.pyand the plugin's folder containing the.dlls are also on your PATH. -
./assets/vapoursynth_plugins_dll.zipcontains all 4 of the vapoursynth plugins' dll's (descale,ffms2,lsmas&imwri) for whatever its worth. -
See Getnative Recommended Windows Installation for more details.
Windows users: You must install both the Python packages and the required DLLs.
Steps:
- Install the packages:
venv312\Scripts\activate
pip install python-magic python-magic-bin libmagic-
Copy the following files from
assets/libmagicwin64-master.ziptoC:/Windows/System32/:libgnurx-0.dllmagic.mgcmagic1.dll
(These are prebuilt for 64-bit Windows. See source: libmagicwin64 for details.)
-
When using python-magic, specify the magic file path if needed:
import magic
file_magic = magic.Magic(magic_file="C:/Windows/System32/magic.mgc")Troubleshooting:
- If you get import errors, ensure the DLLs are in
System32and you are using the correct magic file path. - See python-magic docs and libmagicwin64.
Using resdet for Native Resolution Detection
- Clone the repository:
git clone https://github.com/0x09/resdet.git cd resdet - Build resdet:
sudo apt update sudo apt install build-essential sudo apt install pkg-config sudo apt install libfftw3-dev libpng-dev mjpegtools libmagickwand-dev cd path/to/resdet ./configure make clean make - Install resdet to your WSL PATH:
sudo cp resdet /usr/local/bin/ sudo chmod +x /usr/local/bin/resdet # Or, to use make install: sudo make install - Note: The Dataset Forge CLI will automatically use WSL to run resdet on Windows. Ensure resdet is available in your WSL environment's PATH.
-
Clone the repository:
git clone https://github.com/0x09/resdet.git
-
Open MSYS2 MINGW64 Shell.
-
Install dependencies:
pacman -S base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-imagemagick mingw-w64-x86_64-fftw mingw-w64-x86_64-pkg-config autoconf automake libtool git
pacman -S mingw-w64-x86_64-libjpeg-turbo mingw-w64-x86_64-libpng mingw-w64-x86_64-libjpeg-turbo
-
Set PKG_CONFIG_PATH:
export PKG_CONFIG_PATH=/mingw64/lib/pkgconfig -
Clone resdet:
git clone https://github.com/0x09/resdet.git cd resdet -
Adjust makefile: Look for a line like
TOOLS=resdet stat profile imgread change to TOOLS=resdet stat imgread
-
Build resdet:
./configure --prefix=/mingw64 --disable-libpng --disable-libjpeg make clean make -
Add your
MSYS2 MINGW64 Shell's'binfolder (egC:\msys64\mingw64\bin) in your PATH, or add its folder to your PATH. -
Add
resdet.exeto a folder in your PATH, or add its folder to your PATH.
./r
-
Extract the following files from
assets/resdet_windows.zip:resdet.exe
(This is a prebuilt for 64-bit Windows that I compiled.)
-
Add
resdet.exeto a folder in your PATH, or add its folder to your PATH.
(for GetFnative & getfscaler functionality/native resolution detection)
- Extract the following files from
_win_binary_dump:
getfnative.exe
getfnativeq.exe
getfscaler.exe
- Add all 3
.exe's to a folder in your PATH.
(for exiftool integration)
-
Extract the following folder from
assets/exiftool-13.32_64.zip:exiftool-13.32_64
-
Add the
exiftool-13.32_64folder path to your PATH.
-
Download ExifTool.exe:
-
Download the Windows Executable (e.g.,
exiftool-12.70.zip). -
Extract it and rename
exiftool(-k).exetoexiftool.exefor command-line use. -
Add
exiftool.exeto a folder in your PATH, or add its folder to your PATH.
IMPORTANT: Note that if you move the .exe to another folder, you must also move the "exiftool_files" folder to the same location.
-
Download ExifTool.exe:
choco install exiftool -y
-
This will install
exiftool.exeto:C:\ProgramData\chocolatey\lib\exiftool\tools\
-
Add
exiftool.exeto a folder in your PATH, or add its folder to your PATH.
(for Oxipng integration) essential for 'Sanitise Image Workflow'
-
Extract the following folder from
assets/oxipng-9.1.5-x86_64-pc-windows-msvc.zip:oxipng-9.1.5-x86_64-pc-windows-msvc
-
Add the
oxipng-9.1.5-x86_64-pc-windows-msvcfolder path to your PATH.
-
Download oxipng.exe:
-
Download the appropriate archive (e.g.,
oxipng-9.1.5-x86_64-pc-windows-msvc.zip). -
Extract the contents.
-
Add
oxipng.exeto a folder in your PATH, or add its folder to your PATH.
(for zsteg & Steghide integration) optional for 'Sanitise Image Workflow'
- Install Ruby (via RubyInstaller for Windows)
- Go to: https://rubyinstaller.org/
- Download the latest Ruby+Devkit version (e.g.
Ruby 3.3.0 with Devkit). - Run the installer.
- On the final screen, check "Add Ruby executables to your PATH".
- Also allow it to install MSYS2 and development tools when prompted.
-
Restart PowerShell/Terminal/Console/CLI
-
Install
zsteggem install zsteg
For users who need a standalone zsteg.exe executable:
-
Extract the following files from
assets/zsteg_0.2.13_win.zip:zsteg.exe
(This is a prebuilt Windows binary built using Largo/ocran that I compiled.)
-
Add
zsteg.exeto a folder in your PATH, or add its folder to your PATH. -
You can now use
zsteg.exeas a CLI tool.
For users who need a standalone zsteg.exe executable:
- Install Ruby (via RubyInstaller for Windows)
- Go to: https://rubyinstaller.org/
- Download the latest Ruby+Devkit version (e.g.
Ruby 3.3.0 with Devkit). - Run the installer.
- On the final screen, check "Add Ruby executables to your PATH".
- Also allow it to install MSYS2 and development tools when prompted.
-
Restart PowerShell/Terminal/Console/CLI
-
Remove old OCRA and install OCRAN
- Remove the old OCRA then install the newer OCRAN (maintained fork)
gem uninstall ocra
gem install ocran-
Install
zsteggem install zsteg
-
Create zsteg CLI wrapper
Extract the following files from
assets/zsteg_cli_build.zip:zsteg_cli.rbfiber.so
-
Build the executable using OCRAN
ocran zsteg_cli.rb --gem-all --add-all-core --output zsteg.exe --verbose
-
Test the executable
./zsteg.exe --help OR ./zsteg.exe --help > output.txt 2>&1
Note: The OCRAN-built executable includes all necessary dependencies and runs without requiring Ruby to be installed on the target system. This method uses the Largo/ocran fork which provides better Windows compatibility and dependency handling compared to the original OCRA.
Technical Details: OCRAN properly handles native dependencies like
zlib.so,zlib1.dll, and assembly manifest files that cause side-by-side configuration failures with OCRA.
Troubleshooting: If you encounter side-by-side configuration errors with the original OCRA, use the OCRAN method above which properly handles native dependencies like
zlib.soandzlib1.dll.
-
Extract the following folder from
assets/steghide-0.5.1-win32.zip:steghide
-
Add the
steghidefolder path to your PATH.
-
Download Steghide
-
Extract the contents (
steghidefolder). -
Add the
steghidefolder path to your PATH.
(for ffmpeg integration)
-
Extract the following folder from
assets/ffmpeg-2025-07-31-git-119d127d05-full_build.zip:ffmpeg-2025-07-31-git-119d127d05-full_build
-
Note that this^ folder contains a
binfolder which contains:ffmpeg.exeffplay.exeffprobe.exe
- Add the path to the
binfolder to your PATH.
-
Download
FFmpeg Builds(binaries for Windows):winget install ffmpeg OR choco install ffmpeg-full OR scoop install ffmpeg
-
Download
ffmpeg-git-full.7z: -
Extract the contents of the downloaded archive.
-
Note that this^ folder should contain a
binfolder which contains:ffmpeg.exeffplay.exeffprobe.exe
- Add the path to the
binfolder to your PATH.
shortcut that implements multiple special installations from above
might, might not work
-
Extract the following folder from
assets/_win_binary_dump.zip:_win_binary_dump
-
Add the path to the
_win_binary_dumpfolder path to your PATH.
this includes:
exiftool.exe
ffmpeg.exe
ffplay.exe
ffprobe.exe
getnative.exe
oxipng.exe
resdet.exe
steghide.exe
zsteg.exe
pyiqa.exe
imagededup.exe
getfnative.exe
getfnativeq.exe
getfscaler.exe-
Extract the following folder from
assets/_win_dll_dump.zip:_win_dll_dump
-
Add the path to the
_win_dll_dumpfolder path to your PATH.
this includes ddl's for:
VapourSynth's plugins
python-magic's dll's & .mgc magicfile- lorem ipsum
a guide on optimizing performance
- When Using Dataset-Forge always start is using:
./run.batrun.bat contains CUDA & Pytorch optimization settings
-
See Getting Started for:
CUDA-enabled torch/torchvision/torchaudioinstallation instruction.
- Press the Windows key + R to open the Run dialog box.
Type SystemPropertiesAdvanced.exe and press Enter.
- Where to go:
Performance section
click
Settings...
Advanced tab
Virtual Memory section
click
Change
check "Custom Size":
radio button
Initial size
1.5 x your totall RAM for Maximum size 3 x your totall RAM click
OKRestart Windows
- Right Click Desktop:
click
NVIDIA Control Panel
Manage 3D settings > Program Settings
Add:
Full path to your
venv312's python.exe
like
C:/Users/username/github/Dataset-Forge/venv312/Scripts/python.exe
then change these settings:
CUDA - GPUs:
All CUDA - Sysmem Fallback Policy: Prefer No Sysmem Fallback Power management mode: Prefer maximum performance Texture filtering - Quality: High performance Threaded optimization: On click Apply
For more details, see the main README Quick Start and troubleshooting guide.