Как выпустить IplImage созданный imdecode - PullRequest
0 голосов
/ 16 декабря 2010

Я не знаю, как освободить память в случае IplImage, созданного так:

Mat matrixJpeg = cv::imdecode(Mat(jpegBuffer), 1);
IplImage fIplImageHeader = matrixJpeg;

Это не будет работать:

cvReleaseImage(&fIplImageHeader);

Я получу ошибку:

1   IntelliSense: argument of type "IplImage *" is incompatible with parameter of type "IplImage **"    c:\users\richard\documents\visual studio 2010\projects\server\server\server.cpp 59  19  Server

Это тоже не сработает:

cvReleaseImage(fIplImageHeader);

Я получу ошибку:

1   IntelliSense: no suitable conversion function from "IplImage" to "IplImage **" exists   c:\users\richard\documents\visual studio 2010\projects\server\server\server.cpp 59  19  Server

Есть предложения?

1 Ответ

1 голос
/ 16 декабря 2010

Ваш пример не имеет дело с указателями.Память находится в стеке, и вам нечего освобождать до конца области.

operator IplImage() const из Mat указывает, что данные не копируются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...