1. 旧版的OpenCV使用IplImage存储图像,新版中使用Mat存储,需要注意的是,当使用拷贝构造函数或赋值操作符("=")拷贝图像时,实现的仅仅是浅拷贝(仅仅拷贝了文件头),负责计数的计数器会自增1,当某一个图像不再使用时,计数器会减1,当计数器的值为0时该图像所占用的内存空间会被释放
当需要实现深拷贝(重新建立一个一模一样的图像)时,需要使用clone或CopyTo函数
本文介绍了OpenCV中图像存储方式的变化,从旧版的IplImage到新版的Mat,并详细解释了拷贝图像时浅拷贝与深拷贝的区别及应用场景。通过实例说明如何正确地进行图像拷贝,避免内存泄漏等问题。
1. 旧版的OpenCV使用IplImage存储图像,新版中使用Mat存储,需要注意的是,当使用拷贝构造函数或赋值操作符("=")拷贝图像时,实现的仅仅是浅拷贝(仅仅拷贝了文件头),负责计数的计数器会自增1,当某一个图像不再使用时,计数器会减1,当计数器的值为0时该图像所占用的内存空间会被释放
当需要实现深拷贝(重新建立一个一模一样的图像)时,需要使用clone或CopyTo函数
1278
1265

被折叠的 条评论
为什么被折叠?