Search images for content of image


#1

I am running NC14 with full text search and elasticsearch.

I have been looking at using something like deepdetect to enable me to search images by content. For example, search criteria equals dog, display all images in the search results that have dogs in the image. This functionality is available in androids and ios.

Has anybody else looked into this ?


#2

Hey @duckula,
here is a similar idea to search for faces in images and tag a name to it:
https://help.nextcloud.com/t/search-images-power-by-ai-with-python/40641/4
:slight_smile:


#3

I do remember another thread on using a tool for image recognition in Nextcloud, yet I do not manage to find it.
There was a lot of discussion, and even some confrontation, as some forumers did not appreciate the idea…
Anyway the possibilities opened up with this technology are really interesting.


#4

I currently trying Deepdetect to categorise images and output the results to Elasticsearch. I’m already using the Elasticsearch search in Nextcloud.

See https://www.deepdetect.com/tutorials/es-image-classifier/


Search images power by AI with python
#5

This is a thread you probably couldn’t find:)

However, I want to turn attention to something Matias and me were doing and it is here:


This is Nextcloud app that is doing somewhat similar to what OP is looking for, but for faces only. It is:

  • fully self-hosted,
  • doesn’t have any dependencies on python/docker/external APIs
  • no need for GPU (but it does help:D)
  • results are very good

It is not yet in Nextcloud store, though. It is almost ready, but to be there, we need to polish documentation and add Debian packages for PDLib (to make onboarding smoother). Other than that, it has all the functionality we wanted to have - detection, grouping of faces and search.

I encourage everyone to try it and give us feedback (there are already some people playing with it), but beware - you will have to have at least 2GB of RAM and to get your hands dirty by compiling DLib and PDLib. Ask us anything on Github, and propose new functionalities, as we expect real value will come with other scenarios on top of basic recognition and clustering! Whole functional spec is located here.