用于图像识别服务的方法和设备与流程

文档序号:13287833阅读:300来源:国知局
分案申请说明本申请是申请日为2009年03月05日、题为“用于图像识别服务的方法和设备”的中国发明专利申请No.200980107871.0(PCT国际申请PCT/US2009/001419)的分案申请。相关申请的交叉引用本发明基于2008年3月5日提交的第61/033,940号标题为“作为服务的图像识别”(IMAGERECOGNITIONASASERVICE)的共同待决临时申请,根据35U.S.C.§119(e)要求申请日的权益并且其内容通过引用被全部结合于此。

背景技术:
随着由联网通信和移动通信提供的互连性增大,这样的技术越发成为日常商业运作和个人消费行为的一部分。因此,需要结合原文(textual)信息和操作信息以及视频和音频信息的有效灵活的通信。特别是在内容检索领域中,需要允许用户搜索和识别项目以供消费的灵活机制。在该上下文中,消费包括电子交易、社会交易和商业交易。在一个示例中,在联网计算环境中运作的商贸服务向用户提供在互联网上购买和销售商品和服务的论坛。为了向用户提供最佳体验,商贸服务开发了辅助用户购买和销售商品和服务的特征。这样的特征包括但不限于在销售商及购买者识别项目时使用图像。图像的使用是重要的,因为其使得用户在他们想要从销售商那里购买时能够看见实际的项目。传统上,图像的使用限于销售商提供用于广告待售项目的详细信息,其中,该详细信息包括产品的照片、图画、视频或其它图像。附图说明图1和图2是图示出根据示例实施例的具有客户端-服务器体系架构并且用于提供图像服务的系统的框图;图3A和图3B是图示出根据示例实施例的用于提供图像服务的系统内的功能层的框图;图4是图示出根据示例实施例的用于提供图像服务的系统内的图像处理单元的框图;图5和图6是图示出根据示例实施例的商用工具模块的框图;图7是图示出根据示例实施例的图像处理方法的流程图;图8和图9是图示出根据示例实施例、图像输入内被提供给图像处理单元作为对图像服务的请求以及结果信息作为响应被提供的处理流程图;图10和图11是图示出根据示例实施例的用于图像处理的方法的流程图;图12是图示出根据示例实施例的欺诈检测模块的框图;图13是图示出根据示例实施例的客户端-服务器系统的框图;图14是图示出根据示例实施例的多个应用的框图;和图15是图示出根据示例实施例的被配置为实现图像处理服务的计算系统的框图。详细描述在以下描述中,为了说明的目的,阐述了大量特定细节以提供对某些示例实施例的透彻理解。对于本领域技术人员而言,显然这里表述的概念可以在没有这些特定细节的情况下被实行。描述了用于增强在可访问网络的信息资源中的搜索能力的方法和系统,包括生成数据字典来识别信息资源中所存储的数据项。根据一个示例实施例,提供一种系统,其具有公布(publication)系统(例如,诸如电子商务平台或站点之类的交易平台)内增强的图像服务这样的优点。该系统的一部分负责在面向移动电话技术的环境中提供图像服务。根据一个示例实施例,拍摄项目的图片并且将特别地格式化的电子邮件发送到与电子商务网站相关联的地址导致从电子商务数据库中检索相关的项目。在一个实施例中,响应电子邮件被生成,其具有与电子商务移动网站一致的样子和感觉。该系统是灵活的并且允许第三方开发人员充分利用图像服务,例如使用简化的接口调用来搜索电子商务列表以寻找具有特定条形码的类似的图像和项目。该系统是可扩展的,使得可以向现有的服务增加更多的服务或修改。例如,在一个实施例中,该系统可以被用来在图像(例如,产品的图片或与产品相关联的其它识别信息,例如条形码、车辆识别码(VIN)等等)被发送给发表系统时,基于图像自动地生成项目或服务的公布(例如,固定的价格或拍卖列表)。在该示例中,图像被用来识别和检索附加信息以创建公布。这样,用于图像辨认服务的方法和设备被销售商用来生成待售物列表,以及被用户用来搜索和识别要购买的项目。针对交易任一侧的开发人员可以应用这样的技术来生成列表和定位项目。在一个示例中,电子商务系统的大宗用户上载与多个基于图像的项目有关的信息,该信息被与项目数据库中的信息对照、组织和比较。作为响应,与这多个基于图像的项目相对应的多个项目被检索到。关于公布,可以做出某些默认假定,并且这些默认假定可以被包括在公布内作为公布数据。例如,基于经由公布系统所支持的交易平台当前正在供销售的或过去已经售出的类似或相当的项目的定价,某一价格可以与列表中广告待售的产品自动关联。在另一示例实施例中,该系统被用在欺诈防止功能中,用于基于用电子邮件或其它方式发送给系统的图像与所存储的真实的或者欺诈性的项目的图像的集合的比较,来自动地提供有关具体项目是真实的还是欺诈性的项目的指示。在该系统内,项目的某些特征可以被标记,以用于具体的详细检查以及具体地指示项目是欺诈性的还是真实的。在一个示例中,用户接收以给定的价格购买产品的广告或供应(offer)。用户想要确认该广告或许诺的合法性,并且将广告或许诺中接收到的图像发送给已知的销售商以进行确认。在描述使用客户端-服务器型体系架构的系统10的图1的网络图中,图示出执行用于识别信息资源中所存储的数据项的图像辨认服务的分布式网络的一个示例实施例。贸易平台或贸易服务器包括信息存储和检索平台12,其经由网络14(例如,互联网)向一个或多个客户端提供服务器侧的功能。如图所述,系统10与以下客户端交互:在客户机20上运行的网络客户端16、在客户机22上运行的编程客户端(programmaticclient)18以及在客户机23上运行的以客户端图像模块25形式的编程客户端18。在一个实施例中,网络客户端16是网络浏览器,但是可以采用其它类型的网络服务。在信息存储和检索平台12内,应用程序接口(API)服务器24和网络服务器26耦合到一个或多个应用服务器28,并且向它们提供编程和网络接口。应用服务器28托管(host)一个或多个模块30(例如,模块、应用、引擎等等)。应用服务器28又被示出为耦合到一个或多个数据库服务器34,这一个或多个数据库服务器34辅助对一个或多个数据库36的访问。模块30向访问信息存储和检索平台12的用户提供许多存储和检索功能和服务。用户通过网络14来访问信息存储和检索平台12。尽管图1的系统10采用客户端-服务器体系架构,但是本公开不限于该体系架构,并且可以应用于分布式的或点对点式的体系架构系统。各种模块30也可以实现为独立的软件程序,它们不一定具有联网能力。网络客户端16可以经由网络服务器26支持的网络接口来访问各种模块30。网络服务器26允许开发人员建立网络页面。在一个实施例中,网络服务器26结合加利福尼亚门洛帕克的SunMicrosystems的技术以及Ajax(异步JavaScript和XML)技术来使用,Ajax是使能网络应用创建的技术的集合。Ajax使用JavaScript、可扩展标记语言(XML)、层叠样式表(CSS)格式化以及一些其它技术。Ajax使得编程人员可以在不必全部重新加载网络页面的情况下就能够更新页面的某些部分。通过动态地获取信息,网络页面加载得更快,对请求的响应更迅速,并且更有用。开发人员在寻求减少某些应用中的网络延迟时,考虑使用Ajax应用和类似Ajax的应用。类似地,编程客户端18经由API服务器24提供的编程接口来访问由模块30提供的各种服务和功能。在一个示例中,编程客户端18是使得销售商能够在信息存储和检索平台12上创作和管理数据项列表的销售商应用(例如,由SanJose,CA的eBay公司开发的应用),其中,每个列表对应于一个或多个产品。列表可以以离线方式被创作和修改,例如,在客户机20、22或23不一定连接到信息存储和检索平台12时。客户机20、22和23还用于在编程客户端18和25与信息存储和检索平台12之间执行批模式通信。另外,编程客户端18和网络客户端16可以包括创作模块(未示出),用于创作、生成、分析和公布在信息存储和检索平台12中用来构成数据项和转换查询的分类规则。在一个示例实施例中,转换查询使用具有令牌对(tokenpair)的数据字典来扩展较窄的关键字或聚焦较宽的关键字。客户机23还被示出为耦合到一个或多个数据库27。数据库27包括在实现服务或操作中由客户机23使用的信息,并且可以包括针对由客户机23提供的产品或服务的特定信息。访问由客户机23提供的(一个或多个)服务的用户例如包括计算机19的用户和无线网络17的用户,无线网络17可以用作各种无线装置到互联网14的公共接入点,这些无线装置包括有线电视服务11、个人数字助理(PDA)13和蜂窝电话15等等。在一个示例中,客户机23使能网络服务,其中,网络服务的目录被存储在信息存储和检索平台12中。客户机23将与网络服务的使用有关的信息存储在数据库27中,其中,该信息用于识别相关联的服务和供应。相关联的服务和供应也在网络服务的目录中列出。相关联的服务和供应的描述符可以用来生成和修改与网络服务的目录相对应的数据字典的词表,使得用与第一服务相关的关键字的用户搜索可以返回与第一服务相关联的第二服务的结果。另外,客户机20、22和23中的每一个也可以是在信息存储和检索平台12中搜索数据项的用户。在另一示例中,客户机23是经由互联网14向消费者供应产品的电子商务客户端。客户机23在信息存储和检索平台12中存储产品的目录,产品的目录具有相对应的数据字典。客户机23将与至少一个产品相关的信息存储在数据库27中。该信息可以包括搜索频率、销售结果、相关产品、定价信息以及与消费者使用电子商务服务有关的其它信息。另外,数据库27可以存储其它有关产品的信息,例如,类型、颜色、格式等等。客户机23可以使用数据库27中所存储的信息来开发至少一个产品的描述符信息。产品描述符和其它产品信息可以用来生成和修改与产品的目录相对应的数据字典的词表,使得用与第一产品相关的关键字可以返回与第一服务相关联的第二服务的结果。在另一些实施例中,客户机可以在信息存储和检索平台12中存储与商业过程有关的信息或将数据存储到可由多个用户访问的数据库中的其它应用。这样的系统中的一个共同的问题在于理解和预测多个用户在搜索查询中作为搜索项输入的关键字的能力。这多个用户的每一个用户可以使用不同的关键字来搜索相同的数据项。与数据项相对应的数据字典的使用在向不同用户返回从基于不同关键字的搜索产生的相同数据项方面增强了搜索机制。为了辅助信息存储和检索平台12内的搜索,图像处理单元37提供图像处理服务,包括从客户机接收到的数据的图像识别以及图像压缩处理。图像处理单元37可以对从客户机20、22和23接收到的信息(例如,产品或服务描述符信息)以及其它有关信息进行操作。图像处理单元37处理此信息来将接收到的信息与所存储的项目数据进行比较,所存储的项目数据例如是项目的条形码信息或从系统10的外部找到的照片或其它图像。图像处理单元37还可以提供数据压缩来减小所接收到的信息的大小,以辅助存储、进一步的处理以及向另一实体的信息转送。图像处理单元37也通过将接收到的信息与已知数据进行匹配来辅助搜索数据库36中所存储的数据项。这样的比较和匹配可以使用多种技术中的任意一种技术。此外,接收到的信息与传统上作为文本信息输入或通过对呈现给用户的目录进行选择而输入的搜索查询信息类似。图像处理单元37使得系统10能够处理基于图像的查询。在一个实施例中,接收到的图像信息对应于数据项信息(例如,产品信息)。另外,接收到的图像信息可以对应于非特定的项目,例如,被识别并且之后被呈现给请求人的项目目录。在用于搜索信息资源的搜索机制(例如,搜索引擎)的质量用响应于搜索查询来向用户(例如,搜索请求人)返回感兴趣的搜索结果的能力来测量的情况中,图像处理单元37极大地扩展了请求人可以作为搜索对象提交的信息类型和信息特异性。例如,搜索机制可以利用包含覆盖比用户的兴趣更宽的范围的数据项的搜索结果来对用户的查询进行响应。传统上,用户之后可以通过对查询增加附加约束(例如,关键字、类别等等)来缩窄搜索结果中的数据项的数目进行实验;然而,这样的实验可能是费时的并且使用户灰心。为此,在许多情况中使用图像信息来提供对所需要的项目的准确的并且常常是唯一的识别。继续图1的系统10,信息存储和检索平台12包括在(一个或多个)应用服务器28内的模块30,其中,在图2中更详细地描述了模块30。模块30可以包括软件模块或至少部分地以软件实现的模块的功能。软件可以使用灵活的编程语言来开发,例如,Java。是由SunMicrosystem开发的面向对象的编程语言。根据设计和目的以及系统开发人员的判断可以使用其它语言和开发工具。如图所示,模块30包括接收器40,其用于例如通过网络14从系统10内的实体接收图像和其它信息。模块30内还包括通信协议单元42,其用于根据一个或多个通信协议来接收、处理和发送消息。在一个示例中,通信协议单元42处理GET-POST消息。在该示例中,超文本传输协议(HTTP)被用来在互联网上公布和检索文本页面。如今HTTP允许用户生成大量执行各种任务的请求。例如,可以生成用于获取位于远程服务器的某些文件的元信息的请求。HTTP的两种基本的请求类型是GET和POST。GET请求将数据编码成统一资源定位符(URL),而POST请求出现在消息本体中。URL标识参与者在HTTP通信中的位置。一般,GET请求涉及检索或“获得”数据,而POST请求则不限于此,应用于存储数据、更新数据、发送电子邮件、订购产品或服务。GET请求在URL中嵌入请求的参数作为参数值对。所产生的URL的一个示例如下:HTTP://www.site.com/get.cgi?name=John&zip=012345.POST请求需要请求本身中的附加空间来编码这些参数。在希望或需要许多参数或值时,附加空间被充分利用,但是,大量参数会过于庞大而无法直接嵌入到URL中。例如,在将文件的内容从浏览器转送到服务器时,POST请求被使用。继续参考图2,还包括电子邮件模块46和邮件客户端48。电子邮件模块46提供由系统用来与客户端进行交互的电子邮件应用。电子邮件协议是用于收发电子邮件消息的方法。邮局协议(POP)协议为用户提供通过传输控制协议(TCP)/互联网协议(IP)型互联网连接从远程服务器下载电子邮件消息的简单标准的方式。类似地,简单邮件传输协议(SMTP)协议是允许通过互联网转送电子邮件消息的协议。通过SMTP协议发送的每个消息可以包含多个接收方和各种文本数据,以及其它编码后的对象。这些编码后的对象可以包括图像、文档等等。邮件客户端48允许来自诸如电子商务应用之类的其它应用内的通信。这样,当在应用的操作期间出现问题时,应用能够向应用的当前用户直接发送信息。此外,用户被提供了与应用直接通信的方式。在一个示例中,邮件客户端48被用来实现应用的代表和应用的用户之间的聊天会话。此代表可以是被预先编程以对各种通信进行响应的自动化代表或机器人代表。模块30还包括版本控制44和工具50。版本控制44使得编程人员可以将文件保持在中央位置中,使得有关给定项目的所有编程人员可以同时针对一组代码工作。在一个示例中,并发版本系统(CVS)版本控制软件被用来跟踪变化和虑及向先前的文件状态的还原。工具单元50提供用于建立应用的开发工具和软件,以扩展或增强图像处理能力。在一个实施例中,工具50包括在服务器上运行的Java小服务程序或其它程序。由于本示例实现Java工具,所以关于Java应用和工具使用的某些术语是详细的。Java小程序是作为单独的文件与诸如如网络页面之类的HTML通信一起发送的小程序。通常,Java小程序往往运行于客户机上并且使能服务。Java小程序服务例如可以执行计算、响应于用户交互来定位图像、处理数据等等。在联网的计算系统中,某些应用和程序驻留在中央服务器中,包括使得能够基于来自客户机的用户输入来访问数据库的那些应用和程序。通常,这样的应用和程序使用公共网关接口(CGI)应用来实现。然而,当Java应用正运行于服务器上时,这些应用和程序(即,Java小服务程序)可以使用Java编程语言来建立。Java小服务程序在应付大的数据量和繁重的数据流量时特别有用,因为它们往往比CGI应用执行得更快。不是调用单独的进程,而是,每个用户请求作为单个进程中的“线程”或后台程序(daemon)被调用,从而减少用于每个请求的系统开销量。替代用于指定CGI应用的名称的URL,用于调用Java小服务程序的请求如下:HTTP://www.whatis.com:8080/servlet/gotoUrl?HTTP://www.someplace.com其中,URL中的“8080”端口号将请求直接发送给网络服务器。URL中的“servlet”指示向网络服务器指示小服务程序被请求。Java小服务程序技术使得开发人员能够飞速地生成网络内容。例如,ApacheTomcat是可以用来部署和测试Java小服务程序的应用服务器。(一个或多个)应用服务器28等待HTTP请求并且运行负责处理所接收到的GET或POST请求的Java小服务程序中适当的部分。Java方法生成响应,这些响应继而被(一个或多个)应用服务器28用HTTP通信转送给客户端。这些响应一般包括使用HTML或XML标签的纯文本数据,但是也可以用来转送诸如图像和档案文件之类的非纯文本文件。XML是使得用户可以限定用于描述任意领域的数据的自定义标签的标记语言。其主要用于经由互联网在不同的系统之间交换信息。XML文档用于各种类型的数据的组织、存储和传送。XML元素包含开始和结束标签以及包含在其中的所有信息,这些信息可以是更多XML元素或者是文本数据。以下是XML文档的一个示例:其中,<Staff>元素包含两个雇员(employee)元素,并且每个<Employee>标签包含每个雇员的不同描述,包括被包含在<Name>和<Salary>标签中他的姓名和薪水。在该示例中,XML文件可以用来存储和传送有关公司的职员的信息。其它工具包括各种开发应用。在一个实施例中,诸如由ApacheSoftwarFoundation开发的之类的集成开发环境(IDE)被用来开发Java软件。另外,可以为Eclipse平台写插件来扩展开发能力,从而使得可以使用其它编程语言。在图3A中示出与系统10类似的系统100的示例设计,其具有三层:用户层102、系统层104和图像API层106。用户层102包括邮件客户端110、移动客户端114和网络接口112。每个模块提供功能和通信处理。系统层104包括电子邮件生成器116和HTML生成器118。注意,替换实施例可以实现其它通信协议,并且这里提供HTML作为一个示例。另外,HTML生成器118还可以用于实现不止一种通信或传输协议。图像API层106包括图像服务120。不同的层102、104和106根据预定的关系和所达成的通信协议来进行通信。在一个示例中,系统100的用户层102是使用来自系统层104的应用或与图像API层106直接通信的端用户应用。根据本示例,用户层102的主要组件包括使用移动电话接口的电子邮件接口(例如,加利福尼亚州库珀蒂诺的Apple的Apple)以及使用标准网络浏览器的网络接口。使用AppleiPhone的电子邮件接口包括:使用所集成的相机和原有的电子邮件和网络应用的组合来将附加的图像用电子邮件传送到系统层104。然后AppleiPhone接收回包含该请求的结果的电子邮件。网络接口使得用户可以上载文件,选择要执行的功能和/或选择搜索目录。之后,请求被直接发送到图像API层106,并且浏览器接收指示搜索/匹配结果的XML响应。如图所示,用户层102的邮件客户端110和移动客户端114向系统层104的电子邮件生成器116发送电子邮件和从其接收电子邮件。当前的移动电话模型(例如AppleiPhone)使得用户除了可以简单地进行电话呼叫和发送短消息服务(SMS)消息以外,还可以执行各种任务。这些任务包括但不限于拍摄图片、收听音乐、收发电子邮件、观看视频、浏览互联网等等。尽管许多移动电话包含这些特征,但是这些特征中的许多特征从它们的配对计算机而被缩减,以在移动电话环境内恰当地运行。将这些特征应用于移动电话的考虑包括更低的处理器、更窄的带宽和更小的屏幕。由于这些限制,可由在线计算机用户利用的许多服务必须被缩减以利用移动装置恰当地工作。这可以通过创建具有较低带宽需求的网页或通过缩减文本和图像的尺寸来适应较小的屏幕来完成。为了充分利用该移动领域的优点,要考虑移动听众来设计系统。继续参考图3A,用户层102的网络接口116将HTTP请求发送给系统层104的HTML生成器118。作为响应,HTML生成器118将HTML内容发送给网络接口116。网络接口116是用于与各种应用通信的用户接口,例如图形用户界面(GUI)。用户层102也通过发送HTTP请求来与图像API层106通信;然后,XML响应从图像API层106被发送到用户层102。当用户层102直接向图像API层106发送图像处理的请求时,该请求以专用于图像API层106的API的格式发送。这样,图像服务120能够理解所请求的服务,并且能够检索要对其执行服务的图像数据。对于这样的直接通信,格式化的数据被添加到图像数据。实际上,在图像数据上布置有包装(wrapper),该包装向图像服务120提供根据请求来检索图像数据和进行处理所要使用的足够的信息。系统层104通过从用户层102接收诸如电子邮件和HTTP请求之类的消息,将接收到的消息翻译成用于图像API层106的格式来使能针对图像API层106的用户友好型界面,并且还可以对其中所包括的图像数据执行初始处理。在一个实施例中,图像API层106从系统层104接收HTTP请求并且又利用XML响应进行响应,然而,也可以实施可替换的通信协议。作为接口、翻译和处理层,系统层104通过从用户层102接收各种格式的信息来促成容易的通信和提高效率。因此,系统层104使得用户层102可以以减少的时间量来进行多个调用。另外,系统层104虑及请求的并行处理和成批图像对象的批量上载。在所提供的示例中,系统层104在消息中接收包括图像数据和图像对象的信息。也可以实施可替换的通信协议和技术。在从层102接收到图像数据之后,系统层104将图像数据封装到包装中并且将包装好的图像数据发送给图像服务。该包装向图像服务120提供处理指令。处理指令可以包括选择由图像服务120提供的多个服务中的一个服务,例如用于读出条形码或图像对象的OCR的服务。在一个实施例中,处理指令提供有关如何处理图像数据的更详细的内容。例如,处理指令可以指定所希望的分辨率或在处理图像数据时要应用的特定技术。在可替换实施例中,在与图像数据请求分开的附加消息传送中提供处理指令,其中,标识符被用来将处理指令对应于图像数据。在一个示例中,当用户层102向系统层104发送请求图像处理服务的消息时,系统层104对接收到的消息施加一组规则。这些规则提供有关如何处理接收到的消息的指导。这些规则可以指示系统层104解析该消息来检索图像数据或图像对象。这些规则还可以指示系统层104如何识别消息中所包含的信息的类型以及如何识别图像处理指令。另外,系统层104可以在将图像数据进行格式化并发送给图像API层106之前附加上附加信息。通过充当用户层102和图像API层106之间的联络层,系统层104维护用户层102与图像服务120之间的一致通信,因为图像API层可能由于不同通信协议的升级、增强或实施而改变,而用户层102能够针对图像处理请求继续使用相同的格式。这样,系统层104与图像API层106之间的通信平台可以在不改变用户层102与系统层104之间的接口的情况下改变。图像API层106将用户层102或系统层104连接到各种图像服务,例如图像处理单元37的图像服务。图像API层106通过HTTP请求被访问并且使用XML文件进行应答。图像API层106响应于接收到的请求来执行各种图像服务。另外,每个XML响应因由用户或由图像API层106选择的图像服务而不同。图像API层106和图像处理单元37相结合提供光学字符识别(OCR)和图像比较服务。OCR是计算机科学中处理将可视呈现的原文(textual)信息(扫描的图像、照片等)转换成可使用的计算机格式的领域。OCR服务可以用于从图像中提取文本和/或从图像中提取条形码数据。图像比较服务接收图像并且返回与接收到的图像类似的另一些图像的URL集合。图像API层106向各种图像服务提供接口并且使得服务可以通过HTTPGET和POST调用连接到图像服务并接收XML响应。另外,系统100处理这样的电子邮件通信,它们被设计为接收附加了或包括了图像的用户电子邮件、开始图像处理并且对用户进行响应。用户可以指定所请求的特定处理,或可以仅仅提供图像或图像的集合作为搜索查询。系统层104包括用于将用户连接到图像API层106的应用,使得在许多情况中,用户层102避免与图像API层106直接相接口。系统层104处理来自用户层102的请求,将该请求转发给图像API层106。之后,系统层104从图像API层106接收XML响应,解析数据并且以可以被用户层102处理的方式格式化数据。这可以使能对数据的更强健的格式化,确保用户层102不必直接从API层接收所有数据并进行格式化。系统层104包括用于电子邮件的内容生成器,其接收发送到专门地址的电子邮件,创建基于HTML的电子邮件响应,并且将其发送回用户的电子邮件地址。图像API层106是图1的图像处理单元37的应用接口。如上所述,图像处理包括在图像文件和元数据(例如,项目种类)中所要进行的比较处理并且返回与接收到的图像类似的图像的集合。在一个示例中,比较基于颜色、形状和纹理,并且能够将给定的图像与来自小的种类集合的预先散列(pre-hash)的图像集合相比较。示例的种类可以包括:女包、女装和鞋子。该系统包括Java实现的图像比较算法。一个示例实施例考虑三个产品种类(例如,衣服、鞋子和包)并且使用形状、纹理和颜色来确定给定图像与数据库中所存储的多个预先散列的图像中的每一个之间的相似性距离。相似性距离标识接收到的图像数据或图像对象与产品数据库中相同或类似种类中所存储的那些图像数据或图像对象的许多相同特性或参数。相似性距离计算可以对这些特性或参数中的一个加以比其它更大的权重。在确定相似性距离之后,结果检索到的具有相似特性的图像集合作为报告被发送回。该示例实施例结合用于图像API层106的图像API的图像比较的Java代码。如图3A中所示,用户层102、系统层104和图像API层106这三层相互通信来辅助根据支持各种系统和服务的实施例和配置的图像处理。各个层可以分布在系统(例如,系统10)中,或可以一起被结合和配置到一个或多个单元中。图3B图示出系统101的可替换实施例,其中,用户层107、系统层105和图像API层103驻留在诸如计算装置或移动装置之类的客户端装置中。图像API层103以与图像API层106类似的方式运行,除了提供用于通信的API,还包括图像处理功能。用户层107、系统层105和图像API层103这三层还通过服务API层109与服务通信。服务可以是电子商务服务、商业服务、分布式计算网络服务、移动服务等。这样,由用户层107提供的图像被处理以供通过服务API层109来访问服务。在一个实施例中,服务是基于电子商务拍卖的服务,其中用户通过图像API层103输入产品图像信息,例如条形码或照片。图像信息在图像API层103内被处理并且通过联网的通信提供给服务API层109。在另一类似的实施例中,图像信息用电子邮件发送给通过服务API层109访问的服务器,其中,电子邮件包括处理后的图像信息。来自服务API层109的响应可以例如使用互联网协议(IP)通信或通过向与图像API层103、系统层105和用户层107之一相关联的电子邮件地址发送电子邮件而被直接发送。在图4中图示出图像处理单元37的示例。包括图像比较单元120、图像压缩单元122和OCR单元124。图像控制器126接收用户选择和请求,并且图像缓冲器128存储图像文件。图像缓冲器还可以存储用户选择、处理细节以及通过图像处理单元37内的处理生成的结果文件。另外,在图像处理单元37中还有用于从接收到的条形码图像中识别产品信息的条形码处理单元129。在系统设计的一个示例中,图像比较服务用于发送和接收具有附件的电子邮件消息。诸如电子邮件生成器116之类的电子邮件检索系统可以是周期性地检查专门的电子邮箱中的电子邮件消息的持续运行的程序。在电子邮箱处接收到一个或多个消息之后,系统按照接收的顺序连续处理每个消息。在消息处理期间,每个消息被检查主题行内容和兼容的图像附件。例如,当消息的主题行中包含兼容的项目种类时,电子邮件生成器116使用该信息来进行图像比较和匹配。具有此主题行内容的电子邮件通常也包含图像或附加了图像文件。当包括了和/或附加了一个以上图像时,所遇到的第一个图像最先被处理。所遇到的第一个图像可以是附加图像的列表中的第一个图像。图像比较单元120使用每个图像来查找(一个或多个)图像数据库130中所存储的类似的图像。可能会找到许多类似的或兼容的图像。所使用的数目可以由图像处理单元37来预先确定和指定,或者可以由请求人指定。一旦被识别,与类似的图像相关联的URL被编译。类似的图像的数目可以是与接收到的图像最兼容的前5个图像。编译出的类似图像的列表以及其详细的信息经由电子邮件生成器116被发送到用户层102。图像的列表可以包括在电子邮件中并且可被生成为文件并被附加到电子邮件。电子邮件被发送到进行请求的电子邮件地址。然后,原始请求人可以看到包含与最初发送的图像最兼容的前5个图像的电子邮件。回到图3A,用户层102和系统层104两者都能够与图像API层106通信,根据一个示例,图像API层106使用HTTPGET或POST请求被访问。图像API层106根据请求人所指定的请求来使能对接收到的图像的处理。所指定的请求称为图像服务请求。注意,例如在实现自动化处理的情况中,请求人可以是机器。在一个示例中,机器通过搜索满足至少一个标准的所有贸易网站来作业。在该情况中,图像服务请求被自动生成,并且结果被存储并根据用于实现目的的算法和编程来处理。类似地,请求可以来自图像处理单元37内的图像服务,例如OCR单元124,其可以从(一个或多个)数据库36请求数据以供处理和存储在(一个或多个)图像数据库130中。响应于这些请求,图像API层106返回包含所请求的数据的XML文件。图像API层106包含多个小服务程序,每一个涉及至少一种类型的图像服务,例如图像压缩和OCR。API小服务程序可以通过HTTPGET和POST请求来调用。GET请求的一般格式如下:HTTP://<nameofserver>:<serverport>/<servletfolder>/<servlet>?method=<nameofmethod><otherparameters>.字段“nameofserver”和“serverport”指的是存储小服务程序的服务器;字段“servlet”指的是正被使用的小服务程序的名称;而字段“nameofmethod”指的是所要使用的具体方法。其它参数特定于每个方法。这里使用的方法可以是GET请求的接收方所要执行的操作或功能。方法可以涉及对与图像类似的产品的搜索。一种方法可以用于搜索具有与图像的颜色相似的颜色的产品。另一种方法可以用于搜索具有与图像的形状类似的形状的产品。另一些方法可以指示图像服务120读出条形码、提取文本或对图像执行OCR。因此,在该上下文中,方法是由图像服务120提供的功能。例如,OCR小服务程序包含三种方法:条形码、文本和barcodeGetltems。条形码方法接收URL或条形码的图像或包含条形码的图像,其中,条形码方法返回与条形码相关联的整数串。该方法还接受URL或包含文本的图像,其中,该方法返回由OCR单元124产生的文本串。文本串包含在图像中检测到的文本。barcodeGetltems方法接受URL或条形码的图像或包含条形码的图像,其中,barcodeGetltems方法返回具有与接收到的图像相同的条形码的项目的列表。barcodeGetltems方法还接受使得用户可以指定结果的类型以及需要多少结果的可选参数和计数。如果没有给出参数或参数计数,则默认数量的项目被发送回。示例输入和输出如下。A.条形码方法:GET请求:B.文本方法:GET请求:C.barcodeGetltems方法:GET请求:其中,SimilarImages小服务程序包含称为getSimilarImages的方法。getSimilarImages方法接受要被比较的项目的URL或图像、图像中的该项目属于的种类,并且返回与给定的图像类似的eBay项目列表。由于当前的系统使用预先散列的图像而不是实时(live)的eBay图像,所以当前仅有预先散列的图像的图像URL被返回。示例输入和输出如下:D.getSimilarImages方法:GET请求:HTTP://d-sjc-dgolovnya:8080/imageServiceAPIServlets/SimilarImages?method=getSimilarImages&count=5&category=Womens%20Bags&url=HTTP://d-sjc-jeolson:8080/purse.jpg响应:<rspstat=″ok″><items><item>HTTP://d-sjc-dgolovnya:8080/Images/eBayWomensBags/26041904904.jpg</item><item>HTTP://d-sjc-dgolovnya:8080/Images/eBayWomensBags/12043680357.jpg</item><item>HTTP://d-sjc-dgolovnya:8080/Images/eBayWomensBags/110162411181.jρg</item><item>HTTP://d-sjc-dgolovnya:8080/Images/eBayWomensBags/304030945.jpg</item><item>HTTP://d-sjc-dgolovnya:8080/Images/eBayWomensBags/3041260162.jpg</item></items></rsp>如图3A中所示,电子邮件生成器116负责检查新的电子邮件消息,处理这些消息并且向发送人返回响应消息。处理开始于由电子邮件生成器116使用和控制的电子邮件应用的启动。专门的电子邮箱被周期性地(例如每5秒)检查新的邮件。电子邮箱检查可以在事件发生(例如响应于在图像API层106处接收到请求)时被执行。当新的邮件被检索到时,发送人信息、主题行数据以及所包括或所附加的图像数据从每个电子邮件消息中被提取出。在被提取出之后,图像数据被保存到运行电子邮件生成器116的服务器上。到图像的链接与对图像API层106中的小服务程序做出的GET请求一起被发送。当接收到没有图像的电子邮件时,错误消息被发送给发送人。类似地,如果主题行不包含针对图像处理指定的格式的信息,则错误消息被发送。在一个示例实施例中,当接收到具有多个图像的电子邮件时,第一附加图像被处理并且其它附加图像被忽略。当接收到的电子邮件既包含有效的图像文件又包含有效的主题行时,对图像API层106中的小服务程序作出GET请求;具体的小服务程序在电子邮件的主题行中指定。在请求作出之后并且电子邮件生成器116从API小服务程序接收回响应,电子邮件生成器116处理接收到的信息来生成和输出结果。用户层102的实现对于不同实施例可以不同。例如,一个实施例使用电子邮件网络界面(例如Google的Gmail)、移动通信界面(例如,Apple的iPhone的电子邮件界面)和自定义网络界面。在操作中,用户可以通过向专门的电子邮件地址发送电子邮件来访问系统层104和图像API层106。这可以直接从移动通信界面完成,例如,从iPhone电子邮件界面完成,从而提供使用图像服务的便利性和灵活性。之后,用户从系统接收包含基于图像的查询的结果的响应。移动装置上运行的可替换的电子邮件界面和客户端应用可以以类似的方式通信。对于具有电子邮件界面的网络界面,也可以使能类似的处理。另外,系统层104包括提供网络接口的HTTP生成器118。HTTP生成器118直接对图像API层106进行GET和POST调用,并且接收XML响应。如图3A中所示,用户层102中的网络接口112向HTTP生成器118发送HTTP请求。在请求被接收到之后,HTTP生成器118处理该请求,这通常包括用于辅助图像服务120的图像处理的与图像API层106的通信。在处理请求之后,HTTP生成器118将响应以HTTP内容的形式发送给网络接口112。图像API层106和图像服务120提供各种图像处理服务。一种示例图像服务是OCR,其具有使得图像API层106接受任意文本源(例如,书的封面、文本页面、产品标签等)的图像文件的能力,所述图像文件可以仅是文本或者可以包含项目的条形码。图像API层106调用OCR程序,例如命令行程序,将图像文件作为参数给与该程序。当OCR程序结束时,图像API层106接收通过OCR产生的输出串。诸如ApacheTomcat之类的应用服务器可以用来托管图像API层106中的小服务程序。为了将这些小服务程序披露给客户机,诸如ApacheFoundationSoftware的EclipseEE之类的IDE可以用来支持网络项目开发。在一个实施例中,IDE在配置文件中维护修改的或增加的Java类或条目的日志。然后,IDE可以输出所开发的项目作为WebApplicationArchive(WAR)档案文件。为了完成系统100的最终实现,电子邮件生成器116和API小服务程序各自在单独的计算机上运行。这确保运行小服务程序并且还通过OCR程序或图像比较算法中任一者来处理图像的计算机专用于该任务,并且不必同时检查电子邮件。这实质上使得系统的每一层与其它层相互完全分离,从而允许更多的灵活性。API小服务程序可以驻留在系统层104中或在图像API层106中。另外,当从用户层102向图像层106调用时,API小服务程序也可以驻留在用户层102中。在一个示例实施例中,系统100被用来基于图像自动生成项目或服务的公布。例如在电子商务系统中,此公布可以是广告、产品列表或拍卖列表。图像可以是产品的图片或标识与产品相关联的信息(例如,条形码、序列号或唯一标识符)的图像。图5图示出用来生成用于电子商务系统(例如,拍卖系统)的列表的商用工具模块521。图像被发送给由商用工具模块521实现的公布系统。在示例实施例中,商用工具模块521包括显示模块522、产品模块524、调度模块526、价格模块528和质量模块530、批量上载器504、解复用模块506、逻辑模块508、非易失性存储器514、状态机512和定时模块510。在商用工具模块521外部可以有用户输入模块520和至少一个企业资源计划(ERP)系统518。注意,一个以上ERP系统518可以通过批量上载器504馈送到商用工具模块521中。图5中还示出批量馈送502,其提供用于从ERP系统518和其它数据库519提供批量上载到商用工具模块521的路径。ERP系统518也可以是包括与有关基于网络的交易市场或其它电子商务系统的列表相关的数据的电子数据表或其它形式的数据库。批量上载器504可以从ERP系统518和/或其它数据库519接收产品信息。多个ERP系统518和/或数据库519可以馈送到批量上载器504。批量上载器504可以通过确保从ERP系统518接收到的数据与用于具体的基于网络的市场或交易平台的字段格式相匹配来检查数据的完整性,并且在完成完整性检查之后,可以将接收到的数据输入到数据聚合器或解复用模块506。在一个实施例中,批量上载器504是单独的用于访问和跨越多个基于网络的交易环境的多个数据库相关联的存货(inventory)并对其执行完整性检查的模块。在另一实施例中,批量上载器504例如可以通过以下方式来接收有关产品信息的输入:使用数字爬取技术(digitalspideringtechnique)在数据库或网站中自动爬行;或者从销售商处的至少一个数据库检索产品信息并且自动应用至少一种口令访问算法。所述产品信息可以包括诸如照片之类的图像数据、示图或其它图像,并且可以包括条形码或其它唯一标识符。批量上载器504可以自动访问和输入口令信息来获得对大容量销售商的多个数据库的访问,并且可以周期性地进行爬取或搜索来确定是否已存在由具体的大容量销售商添加的新数据库,其中,新的信息将被编入索引并且被周期性地监视以用于将产品信息通过批量上载器504上载到商用工具模块521中。在一个实施例中,用户可以通过经由输入装置(未示出)手动地输入数据来在用户输入模块520中输入信息,以设置产品、列表或图像的一个或多个特性。在另一个实施例中,用户输入模块520接收有关至少一个所定义的特性的输入并且根据包括利润、损失、收入、季节性偏好和列表效果的群组来跟踪测度(metric)。在解复用模块506从批量上载器504接收到数据之后,解复用模块506将从ERP系统518上载到商用工具模块521中的单个文件解析成各个产品507,以用于发送给解复用模块506和逻辑模块508以供处理。解复用模块406被包括以用于说明,并且其它实现也可以不包括解复用模块506。可替换实施例可以采用用于将具有多个产品的表格分离成各个产品的操作。在逻辑模块508接收到有关各个产品507的数据之后,逻辑模块508使用非易失性存储器514和状态机512来指派和布置各个产品507。各个产品(或列表)507基于显示模块522内的一个或多个特性被指派或布置。特性可以由系统100确定或者可以由用户选择或输入。另外,各个产品507可以利用产品模块524、调度模块526、价格模块528或质量模块530来被布置。逻辑模块508可以自动地向具体的列表指派特性。参考图6来更详细地描述逻辑模块508在执行用于准备所要列出的项目的各种功能时的操作。在一个实施例中,逻辑模块508可以是这样的预先列表管理逻辑模块,其接收多个所定义的特性并且包括所定义的特性中的至少某些定义的特性来准备新列表。在示例实施例中,用户输入模块520使得特定的用户可以调度列表并且选择特定的特性,以用于应用于从解复用模块506接收到逻辑模块508中的一个或多个列表5071到507n。在可替换实施例中,用户输入模块520包含基于客户端-服务器的用户界面,例如通过互联网通信的独立应用,特定的用户从该用户界面输入他们想在从ERP系统518上载的特定列表上看见的标准或特性。例如,标准可以基于模块522、524、526、528和530中的每一个模块内预设的属性,例如,显示、季节、持续时间等等。非易失性存储器514可以存储一个或多个产品5071到507n。例如,非易失性存储器514可以在逻辑模块508已将具体的特性与一个或多个5071到507n相关联之后,存储产品的列表。这样,逻辑模块508将各个产品与用户预先定义的属性相关联。继续参考图5,逻辑模块508可以耦合到示例报警模块509和定时模块510。报警模块509可以向与商用工具模块521通信的用户发回警报。例如,警报可以包括上载警报中的错误、不一致特性关联警报、用户输入警报等等。在另一实施例中,报警模块509可以自动通知销售商:显示模块522、产品模块524、调度模块526、价格模块528或质量模块530内的多个特性中的至少一个特性由于特性与列表之间的关联错误而不相关联。定时模块510可以接收相关联的产品。另外,定时模块510也可以准备要在基于网络的市场环境中被发起的列表。通过将分时段的元素与每个列表相关联,定时模块510生成分阶段的列表516。例如,定时模块510可以标识或限定具体列表在何时被实时呈现给市场的用户、列表要在市场中被维护多长时间,等等。定时模块510生成被上载到市场环境的分阶段的列表516。定时模块510也可以使用抖动(jitter)应用来对各个列表应用分时段的抖动,例如在对于相同产品的许多列表具有不同的开始和结束时间的情况中。这创建了时间抖动列表。分时段的抖动是列表要开始或结束随时间的变动,使得相同产品的多个列表以略微不同的时间列出或开始,从而使得潜在的购买者有多个机会来购买特定类型的产品。这多个产品或相同产品的多个列表可以被上载到系统以由大容量销售商进行这样的处理。例如,考虑拍卖交易电子商务市场上10个窗口小部件(widget)的销售,其中,所有10个窗口小部件被分别列出,并且被调度为隔数分钟或数小时开始和结束。这使得购买者有多个机会提交成功的出价。在图6中示出逻辑模块508的细节,其中,逻辑模块508包括复用器600、计划模块606、布置模块602和选择模块610。复用器600例如从显示模块522、从项目模块524、从调度模块526、从价格模块528或从质量模块530接收特性信息。特性信息可以包括产品细节、条形码信息、唯一的标识信息、数据库存储标识信息、存货标识信息等等。特性也可以是图像数据的特性,例如颜色、尺寸、文本格式、文本字体等等。复用器600可以在将不同的特性信息组合聚合为应用于特定列表之后,将信息传递给布置模块602。替代复用器600或在复用器600以外,可替换实施例实现可替换操作来将从多个模块接收到的特性信息组合到由布置模块602使用的表格中。布置模块602可以布置在列表可以被市场环境的用户使用时如何显示具体特性。逻辑算法可以自动地确定如何布置列表以及如何为用户显示列表。在一个示例中,计划模块606可以从解复用模块506接收信息,例如,各个产品5071to507n,并且自动地确定在列表或详细页面中应包括什么信息。信息可以包括列出哪些项目、列出什么特性、列出哪些具体项目、项目统计等等。布置模块602和计划模块606可以通过协调哪些具体属性和特性将与具体列表相关联来进行通信。该信息之后可以被提供给选择模块610来准备用于发送给定时模块510的列表。这样,销售商限定数目的项目可以在所选择的日期变成活动的或者被列出,并且以错开的方式,针对第二用户限定数目的项目在另一天变成活动的。如上所述,诸如支持基于图像的搜索之类的图像处理服务包括使用用于收发特别格式化的电子邮件的接口(例如API)来搜索类似的图像。图像处理服务可以扩展到使用产品的数码照片、产品信息、条形码、产品标识符等的基于图像的搜索。可替换实施例可以包括根据涉及的具体应用和产品而配置的这些图像处理服务中的一个或多个。移动、无线和蜂窝技术扩展了网络能力,使得用户可以在保持与互联网的连接的同时自由移动。移动装置具有分辨率不断增大并且具有高速数据传输的内置相机。通过对移动技术应用一个或多个图像处理服务,用户可以通过拍摄照片并且将其作为附件发送至具体URL地址、电子邮件地址、IP地址或电话号码,来从诸如eBay拍卖之类的市场站点检索活动的列表。在一个实施例中,用户经由电子邮件来传送该图像信息,这是因为普遍能够使用POP和SMTP客户端软件,POP和SMTP客户端软件可用于各种操作平台,包括用于移动装置的无线操作系统,这些移动装置例如是PDA、蜂窝电话和其它无线装置。在另一应用中,各种算法被开发用于查找与输入的图像信息类似的图像。这些算法分析接收到的图像并且基于诸如给定图像的形状、颜色和纹理之类的特性来产生结果。注意,在一个实施例中,图像信息被输入到商用工具模块521中,该信息在商用工具模块521中根据特性和其它标准被处理,并且映射到产品的结果信息被存储在产品数据库622中。图7图示出用于从输入的图像数据中识别产品的方法。方法700开始于702的捕获图像信息,例如在用户拍摄对象的照片或图片以与产品匹配时开始。在704,利用图像创建消息,例如,其中,所捕获的图像被包括在所创建的并且地址为指定账户的电子邮件中。一个实施例使用专门的电子邮件化名以易于访问。照片可以被包括在电子邮件中或者可以作为附件与电子邮件一起被发送。类似地,消息可以是以通信协议发送的消息,例如HTTP消息。在一个实施例中,该方法之后在706确定照片中对象的种类。确定种类可以是自动化的处理,其中,种类基于图像数据的特性或参数来选择,或者确定可以作为指令被发送。这样的指令或信息可以作为电子邮件或HTTP消息被发送,并且可以与图像数据或数据对象一起被包括,或者可以作为单独的消息被发送。种类的确定可以响应于用户选择或项目种类指定。种类有助于定位相对应的产品。种类可以作为电子邮件的主题行中的命令来提供(其遵守简单命令语言规则),或者可以用预定的信令协议来传送。例如,用于标识种类“女包”中的图像的命令可以如下给出:imagecompareWomensBags其中,请求电子邮件结构被给出为:from:DenisGoldento:erl-image-servicemarketplace.comdate:Wed.Feb.27,2008at10:33AMsubject:imagecompareWomensBagsmailedby:mailprogram方法700继续到708,将该消息发送给图像处理服务。注意,如图3A中所示,该消息可以直接发送到图像API层106或可以经由系统层104发送。在任一情况中,在712,消息被解析以确定所请求的图像服务的类型。当消息被发送到系统层104时,在714,该层翻译该消息以生成与图像API层106的API格式一致的输入。这是可选的步骤,在消息被直接发送到图像API层106时不需要该步骤。系统层104用于接收包括图像数据和图像请求的电子邮件。这有助于用户层102与图像处理服务120之间容易的通信。在检测到发送到正被监视的账户的新电子邮件时,信息从电子邮件的主题行中被提取出,并且作为响应,适当的算法被识别并被运行。之后,该请求被发送给图像API,在716,图像在此根据该请求被处理。使用系统层可用的图像API避免让用户建立或实现具有图像处理的UI。在图像服务被确定之后,该方法根据所选择的图像服务来处理图像数据。例如,该方法可以将对象图像和产品数据库比较来识别匹配。在本示例中,匹配指示要被呈现给对查找这样的产品感兴趣的用户的待售对象或产品。之后,在718,该方法根据所选择或所确定的种类将图像与产品数据库进行比较。在检索到产品信息之后,在720,报告被提供给请求人。报告可以提供与和图像有关的一个或多个产品相关联的标识符、与这样的(一个或多个)产品相关的信息的详细页面或用于定位和识别该产品的其它信息。该报告还可以建议与图像相关的其它种类的产品。图7的方法可以扩展为包括下面参考图12描述的欺诈检测方法。相应地,该图像可以与产品数据库相比较来识别欺诈性的产品或信息。在图8中图示出针对被输入用于图像处理的接收到的对象131的图像处理的示例,例如根据图7的方法,该方法搜索女包种类中的类似图像。在进行比较并且找到类似对象之后,图像的列表141被提供给请求人。响应可以具有与市场网站相同的样子和感觉。响应电子邮件显示在数据库中找到的前5个类似图像。如上所述,图像处理服务的另一应用是条形码的光学识别。请求人提交图像信息,例如条形码的照片。如图3A中所示,条形码信息从用户层102递送到系统层104,系统层104之后与图像API层106接口来开始图像处理服务。在条形码被识别之后,系统层104请求图像API层106例如从产品数据库或从活动的拍卖信息中检索与条形码相对应的项目。使用这种方法,用户不需要提供附加信息(例如电子装置的品牌或型号)来获得同种项目的列表。系统层104管理与图像处理服务的所有通信,包括复杂的市场专用通信和调用以及利用OCR处理的界面连接。端用户仅向系统发送电子邮件并且获得包含到活动的eBay拍卖的链接的回复。请求的电子邮件可以包含条形码的图像以及适当的主题行。主题行可以是以下格式,包括:barcodeitems其中,请求电子邮件结构被给出如下:from:DenisGoldento:erl-image-servicemarketplace.comdate:Wed.Feb.27,2008at11:23AMsubject:barcodeitemsmailedby:mailprogram在图9中示出附加的条形码扫描图像的示例。在该情况中,条形码151对应于流行小说。结果153被提供给用户作为与该条形码信息相对应的项目集合。在一个实施例中,结果包括与和该条形码相关联的书有关的其它书。当新的电子邮件被接收到时,图像处理信息可以被包括在电子邮件的主题行中。图像处理使用字符识别应用来识别与主题行相关联的指令或命令。继续方法700,在712,将对象图像(在该情况中为条形码)与产品数据库中的产品进行比较来检索特定项目。响应包括与该条形码匹配的项目的列表。响应可以作为具有标题、当前出价以及各种市场活动和状态的其它相关数据的电子邮件而被提供。之后,用户接收响应电子邮件,在响应电子邮件中,用户能够选择项目或点击图像,这些项目或图像被直接重定向至针对项目或产品的市场销售商页面。该过程可以是自动的并且允许登录和对感兴趣的项目出价。另外的示例实施例可以包括在搜索类似的图像时与实时拍卖协作的能力。这样,图像API可以实时操作,监视用户的活动,以将用户的活动包括在图像处理步骤的至少一个步骤中。例如,用户的活动或历史可以指示要从中选择呈现给用户供选择的减少数目的种类。类似地,用户的活动可以提供有关如何扩展项目搜索的信息。根据一个实施例,大容量市场实现若干专用服务器来管理到来的图像的散列.在一个示例中,图像处理针对具体的种类。各种其它算法可以用于例如基于颜色、形状或纹理来提取特征信息并且将这样的信息插入到数据库中以用于将来的比较。如这里所讨论的,提供用于图像识别服务的方法和设备,其中,对应用接口作出请求,其中,通信中所包括的命令指示有关所请求的图像服务类型的图像处理服务。在一个实施例中,通信是例如使用GET/POST协议发送的HTTP消息。可替换实施例可以实现通信的其它形式,使得更容易与图像处理服务相接口。在一个实施例中,通信通过电子邮件进行,其中,命令被包括在电子邮件的主题行中。在移动实施例中。他能更新是信令协议的一部分,其中,命令被包括在从用户的移动装置发送到网络的消息中。网络的系统层接收请求并且与图像处理服务和应用接口。图像处理包括基于图像的搜索,其中,通信接收产品或项目的图像以用于识别,并且服务将接收到的图像与产品的数据库相比较。接收到的图像可以是要与相对应的产品匹配的产品的条形码。由图像处理服务提供的另一服务是OCR,其中,纹理信息从接收到的图像中恢复并被用于识别产品或图像。在一个实施例中,图像处理服务被用来开发待售或待拍卖的产品或项目的列表。在另一实施例中,图像处理服务被用于欺诈检测并且用于确认商业交易的正确度(例如,销售或拍卖项目以正确的价格提供)或与产品相关联的详细信息是正确的。其它实施例可以实现可替换通信技术,其中,用于图像处理的命令和指令被包括在消息或信令中。电子邮件消息可以要么用在独立的电子邮件应用中要么经由网站来使用。用户应用成使得可以使用电子邮件客户端和浏览器来与联网的计算网络的系统层和图像API层两者交互。另外的实施例可以包括用于与系统层104的不同部分交互的其它用户层扩展。示例系统层使用电子邮件内容生成器来管理电子邮件消息;然而,可替换实施例除了包括系统层104以外,例如还包括用于管理网络内容的扩展。这样的扩展可以从用户层102中的网络浏览器接收请求,将该请求转发给API层106,接收XML响应,并且格式化该响应来发送给原来的请求人或用户。系统层104还根据网络和用户的需求来增加安全或其它处理。格式化的数据之后被发回网络浏览器。将了解,存在生成内容的许多其它可能的方式,并且这些可以在系统层104内被结合。API层106还可以被扩展为除了实现OCR和图像比较服务以外,还实现其它功能。尽管在这里描述为针对每个人物使用专门的Java小服务程序,但是图像服务可以使用其它编程语言和体系架构以各种方式实现。扩展该系统可以包括创建用于应付每种新的图像服务的新的Java小服务程序。小服务程序可以将每种新的图像服务中的每个功能映射到以通信格式限定的方法请求。另外,图像处理服务可以处理作为HTTPGET或POST请求的一部分的各种参数。上述实施例提供用于与各种图像服务交互的可高度扩展的系统。API层106处理HTTPGET或POST请求并且生成恰当的XML响应。这包括在信息被包括在URL或主题行中的情况中以及在图像数据被附加的情况中翻译通信的能力。例如,API层106能够接收通用的GET请求,例如:类似地,API层106支持负责文本和条形码识别的OCR。图10图示出用于在诸如图3A中示出的系统中处理图像的方法,其中,首先,在802,系统接收图像服务请求。响应于该请求,在804,系统从请求中检索图像数据。在806,系统将图像数据提交给图像服务,在808,图像服务处理图像数据,从而在810结果被提供给请求人。图11更详细地示出在808处理图像数据的操作,其中,在830,进行有关接收到的图像数据的类型的第一判决。对于条形码信息,处理继续到822,将条形码数据映射到产品数据库中相对应的项目。此外,该方法在824识别其它类似的项目,这可以根据产品的产品种类、颜色、尺寸或其它特性来完成。然后在826,结果被发送给请求人。另外,数据库可以利用接收到的数据图像和在828从产品数据库检索的相对应的(一个或多个)产品的映射来维护。通过维护这样的记录,将来的图像比较和产品记录的检索得到增强,因为检索可以搜索较小的产品集合来查找匹配。在一个实施例中,将来的比较和搜索并行完成,其中,一个搜索是针对全部产品数据库进行的,而第二搜索是使用从在先的搜索中编译出的信息进行的。当匹配找到时,初始结果可以用于请求人。继续参考图11,如果图像数据是图形数据,例如,摄影类型数据,则在832,所请求的具体图像处理服务类型被确定。对于比较类型图像处理服务,该方法在834确定在分析图像中要使用的参数。这些参数可以是指项目或产品的特性,例如尺寸、颜色、纹理等等。另外,这些参数可以指定如何分析图像的细节。类似地,如果图像处理服务类型是OCR,则该方法在836提取原文信息。可替换实施例可以包括与图10和图11所示相结合或替换它们的其它图像处理。类似地,图像处理可以包括多个步骤,其中,第一图像处理服务被执行而产生处理后的图像,并且之后,第二图像处理服务被执行而产生最终的图像。例如,图像可能包括本不想包括在图像中的边界或伪标记。处理可以包括用来通过移除这样的元素和标记来使图像清楚的步骤。此外,可能希望提取或读取条形码信息并且还希望将产品的图像与产品数据库相比较,例如以用于进行欺诈检测或用于增大比较的确定性。此外,尽管图11的方法涉及条形码和照片图像数据,但是也可以考虑其它图像,包括通过手工或通过电子手段准备的图形图像。这样的图像数据可以被扫描到计算装置或计算系统中并被提供作为对图像处理服务的输入。另一方面,图像服务可以实现欺诈检测。某些默认的假定可以针对公布或列表被做出,或者可以被包括在公布中作为公布数据。例如,基于与经由公布系统支持的交易平台当前正供销售或者过去已经售出的项目类似或相当的项目的定价,某一价格可以自动地与列表中广告待售的产品相关联。图12图示出使用基于图像的信息来进行欺诈检测的模块900。产品信息(例如从输入图像或书或从用户输入或选择接收到的特性或其它信息)被提供给欺诈检测单元920。在接收到产品信息之后,欺诈检测单元920确定用于比较的适当信息并且访问产品数据库922中的产品信息。适当信息可以是与输入的图像数据相匹配的产品信息的函数,或者可以是销售商或用户所选择的种类的产品的函数。欺诈检测单元920将接收到的信息与产品数据库922中所存储的信息相匹配,并且在接收到的信息与所存储的信息一致的情况中,提供指示有效的图像和产品信息的确认。然而,如果信息不一致,则提供欺诈警报。在示例实施例中,图像处理服务120可以使能欺诈防止功能,该功能基于用电子邮件发送或其它方式发送给系统的图像与所存储的真实的或者欺诈性的项目的图像集合的比较,来自动提供有关具体项目是真实的还是欺诈性的项目的指示。在该系统中,项目的某些特征可以被标记以用于具体的详细检查并且被标记为具体指示项目是欺诈性的还是真实的。欺诈检测单元920因此适于用于完成这样的处理的图像比较和图像压缩。继续参考图12,在基于图像的欺诈防止的一个示例中,图像信息被捕获并被发送给欺诈检测单元920以用于与产品数据库922比较。在识别出产品数据库922中的有效图像之后,确认结果被提供给请求人。在检测到欺诈性产品之后,欺诈检测单元920向请求人发送欺诈通知并且将欺诈信息存储到欺诈记录924中。通过存储所识别出的欺诈信息,该信息可用于存储和索引,这之后又可以在将来的欺诈检测和图像识别服务中使用。欺诈检测提供广告或供应是真实的信心,并且可以辅助用户避免知识产权(IP)侵权,例如,提供侵权商品供销售。在一个实施例中,欺诈通知包括之前被分类为欺诈的图像数据。结合图像的批量上载,例如如图5和图6中所示,欺诈检测技术使能对多个图像的批量处理来识别山寨商品或其它违法商品。图13是描绘可以在其中部一个示例实施例的客户端-服务器系统200的网络图。在基于网络的市场或公布系统的示例形式中,联网的系统202经由网络204(例如,互联网或广域网(WAN))来向一个或多个客户端提供服务器侧功能。图13例如图示出网络客户端206(例如,浏览器,例如由华盛顿州雷德蒙的微软公司开发的InternetExplorer浏览器)和在客户机210上执行的编程客户端208。API服务器214和网络服务器216耦合到一个或多个应用服务器并且分别向它们提供编程和网络接口。应用服务器238托管一个或多个公布市场应用220和付费应用222。应用服务器228和238又被示出耦合到辅助对一个或多个数据库226的访问的一个或多个数据库服务器224。市场应用220可以向访问联网系统202的用户提供许多市场功能和服务。付费应用222同样可以向用户提供许多付费服务和功能。付费应用222可以使得用户可以在账户中积累值(例如,以商业货币,例如美元,或者以专有货币,例如“积点”),并且之后用积累的值来兑换可经由市场应用220获得的产品(例如,商品或服务)。尽管市场应用220和付费应用222在图13中被示出为形成联网系统202的一部分,但是将了解到,在可替换实施例中,付费应用222可以形成与联网系统202分离和不同的付费服务中的一部分。此外,尽管图13中示出的系统200采用了客户端-服务器体系架构,但是本方法、设备和示例当然不限于这样的体系架构,并且同样可以在例如分布式或点对点体系架构系统中找到应用。各种市场应用220和付费应用222也可以实现为不一定具有联网能力的独立的软件程序。网络客户端206经由由网络服务器216支持的网络接口来访问各种市场应用220和付费应用222。类似地,编程客户端208经由由API服务器214提供的编程接口来访问由市场应用220和付费应用222提供的各种服务和功能。编程客户端208例如可以是这样的销售商应用,其使得销售商能够以离线方式在联网的系统202上创作和管理列表并且能够在编程客户端208和联网的系统202之间执行批模式通信。图13还图示出在第三方服务器机器230上执行的第三方应用228,其可以经由由API服务器214提供的编程接口来对联网的系统202进行编程访问。例如,第三方应用228可以利用从联网的系统202检索到的信息来支持由第三方托管的网站上的一个或多个特征或功能。第三方网站例如可以提供由联网的系统202的相关应用支持的一个或多个促销功能、市场功能或付费功能。图14是图示出在一个示例实施例中被提供作为联网的系统202的一部分的多个应用的框图。这些应用可以被托管在专用的或共享的服务器机器(未示出)上,这些服务器机器可通信地耦合来使能服务器机器之间的通信。这些应用本身(例如,经由合适的接口)可通信地相互耦合以及耦合到各种数据源,以使得信息能够在这些应用之间传递或使得这些应用能够共享和访问公共数据。这些应用还可以经由数据库服务器224来访问一个或多个数据库226。联网的系统202可以提供许多公布、列表和价格设置机制,通过这些机制,销售商可以列出待售的商品或服务(或公布有关的信息),购买者可以表达对购买这些商品或服务的兴趣或表示这样的希望,并且价格可以针对有关商品或服务的交易而设置。为此,这些应用被示出为包括支持拍卖格式列表和价格设置机制(例如,英式、荷兰式、Vickrey式、中式、复式、有底价式拍卖等等)的至少一个公布应用300和一个或多个拍卖应用302。各种拍卖应用302也可以提供支持这样的拍卖格式列表的许多特征,例如,销售商可以用来与列表相关地指定底价的底价特性和出价人可以用来调用自动代理出价的代理出价特征。许多固定价格应用304支持固定价格列表格式(例如,传统分类的广告型列表或目录列表)和全部买下型(buyout)列表。具体地,全部买下型列表(例如,包括由加利福尼亚州圣何塞的eBay公司开发的Buy-It-Now(BIN)技术)可以与拍卖格式列表一起提供,并且使得购买者可以以固定价格购买商品或服务,这些商品或服务也经由拍卖来提供销售,并且固定价格通常高于拍卖的起始价格。店铺应用306使得销售商可以将“虚拟”店铺内的列表分组,“虚拟”店铺可以由销售商或针对销售商加上品牌以及以其他方式个性化。这样的虚拟店铺还可以提供对于相关销售商特定的和个性化的促销、赠送和特征。信誉应用308使得进行交易的用户可以利用联网的系统202来确立、建立和维护信誉,信誉可被潜在的交易伙伴获得并被公布给他们。例如考虑在联网的系统202支持个人对个人交易的情况中,用户可能没有通过其可以评估潜在交易伙伴的可信赖性和可信性的历史或其它偏好信息。信誉应用308使得用户可以例如用其它交易伙伴提供的反馈来确立联网的系统202随时间过去的信誉。然后其它潜在交易伙伴可以参考这样的信誉来评估可信性和可信赖性。个性化应用310使得联网的系统202的用户可以个性化它们与联网的系统202的交互的各个方面。例如,用户可以利用合适的个性化应用310来创建其中可以浏览有关用户作为(或曾经作为)交易一方的交易的信息的个性化参考页面。此外,个性化应用310可以使得用户能够个性化列表以及他们与联网的系统202和其它方的交互的其它方面。联网的系统202可以支持例如为具体的地理区域定制的许多市场。联网的系统202的一个版本可以为英国定制,而联网的系统202另一版本可以为美国定制。这些版本中的每一个可以作为独立的市场来操作,或者可以是公共基础市场的定制的(或国际化的)呈现。联网的系统202可以相应地包括许多国际化应用312,其根据预定的标准(例如,地理的、人口统计学的或市场的标准)来定制联网的系统202的信息(和/或信息的呈现)。例如,国际化应用312可以用来支持由联网的系统202运作或可经由各个网络服务器216访问的许多区域网站的信息的定制。联网的系统202的导航可以由一个或多个导航应用314来辅助。例如,搜索应用(作为导航应用的一个示例)可以使能对经由联网的系统202公布的列表的关键字搜索。浏览应用可以使得用户能够浏览各种种类、目录或库存数据结构,在联网的系统202内,列表根据它们被分类。还可以提供各种其它导航应用来补充搜索和浏览应用。为了使得可经由联网的系统202获得的列表尽可能提供可视信息并吸引人,市场应用220可以包括一个户多个成像应用316,用户可以利用成像应用316来上载用于包括在列表内的图像。成像应用316还操作用于将图像集合到所观看的列表中。成像应用316还可以支持一个或多个促销特征,例如,呈现给潜在购买者的图像库。例如,销售商可以支付附加费来让图像包括在促销项目的图像画库。公布创建318使得销售商可以方便地创作与它们希望经由联网的系统202交易的商品或服务有关的列表,并且公布管理320使得销售商可以管理这样的列表。具体地,在特定销售商已经创作和/或公布了大量列表的情况中,这样的列表的管理可能呈现出挑战。列表管理应用320提供用于辅助销售商管理这样的列表的许多特征(例如,自动重新列表、库存级监视等等)。一个或多个张贴公布管理322也辅助销售商进行通常发生张贴列表的许多动作。例如,在完成由一个或多个拍卖应用302辅助的拍卖之后,销售商可能希望留下有关具体购买者的反馈。为此,张贴公布管理322可以提供到一个或多个信誉应用308的接口,以使得销售商可以方便地向信誉应用308提供有关多个购买者的反馈。纷争解决应用324提供可以解决交易方之间出现的纷争的机制。例如,纷争解决应用324可以提供引导程序,通过该引导程序,交易方被引导经由许多步骤来尝试解决纷争。在纷争不能经由导引程序解决的情况中,纷争可以升级给第三方调停人或仲裁人。许多欺诈防止应用326实现用于减少联网的系统202内欺诈的发生的欺诈检测和防止机制。消息传送应用328负责生成消息并将消息递送给联网的系统202的用户,例如,向用户建议关于联网的系统202的列表状态的消息(例如,在拍卖过程期间向出价人提供“落标”通知,或者向用户提供促销和推销信息)。各个消息传送应用328可以利用许多消息递送网络和平台中的任一者来向用户递送消息。例如,消息传送应用328可以经由有线的(例如,互联网)、简易老式电话服务(POTS)或无线(例如,移动、蜂窝、WiFi、WiMAX)网络来递送电子邮件、即时消息(IM)、SMS、文本、传真或语音(例如,IP语音(VoIP))消息。推销应用330支持各种推销功能,这些推销功能被使得可由销售商获得来使得销售商能够增加经由联网的系统202的销售。推销应用330还运作各种推销特征,这些推销特征可由销售商调用并且可以监视和跟踪由销售商采用的推销策略的成功。联网的系统202本身或者经由联网的系统202进行交易的一方或多方可以运作由一个或多个赠送应用332支持的忠诚计划。例如,购买者可以因为与特定销售商建立和/或缔结的每次交易而赢得忠诚或促销积点,并且从而可以被提供用所积累的忠诚积点进行兑换的奖励。回到图13,各种表格可以在数据库226内被维护,并且可以由应用220和222利用或支持应用220和222。用户表格包含针对联网的系统202的每个注册用户的记录,并且可以包括与每个这样的注册用户有关的标识符、地址和金融工具信息。用户可以在联网的系统202内作为销售商、购买者或既是销售商又是购买者而进行操作。在一个示例实施例中,购买者可以是这样的用户,其拥有累积值(例如,商业或专有货币)并且相应地能够用累积值来交换由联网的系统202提供销售的项目。该表格也包括这样的项目表,在项目表中,维护经由联网的系统202可以进行交易或已经进行交易的商品或服务的项目记录。项目表内的每个项目记录还可以链接到用户表内的一个或多个用户记录,以将销售商和一个或多个实际的或潜在的购买者与每个项目记录相关联。交易表包含与其记录存在于项目表内的项目有关的每次交易(例如,购买或销售交易)的记录。排序表用排序记录填充,每个排序记录与一个排序相关联。每个排序进而可以针对其记录存在于交易表内的一个或多个交易来处理。出价表内的出价记录每一个与连同由拍卖应用302支持的拍卖格式列表在联网的系统202处接收到的出价有关。在一个示例实施例中,反馈表被一个或多个信誉应用308用来构建和维护有关用户的信誉信息。历史表维护用户是其中一方的那些交易的历史。一个或多个属性表记录与其记录存在于项目表内的那些项目有关的属性信息。仅考虑这样的属性的一个单个示例,属性表可以指示与具体项目相关联的货币属性,货币属性标识由销售商指定的相关项目的价格的货币。某些实施例在这里被描述为包括逻辑或许多组件、模块或机构。组件是能够执行某些操作并且可以以某种方式配置或布置的有形单元。在示例实施例中,一个或多个计算机系统(例如,独立的、客户端或服务器计算机系统)或计算机系统的一个或多个组件(例如,处理器或处理器组)可以用软件(例如,应用或应用部件)配置为可操作用于执行这里所描述的某些操作的组件。在各种实施例中,组件可以机械或电子地实现。例如,组件可以包括被永久地配置(例如,作为专用处理器)来执行某些操作的专用电路或逻辑。组件也可以包括用软件临时配置为执行某些操作的(例如,被包围在通用处理器或其它可编程处理器内的)可编程逻辑或电路。将了解,是在专用的永久配置的电路中还是在临时配置(例如,用软件配置)的电路中实现机械地实现组件基于成本和时间的考虑来决定。相应地,术语“组件”应被理解为包括有形实体,只要一个实体被物理地构建、被永久地配置(例如,硬连线的)或被临时地配置(例如,编程的)来以某种方式操作和/或执行这里描述的某些操作。考虑组件被临时配置(例如,编程的)的实施例,每个组件不必在时间的任意一个实例中都被配置或被实例化。例如,在组件包括使用软件来配置的通用处理器的情况中,该通用处理器可以在不同时刻被配置为各个不同组件。例如,软件可以相应地配置处理器来在时间的一个实例处构建特定组件,并且在时间的另一实例构建另一组件。组件可以向其它组件提供信息和从其他组件接收信息。相应地,所描述的组件可以视为是可通信地耦合的。在多个这样的组件同时存在的情况中,通信可以通过连接组件的信号传输(例如,通过合适的电路和总线)来实现。在多个组件在不同时刻被配置或被实例化的实施例中,这样的组件之间的通信例如可以通过在这多个组件有权使用的存储结构中存储和检索信息来实现。例如,一个组件可以执行操作并且将该操作的输出存储在其可通信地耦合到的存储装置中。另一组件可以在之后访问该存储在来检索和处理所存储的输出。组件也可以发起与输入或输出装置的通信并且可以对资源(例如,信息的集合)进行操作。示例实施例可以在数字电子电路中或在计算机硬件、固件、软件中或在两者的结合中实现。示例实施例可以使用计算机程序产品来实现,例如有形地包含在信息载体中的计算机程序或机器可读介质中用于由数据处理设备执行或控制其操作的计算机程序,数据处理设备包括但不限于可编程处理器、计算机或多个计算机。计算机程序可以以任意形式的编程语言(包括编译的或翻译的语言)写成,并且其可以以任意形式部署,所述任意形式包括作为独立的程序或作为适于在计算环境中使用的模块、子例程或其它单元。计算机程序可以被部署为在一个计算机上执行或者在一个站点处或分布于多个站点并通过通信网络互连的多个计算机上执行。在示例实施例中,操作可以由一个或多个可编程处理器来执行,这些可编程处理器执行计算机程序来通过对输入数据进行操作并生成输出来执行功能。方法操作也可以由专用逻辑电路(例如,现场可编程逻辑门阵列(FPGA)或专用集成电路(ASIC))执行,并且示例实施例的设备可以实现为这样的专用逻辑电路。计算系统可以包括客户端和服务器。客户端和服务器一般相互远离并且通常通过通信网络来交互。客户点与服务器的关系依赖于在各自的计算机上运行并且相互具有客户端-服务器关系的计算机程序而产生。在部署可编程计算系统的实施例中,将了解,需要考虑硬件和软件体系架构两者。具体地,将了解,是在被永久地配置的硬件(例如ASIC)中,在临时配置的硬件(例如,软件和可编程处理器的组合)中还是在被永久地和临时地组合配置的硬件中实现某些功能是设计选择。以下将阐述在各个示例实施例中可以部署的硬件(例如,机器)和软件体系架构。图15是以计算机系统400的形式为例的机器的框图,其中,可以执行用于使得机器执行这里所描述的方法中的任意一个或多个的指令。在可替换实施例中,该机器可以作为单独的装置进行操作或者可以连接(例如,联网)到其它机器。在联网的部署中,该机器可以在服务器-客户端网络环境中以服务器或客户端的能力进行操作,或者在对等(或分布式)网络环境中作为对等机器进行操作。该机器可以是个人计算机(PC)、台式PC、机项盒(STB)、PDA、蜂窝电话、网络家电、网络路由器、交换机或网桥,或者能够执行指定机器所要采取的动作的指令(顺序的或其它方式的)的任意机器。此外,尽管仅图示出单个机器,但是术语“机器”也应当理解为包括单独地或联合地执行指令集(或多个指令集)来执行这里所讨论的方法中的任意一个或多个方法的任意机器集合。示例计算机系统400包括处理器402(例如,中央处理单元(CPU)、图形处理单元(GPU)或两者)、主存储器404和静态存储器406,这些单元经由总线408相互连接。计算机系统400还可以包括视频显示单元410(液晶显示器(LCD)或阴极射线管(CRT))。计算机系统400还包括字母数字输入装置412(例如键盘)、用户界面(UI)导航装置或光标控制装置414(例如鼠标)、盘片驱动单元416、信号生成装置418(例如扬声器)和网络接口装置420。盘片驱动单元416包括机器可读介质422,机器可读介质422上存储了采用这里所描述的方法或功能中任意一个或多个方法或功能或者由这些方法或功能中的任意一个或多个方法或功能利用的一个或多个指令集和数据结构(例如,软件424)。软件424还可以在被计算机系统400执行期间完全地或至少部分地驻留在主存储器404内和/或处理器402内,其中主存储器404和处理器402也构成机器可读介质。尽管机器可读介质422在示例实施例中被示出为单个介质,但是术语“机器可读介质”可以包括存储一个或多个指令或数据结构的单个介质或多个介质(例如,集中式或分布式的数据库,和/或相关联的缓存器和服务器)。术语“计算机可读介质”还应被理解为包括这样的任意有形介质,所述有形介质能够存储、编码或承载供机器执行并且使得机器执行这里所提出的方法中的任意一个或多个方法的指令或者能够存储、编码或承载由这样的指令利用或与这样的指令相关联的数据结构。术语“计算机可读介质”相应地应被理解为包括但不限于固态存储器以及光介质和磁介质。机器可读介质的具体示例包括非易失性存储器,例如包括:半导体存储装置,例如,可擦除可编程只读存储器(EPROM),电可擦除可编程只读存储器(EEPROM)和闪存装置;磁盘,例如内部硬盘和可移除盘;磁光盘;以及致密盘只读存储器(CD-ROM)盘和数字视频盘-只读存储器(DVD-ROM)盘。软件424还可以使用传输介质通过通信网络426来发送或接收。软件424可以使用网络接口装置420和许多公知的传输协议中的任一者(例如,HTTP)来发送。通信网络的示例包括局域网(LAN)、WAN、互联网、移动电话网络、简易老式电话服务(POTS)网络和无线数据网络(例如WiFi和WiMAX网络)。术语“传输介质”应被理解为包括能够存储、编码或承载供机器执行的指令的任意无形介质,并且包括用于辅助这样的软件的通信的数字或模拟通信信号或其它无形介质。在某些实施例中,所描述的方法可以使用根据三层体系架构范例(three-tierarchitectureparadigm)设计的分布式或非分布式的软件应用来实现。根据该范例,实例化或配置组件或模块的计算机代码(或软件)的各个部分可以被分类为属于这三层中的一层或多层。某些实施例可以包括第一层作为接口(例如,接口层)。此外,第二层可以是对通过接口级输入的数据执行应用处理的逻辑(或应用)层。逻辑层可以将这样的处理的结果传送给接口层和/或后端,或存储层。由逻辑层执行的处理可以涉及总体上掌控软件的某些规则或处理。第三存储层可以是永久性存储介质或非永久性存储介质。在某些情况中,这些层中的一层或多层可以折合到另一层中,产生两层体系架构,或甚至一层体系架构。例如,如在具有嵌入式数据库的软件应用的情况中,接口和逻辑层可以合并,或者逻辑和存储层可以合并。三层体系架构可以使用一种技术或多种技术来实现。示例三层体系架构和实现这种架构的技术可以在一个或多个计算机系统上实现,这一个或多个计算机系统例如作为独立系统进行操作或以服务器-客户端、点对点、分布式或这样的一些其它合适的配置来组织。此外,这三层可以分布在一个以上计算机系统之间作为不同的组件。示例实施例可以包括上述层,并且有关构成这些层的处理或操作可以被实现为组件。这些组件中许多组件的共同点是生成、使用和操控数据的能力。这些组件以及与每一个相关联的功能可以形成独立的、客户端、服务器或对等的计算机系统。各种组件可以基于需要用计算机系统实现。这些组件可以包括用面向对象的计算机语言写成的软件,使得面向组件或面向对象的技术可以使用可视组件库(VCL)、跨平台组件库(CLX)、JavaBeans(JB)、JavaEnterpriseBeans(EJB)、组件对象模型(COM)、分布式组件对象模型(DCOM)或其它合适的技术来实现。用于这些组件的软件还可以使得能够可通信地耦合到其它组件(例如,经由各种API),并且可以编译成一个完整的服务器、客户端和/或对等软件应用。此外,这些API可以作为分布式计算组件来通过各种分布式编程协议进行通信。某些示例实施例可以包括远程过程调用,这被用来在分布式编程环境中作为分布式计算组件来实现上述组件中的一个或多个。例如,接口组件(例如接口层)可以形成远离包含逻辑组件(例如逻辑层)的第二计算机系统的第一计算机系统的一部分。这些第一和第二计算机系统可以以独立的、服务器-客户端、对等的或某些其它合适的配置来配置。用于这些组件的软件可以使用上述面向对象的编程技术来编写,并且可以以相同的编程语言或不同的编程语言编写。各种协议可以被实现为使得这些各种组件可以通信,而不论用来编写这些组件的编程语音如何。例如,用C++编写成的组件可以通过分布式计算协议来与用Java编程语言编写的另一组件通信,分布式计算协议例如是公共对象请求代理体系结构(CORBA)、简单对象访问协议(SOAP)或某些其它合适的协议。某些实施例可以包括使用这些协议中的一个或多个,其中利用开放式系统互连(OSI)模型或TCP/IP协议栈模型中概述的各种协议来限定网络传送数据所使用的协议。示例实施例可以使用OSI模型或TCP/IP协议栈模型来限定网络传送数据所使用的协议。在应用这些模型时,服务器与客户端之间或对等计算机系统之间的数据传输系统例如可以包括5层,这5层包括:应用层、传输层、网络层、数据链路层和物理层。在软件的情况中,为了实例化或配置具有三层体系架构的组件,各层(例如,接口层、逻辑层和存储层)驻留在TCP/IP协议栈的应用层上。在示例实现中,使用TCP/IP协议栈模型,来自驻留在应用层的应用的数据被加载到驻留在传输层的TCP分段的数据加载字段中。该TCP分段还包含驻留在远处的接收方软件应用的端口信息。该TCP分段被加载到驻留在网络层的IP数据报的数据加载字段中。接着,该IP数据报被加载到驻留在数据链路层的帧中。该帧之后在物理层被编码,并且数据通过诸如互联网、LAN、WAN或某些其它合适的网络来发送。在某些情况中,互联网是指网络的网络。这些网络可以使用用于数据交换的各种协议,包括前述TCP/IP,还有异步传输模式(ATM)或某些其它合适的协议。这些网络可以被组织在各种拓扑(例如,星状拓扑)或结构内。尽管已经参考具体示例实施例描述了实施例,但是显然,可以对这些实施例进行各种修改和更改。相应地,说明书和附图应被视为是说明性的而不是限制性的。形成说明书一部分的附图以图解而非限制的方式来示出可以实行本主题的具体实施例。所图示的实施例被充分详细地描述以使得本领域技术人员能够实行这里所公开的教导。其它实施例可以被利用并从其导出,使得可以在不偏离本公开的范围的情况下进行结构和逻辑的替换和更改。因此,此详细描述不应从限制意义上来理解,并且各个实施例的范围仅由所附权利要求和这些权利要求的等同物的全部范围一起限定。如果一个以上实施例实际上被公开的话,仅仅为了方便并且在不意欲将本申请的范围主动限制于任意单个发明或发明性概念的情况下,本发明主题的这些实施例在这里可以单独地和/或共同地用术语“发明”来指代。因此,尽管这里已经图示并描述了具体实施例,但是应当了解,被计算出能实现相同目的的任意布置可以替换所示出的具体实施例。本公开意在包括各个实施例的所有改编或变形。以上实施例的组合以及在这里没有具体描述的其它实施例对于阅读了以上描述的本领域技术人员而言是显而易见的。根据法条37C.F.R.§1.72(b)提供了本公开的摘要,该法条要求可使得读者能迅速明确本公开的实质的摘要。基于摘要将不会被用来解释或限制权利要求的范围和意义这样的理解而提交摘要。另外,在前面的详细描述中,可见,为了是本公开流畅,多种特征被一起分组到单个实施例中。本公开的方法不应被解释为反映要求保护的实施例需要比在每项权利要求中所明确表述的特征更多的特征这样的意图。而是,如下面的权利要求所反映的,本发明主题在于比单个公开实施例中的全部特征更少。因此,下面的权利要求被结合到实施方式中,每项权利要求本身代表单独的实施例。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1