OpenCV python extended interop (Feature #2001)
Description
OpenCV has python bindings that, at the moment, can only be used through python alone. However, it is very common that Computer Vision applications are authored in a rapid-prototyping environment (e.g. python) while delegating heavy stuff to native C/C++. The way that OpenCV is exposed to python now does not allow its interoperation with other CV related C/C++ native code that is also exposed in python.
To put it more clearly, a python module that is contained in a native shared library and is aware of the C/C++ native OpenCV API cannot communicate data with the cv python module because it cannot be aware of the exposition API. A proposal would be to expose the python bindings API (opencv\modules\python\src2\cv2.cv.hpp) so that other C/C++ code that is exposed to python can take advantage of it.
A concrete example is the following. Boost python is a very powerful mechanism for extending/embedding python to C++. CV C/C++ code can be thus exposed to python. If OpenCV is to be a common place then this C++ code should be aware of the API in opencv\modules\python\src2\cv2.cv.hpp and take advangage of it by using converters (http://www.boost.org/doc/libs/1_39_0/libs/python/doc/v2/faq.html#custom_string). I'm sure there's an analogy with SWIG too.
Related issues
duplicates Feature #1471: header files for python module | Open |
History
Updated by Andrey Kamaev almost 13 years ago
Thanks for sharing your thoughts.
But this ticket is closed as exact duplicate. Please comment on #1471 if you have something to add.
- Status changed from Open to Cancelled
- Target version set to 2.4.1
- Category set to python bindings
- Assignee set to Vadim Pisarevsky