README | Site Index | Privacy Policy | Terms of Use
Image Deduper is a Windows 11-style WinUI 3 desktop app that ports the proven Image Deduper workflow into a modern GUI, scans an image folder, and moves lower-quality duplicates to a duplicates/ subfolder using SHA-1, perceptual hash, and SSIM.
Image Deduper は 従来の CLI 版フローを WinUI 3 で再構築した Windows 11 風デスクトップアプリで、画像フォルダーを走査し、SHA-1・pHash・SSIM を使って画質の劣る重複画像を duplicates/ フォルダーに移動します。
CLI reference implementation: https://github.com/jogu6/imagededuper
CLI 版リポジトリ: https://github.com/jogu6/imagededuper
-
Open the repository’s Releases page on GitHub and pick the latest tag (for example
v1.0.0). -
Download
ImageDeduper-win-x64.zip(or another RID-specific archive) from the Assets section. -
Extract the ZIP. It contains
ImageDeduper.exe, this README, and supporting files—place them anywhere and run the EXE directly. -
GitHub の Releases ページで最新タグ(例:
v1.0.0)を開きます。 -
Assets から
ImageDeduper-win-x64.zip(または必要な RID の ZIP)を取得します。 -
ZIP を展開すると
ImageDeduper.exeと README などが入っています。任意のフォルダーに置き、EXE を直接実行してください。
-
Automatic format normalization
Converts HEIC/HEIF (when the Microsoft HEIF Image Extensions are installed), renames.jfifto.jpg, and seamlessly handles WebP/BMP/GIF/TIFF/PNG/JPEG.
自動フォーマット正規化 — Microsoft HEIF 画像拡張機能が入っていれば HEIC/HEIF も変換し、.jfifを.jpgにリネームし、WebP/BMP/GIF/TIFF/PNG/JPEG も透過的に扱います。 -
Layered duplicate detection
SHA-1 for exact matches, perceptual hash for clustering, SSIM for final confirmation. Only the lower-resolution (or older) file goes to<source>/duplicates.
多層式重複検出 — 完全一致は SHA-1、類似候補は pHash、最終判定は SSIM で、低解像度または古い方のみ<source>/duplicatesへ移動します。 -
Resumable processing
Separate checkpoints (cache load/comparison) stored beside the source folder so Stop/Start resumes exactly where you left off.
再開機能 — 読み込みと比較それぞれにチェックポイントを用意し、フォルダー内に保存するため、Stop/Start で中断位置から再開できます。 -
Modern compact UI
Single page with one progress bar, live statistics, live logs with auto-scroll (unless manually scrolled), and a settings dialog.
モダンかつコンパクトな UI — 単一ページに進捗バー・統計・ライブログをまとめ、手動でスクロールしていなければ自動スクロールし、詳細な設定ダイアログも備えています。 -
Localization & codec awareness
English/Japanese strings reside inImageDeduper.Core/locales. The settings dialog lists supported formats and shows a “Get from Microsoft Store” link if HEIF codecs are missing.
多言語・コーデック検知 — 英語/日本語のリソースはImageDeduper.Core/localesにあり、設定画面には対応フォーマットが表示され、HEIF コーデックが無い場合は「Microsoft Store から入手」リンクが出ます。
| Item / 項目 | Version / バージョン | Notes / 備考 |
|---|---|---|
| .NET SDK | 8.0 | Needed only for building from source / ソースからビルドする場合に必要 |
| Windows App SDK | 1.8 (NuGet) | Restores automatically / NuGet で自動復元 |
| Windows 11 HEIF codec | Optional | Required to process HEIC/HEIF images / HEIC/HEIF を扱うには Microsoft Store 版を導入 |
# English: build & run
# 日本語: ビルドと実行
dotnet build ImageDeduper.sln
dotnet run --project ImageDeduper.App
# Publish a single-file, self-contained exe (x64 example)
# 単体 self-contained EXE を生成する例 (x64)
dotnet publish ImageDeduper.App -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=trueThe final EXE is placed under ImageDeduper.App/bin/Release/.../publish/ImageDeduper.exe. Zip that folder (keeping this README inside) before uploading it as a Release asset.
最終的な EXE は ImageDeduper.App/bin/Release/.../publish/ImageDeduper.exe に出力されます。ZIP 化する際は README も同梱し、GitHub Release の Assets にアップロードしてください。
- Select folder / フォルダー選択 – Choose the image source; the UI shows the path and status.
- Start / 開始 –
Startを押すと読み込みフェーズ(Phase 1/2)→比較フェーズ(Phase 2/2)と進みます。 - Monitor / 監視 – Statistics (Total / Processed / Moved / Elapsed) and live logs update continuously; logs stay copyable.
- Stop & resume / 停止と再開 –
Stopで中断すると次回Start時に「再開 / 最初から」を即時選択できます。 - Duplicates folder / duplicates フォルダー – 移動されたファイルは
<source>/duplicatesに集約され、ログで理由が分かります。
Settings (language, SSIM, pHash, codec hints) live in setting.ini, saved on exit, and ignored by git. Logs are stored next to the EXE. Resume checkpoints (.loading.json, resume.json) are created inside the source folder to keep runs self-contained.
言語や SSIM・pHash・コーデック表示などの設定は setting.ini に保存され、終了時に更新されます(git では無視)。ログは EXE と同じ場所に出力され、再開用チェックポイント(.loading.json, resume.json)は処理対象フォルダー内に作成します。
- English resources:
ImageDeduper.Core/locales/en.json - Japanese resources:
ImageDeduper.Core/locales/ja.json
Add new locale files and extendAppSettings.Languageto support extra languages.
新しい言語を追加する場合は JSON を追加し、AppSettings.Languageを拡張してください。
- Source code: MIT License (
LICENSE). - Third-party dependencies: see THIRD_PARTY_NOTICES.md.
ソースコードは MIT License (LICENSE) です。
サードパーティーライブラリについては THIRD_PARTY_NOTICES.md を参照してください。