1

我正在尝试将我自己的原始图像数据分配给cv::Mat. 问题是,当调用析构函数时,它似乎并没有释放数据。

enum { WIDTH = 640, HEIGHT = 480, BYTES_PER_PIXEL = 2, SIZE_BYTES = WIDTH*HEIGHT*BYTES_PER_PIXEL };   

int main()
{
    unsigned char *imageData = new unsigned char[SIZE_BYTES];

    cv::Mat frame444(HEIGHT, WIDTH, CV_8UC3, imageData);

    frame444.~Mat();  // Doesn't free data.
    delete[] imageData;  // Does free data.

    return 0;
}

呼叫frame444.release()也不会释放数据。

我想将我自己的数据分配给 cv::Mat 并让 cv::Mat 释放它。

4

0 回答 0