【问题标题】:When to use `image` and when to use `Matrix` in Emgu CV?在 Emgu CV 中何时使用“图像”以及何时使用“矩阵”?
【发布时间】:2015-07-14 00:40:08
【问题描述】:

在 openCV 中,我经常使用cv::Mat 处理几乎所有内容。现在,我需要使用 emgu CV 并在 stat 中使用 Matrix-object,但不支持某些功能?!...我可以改用 image-class 吗?

在 emgu CV 中何时使用image 以及何时使用matrix

P.S.:目前我正在寻找一种在矩阵上定义 ROI 的方法,但没有找到不复制数据的方法。

版本:Emgu.CV-2.4.2

【问题讨论】:

  • 不设置 ROI,而是使用 Matrix 的 GetSubRect 方法。它不会进行任何深度复制。这实际上与设置 ROI 相同,尽管最初可能看起来并非如此。

标签: c# opencv coding-style emgucv


【解决方案1】:

从 OpenCV 3.0 开始,OpenCV 将逐步淘汰 IplImage。 EmguCV 的 Image<,>IplImage 的包装,因此 Image<,> 正在逐步淘汰 EmguCV。

尽可能使用MatCvInvoke避免使用Image<,>及其方法。

【讨论】:

    【解决方案2】:

    我知道在最新版本的 OpenCV 中,对于 lot of reasons,优先使用 Mat 对象而不是 iplImage。

    在 EmguCV 中,情况有所不同。我认为经验法则是在数据本身应该是图像时使用 Image,而在需要使用矩阵时使用 Mat。使用您需要的东西,并且 emguCV 对象应该具有满足您需求的正确构造器/功能。

    对于投资回报率,sumeet 的评论非常好。

    希望对你有帮助!

    【讨论】:

    • 从 OpenCV 3.0 开始,IplImage 将被逐步淘汰。 EmguCV 3.0 紧随其后。 Image<,> 尚未正式弃用,但请注意。
    猜你喜欢
    • 2011-11-04
    • 2016-11-16
    • 1970-01-01
    • 2015-03-08
    • 2017-12-24
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多