用什么:Ipl?或垫

What to use : Ipl? or Mat?

本文关键字:或垫 Ipl 什么      更新时间:2023-10-16

我真的不知道下一个项目该用什么:IplImage吗?或简历::垫吗?

知道我想要:

  • 性能更好
  • 对于使用的不同工具(乘法,不同的计算/图像处理工具…)的相当大的速度响应
  • 内存使用减少

如果是这样,我是否需要将之前所有的IplImages更改为cv::Mat?

两者都不比另一个更快或更轻。至少在任何可衡量的方面。(也许cv::Mat比IplImage多4个字节,与需要将图像数据存储到其中的12.000.000字节相比,这不会造成伤害)

它们都没有提供更快的计算,也没有更多的工具来处理它。

它们提供的只是一个指向一些数据的指针,以及一些关于图像宽度、高度、步长和类型的额外信息。

但是cv::Mat(和c++接口的其余部分)使用起来更容易、更安全。在更短的时间内编写更少的代码。你需要修复的bug更少了。这使您可以专注于在速度和内存消耗方面改进算法。

对于这个事实,是的,cv::Mat要快得多,也要轻得多——如果你好好利用的话。

同样,检查这个类似的OpenCV: c++和C的性能比较