[英]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
,请指定一个cvArr
( IplImage
或cvMat
的大小与您要调用Flip
的cvArr
相同)。
这意味着,翻转阵列将被放置在cvArr
你通过为dst
和源阵列src
OpenCV中和this
在OpenCVSharp将保持不变。
如果dst
为null,则将数组翻转到位。 这意味着您的源数组将更改为翻转数组。
如果您希望获得与以前相同的行为,则可以安全地调用myImage.Flip(null, FlipMode.Y);
其中myImage是您给定的IplImage
或cvMat
。
如果使用的是较旧版本的OpenCVSharp,则Flip也将使用source参数,而不是从调用对象获取它。 例如Flip(img, null, FlipMode FlipMode.Y);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.