关于《使用cvReleaseImage出错》的重新说明

撰写博客的目的,刚开始是为了记录自己在开发中遇到的问题,方便自身的总结和查看,因此在问题的描述上,会比较简单,甚至模糊。在此我对这种不是很负责的态度表示道歉,并在此进行较为详细的说明。
在《使用cvReleaseImage出错》一文中,cvReleaseImage()出错的前提如下:

在《使用cvReleaseImage出错》中谈及的pFrame即是图片中的img,这个指针并没有被分配空间,而是指向了cvQueryFrame(capture)中读取并返回的图像。在HighGUI视频读取函数中对cvQueryFrame的说明如下:

从函数说明中可以看到,cvQueryFrame从摄像头或文件中抓取一帧并且返回这一帧,返回的图像不可以被用户释放或者修改,因为cvQueryFrame返回的指针总是指向同一块内存,当函数的返回值为NULL时,说明视频结束。
为此,不论pFrame还是img不需要释放的原因就是它本身没有被分配空间,只是指向了别人的空间。
【关于《使用cvReleaseImage出错》的重新说明】谢谢大家对我的指正。希望大家共同进步。

    推荐阅读