用于搜索文本和以增强现实的方式显示发现的文本的系统和方法

文档序号:6484870阅读:197来源:国知局
用于搜索文本和以增强现实的方式显示发现的文本的系统和方法
【专利摘要】本发明提供了用于搜索一个或多个图像中的文本的系统和方法。计算设备执行的方法包括接收输入。计算设备根据输入来生成搜索参数,所述搜索参数包括所述文本。向该一个或多个图像应用光学字符识别,以生成计算机可读文本。应用搜索参数,以在计算机可读文本中搜索所述文本,以及如果发现所述文本,执行动作。
【专利说明】用于搜索文本和以增强现实的方式显示发现的文本的系统和方法
【技术领域】
[0001]以下大致涉及搜索文本数据(例如,字母、词、数字等)。
【背景技术】
[0002]可以通过例如书本、杂志、报纸、广告、传单等很多的媒体形式来印刷或显示文本。已知可以使用例如扫描仪的设备的来扫描文本。然而,扫描仪通常较大且笨重,并且不能容易地运送。因此,通常不方便随时扫描文本。
【专利附图】

【附图说明】
[0003]参考附图,现在将仅通过示例的形式来描述实施例,其中:
[0004]图1a是移动设备的示意图,该移动设备查看文本页、显示文本的图像并显示对与搜索参数相匹配的文本位于何处的指示。
[0005]图1b是类似于图1a的示意图,在图1b中,移动设备正在查看另一文本页并显示对与搜索参数相匹配的另一文本位于何处的指示。
[0006]图2是移动设备的示意图,该移动设备查看街道环境,识别道路名称,以及使用道路名称来确定移动设备的位置和导航方向。
[0007]图3是示例移动设备和显示屏幕的平面图。
[0008]图4是另一示例移动设备及其显示屏幕的平面图。
[0009]图5是图3中不出的移动设备的背面及其相机设备的平面视图。
[0010]图6是移动设备的示例实施例的框图。
[0011]图7是移动设备显示的主屏幕的屏幕截图。
[0012]图8是示意图6中示出的其他软件应用和组件中的示例软件应用和组件的框图。
[0013]图9是用于执行与文本有关的增强现实操作的模块的示例配置的框图。
[0014]图10是用于搜索文本和显示对在何处发现所寻找的文本的指示的示例计算机可执行指令的流程图。
[0015]图11是用于显示覆盖文本图像的指示的示例计算机可执行指令的流程图。
[0016]图12是用于记录页编号和在每页上发现的所寻找的文本的实例数目的示例计算机可执行指令的流程图。
[0017]图13是用于对每页上所寻找的文本的实例的索引编排进行查看以及对包含所寻找的文本的图像进行选择的示例图形用户界面(GUI)。
[0018]图14是用于识别页编号的示例计算机可执行指令的流程图。
[0019]图15是用于识别页编号的示例计算机可执行指令的另一流程图。
[0020]图16是用于搜索基于导航方向的道路名称的示例计算机可执行指令的流程图。
[0021]图17是用于搜索基于移动设备的第一位置的道路名称的示例计算机可执行指令的流程图。[0022]图18是用于搜索图像中的文本的示例计算机可执行指令的流程图。
【具体实施方式】
[0023]应当理解的是,为了简要和清晰地进行说明,在适当的情况下,附图间的附图标记可能重复,以表明相应的或类似的元件。另外,阐述了大量特定的细节,以便提供对这里所描述的示例实施例的透彻理解。然而,本领域普通技术人员可以理解的是,没有这些特定的细节也可以实现这里所描述的实施例。在其他实例中,没有详细描述公知的方法、过程和组件,以免模糊这里所描述的示例实施例。而且,这些描述不应被视为对此处描述的示例实施例的保护范围的限制。
[0024]要认识到,在物理文档中手动搜索文本是困难且耗时的。例如,一个人可以仔细阅读文档或书本中的很多页,以搜索特定词语的实例。如果存在着很多页(例如,数百页),该人将需要阅读每一页,以确定特定词语的实例出现在何处。该人可能开始匆忙地阅读或审阅文档或书本,并且可能在无意间没有注意到文本中特定词语的实例。当内容是不熟悉的或不吸引人的时,该人有可能更加不可能注意到特定词语的实例。
[0025]在另一示例中,某人仅查找特定词语的实例,并且不愿意阅读被认为无关的其他文本,因为仅直接在特定词语周围的文本才被认为是相关的。这种情况会使得阅读文档或书本单调乏味,并且例如会使该人增加其文本审阅的速度。例如,这会直接或间接地导致该人在无意间没有注意到特定词语的实例增加。
[0026]审阅文档并搜索特定词语的人还可能发现该任务对眼睛造成压力,特别是当文本是小尺寸字体时。在阅读难以阅读的字体风格的文本时,这也可能是困难的。这种情况会导致人的眼睛承受压力。
[0027]还要意识到,当人行进通过街道时(例如,步行或驾车),该人可能被很多不同类型的标志(例如,道路标志、店面标志、公告板、广告等)分散注意力。该人可能没有看到或识别出其正在寻找的街道标志。
[0028]如果某人开车很快或者将其视觉注意力集中在交通上,其可能也没有注意到街道标志。可以意识到的是,在查找特定街道标志时驾驶可能是困难的。当人可能在不熟悉的区域中驾车并因此不知道在哪儿发现街道标志时,问题更加复杂。此外,远处的街道标志可能难以阅读,因为对于人而言,文本可能显得很小或不清楚。
[0029]本文中描述的本系统和方法解决了这些问题。转到图la,示出了打开到页202、204的书200。装备有相机的移动设备100正在相机的显示器110上实时地示出页202、204的图像。换言之,当移动设备100和书本200彼此相对移动时,显示器110上显示的图像自动更新,以示出相机当前正在捕捉的东西。
[0030]在图1a中,相机正在查看页202,并且在显示器110上示出了图202的图像206。换言之,显示了页202上的文本的图像。显示器110还在其图形用户界面(⑶I)中包括了文本字段208,用户可以通过显示器110的⑶I和/或移动设备100的键盘或其他输入设备(图1a中未示出)来在文本字段208中输入搜索参数。换言之,如果某人正在书本200中查找文本的特定实例(例如,字母组合、词语、短语、等式、数字等),该人可以在文本字段208中输入要搜索的文本。例如,某人可能希望搜索术语“CusCO”208,其在图1a中示出为搜索参数。移动设备100使用光学字符识别(OCR)来从文本图像导出计算机可读文本,并使用该计算机可读文本来应用文本搜索算法,以发现搜索参数的实例。一旦发现,移动设备指示搜索参数位于何处。在示例中,使用围绕文本图像“Cusco”的框210来在显示器110上标识术语“Cusco”的位置。可以认识到,框210可以覆盖在图像206上。这增强了人通过移动设备100正在查看的现实。
[0031]可以认识到,成像文本是图像,并且其含义不容易被计算设备或移动设备100所理解。相反,计算机可读文本包括计算设备或移动设备100理解的字符代码,并且可更加易于修改。可应用的字符编码和解码方案的非限制性示例包括ASCII码和Unicode。因此可以识别来自计算机可读文本的词语并将其与各种功能相关联。
[0032]转向图lb,当某人将移动设备100从页202移动到页204时,将以相机正在查看或捕捉的当前图像来自动更新显示器110。可以认识到,可以通过实时的方式,几乎即刻地更新显示器Iio上正在显示的图像。换言之,当将相机放在页204的前面时,显示器110自动示出页204的图像212。当搜索参数“Cusco”仍在使用中时,移动设备100搜索术语“Cusco”。框210被示出为围绕术语“Cusco”,覆盖在页204上的文本的图像212上。可以认识到,其他用于在视觉上指示词语“Cusco”的位置的方法也是可应用的。
[0033]可以认识到,这种系统和方法可有助于人快速地搜索文档或书本中的文本或者以硬拷贝格式显示的文本的其他实施例。例如,可以使用本文中的原理来搜索另一计算机屏幕上示出的特定词语。该人移动移动设备110来在文本页中扫描,并且在发现搜索参数时,在显示器110上突出显示其位置。这减少了该人的劳动量,因为不需要阅读每个词语。如果不存在对在成像文本中有搜索参数的指示,则该人知道在该成像文本中不存在搜索参数。与人手动地搜索特定词语相比,本文中描述的原理可以是更加可靠。
[0034]转到图2,示出了街道环境214。街道环境214包括建筑、出租车和一些街道标志。如上所述,可能存在很多标志216、218、220、222、224,这可能分散人的注意力。例如,该人可能正在查找特定的道路名称来确定其位置,或者确定到达目标的导航方向的目前集合。如果该人正在驾驶,其可能不希望查找道路名称,这可能分散其驾驶意识。
[0035]移动设备100装备有可被使用来搜索和识别街道环境214中的特定道路名称的相机。在本示例实施例中,道路名称是搜索参数,其可以从一组方向(移动设备100处从例如地图服务器或提供方向的其他源接收到)、当前位置(移动设备100处通过例如移动设备100的GPS接收机接收到)或人的手动输入(移动设备100处通过⑶1、其显示器和/或键盘或其他输入设备接收到)而获得。移动设备100通过向图像中的文本应用OCR算法来处理街道环境的图像,由此生成计算机可读文本。然后,向计算机可读文本应用搜索算法,以确定是否存在搜索参数(在本示例中是道路名称)。如果存在,可以执行其他动作。
[0036]在图2中的示例中,移动设备100搜索道路名“主大街”和“国王大道”。该文本分别示出在街道标志222和224上,并在街道环境214的捕捉到的图像中识别。在识别到时,移动设备100显示对所寻找的文本位于图像中的何处的指示。这种指示的示例可以是显示圈226和228。通过这种方式,人可以看到道路名称“主大街”和“国王大道”在街道环境214中位于何处。这增强了人正在查看的现实。当移动设备100或街道环境214中的文本移动时(例如,人可能将移动设备100转到不同的方向,或者出租车标志218可能移动),计算机可读文本更新,以对应于同样当前的成像文本。
[0037]执行的另一动作是显示位置和导航信息,在显示器110上的界面230中对此进行了示出。假设如果移动设备的相机可以看到道路名称,则移动设备100当前正位于所识别的道路处。因此,界面提供消息“您位于主大街和国王大道处”。
[0038]基于移动设备100的当前位置,可以将这集成到使用来提供导航方向的地图应用中。例如,界面230可以提供方向“右转到主大街”。
[0039]在图2中的示例中,移动设备100可被集成到汽车中。例如,在被与汽车完整集成时,移动设备可以不是手持式的,并因此可以是电子设备。这种集成设备的示例可以包括与汽车的前端集成的相机,而执行搜索功能和处理图像的计算设备与汽车的计算机系统集成。
[0040]可应用的电子设备的示例包括寻呼机、蜂窝电话、蜂窝智能电话、无线管理器、个人数字助理、计算机、膝上型机、平板机、手持无线通信设备、具有无线能力的笔记本计算机、相机等。为了清楚起见,之后将这种设备统称为“移动设备”。然后,将认识到的是,本文中描述的原理还可适用于自己不移动的电子设备,例如集成在运输车辆(例如,汽车)中的GPS或其他计算机系统。
[0041]在示例实施例中,移动设备是具有高级数据通信能力的双向通信电子设备,该高级数据通信能力包括通过收发站的网络与其它移动设备或计算机系统进行通信的能力。移动设备还可以具有允许语音通信的能力。根据移动设备所提供的功能,该移动设备可以被称作数据消息收发设备、双向寻呼机、具有数据消息收发功能的蜂窝电话、无线因特网电器、或数据通信设备(具有或不具有电话功能)。
[0042]参考图3和图4,图3中示出了移动设备的一个示例实施例100a,以及图4中示出了移动设备的另一示例实施例100b。将要认识到,数字“100”之后将指代任何的移动设备100,包括示例实施例1OOa和100b,以上枚举的这些示例实施例或其他实施例。还将认识到的是,类似的编号惯例也将用于所有图之间公共的其他一般性特征,例如,显示器12、光标或视图定位设备14、取消或退出按钮16、相机按钮17和菜单或选项按钮24.[0043]图3中示出的移动设备IOOa包括显示器12a,以及在本示例实施例中示出的定位设备14是轨迹球14a。定位设备14可以担当另一输入部件,并且既可以旋转以向主处理器102(图6中示出)提供选择输入,也可以在大致朝着外壳的方向被压下以向处理器102提供另一选择输入。轨迹球14a允许多方向定位选择光标18(图7中不出),以使得选择光标18可以在向上的方向上、向下的方向上以及(如果希望和/或允许)在任何对角方向上移动。轨迹球14a在本示例中位于图3中示出的移动设备IOOa的外壳的正面上,以使得用户可以在单手手持移动设备IOOa的同时操纵轨迹球。轨迹球14a可以担当(除了方向或定位部件之外的)用于向处理器102提供选择输入的另一输入部件,并且可以优选地在向着移动设备IOOb的外壳的方向上被按下,以提供这种选择输入。
[0044]显示器12可以包括选择光标12 (图7中示出),选择光标12大致描绘了将在何处接收到下一输入或选择。选择光标18可以包括框、图标变化、或者使得用户可以识别当前选择的图标或项目的特征的任何组合。图3中的移动设备IOOa还包括可编程的便捷按钮15,用于激活所选择的应用,例如,如日历或计算器。此外,移动设备IOOa包括退出或取消按钮16a、相机按钮17a、菜单或选项按钮24a和键盘20。当优选地在向着外壳的方向按下时,相机按钮17能够激活照片和视频捕捉功能。菜单或选项按钮24在被按下时将菜单或选项列表加载到显示器12a上。在本示例中,退出或取消按钮16a、菜单选项按钮24a和键盘20位于移动设备外壳的正面,而便捷按钮15和相机按钮17a位于外壳的侧面上。该按钮布置使得用户可以在单手手持移动设备100的同时操作这些按钮。在本示例中,键盘20是标准的QWERTY键盘。
[0045]图4中示出的移动设备IOOa包括显示器12b,以及本示例实施例中的定位设备14是轨迹球14b。移动设备IOOb还包括菜单或选项按钮24b、取消或退出按钮16b和相机按钮17b。图4中示出的移动设备IOOb包括精简型QWERTY键盘22。在本示例实施例中,键盘22、定位设备14b、退出按钮16b和菜单按钮24b位于移动设备外壳的正面。精简型QWERTY键盘22包括多个多功能按键和对应的标记,包括与对应于字母A到Z的QWERTY阵列的字母字符以及叠加的数字电话按键布置相关联的按键。
[0046]要认识到的是,对于移动设备100而言,可以使用广泛的、一个或多个定位或光标/视图定位机制,例如,触摸板、定位轮、操纵杆按钮、鼠标、触摸屏、一组方向键、平板、力口速度计(用于感测移动设备100的方向和/或移动等)或者其他当前已知或未知的机制。类似地,可以使用键盘20、22的任何变型。还将认识到的是,图3和图4中示出的移动设备100仅被用于示意性目的,并且其他各种移动设备100同等可应用于下面的示例。例如,其他移动设备100可以包括与图4中所示出的相类似的轨迹球14b、退出按钮16b和菜单或选项按钮24,仅是具有任何类型的全键盘或标准键盘。也可以将其他按钮布置在移动设备外壳上,例如,要在电话通信中使用的色彩编码的“回答”和“忽略”按钮。在另一示例中,显示器12自己可以是触敏的,由此除了显示能力之外自己还提供输入机制。
[0047]参考图5,在移动设备IOOa的背部中,例如存在着可被用于照亮对象以捕捉视频图像或照片的光源30。相机镜头32和反射表面34也位于移动设备的背面。相机镜头32允许代表图像的光进入到相机设备中。反射表面34显示代表相机设备的视图的图像,并例如协助用户拍摄自拍照片。可以通过按下相机按钮17(例如,图3中示出的相机按钮17)相机设备来激活相机设备。
[0048]为了帮助读者理解移动设备100的结构,现在将参考图6至图8。
[0049]首先参考图6,图6中示出了移动设备100的示例实施例的框图。移动设备100包括多个组件,例如控制移动设备100的整体操作的主处理器102。通过通信子系统104来执行包括数据和语音通信在内的通信功能。通信子系统104从无线网络200接收消息,并向无线网络150发送消息。在移动设备100的该示例实施例中,依照世界范围内使用的全球移动通信系统(GSM)和通用分组无线服务(GPRS)标准对通信子系统104进行配置。其他同等可应用的通信配置时3G和4G网络,例如EDGE、UMTS和HSDPA、LTE、W1-Max等。目前仍然在制定新标准,然而相信新标准将具有同此处描述的网络相似的网络行为,因而本领域技术人员应当理解,此处描述的示例实施例打算使用将在未来开发出的任何其它合适的标准。连接通信子系统104和无线网络200的无线链路表示按照所定义的、针对GSM /GPRS通信规定的协议工作的一个或多个不同的射频(RF)信道。
[0050]主处理器102还与附加的子系统交互,附加的子系统例如:随机存取存储器(RAM) 106、闪存108、显示器110、辅助输入/输出(I / O)子系统112、数据端口 114、键盘116、扬声器118、麦克风120、GPS接收机121、短距离通信122、相机123、磁力计125和其它设备子系统124。显示器110可以是能够通过用户的触摸来接收输入的触摸屏显示器。
[0051]移动设备100的子系统中的一些子系统执行涉及通信的功能,而其它子系统可提供“驻留”或机上功能。以示例的方式,可以将显示器110和键盘116用于涉及通信的功能(例如输入文本消息以在网络200上传输)和驻机功能(例如计算器或任务列表)。
[0052]在所要求的网络注册或激活处理已经完成后,移动设备100可以通过无线网络200发送和接收通信信号。将网络接入与移动设备100的订户或用户相关联。为了标识订户,移动设备100可以使用订户模块组件或“智能卡”126、例如订户身份模块(SIM)、可拆卸的用户身份模块(RUIM)以及通用订户身份模块(USIM)。在所示出的示例中,为了与网络通信,要将SM / RUIM / USM126插入SM / RUIM / US頂接口 128中。在没有组件126的情况下,对于与无线网络200的通信,移动设备100没有完全工作。一旦SM / RUIM /USM126被插入到SM / RUIM / US頂接口 128中,其与主处理器102耦合。
[0053]移动设备100是电池供电的设备,并包括用于容纳一个或多个可充电电池130的电池接口 132。在至少一些示例实施例中,电池130可以是具有嵌入的微处理器的智能电池。电池接口 132耦合到稳压器(未示出),稳压器在向移动设备100提供功率V+时对电池130进行协助。虽然当前的技术使用了电池,将来的技术(例如,微燃料电池)可以向移动设备100提供功率。
[0054]移动设备100还包括将于以下进行详细说明的操作系统134和软件组件136至146。主处理器102所执行的操作系统134和软件组件136至146通常存储在永久性存储器(例如,闪存存储器108)中,备选地,闪存存储器1018也可以是只读存储器(ROM)或其它类似的存储元件(未示出)。本领域技术人员将意识到,可将部分的操作系统134和软件组件136至146 (例如特定的设备应用)或其一部分临时加载到易失性存储器(例如RAM106)中。还可以包括本领域技术人员周知的其他软件组件。
[0055]在制造过程中,将用于控制基本设备运行的软件应用136的子集(包括数据和语音通信应用)安装在移动设备100中。软件应用可以包括消息应用138、设备状态模块140、个人信息管理器(PM) 142、连接模块144和IT策略模块146。消息应用138可以是允许移动设备100的用户发送和接收电子消息的任何适合的软件程序,其中,消息通常被存储在移动设备100的闪存108中。设备状态模块140可提供持久性,即,设备状态模块140确保将重要的设备数据存储在持久性存储器(例如,闪存存储器108)中,以使得当移动设备100关闭或掉电时,数据不会丢失。PM142包括用于对用户感兴趣的数据项进行组织和管理的功能,并且可以与无线网络200交互,用户感兴趣的数据项例如但不限于电子邮件、通讯录、日历事件和语音邮件。连接模块144实现移动设备100与该移动设备100被授权与之进行接口连接的无线基础设施和任何主机系统(例如企业系统)通信所需的通信协议。IT策略模块146接收对IT策略进行编码的IT策略数据,并且可以负责组织和保护规则,例如,“设置最大密码尝试” IT策略。
[0056]也可以将其他类型的软件应用或组件139安装在移动设备100上。这些软件应用139可以是预安装的应用(S卩,消息应用138之外的应用)或者在移动设备100的制造之后添加的第三方应用。第三方应用的示例包括游戏、计算器、实用程序等。
[0057]可以通过无线网络200、辅助I / O子系统112子系统、数据端口 114、短距离通信子系统122、或者任何其它适合的设备子系统124中的至少之一来将其它应用139加载到移动设备100上。
[0058]数据端口 114可以是使移动设备100和另一计算设备能够进行数据通信的任意合适的端口。数据端口 114可以是串行或并行端口。在一些实例中,数据端口 114可以是USB端口,包括用于数据传递的数据线和可以提供充电电流以对移动设备100的电池130充电的电源线。
[0059]对于语音通信,向扬声器118输出接收到的信号,以及由麦克风120生成用于发送的信号。虽然主要通过扬声器118来完成语音或音频信号输出,也可以使用显示器110来提供附加信息,例如主叫方的标识、语音呼叫的持续时间或者其他语音呼叫相关信息。
[0060]现在转向图7,移动设备100可以显示主屏幕40,主屏幕40可被设置为当移动设备100开机作为主屏幕,并且可构建主功能区(ribbon)应用。主屏幕40通常包括状态区域44和主题背景46,主题背景46为显示器12提供图形背景。主题背景46在图形背景上以预定的布置显示一系列图标42。在一些主题中,主屏幕40可以限制主屏幕40上示出的图标42的数目,以使得不将注意力从主题背景46转移,特别是在由于美学的原因而选择背景46的情况下。图7中示出的主题背景46提供图标栅格。将认识到的是,优选地,若干主题可用于由用户进行选择,并且可以使用任何可应用的布置。示例图标可以是使用来对基于增强现实相机的应用进行指示的相机图标51。一系列图标42中的一个或多个图标通常是文件夹52,文件夹52自己能够其自身中组织任何数目的应用。
[0061]本示例实施例中的状态区域44包括日期/时间显示48。除了图形背景和一系列的图标42之外,主题背景46还包括状态条50。状态条50基于选择图标18的位置来向用户提供信息,例如通过显示当前突出显示的图标53的名称来提供。
[0062]通过使用定位设备14来突出显示对应的图标53并向移动设备100提供适合的用户输入,可以从显示器12发起(打开或查看)应用,例如消息应用138(图6中示出)。例如,通过移动定位设备14以使得由图7中示出的选择框18来突出显示图标53,并例如通过压下轨迹球14b来提供选择输入,可以发起消息应用138。
[0063]图8示出了可以在移动设备100上存储和使用的其他软件应用和组件139 (也在图6中示出)的示例。图8中仅示出了示例,并且这些示例不被认为是详尽无遗的。在本示例中,可以使用警报应用54来在由用户确定的时间和日期激活告警。还处在管理和显示联系人信息的地址簿62。可以使用GPS应用56来确定移动设备100的位置。日历应用58可被用于组织预约。另一示例应用是增强现实文本查看器应用60。该应用60能够通过在图像上方显示另一层来增强图像,由此,该层包括提供对搜索参数(例如,文本)在图像中位于何处的指示。
[0064]其他应用包括光学字符识别应用64、文本识别应用66和语言翻译器68。光学字符识别应用64和文本识别应用66可以是组合应用或不同应用。还可以认识到,可以将本文中描述的其他应用或模块组合或分开操作。光学字符识别应用64能够将手写文本、印刷文本、机打文本等的图像翻译为计算机可读文本或机器编码文本。可以在本文中使用将文本的图像翻译为计算机可读文本的已知方法和将来的方法,一般将其称为OCR方法。OCR应用64还能够执行也用于识别手写文本的智能字符识别(ICR)。文本识别应用66识别形成词语、短语、句子、段落、地址、电话号码、日期等的计算机可读字符的组合。换言之,可以理解字母组合的含义。已知的文本识别软件可应用于本文中描述的原理。语言翻译器68将计算机可读文本从给定语言翻译为另一语言(例如,从英语到法语,从法语到德语,从中文到英语,从西班牙语到德语等)。可以使用已知的语言翻译器。[0065]其他应用还可以包括提供导航方向和地图信息的地图应用69。可以意识到,各种应用的功能可以彼此交互,或者可以组合。
[0066]转向图9,提供了用于增强与文本有关的现实的示例配置。从相机123接收输入。具体地,文本增强模块/⑶160接收可包含文本的相机或视频图像(可由图像处理模块240处理)。使用该图像,文本增强模块/⑶160可以在显示屏幕110上显示该图像。在示例实施例中,来自相机123的图像可以是以实时方式更新的流传输视频图像。
[0067]继续图9,可以使用图像处理模块240来处理从相机123接收的图像。例如,图像处理模块240可被用于调整图像的亮度设置和对比度设置,以增加成像文本的清晰度。备选地或附加地,可以提高相机123的曝光设置,以使得相机(例如,相机的电荷耦合器件)吸收更多的光。还向文本增强模块/⑶160发送图像(不管是否处理过)。
[0068]还可以使用OCR应用64来处理图像,OCR应用64从文本的图像导出计算机可读文本。可以将计算机可读文本存储在数据库242中。使用文本识别应用66来搜索计算机可读文本中的特定文本。正在寻找的特定文本是数据库244中存储的搜索参数。数据库244可以通过文本增强模块/ GUI60或者从地图应用69接收搜索参数。如较早讨论的,搜索参数可以是人输入的文本,或者可以是由导航方向或位置知信息导出的文本。
[0069]如果文本识别应用发现搜索参数,则将该信息传递回文本增强模块/ GUI60。文本增强模块/ GUI60可以显示对所寻找的文本在图像中位于何处的指示符。例如,在图1a和图1b中对此进行了示出。如果发现一个或多个搜索参数,还可以将该信息传递给地图应用69,以生成位置信息和/或导航方向。
[0070]还可以将识别出的搜索参数的实例保存在数据库248中,数据库248通过页编号来对所发现的搜索参数的实例进行组织或编排索引。记录保存器应用246对此进行了推动,记录保存器应用246还可以包括页识别器应用247。记录保存器应用246对给定页编号上的搜索参数的实例的数目进行计数并存储。还可以在数据库248中显示成像文本的拷贝。
[0071]将意识到,在本文中示例出的执行指令或操作的任何模块或者组件可以包括或者具有对计算机可读介质的访问,该计算机可读介质例如:存储介质、计算机存储介质或者数据存储设备(可移除的和/或不可移除的)(例如,磁盘、光盘或者磁带)。计算机存储介质可以包括以用于信息的存储的任何方法或技术实现的易失性和非易失性的、可移除或者不可移除的介质,例如计算机可读指令、数据指令、程序模块或者除了暂时的传播信号本身之外的其他数据。计算机存储介质的示例包括RAM、ROM、EEPR0M、闪存或者其他存储器技术、CD-ROM、数字通用碟(DVD)或者其他光存储器、磁的盒状磁带、磁带、磁盘存储器或者其他磁存储设备,或者可以使用来存储所需信息并且可以由应用、模块或者应用和模块访问的其他任何介质。这种计算机存储介质中的任一种可以是移动设备100的一部分,或者可以由移动设备100访问或可连接到移动设备100。可以使用计算机可读/可执行指令或操作来实现本文中描述的任何应用或模块,可以由这种计算机可读介质来存储或者保持该指令或操作。
[0072]转向图10,提供了用于搜索图像中的文本的示例计算机可执行指令。在框250处,移动设备100接收文本。可以认识到,某人希望搜索文本,并因此在示例实施例中已经将文本输入到移动设备100中。在本文中可以将该文本称为搜索参数、搜索文本或寻找的文本。例如,可以通过文本增强模块/⑶160,例如图1a中的文本字段208,将搜索参数输入到移动设备100中。在框252处,移动设备100使用相机123来捕捉文本的图像。图像可以是静态的,或者是实时图像的视频流的一部分。在另一示例实施例中,可以根据本文中描述的原理,使用搜索参数来搜索在另一时间处拍摄并可选地来自不同相机设备的视频数据。在框254处,应用OCR算法来生成计算机可读文本。在框256处,在移动设备的显示器110上显示文本的图像。在框258处,移动设备100使用搜索参数来对计算机可读文本执行搜索。如果发现搜索参数,在框260处,移动设备100显示对搜索参数位于文本图像中的何处的指示。在示例实施例中,指示可以是阐述搜索参数可在屏幕上的何处或哪一段被发现的消息。在另一示例实施例中,指示可以覆盖在成像文本上,直接指出搜索参数的位置。
[0073]在框262处,移动设备100继续捕捉文本的图像,并在检测到文本的新位置时或在检测到新文本的情况下自动更新显示器110。例如,如果人将移动设备100在文本的页上向下移动,显示器110上的文本图像的位置对应地向上移动。从而,如果搜索参数在成像文本中,指示(例如,框210)页在显示器110上向上移动。在另一示例中,如果人将移动设备100向包含搜索参数的多个实例的不同页移动,则例如通过在每个搜索参数的实例周围自动显示框210来示出搜索参数的所有实例。
[0074]换言之,在示例实施例中,移动设备100持续捕捉附加图像,并在对应成像文本的位置改变位置时自动更新对指示的显示。类似地,移动设备100持续捕捉附加的文本图像,并在检测到新文本的情况下使用覆盖在搜索参数的图像之上的其他指示来自动更新显示器 110。
[0075]在示例实施例中,框254至262的过程以实时方式重复,或者非常快地重复,以提供增强现实体验。由虚线263指示了该重复或循环。
[0076]转向图11,提供了用于显示覆盖成像文本的位置指示的示例实施例。在框264处,移动设备100确定与搜索参数相对应的成像文本的像素位置。然后,例如通过以下方式来相对于像素位置显示图形指示:突出显示成像文本,在成像文本周围放置框或圆圈,以及以覆盖对应成像文本的不同字体格式(例如,粗体)显示搜索参数的计算机可读文本(框266)。例如,返回图la,可以通过粗体或不同的字体来显示计算机可读文本“Cusco”,并覆盖文本“Cusco”的图像。可以认识到,可存在着显示对所寻找的文本位于图像中的何处的指示的各种其他方式。
[0077]在图12中,提供用于记录搜索参数的实例的示例计算机可读指令。在框268处,移动设备100识别正在成像的页。例如,可以通过页编号来识别该页。在框270处,确定出现在成像文本中的搜索文本或搜索参数的实例的数目。可以使用计数算法来确定实例的数目。
[0078]在框272处,在数据库248中记录并存储搜索参数的实例的数目以及给定页编号。还保存包含搜索参数的文本图像(框274)。
[0079]这允许人容易地识别出哪些页与搜索参数相关,以及识别出搜索参数的实例的数目。例如,与具有较少实例数目的页相比,具有较高实例数目的页可能与该人更相关。该人还可以方便地取回文本图像,以阅读在其中使用的搜索参数的上下文。
[0080]图13中示出了用于查看出现搜索参数的页的示例GUI276。存在标题,包括页编号278、搜索参数(例如,“Cusco”)的实例的数目以及页图像链接282。例如,示例⑶1276示出了在页5上存在词语“Cusco”的3个实例。当移动设备100接收到按钮或链接284上的选择输入时,可在然后显示图5的图像,示出“Cusco”的实例位于何处。
[0081]转到图14和15,以及接着(图12的)框268,提供用于识别页编号的示例计算机可执行指令。可以认识到,可由人手动识别或输入页编号。备选地,可以如下所述地自动识别页编号。
[0082]参考图14,在示例实施例中,移动设备100接收该页上文本的图像(框286)。移动设备100搜索位于页的页脚或页眉区域中的数字(框288)。可以使用OCR应用64来识别该数字。搜索页脚或页眉区域,因为这通常是页编号的所在之处。如果发现数字,则识别出的页编号是所述页编号(框290)。例如,如果在页的页脚上发现数字“14”,这将该页识别为“页14”。
[0083]图15提供了用来检测已转到的页的示例实施例。这基于该页是从一页转到下一页的假设。在框292处,移动设备100接收页上的文本的图像。移动设备100向文本图像应用OCR算法,并保存计算机可读文本的第一集合(框294)。移动设备100假设计算机可读文本的第一集合在“第一页”上(例如,不是必须在页I上)。然后,移动设备100接收页上的文本的第二图像(框296)。向第二图像应用OCR算法,以生成计算机可读文本的第二集合(框298)。如果计算机可读文本的第一集合和第二集合不同,则在框300处,移动设备100确立计算机可读文本的第一集合在“第一页”上,以及计算机可读文本的第二集合在“第二页”上(例如,不是必须在页2上,而可以是第一页之后的连续编号)。例如,如果第一页被识别为页14,则第二页被识别为页15。
[0084]可以认识到的是,本文中描述的用于搜索图像中的文本的原理可被应用来提供位置信息和导航方向。例如,之前关于图2对此进行了描述。
[0085]转向图16,提供了用于基于方向来搜索道路名称的示例计算机可执行指令。在框302处,移动设备100获得从第一位置到第二位置的行进的方向。例如,其包括了要在特定的方向上并以特定的顺序行进的道路名称的列表。可以认识到,本示例实施例中的输入是方向。在框304处,从方向提取一个或多个道路名称。可以认识到,道路名称的非限制性示例包括街道名称、高速路和出口编号。在框306处,将该一个或多个道路名称确立为搜索参数。如果在方向上存在多个道路名称,则这些多个道路名称都是搜索参数。移动设备100然后使用相机来例如从标志获得或捕捉文本的图像(框308)。应用OCR算法以从图像生成计算机可读文本(框310)。然后,使用搜索参数(在本示例中是道路名称)来执行计算机可读文本的搜索(框312)。如果发现任何的道路名称(框314),则基于识别出的道路名称确定位置数据。例如,参考回图2,如果框302的方向包括道路名称“主大街”和“国王大道”,以及发现这些名称的文本,则知道移动设备100位于主大街和国王大道的交叉路口。因此,移动设备100知道在通过方向识别出的路由上其位于何处,并因此知道方向序列中随后的导航方向的下一集合。在框316,基于位置数据,移动设备100提供位置更新(例如,直行、左转、右转等)。例如,参考图2,方向234阐述了 “右转到主大道”。
[0086]可以使用上述方案来补充或替换GPS功能。该方案可以有用的示例场景是在隧道中行进期间并且没有GPS信号可用。可以使用以上图像识别和地图功能来引导人在正确方向上行进。此外,通过仅搜索由方向提供的特定的道路名称,可以忽略其他道路名称或其他标志。这降低了移动设备100上的处理负担。[0087]在另一示例实施例中,转到图17,提供了用于使用文本搜索能力来确定更精确的位置的示例计算机可执行指令。获得第一位置,第一位置可以是在有一些不确定的情况下的大致位置。将第一位置视为是使用来导出被用作搜索参数的道路名称的列表的输入。当已在图像或多个图像中发现所寻找的道路名称时,使用已经发现的道路名称来确定更精确的位置。
[0088]具体地,在框318处,移动设备100获得设备附近的第一位置。可以通过小区塔信息、无线或W1-Fi集线器的位置、GPS等来确定第一位置。还可以通过手动输入的信息(例如,邮编、邮递区号、主要交叉口等)确定第一位置。基于该输入(被认为是移动设备100所位于的区域的近似),移动设备100识别在第一位置周围的道路名称的集合(框320)。可以使用地图应用69来确定周围的道路名称。这些道路名称被用作搜索参数。
[0089]继续图17,在框322处,移动设备100使用相机123捕捉文本的图像(例如,标志)。向图像应用OCR算法以生成计算机可读文本(框324)。在框326处,使用搜索参数(例如,道路名称)来执行计算机可读文本的搜索。如果发现一个或多个道路名称(框328),则假设移动设备100位于该一个或多个道路名称处。然后,移动设备100提供第二位置,该第二位置更精确地指示设备位于与搜索参数相对应的给定道路或给定的多条道路处。例如,这在图2中的声明232 “您位于主大街和国王大道处”中进行了示出。
[0090]更一般地,转向图18,提供了用于在一个或多个图像中搜索图像的系统和方法。计算设备执行的方法包括:接收输入(框330);根据输入来生成搜索参数,搜索参数包括文本(框332);向一个或多个图像应用光学字符识别,以生成计算机可读文本(框334);应用搜索参数,以在计算机可读文本中搜索文本(框336);如果识别出文本,执行动作(框338)。
[0091]在另一方面,方法还包括实时地持续捕捉其他图像,自动向该其他图像应用光学字符识别,以生成其他计算机可读文本,以及如果再次发现文本,再次执行动作。在另一方面,计算设备是包括相机的移动设备,以及由相机来提供该一个或多个图像。在另一方面,输入是文本。在另一方面,由用户提供文本。在另一方面,执行的动作是在显示器上突出显示发现的文本。在另一方面,该一个或多个图像具有一页或多页,以及计算设备记录文本被发现位于的一页或多页。在另一方面,该一页或多页是通过页编号来分别识别的,是通过向页编号应用光学字符识别来确定的。在另一方面,该一页或多页是通过页编号来分别识别的,通过对在页的采集中审阅的页的编号进行计数来确定页编号。在另一方面,方法还包括记录在所述一页或多页上发现的文本的实例的数目。在另一方面,输入是位置。在另一方面,所生成的搜索参数是基于位置的一个或多个道路名称。在另一方面,搜索参数是从到达位置的方向的集合生成的,搜索参数包括该一个或多个道路名称。在另一方面,在已经发现该一个或多个道路名称中的至少一个道路名称的文本时,所执行的动作是基于方向的集合提供音频或视频指示,以在特定的方向上移动。在另一方面,识别出靠近位置的一个或多个道路名称,搜索参数包括该一个或多个道路名称。在另一方面,在已经发现该一个或多个道路名称中的至少一个道路名称的文本时,执行的动作是提供包括已经发现的道路名称的第二位置。
[0092]还提供了移动设备,包括:显示器;被配置为捕捉一个或多个图像的相机;以及连接到显示器和相机的处理器,处理器被配置为:接收输入,根据输入来生成搜索参数,搜索参数包括文本,向该一个或多个图像应用光学字符识别,以生成计算机可读文本,应用搜索参数,以在计算机可读文本中搜索文本,以及如果识别出文本,执行动作。
[0093]还提供了系统,包括:显示器;被配置为捕捉一个或多个图像的相机;以及连接到显示器和相机的处理器,处理器被配置为:接收输入,根据输入来生成搜索参数,搜索参数包括文本,向该一个或多个图像应用光学字符识别,以生成计算机可读文本,应用搜索参数,以在计算机可读文本中搜索文本,以及如果识别出文本,执行动作。在示例实施例中,将这种系统与运输车辆(例如,汽车)集合。
[0094]本文中使用的示意图和框图仅用于示例。可以使用不同的配置和组件名称。例如,在不背离本发明的精神的情况下,可以添加、删除、修改或与不同的连接布置组件和模块。
[0095]本文中描述的流程图中的步骤或操作仅用于示例。在不背离本发明的精神的情况下,可以存在这些步骤或操作的很多变型。例如,可以通过不同的顺序来执行步骤,或者可以添加、删除或修改步骤。
[0096]将要认识到的是,图中示出并在以上描述的具体的示例实施例仅用作示意性的目的,以及可以根据所描述的原理来使用很多其他变型。虽然参考特定的示例实施例描述了以上内容,然而所附权利要求中所勾勒出的,其各种修改对本领域技术人员将是显而易见的。
【权利要求】
1.一种用于搜索至少一个图像中的文本的方法,所述方法由计算设备执行,所述方法包括: 接收输入; 根据所述输入来生成搜索参数,所述搜索参数包括所述文本; 向所述至少一个图像应用光学字符识别,以生成计算机可读文本; 应用所述搜索参数,以在所述计算机可读文本中搜索所述文本;以及 如果发现所述文本,则执行动作。
2.根据权利要求1所述的方法,还包括:实时地持续捕捉其他图像,自动向所述其他图像应用光学字符识别,以生成其他计算机可读文本,以及如果再次发现所述文本,则再次执行所述动作。
3.根据权利要求1所述的方法,其中,所述计算设备是包括相机的移动设备,以及由所述相机来提供所述至少一个图像。
4.根据权利要求1所述的方法,其中,所述输入是文本。
5.根据权利要求4所述的方法,其中,所述文本由用户提供。
6.根据权利要求 4所述的方法,其中,所执行的动作是在显示器上突出显示所发现的文本。
7.根据权利要求4所述的方法,其中,所述至少一个图像具有一页或更多页,以及所述计算设备记录所发现的文本所在的一页或更多页。
8.根据权利要求7所述的方法,其中,所述一页或更多页各自通过页编号来识别,所述页编号是通过向所述页编号应用光学字符识别来确定的。
9.根据权利要求7所述的方法,其中,所述一页或更多页各自通过页编号来识别,通过对在页的采集中审阅的页的编号进行计数来确定所述页编号。
10.根据权利要求7所述的方法,还包括记录在所述一页或更多页的每一页上发现的文本的实例的数目。
11.根据权利要求1所述的方法,其中,所述输入是位置。
12.根据权利要求11所述的方法,其中,所生成的搜索参数是基于所述位置的一个或更多个道路名称。
13.根据权利要求12所述的方法,其中,所述搜索参数是根据到达所述位置的方向的集合生成的,所述搜索参数包括所述一个或更多个道路名称。
14.根据权利要求13所述的方法,其中,在已经发现所述一个或更多个道路名称中的至少一个道路名称的文本时,执行的动作是基于所述方向的集合来提供在特定方向上移动的音频或视频指示。
15.根据权利要求11所述的方法,其中,识别出靠近所述位置的一个或更多个道路名称,所述搜索参数包括所述一个或更多个道路名称。
16.根据权利要求15所述的方法,其中,在已经发现所述一个或更多个道路名称中的至少一个道路名称的文本时,执行的动作是提供包括已经发现的道路名称的第二位置。
17.—种电子设备,包括: 显示器; 被配置为捕捉至少一个图像的相机;以及连接到所述显示器和所述相机的处理器,所述处理器被配置为:接收输入,根据所述输入来生成搜索参数,所述搜索参数包括文本,向所述至少一个图像应用光学字符识别,以生成计算机可读文本,应用所述搜索参数,以在所述计算机可读文本中搜索所述文本,以及如果发现所述文本,则执行动作。
18.根据权利要求17所述的方法,其中,所述输入是文本。
19.根据权利要求18所述的方法,其中,所执行的动作是在所述显示器上突出显示所发现的文本。
20.—种系统,包括: 显示器; 被配置为捕捉至少一个图像的相机;以及 连接到所述显示器和所述相机的处理器,所述处理器被配置为:接收输入,根据所述输入来生成搜索参数,所述搜索参数包括文本,向所述至少一个图像应用光学字符识别,以生成计算机可读文本,应用所述搜索参数,以在所述计算机可读文本中搜索所述文本,以及如果发现所述文本,则执行动作。
【文档编号】G06F17/00GK103718174SQ201180072738
【公开日】2014年4月9日 申请日期:2011年8月5日 优先权日:2011年8月5日
【发明者】克里斯托弗·R·沃莫尔德, 康拉德·德尔伯特·西曼, 威廉·亚历山大·张 申请人:黑莓有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1