In our application we are using features from OpenCV for Image recognition to label producer brands. Our application is build with Java and to be able to use OpenCV, we have to use Bytedeco to make it work.
The problem is that this way a lot of the OpenCV dependencies are pulled that we don’t use (for exapmle IOS & Android), resulting in a large build, which brings deployment issues. I was wondering if anyone knows a method in which we can specify which dependencies we want to use so that only those we need are pulled and the build sizes are maintainable.
that’s unlucky, as this is a 3rd party effort, not maintained from opencv
(so, noone really cares)
can you be a bit more explicit ? why would anything (what exactly ?) pull IOS dependancies for an android app ? do you mean: “opencv modules you do not need” ?
Is there another possibility that is directly supported by opencv that makes it possible to use the opencv dependencies in our Java project?
Yes, that’s correct, our application can be seen as a Java web app, which means mobile modules aren’t required, but that was just an example. In essence we would like to have control over the modules in the project to reduce the size of the libraries.
Thank you for your swift response, feel free to ask if some things are still unclear.
The Vaadin application runs on a Tomcat (Windows & Linux) server and the build & deploy processes are maintained by maven (modules pulled from mavencentral, deployed by building a .war that is run on Tomcat)
Cmake is possible, but we would have to do this for every build for every version of our project, which isn’t entirely desired.
so, it’s a “long way through the stack” from your app to actual opencv libs, i guess ;(
just curious, what are you using opencv for here ?
sorry cannot help here, no idea if there’s some actively maintained opencv package there
yea, understood.
i once had something like this on heroku, and instead of rebuilding this over & over when deploying, i built it once from a remote console & stored the artefacts on github
Correct, it’s mainly a web app, but for some specific use cases the opencv library is used. For example image recognition in documents (logo’s of certain manufacturers of products).
Either way, we have a clear view of our options now, thank you for the information!