pulsejet / memories

Fast, modern and advanced photo management suite. Runs as a Nextcloud app.
https://memories.gallery
GNU Affero General Public License v3.0
3.21k stars 87 forks source link

[Tracker] Search #674

Open meichthys opened 1 year ago

meichthys commented 1 year ago

Tracker issue for implementation of search.


Original Post

Semantic search would be a very welcome feature

Describe the solution you'd like Semantic search allows searching using phrases rather than tags stored in a database.

A search may be something like: boy wearing red shirt

Describe alternatives you've considered Tags via Recognize are pretty good but searching multiple tags is cumbersome in Nextcloud

Additional context I realize this may be limited by the existing nextcloud search functionality, but i wanted to file it here anyway since this type of semantic search is becoming more common in photo libraries.

pulsejet commented 1 year ago

A good semantic search is very complex, so much so that even Google Photos doesn't support this. Capturing context is fundamentally a very challenging task. For example, if we simply tokenize the input string, then boy wearing red shirt matches both of

  1. boy wearing red shirt
  2. boy wearing blue shirt in red boat

but not

  1. boy wearing red jersey
  2. boy in red shirt

A more realistic goal would be to support full text search on the existing tags (including faces), which can then be extended for simple queries, like X and Y.

meichthys commented 1 year ago

Full text search on tags sounds like a good compromise. Feel free to adjust the title of the issue if you want to track full text search here.

pulsejet commented 1 year ago

Updated. Lots of tasks here, this one is tough.

meichthys commented 1 year ago

Wow. Nice. Looks like you've thought this through already. Great work!

brianjmurrell commented 2 weeks ago

I would agree that full semantic search is hard.

I would suggest that complex logical searches based on (all, but not necessarily immediately -- this can add more criteria incrementally -- of) the many criteria available in photos would be a great compromise. Things like multiple tags, anded and/or ored, along with dates, date ranges, locations (with coverage radius), etc.

All of this metadata is almost useless without being able to use it in complex queries, IMO.

brianjmurrell commented 2 weeks ago

I would add two more criteria to your list: untagged and date-added.