【问题标题】:How to crop tilt image in c#如何在c#中裁剪倾斜图像
【发布时间】:2019-03-12 11:47:57
【问题描述】:

我有通过手机拍摄的倾斜图像。我想在两边的两个矩形之间剪切图像的部分/部分,以找出它们之间的圆圈。我有中间部分的所有 4 个坐标,例如 (x0,y0),(x1,y1),(x2,y2),(x3,y3)。

我的图像看起来像,

但是裁剪功能我有类似的东西

public static Bitmap CropImage(int x, int y, int width, int height, Bitmap bitmap)
{

    Bitmap croppedImage;
    var originalImage = bitmap;
    {
        Rectangle crop = new Rectangle(x, y, width, height);
        croppedImage = originalImage.Clone(crop, originalImage.PixelFormat);

    } // Here we release the original resource - bitmap in memory and file on disk.

    return croppedImage;
}  

但上面的函数将部分切割为矩形,如第一个和第二个红色框所示。
我正在寻找代码来切割第三个红色矩形中显示的部分。我搜索了代码并找到了下面的代码

List<IntPoint> corners = new List<IntPoint>();

corners.Add(new IntPoint(x0, y0));
corners.Add(new IntPoint(x3, y3));
corners.Add(new IntPoint(x1 + 30, y1 + 20));
corners.Add(new IntPoint(x2 + 30, y2 + 0));
AForge.Imaging.Filters.QuadrilateralTransformation filter = new AForge.Imaging.Filters.QuadrilateralTransformation(corners, WidthOfCut, HeightOfCut);
Bitmap newImage = filter.Apply(mainOuterWindow);

来自 AForge.Imaging。图书馆,但它会像下面一样切割药水

这会扰乱圆形的形状并使其变成椭圆形,这会导致其他计算出现问题。
请告诉我如何使用 4 点裁剪图像。
或者有什么方法可以通过校正角度来校正图像的倾斜?

【问题讨论】:

  • 只提取圆圈是否可以,或者您真的想要修复像素失真?

标签: c# asp.net image-processing aforge omr


【解决方案1】:

如果四边形包括有角度的边,则生成的变换实际上看起来不错。

使用这张图片:

由此代码转换:

        var i = Image.FromFile("pic.png");

        List<IntPoint> corners = new List<IntPoint>();
        corners.Add(new IntPoint(63, 183));
        corners.Add(new IntPoint(863, 151));
        corners.Add(new IntPoint(869, 182));
        corners.Add(new IntPoint(65, 211));
        QuadrilateralTransformation filter = new QuadrilateralTransformation(corners, 869 - 63, 211 - 183);
        var i2 = filter.Apply(i);

        i2.Save("pic2.png");

此图像中的结果:

我认为这正是您想要的。

诀窍是确保四边形变换使用有角度的边来避免倾斜。我的观点大致是这样的:

【讨论】:

  • 如果你使用距离公式和宽度和高度的平均值,它会更精确。
  • 嗨 TheSoftwareJedi,非常感谢,它对我有用。
猜你喜欢
  • 1970-01-01
  • 2017-01-10
  • 1970-01-01
  • 2019-12-04
  • 2023-03-08
  • 2018-10-19
  • 1970-01-01
  • 2016-08-17
  • 2011-01-01
相关资源
最近更新 更多