提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|使用教程|编辑:龚雪|2015-07-21 10:30:48.000|阅读 259 次
概述:Google Drive是存储、组织和分析文件如文档、图片和视频等的完美服务。但是,TIFF和其他光栅图像文件很容易被忽略,因为Google Drive的搜索功能非常有限。有了LEADTOOLS,就能使用OCR 文字识别提取每个项的文本,并将它添加到IndexableTextData中。这些完成后,就可以像搜索基于文本的文档如DOC或PDF一样搜索光栅图像文件了。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Google Drive是存储、组织和分析文件如文档、图片和视频等的完美服务。但是,TIFF和其他光栅图像文件很容易被忽略,因为Google Drive的搜索功能非常有限。有了LEADTOOLS,就能使用OCR 文字识别提取每个项的文本,并将它添加到IndexableTextData中。这些完成后,就可以像搜索基于文本的文档如DOC或PDF一样搜索光栅图像文件了。
例如,有四个上传到Google Drive的普通TIFF文件。五个文件依次命名为OCR1到OCR4,因此只有基于文件名的搜索能力并不是完全有用的。
对于人类的眼睛来说,这些图片只是文本,但是Google Drive只会将这些图像看做普通图片,当我们尝试搜索扫描文件的内部内容时不会返回任何东西。
当无法搜索文件时,你的Google会变成什么样子?幸运的是,Google Drive让你不再迷茫,当搜索文本时,使用每个文档自定义的IndexableTextData元数据就可以了。在下面的例子中,我们为您展示了如何使用Google Drive找到基于文本内容的TIFF文档,且无需修改原始图像。
应用程序的第一步是启用我们应用程序的Google Drive,检索ClientID和ClientSecret。在使用Google Drive API上传和修改TIFF文件时,我们会需要这些属性。然后,我们必须下载Google客户端库并在我们的解决方案中引用它。
关于设置.NET应用程序与Google Drive相连接的更多详细信息,
请访问 。
在应用程序中,我们会在WebBrowser中打开用户授权Url,这样用户就可以输入Google的用户名和密码。当用户登录后,我们可以从WebBrowser控件中获取授权信息。现在应用程序登录并授权访问Google Drive,我们就能在账户中搜索所有的TIFF文件了。
FileList fileList = googleDriveHelper.GetFilesList(); IEnumerable<File> tiffFilesEnumerable = fileList.Items.Where( file => file.MimeType == "image/tiff" && file.ExplicitlyTrashed != true && file.UserPermission.Role == "owner"); foreach (File file in tiffFilesEnumerable) { UpdateIndexableTextData(file); }
最后,我们可以使用LEADTOOLS OCR文字识别引擎来获取每个TIFF文件的文本。
创建 IOcrEngine和IOcrDocument后,RecognizeText方法会返回一个字符串值,它是从页面中提取的全部内容,然后在 Google Drive中更新IndexableTextData元数据。
void UpdateIndexableTextData(File file) { StringBuilder indexableText = new StringBuilder(); // 获取文档的一个.NET流 using (System.IO.Stream stream = googleDriveHelper.GetFileAsStream(file)) { // 创建LEADTOOLS OCR引擎的一个实例 using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false)) { // 使用默认参数启动引擎 ocrEngine.Startup(null, null, null, null); // 获取文档的页数 int pageCount; using (CodecsImageInfo imageInfo = ocrEngine.RasterCodecsInstance.GetInformation(stream, true)) { pageCount = imageInfo.TotalPages; } // 创建OCR文档 using (IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument()) { // 识别文档中的每一个页面 for (int page = 1; page <= pageCount; page++) { ocrDocument.Pages.AddPages(stream, page, page, null); // GGoogle Drive特定的可索引文本设置 indexableText.AppendFormat( "<section attribute=\"Page{0}\">", page); // 添加OCR文本 indexableText.Append(ocrDocument.Pages[0].RecognizeText(null)); indexableText.Append("</section>"); // 清理文档,为下一页做准备 ocrDocument.Pages.Clear(); } } } } file.IndexableText = new File.IndexableTextData(); file.IndexableText.Text = indexableText.ToString(); googleDriveHelper.UpdateFileMetadata(file); }
现在我们已经处理了Google Drive中的所有TIFF文件,即使它们在技术上是没有文本数据的图片,也可以通过文档中的搜索来定位。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
LEADTOOLS Asian OCR Module在应用程序中增加了一些光学字符识别(OCR)技术的方法,并包含了开发健壮的,高性能的和可扩展的图像识别方案所需要的技术。
LEADTOOLS OCR Module - LEAD Engine开发健壮的,高性能的和可扩展的图像识别方案所需要的OCR 识别技术。
LEADTOOLS OCR Module - OmniPage EngineLEADTOOLS OCR Module - OmniPage Engine增加了对添加光学字符识别(OCR)和智能字符识别(ICR)技术到应用程序的方法,并且包含开发稳健的,高性能的和可扩展的图像识别解决方案所需要的一切。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢