【发布时间】:2016-01-15 05:34:45
【问题描述】:
我正在使用 abbyy ocr mobile sdk 进行 android 应用程序开发。 我想检测特定区域的文本。 谁能帮我在abbyy mobile sdk中指定识别区域?
【问题讨论】:
标签: android image-processing sdk ocr abbyy
我正在使用 abbyy ocr mobile sdk 进行 android 应用程序开发。 我想检测特定区域的文本。 谁能帮我在abbyy mobile sdk中指定识别区域?
【问题讨论】:
标签: android image-processing sdk ocr abbyy
不确定,它是如何在 android 上完成的,但这可能会有所帮助,即使我使用的是 iOS。有复制keywords、dictionaries 和patterns 的构建阶段。预先选择的设置被设置到英语词典/关键字上。因此,您可以查看您的项目文件并寻找 English.akw 或 English.edc 并将这些条目替换为所需的区域。
另外,您可以在代码中搜索ocrConfiguration。这包含识别语言。
【讨论】:
我没有在 Android sdk 上这样做,但 Abbyy sdk 在每种语言中都是相似的。我会给你和 c# 的例子,我希望你会发现它有用。
你有两个选择:
您可以使用块创建布局:
FRDocument document = engine.CreateFRDocument();
Rectangle rectangle = new Rectangle();
rectangle.X = 160;
rectangle.Y = 42;
rectangle.Width = 240;
rectangle.Height = 37;
CrearBloque(rectangle, "BlockName");
private void CrearBloque(Rectangle rectangle, string name)
{
FREngine.Region region = engineLoader.Engine.CreateRegion();
region.AddRect(
rectangle.Left,
rectangle.Top,
rectangle.Width + rectangle.Left,
rectangle.Height + rectangle.Top);
ITextBlock block = document.Pages[0].Layout.Blocks.AddNew(
BlockTypeEnum.BT_Text, region, -1).GetAsTextBlock();
block.Name = name;
}
//And finally you can save your your document's layout:
document.Pages[0].Layout.SaveToFile("path_of_the_layout");
您还可以加载保存了块的布局文件:
document.Pages[0].Layout.LoadFromFile("path_of_the_layout");
非常重要!!!
别忘了使用document.recognize() 方法。
永远不要使用document.Process()。
【讨论】: