emgu 3.0.0.0 整形后如何获取像素坐标?
How to get coordinates of pixel after shape was rectified in emgu 3.0.0.0?
我一直在尝试获取如下所述的坐标:
How to get coordinates of pixel after shape was rectified?
在 Emgu CV 3.0.0 中。
我可以用下面的代码扭曲图像(从上面偷来的link)
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 版本中工作
你有什么建议吗?
感谢 MIKI:
var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);
有效。
Miki 找到了解决方案。我用过:
var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);
这很有效。谢谢三木
我一直在尝试获取如下所述的坐标: How to get coordinates of pixel after shape was rectified? 在 Emgu CV 3.0.0 中。 我可以用下面的代码扭曲图像(从上面偷来的link)
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 版本中工作
你有什么建议吗?
感谢 MIKI:
var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);
有效。
Miki 找到了解决方案。我用过:
var test2=CvInvoke.PerspectiveTransform(srcs, mywarpmat);
这很有效。谢谢三木