gpt4 book ai didi

c# - 在 OpenCVSharp 中水平翻转图像

转载 作者:太空宇宙 更新时间:2023-11-03 23:03:29 26 4
gpt4 key购买 nike

我最近将我的项目库从 Emgu CV 转移到了 OpenCVSharp。在 Emgu CV 中翻转图像(使用 pictureBox)的代码是:

Image<Bgr,Byte> f = _capture.QueryFrame().Flip(Emgu.CV.CvEnum.FLIP.HORIZONTAL)

我尝试在 OpenCVSharp 中使用 Flip(CvArr dst, FlipMode flip_mode) 方法,但没有成功。我不确定要为 dst 使用什么。

最佳答案

OpenCVSharp 中的 Flip 方法被声明为 here .

EmguCV 中的 Flip 方法在第 4162 行声明 here .它将 dst 设置为空(IntPtr.Zero 在其定义中)。

flip 上的原始 OpenCV 文档是 here .

对于 dst指定 cvArr (无论是 IplImage 还是 cvMat 与您在 cvArr 上调用的 Flip 大小相同。

这意味着翻转后的数组将被放置在 cvArr 中你传入 dst和你的源数组 src在 OpenCV 和 this在 OpenCVSharp 中将保持不变。

如果dst为空,则数组将原地翻转。这意味着您的源数组将更改为翻转数组。

如果你想要和以前一样的行为,你可以安全地调用myImage.Flip(null, FlipMode.Y);其中 myImage 是您给定的 IplImagecvMat .

如果您使用的是旧版本的 OpenCVSharp ,那么 Flip 也会采用 source 参数,而不是从调用对象中获取它。例如 Flip(img, null, FlipMode FlipMode.Y);

关于c# - 在 OpenCVSharp 中水平翻转图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9758403/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com