繁体   English   中英

在OpenCVSharp中水平翻转图像

[英]Flipping an image horizontally in OpenCVSharp

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

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

我尝试在Flip(CvArr dst, FlipMode flip_mode)使用Flip(CvArr dst, FlipMode flip_mode)方法,但徒劳无功。 我不确定dst使用什么。

OpenCVSharp中的Flip方法在这里声明。

EmguCV中的Flip方法在此处的 4162行中声明。 它将dst设置为null(根据其定义为IntPtr.Zero)。

翻转的原始OpenCV文档在这里

对于dst ,请指定一个cvArrIplImagecvMat的大小与您要调用FlipcvArr相同)。

这意味着,翻转阵列将被放置在cvArr你通过为dst和源阵列src OpenCV中和this在OpenCVSharp将保持不变。

如果dst为null,则将数组翻转到位。 这意味着您的源数组将更改为翻转数组。

如果您希望获得与以前相同的行为,则可以安全地调用myImage.Flip(null, FlipMode.Y); 其中myImage是您给定的IplImagecvMat

如果使用的是较旧版本的OpenCVSharp,则Flip也将使用source参数,而不是从调用对象获取它。 例如Flip(img, null, FlipMode FlipMode.Y);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM