How to change matlab stores image data for C++

Technical Source
2 min readAug 30, 2022

--

Hello everybody i am writing a Program using C++ with OpenCV library! and I am using a function generated by Matlab Mex which takes an image and returns values! it look something like this

array=findsomething(image);//matlab function

the image is a OpenCV variable which called Mat! this Mat stores the pixels in a unsigned char array as BGR. while Matlab function stores the pixels in RGB array. converting the data between the OpenCV variable and the Matlab Function variable means copying each pixel from the first variable Mat into Unsigned Char *array(this is the Matlab function Variable) which takes a really long time for each i call an image from the camera. is there a way to change how Matlab stores and handles the image data to become BGR ?

NOTE:-

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help , Finance Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

No, you cannot change the order of the colour channels in matlab (don’t know about OpenCV). However, if you don’t display the image nor convert it to grayscale, the order of the channels doesn’t matter for most processing functions.

Converting between RGB and BGR in matlab should be fairly quick:

flip(yourimage, 3)

SEE COMPLETE ANSWER CLICK THE LINK

--

--

Technical Source
Technical Source

Written by Technical Source

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.

No responses yet