在emgu 3.0.0.0中如何获得形状校正后的像素坐标

本文关键字:像素 坐标 emgu 何获得 | 更新日期: 2023-09-27 18:12:45

我一直在尝试获得坐标,如所述:如何得到形状矫正后的像素坐标?在Emgu CV 3.0.0。我能够使用以下代码(从上面的链接窃取)扭曲图像

 Image<Bgr, byte> theWarpedImage = new Image<Bgr, byte>(@"C:'myImage.jpg");
        PointF[] srcs = new PointF[4];
        srcs[0] = new PointF(1533, 2393);
        srcs[1] = new PointF(4169, 1817);
        srcs[2] = new PointF(1765, 1177);
        srcs[3] = new PointF(3717, 621);
        PointF[] dsts = new PointF[4];
        dsts[0] = new PointF(0, 0);
        dsts[1] = new PointF(2950, 0);
        dsts[2] = new PointF(0, 2100);
        dsts[3] = new PointF(2950, 2100);
        PointF[] test = new PointF[4];
        Mat mywarpmat = CvInvoke.GetPerspectiveTransform(srcs, dsts);
        Image<Bgr, byte> theWarpedImage2 = new Image<Bgr, byte>(@"C:'myImage.jpg");
        CvInvoke.WarpPerspective(theWarpedImage, theWarpedImage2, mywarpmat, theWarpedImage2.Size, Emgu.CV.CvEnum.Inter.Linear, Emgu.CV.CvEnum.Warp.Default, Emgu.CV.CvEnum.BorderType.Constant, new MCvScalar(0));

但是我不能得到Luca Del Tongo给出的解决方案在3.0.0.0版本中工作

你有什么建议吗?

And Thanks to MIKI:

 var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);

在emgu 3.0.0.0中如何获得形状校正后的像素坐标

Miki找到了解决方案。我使用:

var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);

这是有效的。由于杨爱瑾