Replies: 2 comments
-
|
I didn't have enough time to implement everything you described, but here's my current approach: The idea is to filter groups where at least one asset's path matches a pattern - groups without any matching assets get auto-resolved and won't show up. See README - Path Filter:
Added a "Path Contains" field to both Similar and View pages in This is the best I can do for now. If you're interested in extending this further (like the multi-constraint "X AND Y" matching you mentioned), PRs are welcome! |
Beta Was this translation helpful? Give feedback.
-
|
I've been testing this out and it is VERY useful! Thank you so much! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
In the "Similar" tab there is an "Exclude" option. If I'm understanding the exclude options correctly, it means there is asset-based filtering and group-based filtering going on:
I would like to propose an "Include" option that works in a way that can do asset-based and/or group-based filtering, but based on inclusion rather than exclusion. Let's consider a use case: For people who primarily use external libraries with Immich, they are probably doing this because they keep the main/primary copy of all of their photos on the file system, so they are using folders to organize their library. -- (Ie the "main/primary copy" is viewed as being on the disk. Using external libraries, the assets are in Immich, but the concept is that Immich is NOT managing the "main/primary" copy.) Sometimes, they want to integrate a new folder into their library: let's say they just did a google takeout download and now have a folder that contains all those google takeout images. In order to integrate this google takeout folder into their main library, first they would like to remove all exact duplicates from the google takeout folder with extreme prejudice, but only if one of the photos in those groups exists in the main library. After duplicates are deleted from the google takeout folder, what's left over can then be copied into the main/primary folder.
If you have used Czkawka / Krokiet, then maybe you can understand how this use case would be done using those tools: first, detect all duplicates. Czkawka then shows a text list of all groups along with all assets within each group. Then, use Czkawka's "auto-select based on regex" tool to select images (across all similarity groups) from the google takeout folder (also, Czkawka has an option to ensure that not all assets in a group are selected at once). Then, click "delete selected". Pretty simple way to delete all duplicates in a specific folder.
So, I would like to do something like this with immich-deduper.
Imagine a text field that says "include groups with assets containing path name X". This way, groups that do not contain any of those assets would be completely ignored/skipped. This is a way to include groups (we are including groups here, not assets -- all assets in a group would always be shown, even if an individual asset in the group was not in the given folder). Note here that when I say "Path" I mean folder paths plus file name. An asset at "2025/12/01/IMG_0001.JPG" would be matched by path query "2025/12/01/IMG".
We could also even have a "+" button that let's them add an additional constraint of the same type: ie, they enter the names of both X and Y as separate fields. This would mean that any group shown would have to have at least one asset in X folder, AND at least one asset in Y folder. (But I'm not sure how useful this would be)
(But, this approach relies on being able to filter based on folder name (not just filename). Right now the "view" tab "Search by filename" feature doesn't recognize folder names, only file names. So it seems to be a behavior across the entire software that foldernames are basically never searched against.)
TL;DR: Really the basic idea here is: I want to filter out groups not having at least one asset matching path X.
Thoughts?
Beta Was this translation helpful? Give feedback.
All reactions