cv::Mat.release()

cv::Mat.release()

本文关键字:Mat cv release      更新时间:2023-10-16

我开始在我的图像处理程序中使用OpenCV。当我使用cv::Mat并在内存上的方法中分配为:

cv::Mat coords(100, 5, CV_32FC1);

如果我不再需要,我是否需要做coords.release()从方法结束时的内存中清除?

必须这样吗?由于

您不需要显式地释放cv::Mat对象。cv::Mat对象将自动释放(即它的析构函数将被调用),一旦它超出了声明它的作用域。

更新:

(回复评论)

检查cv::Mat是否已成功分配,您可以执行以下操作:

cv::Mat coords(100, 5, CV_32FC1); 
if(coords.empty())
{
   cout<<"Matrix Not Allocated";
   return 0;
}