码迷,mamicode.com
首页 > 其他好文 > 详细

图像引用传值

时间:2015-03-19 18:12:48      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:

  1. 当复制一副图像时,利用函数cv::Mat::clone(),则将在内存中重新开辟一段新的内存存放复制的图像(图像数据也将全部复制),而如果利用cv::Mat::copyTo()复制图像,则不会在内存中开辟一段新的内存块,同时也不会复制图像数据,复制前后的图像的指针指向同一个内存块。使用的时候需注意两个函数的区别。
  2. 为了避免函数参数传递时出现复制情况,函数的形参多采用传递reference(引用),如cv::Mat &image,传递输入图像的引用,不过这样函数可能会对输入图像进行修改,并反映到输出结果上;如果想避免修改输入图像,则函数形参可传递const reference(常量引用),这样输入图像不会被修改,同时可以创建一个输出图像Mat,将函数处理的结果保存到输出图像Mat中,例如:void colorReduce(const cv::Mat &image, cv::Mat &result,int div = 64)。

图像引用传值

标签:

原文地址:http://www.cnblogs.com/xuepei/p/4350837.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!