用于自动定位的库 - c#

时间:2010-05-17 14:52:24

标签: c#

我正在寻找可以让我自动定位图像的库的任何建议。我的项目是在C#中。我正在寻找开源或商业图书馆。

我想在扫描或传真的文档上使用这些库,因为我的图像缺少EXIF数据

图片主要包含英文文字。我查看了MODI提供的OCR,因为客户显然没有运行Office 2007,所以无法走这条路。

3 个答案:

答案 0 :(得分:3)

如果您要从EXIF数据中提取图像方向并相应地旋转图像,那么您可能需要查看 ImageMagick auto-orient 功能。

您可以通过command line自动执行ImageMagick,也可以使用可用的.NET wrapper

如果您没有可用的EXIF信息,则自动检测方向很可能仅在图像主要包含行中的文本时才会起作用(我假设这是传真的情况)。然后,您可以使用OCR引擎并使用方向detected by the engine

答案 1 :(得分:0)

如果您没有EXIF数据并且您的图像是扫描/传真的文档,那么我认为您只有解决方法是检查图像的高度和宽度并根据它进行旋转。

文档最有可能是纵向格式(比宽度更高),所以如果高度大于宽度,则不必做任何事情。

如果高度小于宽度,则旋转90度。但是,如果不以某种方式分析图像,您将无法知道将其旋转的方向(左侧或右侧),因此最终可能会将图像上下颠倒。

有多少张图片?如果没有太多,您可以执行旋转,然后将图像呈现给用户并询问它是否颠倒。如果它旋转180度。虽然不是一个理想的解决方案。

答案 2 :(得分:0)

这不是托管解决方案,但我使用Dan Bloomberg的leptonlib C库获得了可接受的结果,该库附带了VC9项目以及通过托管C ++包装器使用C#库的示例。它包括一个方向检测的实现,但我发现它的准确性只有当图像大多是非均匀布局的混合大小写的alpha文本(段落和离散文本而不是表格/网格)时才是好的。使用额外的预处理和启发式分析(基于同一个库中的其他方法)我也设法提高了边缘情况的准确性,尽管它仍然只能在我的(相当大的)样本集上达到约87%的总精度。 / p>