I decide to put together the OpenCV and Processing codes into a class to encapsulate the functions. In this example, I extend the original PImage class and create the CVImage class. Besides the constructor, the following functions are the major interfaces:
- toCV() – copy the content of the PImage pixels array to the internal Mat variable cvImg; the internal format for the Mat is BGRA.
- fromCV(Mat) – convert a parameter Mat to the internal storage of Mat and pixels array; it accepts input of 1, 3, and 4 channels.
- Mat getBGRA() – output the BGRA Mat from the internal Mat storage.
- Mat getBGR() – output the BGR Mat from the internal Mat storage.
- Mat getGrey() – out the greyscale Mat from the internal Mat storage.