今天想用STL中的vector存储多幅用IplImage结构体声明的图像,却发现存入的每一张图像都跟最后存入的图像一样。

调试了半天也找不到问题出在哪里。

 

请教了老师,老师说是深拷贝与浅拷贝的问题。

IplImage这个结构体其成员都是指针,指针指向的是某一幅图像,只把指针存入vector没有用的,必须要把数据也拷贝过去。

 

网上找到解决办法如下:

IplImage* img = (IplImage*)cvClone(perImage);
v.push_back(img);

每次要存入的时候克隆一份,然后再存入vector里。

相关文章:

  • 2021-05-18
  • 2022-12-23
  • 2022-12-23
  • 2021-07-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-17
猜你喜欢
  • 2022-12-23
  • 2021-09-30
  • 2022-12-23
  • 2022-01-08
  • 2021-05-26
  • 2022-12-23
  • 2021-07-13
相关资源
相似解决方案