Manually specify that two images should be considered one asset

Thank you for your hard work and I look forward to really getting to grips with my photo library thanks to PhotoStructure.

Over the years I have accumulated multiple versions of some images through uploading certain ones to web services such as Google Photos or Facebook and then downloading them again later for backup purposes. In most cases these web services have stripped the metadata from the images, leaving them with no EXIF tags and only the downloaded date/time. In almost all cases the downloaded image is somewhat compressed and much lower in resolution than the original.

Obviously, PhotoStructure considers these re-downloaded backups to be separate assets from the original photos, where those exist. What I’d like to do is associate the backups with the original image asset so that they all show up together in the interface and I can pick the best version.

You might think I should just delete the re-downloaded files but, unfortunately, some of the original files have been lost. This means I can’t delete the whole Facebook or Google or Flickr folder without losing some images entirely.

Thanks for reading. I don’t think I’ve duplicated an existing request but I apologise if I have.


PhotoStructure should handle most cases where a downsampled image has been stripped of metadata: it relies on the image hash and dominant colors to find matching variations in this case.

Can you email me a pair of images (both the original and downsampled) so I can take a look? I may be able to assist the matching heuristics to make things “just work.”

I’ve thought a bit about how I can support “manual” deduping, as well: in other words, letting the user tell PhotoStructure that these 2 assets are actually the same (and the converse, that the current asset is actually incorrectly aggregating more than 1 photo or video). If anyone’s seen a slick UX for this task, please share!

1 Like

YNAB has a convenient UX for manually matching things. Just select both things, open the Edit menu, and select Match.

They also require manual approval of all automatic matches. Automatic matches appear with a hyperlink icon, which you can click at your convenience to approve/reject the match. Also you get a notification when any new automatic matches become available for matching.

1 Like

That’s really nice. I think splitting up currently-aggregated assets would probably be best done in the info panel, though, given that UI is the only list of all asset file variations for the current asset.

I could see a “multiselect mode” for that panel, that adds a checkbox to the left of each variant, and then allow all selected variations to be moved to a new asset (and write a new content UUID to those files to ensure they stay out). Perhaps later a “send these variations to the trash” action, although currently “trash” is done at the asset level, not the asset file.

Is a separate mode necessary? YNAB has a permanent checkbox visible, but you can follow OneDrive’s example with dynamic checkboxes and allowing Shift and Ctrl selection behavior, as displayed in this video How to organize and find photos in OneDrive - YouTube

I think these checkboxes could be used in the main window for manually merging two images into the same asset, and also in the info window for manually separating images into different assets.