对象运动的基于激光雷达的分类的制作方法

文档序号:13267304阅读:129来源:国知局


背景技术:
在机器视觉领域内,很多场景涉及各种对象的运动的检测,诸如对象运动跟踪和速度估计技术及设备。例如,可以评估在简短的时间周期上捕获的场景的图像序列以标识在若干序列图像中可见的特定对象,并且基于场景的各种地理属性,可以估计在捕获时间周期上通过场景的对象的运动。一些这样的场景可以涉及这样的对象的实时或者接近实时的评估,而其他场景可以涉及先前捕获的图像的回顾性评估,例如沿着道路向下行进的车辆可以捕获要被联结在一起以形成场景的全景或动态视图的场景的图像的序列,并且稍后可以对图像后处理以去除在捕获期间存在的瞬变对象对视图的障碍。

技术实现要素:
提供本“发明内容”以介绍下面在“具体实施方式”中进一步描述的简化形式的概念的选择。本“发明内容”并非意在标识要求保护的主题的关键因素或者重要特征,也并非意在用于限制要求保护的主题的范围。虽然可以标识对象,将对象估计为运动或者静止,并且从自然光图像的序列中去除对象,然而仅通过对虚拟图像的分析可实现的这样的估计的精度可能受到限制。然而,可以通过由激光雷达收集的与这样的对象有关的评级信息来进行补充分析,激光雷达通常被包括在用车辆中以用于对象检测、回避和导航。激光雷达的可用性和用途可以提供高精度的数据源,其可以在这样的对象运动还是静止的评估中进行特别展现,因为每种类型的对象可以表示激光雷达数据的明显不同的签名。鉴于这些观察,本文中呈现了用于检测激光雷达点云中描绘的对象的运动的技术。这些技术包括:将激光雷达点云中的相应激光雷达点映射到三维体素空间中的体素,并且标识由共享三维体素空间内的邻接的体素的体素簇表示的至少一个对象。这些技术还包括:对于激光雷达点云中的相应激光雷达点,将激光雷达点与所选择的对象相关联,并且根据所选择的对象来对激光雷达点的运动分类。最后,这些技术包括:对于相应对象,根据与对象相关联的相应激光雷达点的运动来对对象的运动分类。通过以这种方式实现激光雷达点云中所描绘的相应对象的运动的检测,本文中所呈现的技术可以实现虚拟空间中的运动对象与静止对象的高精度的分类,其中这样的分类可以可用于根据本文中所呈现的技术的各种另外的处理技术(例如聚焦对象上的一个或多个图像;估计对象的位置、方位、速度和/或加速度;以及从描绘由激光雷达点云表示的区域的图像中去除对象)。为了实现以上和相关目的,下面的描述和附图给出了特定说明性方面和实现。这些表示其中可以采用一个或多个方面的各种方式中的几种方式。本公开内容的其他方面、优点和新颖特征在结合附图考虑时根据下面的详细描述将变得很清楚。附图说明图1是对在环境内运动的同时捕获环境的图像以及环境中存在的其他对象的图像的车辆进行特征化的示例性场景的图示。图2是对车辆周围的环境的激光雷达点云的捕获进行特征化并且描绘环境内存在的其他对象的示例性场景的图示。图3是对激光雷达点云随着时间的评估进行特征化以根据本文中所呈现的技术将所标识的对象分类为静止或者运动的示例性场景的图示。图4是随着时间评估激光雷达点云以根据本文中所呈现的技术将所标识的对象分类为静止或者运动的示例性方法的流程图。图5是被配置为随着时间评估激光雷达点云以根据本文中所呈现的技术将所标识的对象分类为静止或者运动的示例性系统的组件框图。图6是包括被配置为实施本文中所给出的规定中的一项或多项的处理器可执行指令的示例性计算机可读介质的图示。图7是对在对象的分类之后的激光雷达点云的重新划分进行特征化以便根据本文中所呈现的技术区分附近的对象的示例性场景的图示。图8图示可以在其中实现本文中所给出的规定中的一项或多项的示例性计算环境。具体实施方式现在参考附图来描述所要求保护的主题,在附图中,相似的参考标记遍及附图用于指代相似的元素。在以下描述中,出于解释的目的,阐述了大量具体细节以便提供对所要求保护的主题的透彻理解。然而,明显的是,可以在没有这些具体细节的情况下,实践所要求保护的主题。在其他实例中,以框图形式示出了结构和设备以便促进对所要求保护的主题的描述。A.介绍在机器视觉领域,很多场景涉及对环境的图像的自动评估以检测环境中存在的对象以及在图像中描绘的对象,并且更具体地涉及标识对象的位置、尺寸、定向、速度和/或加速度。作为第一示例,评估可以包括运输环境中的车辆,包括道路上的汽车、自行车、和行人以及符号、树木和建筑物,以便促进障碍回避。作为第二示例,物理对象跟踪系统可以评估环境内的对象的运动以便与其交互(例如以接住球或者其他抛出的对象)。作为第三示例,在执行各种动作时,可以记录在运动捕获环境中存在的人类参与者,以便通过类似人类的运动来渲染动画个性。在各种场景中,可以实时地或者接近实时地执行分析(例如以促进设备或者个体与其他存在的对象交互),而在其他场景中,可以回顾性地执行分析(例如以标识在捕获时间存在的对象的运动)。这些以及其他场景通常涉及一组可见光图像的捕获和评估,例如通过静止或运动相机以及虚拟处理技术到人类可查看的图像的应用。例如,机器视觉技术可以尝试根据图形的内容、基于视觉提示(诸如来自光源的阴影、透视、相对尺寸和视差效果)来评估对象的类型、颜色、尺寸、形状、定向、位置、速度、以及加速度。图1呈现了对在环境100中操作的车辆102进行特征化(例如通过特定的速度矢量104同时操作相机106以捕获环境100的图像的序列)的示例性场景的图示。在本示例性场景中,环境100中也存在其他车辆102,并且其他车辆102可以包括具有速度矢量104的车辆102以及静止车辆108(诸如停放的车辆)二者。环境100还可以包括其他类型的运动对象(诸如个人110)以及各种静止对象(诸如符号112和建筑物114)。在该环境中,车辆102的操作者可以努力标识相应车辆102的速度矢量104以及个人110的速度矢量104并且区分运动车辆102与静止车辆108以及运动或静止的其他类型的对象。如果以接近实时的方式执行,则这一分析的结果可以帮助车辆102的导航(诸如使速度与其他附近车辆102相匹配并且应用制动和转向以避免突然的速度变化)。另外,这一分析的结果可以回顾性地可用,例如从由相机106捕获的图像中用于去除所描绘的车辆102以及其他对象,以便生成环境100的无障碍视图和/或生成运动对象的更准确的三维模型,以用于各种应用,包括锐化可视化、对象的进一步分类(例如标识运动车辆的品牌和型号)以及运动跟踪。然而,在这些场景中,根据视觉图像的检查来标识对象的运动的可实现的精度可能受到限制。例如,诸如透视和视差等技术仅可以提供一般的估计(特别是针对远离相机镜头的对象),和/或可能由于视觉伪像(诸如眩光和阴影)而被失真。因此,这样的评估技术可能产生低精度和/或高误差等级的估计,并且可能对于特定用途是不适当的。B.所提出的技术可以通过也能够从激光成像(“激光雷达”)捕获设备访问数据的设备(诸如车辆102)来实现涉及对象运动的评估的很多场景,激光成像(“激光雷达”)捕获设备可以发出具有指定波长的光的一组汇聚的低功率波束,并且可以检测和记录来自各种对象的这样的波长的光的反射。所检测的激光雷达数据可以用于生成激光雷达点云,以表示从对象反射并且返回检测器的光的激光雷达点,从而指示环境100中存在的对象的具体的点。通过随着时间捕获和评估激光雷达数据,这样的设备可以构建在激光雷达检测器周围的对象的相对位置的表示(例如其他车辆102相对于操作相机106的车辆102的位置)。图2呈现对使用激光雷达点云来捕获对象(例如车辆102)进行特征化的示例性场景200的图示。在该示例性场景200中,第一车辆102定位在具有速度矢量104的运动车辆102以及没有可检测运动的静止车辆108后面。第一车辆102可以包括在第一车辆102的前面发出激光雷达信号204的激光雷达发射器202。激光雷达信号204的激光雷达反射206可以通过激光雷达检测器208而被检测,并且被捕获作为表示在相应时间点212处环境100内由激光雷达检测器208检测到的激光雷达点214的激光雷达点云210的序列。特别地,所检测的激光雷达点214可以是特定对象(诸如车辆102)周围的簇,其可以使得激光雷达检测器208能够标识相应时间点212处的对象的存在、尺寸、和/或范围。另外,通过随着时间将车辆102的范围与其他对象相比较,激光雷达检测器208可以确定对象的近似速度。例如,在随着时间比较激光雷达点云210时,表示运动车辆102的激光雷达点214以及表示静止车辆108的激光雷达点214可以相对于彼此以及相对于第一车辆102运动。然而,如果承载激光雷达检测器208的车辆102也运动,则车辆102或者由激光雷达点云中的激光雷达点214表示的其他对象的近似速度可能被失真;例如静止车辆108可能呈现为运动,而以与承载激光雷达检测器208的车辆102近似等同的速度和方向运动的运动车辆102可能呈现为静止车辆108。在对象被检测为在三维空间中随着时间运动的情况下和/或在承载激光雷达检测器208的车辆102的定向也变化(例如加速、减速和/或转弯)的情况下,这样的复杂化可能更严重。甚至确定相应对象(诸如车辆102)运动还是静止鉴于这些因素而可能变得困难。为了将相应对象(诸如车辆102)分类为运动或者静止,并且可选地为了标识诸如位置和速度等其他属性,可以利用技术来将相应激光雷达点云210中的激光雷达点214转换到三维空间。图3呈现对激光雷达点云210的集合的转换进行特征化以对其中所描绘的对象进行分类的示例性场景300的图示。在本示例性场景300中,对于相应激光雷达点云210,将激光雷达点214映射到三维体素空间304中的体素306。接着,可以评估三维体素空间304的体素306以检测体素306的一个或多个体素簇(例如被激光雷达点云210中的一个或多个激光雷达点214占用并且与三维体素空间304的其他占用的体素306共享邻接的体素306,诸如在另一占用的体素306的特定数目的体素306内),从而得到对象空间310内的一个或多个对象312的标识308对应于三维体素空间304。接着,对于激光雷达点云210中的相应激光雷达点214,可以使激光雷达点214与所选择的对象312相关联。然后可以根据所选择的对象312来对激光雷达点214的运动进行分类(例如可以利用三维体素空间304中的对象312将对象标识为运动或静止)。根据与对象312相关联的激光雷达点214的所分类的运动(例如被添加用于相应时间点212处的对象空间310)、激光雷达点214的投影314以及与相应对象相关联的激光雷达点214的运动的评估,可以对相应对象312的运动进行分类。例如,并且如图3的投影314中所描绘的,在三维体素空间304的视图中的投影之后,与第一对象312相关联的激光雷达点214呈现为相对于激光雷达检测器208运动,并且可以产生作为运动对象的对象312的分类316;而在三维体素空间304的视图中的投影之后,与第二对象312相关联的激光雷达点214在激光雷达检测器208的运动的调节之后呈现为静止,并且可以产生作为静止对象的对象312的分类316。以这一方式,图3的示例性场景300中图示的技术使得能够实现根据本文中所提出的技术的由激光雷达点云210描绘的环境100内标识的对象312被分类为静止对象和运动对象的分类316。C.示例性实施例图4呈现了本文中所提出的技术的第一示例性实施例,其被图示为检测激光雷达点云210中所描绘的对象312的运动的示例性方法400。示例性方法400可以实现为例如存储在设备的存储器设备(诸如存储器电路、硬盘驱动器的磁盘、固态存储设备、或者磁盘或光盘)中并且被组织成当执行在设备的处理器上时引起设备能够根据本文中所提出的技术来操作的指令的集合。示例性方法400在402处开始并且包括在设备的处理器上执行404指令。具体地,这些指令可以被配置为映射406相应激光雷达点214。已经实现了根据相应时间点212处的激光雷达点云210的环境100中存在的对象312的标识和运动分类,示例性方法400将本文中所提出的技术应用于对象321的运动的分类,并且因此在418处结束。图5呈现了本文中所提出的技术的第二示例性实施例,其被图示为被配置为对环境100的激光雷达点云210中所描绘的对象312的运动进行分类的示例性系统506。示例性系统506可以被实现为例如存储在设备502的存储器部件中并且被配置为当在设备502的处理器504上执行时引起设备502根据本文中所提出的技术来操作的指令。示例性系统506包括对象标识器508,对象标识器508被配置为将激光雷达点云210中的相应激光雷达点214映射302到三维体素空间304中的体素306,并且标识308由共享三维体素空间304内的邻接的体素306的体素簇表示的至少一个对象312。示例性系统506还包括对象运动分类器510,对象运动分类器510被配置为:对于激光雷达点云210中的相应激光雷达点214,将激光雷达点214与所选择的对象312相关联,根据所选择的对象312对激光雷达点214的运动进行分类;以及对于相应对象312,根据与对象312相关联的相应激光雷达点214的运动来对对象312的运动进行分类。示例性系统506的这些部件的交互可以使得设备502能够根据本文中所提出的技术来实现由激光雷达点云210中的激光雷达点214表示的对象312的分类316。又一实施例涉及包括被配置为应用本文中所提出的技术的处理器可执行指令的计算机可读介质。这样的计算机可读介质可以包括例如包含有形设备的计算机可读存储介质,诸如存储器半导体(例如使用静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、和/或同步动态随机存取存储器(SDRAM)技术的半导体)、硬盘驱动器的磁盘、闪存存储器设备、或者磁盘或光盘(诸如CD-R、DVD-R或软盘),以对在由设备的处理器执行时引起设备实现本文中所提出的技术的计算机可读指令的集合进行编码。这样的计算机可读介质也可以包括(作为不同于计算机可读存储介质的技术种类的)各种类型的通信介质,诸如能够通过各种物理现象(例如电磁信号、声波信号、或光信号)以及在各种有线场景(例如经由以太网或光纤线缆)和/或无线场景(例如无线局域网(WLAN)(诸如WiFi)、个域网(PAN)(诸如蓝牙)、或者蜂窝或无线电网络)中传播的信号,并且其对在设备的处理器上执行时引起设备实现本文中所提出的技术的计算机可读指令进行编码。图6中图示能够以这些方式设计的示例性计算机可读介质,其中实现方式600包括计算机可读数据604被编码在其上的计算机可读介质(602)(例如CD-R、DVD-R或者磁盘或硬盘驱动器)。该计算机可读数据604又包括被配置为根据本文中所阐述的原理来操作的计算机指令的集合606。在一个这样的实施例中,计算机可执行指令606可以被配置为根据激光雷达点云210来执行对对象312的运动进行分类的方法608,诸如图4的示例性方法400。在另一这样的实施例中,处理器可执行指令606可以被配置为根据激光雷达点云210来实现用于对对象312的运动进行分类的系统,诸如图5的示例性系统506。该计算机可读介质的一些实施例可以包括被配置为存储以这一方式配置的处理器可执行指令的计算机可读存储介质(例如硬盘驱动器、光盘、或闪存存储器设备)。本领域普通技术人员能够想到被配置为根据本文中所提出的技术来操作的很多这样的计算机可读介质。D.变型可以想到本文中所讨论的技术的很多方面的变型,并且一些变型相对于这些和其他技术的其他变型可以呈现另外的优点和/或减小缺点。另外,一些变型可以组合实现,并且一些变型可以通过协同合作来特征化另外的优点和/或减小的缺点。可以在各种实施例(例如图4的示例性方法400以及图5的示例性系统506)中并入变型以向这样的实施例给予单独的和/或协同的优点。D1.场景在这些技术的实施例之间可以变化的第一方面涉及可以在其中利用这样的技术的场景。作为该第一方面的第一变型,本文中所提出的技术可以用于评估很多类型的对象,包括在环境100中行驶的车辆102,诸如在道路上行驶的汽车和自行车或者在空中行驶的飞机;在诸如运动捕获环境100等区域中运动的个体;以及在诸如弹道等空间中运动的发射体。作为该第一方面的第二变型,本文中所提出的技术可以与多种类型的激光雷达信号204一起利用,包括可见光、近红外光或红外光、近紫外光或紫外光。各种波长的激光雷达信号204可以呈现在不同场景中可能有利的各种属性,诸如通过各种介质(例如变化的湿度的水或空气)的通道、对各种形式的界面的敏感性、以及可实现的分辨率。作为该第一方面的第三变型,本文中所提出的技术可以与各种类型的激光雷达发射器202和/或激光雷达检测器208(诸如各种类型的激光器和光度检测器)一起利用。另外,可以在其他技术(例如被提供用于车辆导航系统中的范围检测的激光雷达设备也可以适合用于运动和静止对象的分类)的执行中使用这样的设备,并且可以同时或者按顺序应用于两组技术。作为该第一方面的第四变型,根据本文中所提出的技术的对象312的分类316可以以很多方式可用。作为第一示例,作为运动或静止的对象312的分类316可以可用于标识呈现对象312的对应图像的区域。基于对象的图像评估技术因此可以专注于图像的具体区域,例如以便执行对象312的自动评估和/或标识;以便标识要被编辑的图像的部分(例如在与要对公众可用的图像中的对象312相关联的个体的隐私的促进中);和/或以便补偿图像中的对象312的呈现(例如去除被分类为运动对象的对象以避免模糊图像的区域同时重构环境100的三维模型)。作为第二示例,对象312的分类316可以促进对象识别,例如根据对象312的运动将相应对象312分类为某种对象类型。例如,设备可以包括被训练成选择对象312的对象类型分类的对象类型分类器,并且设备可以调用对象类型分类器类以将对象312分类成对象312的运动的分类316的视图中的对象类型。本领域普通技术人员可以想到根据本文中所提出的技术的用于对象312的分类316的各种这样的场景和/或用途。D2.体素映射和聚类在本文中所提出的技术的实施例之间可以变化的第二方面涉及激光雷达点云210的激光雷达点214到三维体素空间304的体素306的映射302。作为该第二方面的第一变型,映射302可以涉及各种尺寸的三维体素空间304。例如,体素306可以跨三维体素空间304上均匀地间隔,或者其尺寸和/或密度可以变化。在实施例中,为了补偿激光器随着距离的潜在消失,三维体素空间304中来自另外激光雷达检测器208的体素306可以具有比更接近激光雷达检测器208的体素306的大尺寸。作为该第二方面的第二变型,映射302可以涉及在三维体素空间304的所选择的体素306与其他体素306之间的邻接阈值的比较。例如,可以确定被映射到至少一个激光雷达点214的第一体素306是否在被映射到至少一个激光雷达点214的第二体素306的三个体素的邻接阈值内,然后确定体素306共享邻接,并且因此是相同的体素簇的部分。作为另外的变型,三维体素空间304内的轴可以具有不同的邻接阈值;例如三维体素空间304内的第一轴可以具有第一邻接阈值,而三维体素空间304内的第二轴可以具有不同于第一邻接阈值的第二邻接阈值。在一个这样的变型中,可以将三维体素空间304内平行于激光雷达检测器208的视图的轴选择为具有明显更大邻接阈值,这是因为沿着这一轴连接的体素306可能很难检测基于表面的激光雷达反射206(例如接近激光雷达检测器208的第一体素306可以通过被定向为平行于视图的轴并且因此没有通过反射激光雷达检测到的对象312的连接件来连接到远离激光雷达检测器208的第二体素306)。作为该第二方面的第三变型,映射302可以确定两个或多个体素簇连接。例如,附近的体素簇可以通过并非高度反射的对象312的部分来连接,从而产生几个激光雷达点214。激光雷达检测器208可以推断,如果体素簇接近并且呈现为一起运动,则体素簇有可能连接并且因此表示相同的对象312。可以例如通过以下方式来实现确定连接:选择第一体素簇,执行三维体素空间304的最近邻搜索(例如广度优先搜索),并且寻找呈现为连接到第一体素簇的第二体素簇。这些和其他变型可以促进根据本文中所提出的技术的激光雷达点214到三维体素空间304中的体素306的映射。D3.对激光雷达点运动分类在本文中所提出的技术的实施例之间可以变化的第三方面涉及激光雷达点214的运动的分类。作为该第三方面的第一变型,可以通过对三维体素空间304内的相应体素306的运动进行分类来执行分类。例如,对于相应体素306,可以执行对激光雷达点云210中的至少一个激光雷达点214随着时间对体素的占用时长的测量。如果确定体素306的占用时长在占用时间变化阈值内(例如如果体素306被至少一个激光雷达点214占用超过阈值持续时间),则可以将体素306分类为静止,以及将激光雷达点214映射到体素306。相反,可以将未被映射到被分类为静止的体素306的激光雷达点214分类为运动。作为一个这样的变型,可以测量占用时长并且将其与三维体素空间304的相应体素306的占用时长的标准偏差相比较,并且可以将在超过一个标准偏差的时间内呈现占用状态的体素306分类为静止。这一变型可以是有利的,例如用于减小没有被转换成运动的激光雷达点214的位置随着时间的小的变化的影响,诸如旋转、形状变化、或者检测器抖动。作为该第三方面的第二变型,并非执行根据预定义的计算对激光雷达点214和/或对象312的运动分类,而是可以通过运动分类器来执行分类,运动分类器已经被训练成选择激光雷达点214和/或对象312的运动的分类,诸如人工神经网络或遗传算法。可以想到用于根据本文中所提出的技术来对激光雷达点214和/或对象312的运动分类的很多这样的变型。D4.另外的处理在本文中所提出的技术的实施例之间可以变化的第四方面涉及能够在对象312的运动的分类316期间应用的另外的处理。作为该第四方面的第一变型,在对相应对象312的运动进行分类之后,设备可以将激光雷达点云210的激光雷达点214映射到相应对象312。也就是说,在实现基于激光雷达点214的聚合的联合分类的对象312的分类316之后,然后可以将各个激光雷达点214重新映射到对象312以便验证激光雷达点云210的激光雷达点214基本上全部在分类中被考虑。可以将没有被映射到任何对象312的少量激光雷达点214作为伪像抛弃,但是没有被映射到任何对象312的大量激光雷达点214可以驱使重新计算,有可能使用调整后的参数(例如不同的体素尺寸)。作为该第四方面的第二变型,设备可以针对相应对象312,根据与对象312相关联的激光雷达点云210中的激光雷达点214来估计对象312的位置和定向。替选地或者附加地,设备可以针对相应对象312估计在激光雷达点云的时间轴上对象312的至少一个矢量(例如估计在时间周期上对象312的速度或者加速度)。这些类型的矢量可以提供能够通知例如对象312的运动的即将来临的变化的预测和/或能够促进激光雷达点云210的激光雷达点214到相应对象312的合并的数据。另外,在一些变型中,设备可以从与对象312相关联的至少一个激光雷达点214中减去对象312的矢量,从而提供与激光雷达点214相对于对象312的相对运动有关的信息(例如对象312在运动期间的定向和/或形状的变化)。作为该第四方面的第三变型,可以通过在具有车辆矢量(例如方向、速度和/或方位)的车辆102上安装的激光雷达检测器208来检测激光雷达点云210。可以从在环境100中检测到的对象312的矢量中减去车辆102的车辆矢量,例如以便根据对象312的运动的估计来低估激光雷达检测器208的运动,从而将相对于激光雷达检测器208的运动的映射转换成相对于环境100的运动的映射。图7呈现对该第四方面的一些这样的变型进行特征化的示例性场景700的图示。在该示例性场景700中,在检测激光雷达点云210之后,在各个时间点212将相应点云214与环境100中的对象312相关联。这一相关联可以区分在激光雷达点云210的投影314中可能模糊的对象312;例如,在相同的方向中但是彼此紧随地运动的两个车辆当在时间上聚合时可能产生合并投影314,但是可以通过在不同的时间点212将激光雷达点216与所标识的对象312相关联进行区分。本领域普通技术人员可以想到用于根据本文中所提出的技术另外处理激光雷达点云210的激光雷达点214的很多这样的技术。E.计算环境图8和以下讨论提供对实现本文中所给出的规定中的一项或多项的实施例的合适的计算环境的简要的一般描述。图8的操作环境仅是合适的操作环境的一个示例,而非意在建议对于操作环境的用途或功能的范围的任何限制。示例计算设备包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等)、多处理器系统、消费者电子设备、小型计算机、大型计算机、包括以上系统或设备中的任何设备或系统的分布式计算环境等。虽然没有被要求,但是在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中描述了实施例。可以经由(以下讨论的)计算机可读介质来分配计算机可读指令。计算机可读指令可以实现为执行特定任务或实现特定抽象数据类型的程序模块,诸如功能、对象、应用编程接口(API)、数据结构等。通常,可以在各种实施例中根据需要来组合或分配计算机可读指令的功能。图8图示包括被配置为实现本文中所提供的一个或多个实施例的计算设备802的系统800的示例。在一个配置中,计算设备802包括至少一个处理单元806和存储器808。取决于计算设备的精确配置和类型,存储器808可以是易失性的(诸如例如RAM)、非易失性的(诸如例如ROM、闪存存储器等)或者这两者的组合。图8中用虚线804图示这一配置。在其他实施例中,设备802可以包括另外的特征和/或功能。例如,设备802还可以包括另外的(例如可移除和/或非可移除的)存储装置,包括但不限于磁性存储装置、光学存储装置等。图8中用存储装置810图示这样的另外的存储装置。在一个实施例中,用于实现本文中所提供的一个或多个实施例的计算机可读指令可以在存储装置810中。存储装置810也可以存储用于实现操作系统、应用程序等的其他计算机可读指令。计算机可读指令可以加载到存储器808中以用于例如由处理单元806执行。本文中所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括通过用信息(诸如计算机可读指令或其他数据)的存储的任何方法或技术所实现的易失性和非易失性、可移除和非可移除介质。存储器808和存储装置810是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存存储器或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光学存储装置、磁盒、磁带、磁盘存储装置或其他磁性存储设备、或者能够用于存储所期望的信息并且能够由设备802访问的任何其他介质。任何这样的计算机存储介质可以是设备802的一部分。设备802还可以包括使得设备802能够与其他设备通信的(一个或多个)通信连接816。(一个或多个)通信连接816可以包括但不限于调制解调器、网络接口卡(NIC)、集成的网络接口、射频传输器/接收器、红外端口、USB连接、或者用于将计算设备802连接到其他计算设备的其他接口。(一个或多个)通信连接816可以包括有线连接或者无线连接。(一个或多个)通信连接816可以传输和/或接收通信介质。术语“计算机可读介质”可以包括通信介质。通信介质通常用“经调制的数据信号”(诸如载波或其他传输机制)实施计算机可读指令或其他数据,并且包括任何信息递送介质。术语“经调制的数据信号”可以包括使得其一个或多个特性以能够在信号中对信息编码的方式来设置或改变的信号。设备802可以包括(一个或多个)输入设备814,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。设备802中还可以包括(一个或多个)输出设备812,诸如一个或多个显示器、扬声器、打印机、和/或任何其他输出设备。(一个或多个)输入设备814和(一个或多个)输出设备812可以经由有线连接、无线连接或者其任意组合连接到设备802。在一个实施例中,来自另一计算设备的输入设备或输出设备可以用作用于计算设备802的(一个或多个)输入设备814或(一个或多个)输出设备812。计算设备802的部件可以通过各种互连(诸如总线)而连接。这样的互连可以包括外围部件互连(PCI)、诸如PCI总线、通用串行总线(USB)、防火墙(IEEE1394)、光学总线结构等。在另一实施例中,计算设备802的部件可以通过网络互连。例如,存储器808可以包括位于不同的通过网络互连的物理位置的多个物理存储器单元。本领域技术人员应当认识到,用于存储计算机可读指令的存储设备可以跨网络分布。例如,经由网络818可访问的计算设备820可以存储用于实现本文中所提供的一个或多个实施例的计算机可读指令。计算设备802可以访问计算设备820并且下载计算机可读指令的部分或全部以用于执行。替选地,计算设备802可以根据需要下载若干计算机可读指令,或者可以在计算设备802处执行一些指令并且可以在计算设备820处执行一些指令。F.术语的用途虽然已经用特定于结构特征和/方法动作的语言描述了主题,然而应当理解,所附权利要求中定义的主题并一定限于以上描述的具体的特征或动作。相反,以上描述的具体的特征和动作被公开作为实现权利要求的示例形式。如本申请中所使用的,术语“计算机”、“模块”、“系统”、“接口”等通常意在指代计算机相关的实体,其是硬件、硬件和软件的组合、软件、或者执行中的软件。例如,部件可以是但不限于在处理器上运行的过程、处理器、对象、可执行文件、执行线程、程序和/或计算机。作为说明,在控制器上运行的应用以及控制器二者都可以是部件。一个或多个部件可以驻留在处理器和/或执行线程内,并且部件可以位于一个计算机上和/或分布在两个或更多个计算机之间。另外,可以通过使用标准的编程和/或工程技术来产生控制计算机实现要求保护的主题的软件、固件、硬件、或者其组合,来将要求保护的主题实现为方法、装置、制造品。本文中所使用的术语“制造品”意在包括从任何计算机可读设备、载体或介质可访问的计算机程序。当然,本领域技术人员应当认识到,可以在不偏离要求保护的主题的范围或精神的情况下,对本配置做出很多修改。本文中提供了实施例的各种操作。在一个实施例中,所描述的操作中的一个或多个操作可以构成存储在一个或多个计算机可读介质上的计算机可读指令,这些计算机可读指令在由计算设备执行时将使得计算设备执行所描述的操作。描述其中一些或全部操作的顺序不应当被理解为暗示这些操作必须依赖于顺序。本领域技术人员在受益于本描述的情况下将理解备选的排序。另外,应当理解,本文中所提供的每个实施例中不一定需要存在所有操作。另外,词语“示例性”在本文中用于表示用作示例、实例或说明。本文中描述为“示例性”的任何方面或设计不一定被理解为比其他方面或设计有利。相反,词语“示例性”的使用意在以具体的方式来呈现概念。如本申请中所使用的,术语“或者”意在表示包括性的“或者”而非排他性的“或者”。也就是说,除非另外指出或者根据上下文很清楚,否则“X采用A或者B”意在表示任何自然的包括性排列。也就是,如果X采用A;X采用B;或者X采用A和B二者,则在任何上述示例下满足“X采用A或者B”。另外,本申请和所附权利要求中所使用的冠词“一”通常可以理解为表示“一个或多个”,除非另外规定或者根据上下文很清楚指代单数形式。另外,虽然关于一个或多个实现来示出和描述了本公开内容,然而本领域其他技术人员基于对本说明书和附图的阅读和理解很清楚等同替选和修改。本公开内容包括所有这样的修改和替选并且仅受所附权利要求的范围的限制。特别地,关于由以上描述的部件(例如元件、资源等)执行的各种功能,除非另外指出,用于描述这样的部件的术语意在对应于执行所描述的部件的规定功能的任何部件(例如在功能上等同的部件),即使在结构上并不等同于执行本公开内容的本文中说明的示例性实现中的功能的所公开的结构。另外,虽然可以关于若干实现方式中的仅一个实现方式来公开本公开内容的特定特征,然而可以将这样的特征与对于任何给定或者特定应用而言可以是理想的并且有利的其他实现的一个或多个其他特征组合。另外,为了扩展术语“包括”,在权利要求的详细描述中使用“具有”、“含有”、“包含”或其变型,这样的术语意在以与术语“包含”类似的方式是包括性的。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1