Skip to content

Instantly share code, notes, and snippets.

View Ikhwansong's full-sized avatar

Ikhwansong

View GitHub Profile
@Ikhwansong
Ikhwansong / MatToNDArrayConverter.cpp
Created April 11, 2020 13:08 — forked from aFewThings/MatToNDArrayConverter.cpp
How to Convert Mat object to NDArray object using Boost Python, Numpy, OpenCV.
/*
* This example code is made for describe how to convert OpenCV's Mat class to Boost Numpy's ndarray class and vice versa.
* As far as I know, there was some library or boilerplate code about converting Mat to ndarray. But to me those methods were too expensive and difficult to understand.
* Recently, I have found that Boost Python has Numpy extension and it gives ndarray class properly.
* No other modules are used for conversion, only Boost Python, Boost Numpy, and OpenCV. (Version : Windows7, Python3.5, BoostPython 1.68, OpenCV 4.0.0)
* This code is designed to show you a specific case like converting 'CV_8UC3' type Mat image to 'uint8' dtype ndarray. And it contains a minimum of code to explain.
* I hope you get the idea of converting ndarray to fit your case properly through this example.
*/
#define BOOST_PYTHON_STATIC_LIB