https://bugs.kde.org/show_bug.cgi?id=435184
Bug ID: 435184 Summary: How can I integrate an object detection plugin written in Python? Product: digikam Version: unspecified Platform: Other OS: Other Status: REPORTED Severity: wishlist Priority: NOR Component: general Assignee: digikam-bugs-n...@kde.org Reporter: oliv...@protonmail.com Target Milestone: --- I'd like to contribute to DigiKam with an object detection feature, with the following particularities: - detect objects in images - detect objects in videos (maybe later associate them with a timeframe / frame so that the user can skip through the video at points where a specific object is visible. But that needs some extra UI work too) Unfortunately, I don't know C++ but I am somewhat competent with Python. Looking at the provided documentation (https://www.digikam.org/api/) I can't understand how / if it is possible to integrate a Python plugin into DigiKam. ### My ideas regarding the implementation ### ## No DigiKam integration - a separate Python process - started separated from the DigiKam - read from digikam.db all the imported photo / video files (Images table) - iterate through them and apply the object detection service - aggregate all detected objects and, for each object type, insert a tag in the database Tags table. All generated tags would be under a root tag called 'objects 'for example - based on the (image -> detected object) created at step 2, associate each Image table entry id with the Tags entry id, in the ImageTags table - start / restart DigiKam to refresh the DB changes This way, the same tag based system can be used for searching media files based on the objects they contain. ## DigiKam integrated Similar to the 'People' section related to the Facial Recognition feature. I'm imagining an 'Object' section with 1 buttons for: - detect objects (based on a pre-tained model) (synonym to the 'Detect Faces') - be able to click yes / no if objects were detected correctly or not which would enrich the accuracy of the model(same as in Facial Recognition) This would imply an integrated Python service that could be started and work inside DigiKam. Feature platforms: Ubuntu 20.04 / Windows 10 Questions: - is it possible to integrate something likes this (not talking about the UI now), fully written in Python, in the DigiKam ecosystem - if yes, could anyone give me some guidelines of how can this be specifically done? A big thank you to all the contributors of this awesome project. I would gladly step in too. -- You are receiving this mail because: You are watching all bug changes.