Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
379cfdf
Plugin - image search - integration with core api added, basic outlin…
GregJohnStewart May 27, 2025
172d9a0
Merge branch 'dev' into dev.765-fr-plugin-identify-items-based-on-image
GregJohnStewart Jul 30, 2025
4acf25b
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Aug 6, 2025
99796e3
Plugin - image search - Adding required dependencies, test images
GregJohnStewart Aug 6, 2025
b182608
Plugin - image search - Fix to download models task
GregJohnStewart Aug 11, 2025
f2ff261
Copied code over from external files, few optimizations. Currently se…
Coletrane315 Nov 2, 2025
256990b
Plugin - image search - Minor tweaks and logging for search process
GregJohnStewart Nov 3, 2025
e4c9dd1
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Nov 4, 2025
780bf58
Plugin - image search - Basic tests and examples working
GregJohnStewart Nov 4, 2025
79bdacc
Plugin - image search - outline for mongo work
GregJohnStewart Nov 4, 2025
36a23f6
Testing setup, made method to make an item from images in testImages,…
Coletrane315 Nov 15, 2025
7fc7d7f
Plugin - image search - minor test fix
GregJohnStewart Nov 15, 2025
632866c
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Feb 2, 2026
185040a
Plugin - image search - Updated to latest OQM core api lib
GregJohnStewart Feb 2, 2026
c725d18
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Feb 3, 2026
9f8f029
Plugin - image search - working dev
GregJohnStewart Feb 3, 2026
23806db
Plugin - image search - Fixed basic image search
GregJohnStewart Feb 4, 2026
5a1d397
Plugin - image search - Fixed basic image search, with some organizing
GregJohnStewart Feb 4, 2026
586a742
Plugin - image search - Partial implementations toward mongo fun
GregJohnStewart Feb 13, 2026
867c5b0
moved testImages directory location, mongo connection almost done, st…
Coletrane315 Mar 10, 2026
5f0cfb4
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Mar 11, 2026
d8e56cf
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Mar 11, 2026
39a9102
Plugin - image search - bump for latest dev of core api
GregJohnStewart Mar 11, 2026
b1b5df6
Plugin - image search - Minor tweak to database getting
GregJohnStewart Mar 12, 2026
77be2c5
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Mar 12, 2026
7725bd6
Plugin - image search - Setup of more vector gathering
GregJohnStewart Mar 12, 2026
3c286e2
Plugin - image search - quick note on opencv dependency
GregJohnStewart Mar 12, 2026
d0036ef
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Mar 16, 2026
8a23442
Plugin - image search - added snapshots maven repo
GregJohnStewart Mar 19, 2026
a925377
Plugin - image search - work from pair refactoring of resnet mongo se…
GregJohnStewart Mar 19, 2026
ec57b7f
Plugin - image search - Initial setup of db setup in tests
GregJohnStewart Mar 19, 2026
c4bc8aa
Plugin - image search - Updated core api lib version
GregJohnStewart Mar 19, 2026
75c14a9
Plugin - image search - Added initial test of resnet mongo service, i…
GregJohnStewart Mar 24, 2026
cd336d4
ResnetVectorService testing, checks for if image already exists, chec…
Coletrane315 Mar 26, 2026
34d8d7f
Plugin - image search - Minor tweaks from review
GregJohnStewart Mar 26, 2026
a8cb120
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Mar 26, 2026
7c1a6ab
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart Apr 11, 2026
a3e71ad
Plugin - image search - work to accept OQM Core events
GregJohnStewart Apr 11, 2026
007914a
Update build.gradle
GregJohnStewart Apr 11, 2026
d246c60
Automated testing for database initalization, ensure no vectors prese…
Coletrane315 Apr 27, 2026
3ad2de6
Changes to ImageSearchService, changing I/O to ResNetVectorService in…
Coletrane315 Apr 28, 2026
ae05b2e
Plugin - image search - Setting up 'final' interface for ImageSearchE…
GregJohnStewart Apr 28, 2026
72cf9b4
Plugin - ImageSearch - First working iteration. Changes to ImageSearc…
Coletrane315 May 26, 2026
2c40363
Plugin - image search - Adding db scope to image search. Some cleanup…
GregJohnStewart May 27, 2026
77c4a33
Merge branch 'development' into dev.765-fr-plugin-identify-items-base…
GregJohnStewart May 27, 2026
4c27d0a
Plugin - image search - Adding tracing & metrics
GregJohnStewart May 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions software/plugins/image-search/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,47 @@
# Image Search Plugin


- store image vectors in mongodb
- pull image data from OQM
- present an endpoint to upload an image, search for matches





## TODOS

- [ ] Return actual search results, not image IDs Colten
- [ ] Scope each search to specific database Greg
- [ ] Process image changes as they happen, not just when DB is initialized Colten/Greg
- [ ] Redesign TreeMap (possibly different structure) to not store extra objects Colten
- [ ] Testing...
- [ ] Integration into deployment methodology Greg
- [ ] Memory leaks (Mat objects)
- [ ] OpenCV library optimization (System.loadLibrary())
- [ ] Verify and ensure concurrent calls work in ImageSearchService
- [ ] Logging in ImageSearchService
- [ ] Check if new Java TF

## LATER TODO

- [ ] UI?
- [ ] potential batch-processing / multi-threading (optional)
-














This plugin is intended to provide image-based searches of items.

Use case is to take a picure of something, and then identify which items in the database it could be based on that image.
Expand Down
17 changes: 15 additions & 2 deletions software/plugins/image-search/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import java.nio.file.Files
plugins {
id 'java'
id 'io.quarkus'
id "io.freefair.lombok" version "8.14"
}

repositories {
Expand All @@ -21,8 +22,20 @@ dependencies {
implementation 'io.quarkus:quarkus-messaging-kafka'
implementation 'io.quarkus:quarkus-config-yaml'
implementation 'io.quarkus:quarkus-arc'
implementation 'io.quarkus:quarkus-oidc'
implementation 'io.quarkus:quarkus-smallrye-openapi'
implementation 'io.quarkus:quarkus-micrometer-opentelemetry'

implementation 'tech.epic-breakfast-productions.openquartermaster.lib.core:core-api-lib-quarkus:4.4.4'

implementation group: 'org.tensorflow', name: 'tensorflow-core-platform', version: '1.1.0'
// TODO:: apparently opencv-platform is more user friendly (dont have to call `System.loadLibrary()` for instance. Try it out and see if still works with tensorflow
implementation group: 'org.openpnp', name: 'opencv', version: '4.9.0-0'


testImplementation 'io.quarkus:quarkus-junit5'
testImplementation 'io.rest-assured:rest-assured'
testImplementation 'net.datafaker:datafaker:2.4.4'
}

group 'tech.ebp.oqm.plugin'
Expand Down Expand Up @@ -108,11 +121,11 @@ tasks.register("downloadModels", DownloadModelsTask) {
group = "build"
description = "Downloads models before build to ensure presence."
}
build {
processResources {
mustRunAfter("downloadModels")
}

tasks.build.configure { dependsOn(tasks.downloadModels) }
tasks.processResources.configure { dependsOn(tasks.downloadModels) }

/**
* Used to print the current version of this project.
Expand Down
Binary file added software/plugins/image-search/dev/developers.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading