代码之家  ›  专栏  ›  技术社区  ›  pkaeding

如何检测(并纠正)图像中的倾斜?

  •  6
  • pkaeding  · 技术社区  · 16 年前

    我收集了大量的扫描图像,它们都有些倾斜,周围有一个白色区域。

    所以,这些图像有矩形的颜色,周围有一大片白色区域。问题是这些颜色矩形与图像边界不平行。

    我确信一定有一种方法可以通过编程来检测这些颜色的矩形,这样我就可以旋转图像(从而取消倾斜),然后裁剪图像,只留下感兴趣的部分。我想我不太确定这个过程叫什么,所以我在Google上搜索解决方案时遇到了麻烦。

    有人知道一种方法可以让我开始吗?有什么图书馆我应该去看看吗?或者一个有帮助的算法的名字?

    我计划在这个项目中使用Java,但我还没有真正开始,所以我愿意接受任何语言的库建议。

    3 回复  |  直到 16 年前
        1
  •  3
  •   rwong    16 年前
    • 边界探测
    • hough变换(如果图像上的所有矩形具有相同的倾斜)
        2
  •  3
  •   Chillar Anand    9 年前

    Alyn 是第三方软件包,用于检测和修复包含文本的图像中的倾斜。利用Canny边缘检测和Hough变换进行倾斜检测。

    要检测倾斜,只需运行

    ./skew_detect.py -i image.jpg
    

    ./deskew.py -i image.jpg  -o skew_corrected_image.jpg
    
        3
  •  1
  •   Dsmithos    12 年前

    您也可以尝试使用scikit图像 http://scikit-image.org/docs/dev/auto_examples/ .

    这是一个伟大的库霍夫变换,但也有其他方法,如氡变换和几何变换这类任务。