OpenCV中的全局变量
Global Variables in OpenCV
将Mats声明为全局变量或局部变量之间是否存在差异,就执行各种不同卷积所需的时间而言?例如,我在图像上执行了平均移位滤波,一次使用全局Mat,一次在main中使用本地Mat,然后将其作为指针传递给平均移位滤波函数。我对它们进行了计时,它们几乎相同,但不完全相同。
这让我想知道将Mat声明为全局变量与局部/指针之间的区别。任何帮助吗?
谢谢!
我想说,如果你正在计时实际的卷积,那么我认为这无关紧要。
一般来说,我认为速度更多地取决于实现,而不是全局或局部。如果你必须经常创建/删除Mat对象,或者需要中间Mat,那么如果可能的话,预先分配并使用指针等。
避免全局变量使代码更加模块化等等,但这是另一个讨论。全局变量有时是"适合工作的工具",但通常有更好的解决方案。
它们是如何分配的堆vs堆栈,我会读这个:
全局内存管理在c++中的堆栈或堆?
相关文章:
- 在全局变量中保存类的实例以重新创建类(创建"backup")
- 当vector是tje全局变量时,c++中vector的内存管理
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 内联函数中具有内部链接的全局变量
- 如何在信号处理程序和普通函数中对全局变量进行互斥读写操作
- 全局变量 多读取器 一个写入器多线程安全?
- 如果全局变量默认是外部变量,为什么要添加"extern"关键字?
- 不同作用域中的静态变量和全局变量
- C++ 在编译时具有函数计算全局变量
- 修改程序的入口点时未调用全局变量的构造函数
- 使用 std::ios_base::Init 正确初始化全局变量
- 为什么我的全局变量似乎没有变化?
- C ++程序如何返回我的数组或写入全局变量
- 为什么我的数组值与此处的全局变量不匹配?
- QT C++中对全局变量的未定义引用
- 跨多个类的全局变量而不会出现重定义错误?
- 赋予全局变量而不是局部变量优先级的函数 - (异常行为)
- C++线程不检测全局变量更改
- 在 elf 文件中查找全局变量的位置
- OpenCV中的全局变量