HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

移动机器人和控制移动机器人照明系统的方法与流程

2021-01-19 16:01:21|276|起点商标网
移动机器人和控制移动机器人照明系统的方法与流程
本发明涉及一种移动机器人,以及一种控制由移动机器人上的多个光源提供的照明水平的方法。
背景技术:
:诸如真空吸尘器机器人之类的移动机器人越来越多地采用视觉系统来帮助他们导航和了解其环境。使用视觉系统有很多好处,例如允许机器人更好地了解其所在的环境,并允许结构化的行进路径。但是,使用视觉系统的一个缺点是它们在弱光条件下的性能不佳。结果,使用视觉系统的移动机器人经常需要照明系统或前灯,以提高由视觉系统捕获的图像的质量。gb2529846中描述了带有照明系统的机器人的示例。在此示例中,移动机器人包括位于机器人侧面的手柄内的灯。由于用于移动机器人的视觉系统有许多好处,因此一直在寻求针对移动机器人应用的视觉系统以及照明系统的改进。技术实现要素:本发明的第一方面提供了一种移动机器人,包括:视觉系统,所述视觉系统包括相机和照明系统;所述照明系统包括多个光源,所述多个光源布置成向移动机器人周围的区域提供照明水平;以及用于控制照明系统的控制系统。控制系统基于由相机捕获的图像;捕获图像时相机的曝光时间;和机器人旋转信息来调整由多个光源提供的照明水平。结果,移动机器人为其周围环境提供了动态照明,仅照明了需要照明以改善来自相机的图像的质量的区域,并且还能够快速偏移光以考虑机器人的旋转。所述控制系统可以将所述相机的曝光时间与阈值曝光时间进行比较,并且如果所述曝光时间小于阈值曝光时间持续预定时间段,则所述控制系统减小提供给所述多个光源的功率。结果,仅当曝光时间超过阈值时才激活照明系统。这意味着在正常照明条件下,照明系统通常将保持关闭状态,以防止不必要的功率浪费,从而减少机器人的运行时间。阈值曝光时间可以是0.05至0.3秒,并且可以是0.15秒。预定时间段可以是1至5秒,并且可以是3秒。已经发现这些参数特别有利于在绝对需要时提供照明但是同时尽可能地节省电池寿命之间提供最佳平衡。控制系统可以将图像划分为多个图像片段。结果,可以分别处理图像的不同区域,从而允许在机器人周围环境的不同区域内独立控制照明。图像片段的数量对应于所述多个光源中的光源的数量。这样,可以容易地将每个光源归因于能够照明特定片段,并且简化了针对特定片段的照明调节。控制系统可以计算多个图像片段中的每个图像片段的平均亮度,并且可以使用片段中的平均像素强度来计算平均亮度。所述控制系统可以将每个图像片段的所计算的平均亮度与上亮度阈值和下亮度阈值进行比较。如果针对特定图像片段所计算的平均亮度低于下亮度阈值,则所述控制系统可以指示增大到能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。如果针对特定图像片段所计算的平均亮度高于上亮度阈值,则所述控制系统指示减小到能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。如果针对特定图像片段所计算的平均亮度在上亮度阈值和下亮度阈值之间,则不改变能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。当所述控制系统指示增大或减小到所述多个光源中的一个或多个的功率时,针对该图像片段的光变化请求值可以被增大,并且所述控制系统可以将新的光变化请求值与预定请求值阈值进行比较。结果,照明水平变化之间的过渡将是平滑的。此外,在应用照明变化之前会引入轻微延迟,因此光不会振荡。所述控制系统可以基于机器人旋转信息通过沿与机器人旋转的方向相反的方向偏移所述多个光源的功率水平,来调整由所述多个光源提供的照明水平。这提供了一种简单而有效的调整方法,可以进行快速调整以考虑移动机器人的旋转。旋转信息可以通过陀螺仪系统提供给控制系统。陀螺仪系统可以包括惯性测量单元(imu)和里程表中的一个或两个。当所述移动机器人正在操作时,所述控制系统可以针对由所述相机捕获的每个图像重复地调整由所述多个光源提供的照明水平。结果,由照明系统提供的照明能够快速考虑并解决它在移动机器人导航环境时遇到的环境照明的变化。本发明的第二方面提供了一种控制由移动机器人上的多个光源提供的照明水平的方法,其中,所述方法包括基于以下来调整由多个光源提供的照明水平:由运载工具上的相机捕获的图像;捕获图像时相机的曝光时间;和机器人旋转信息。结果,由移动机器人为其周围环境提供的照明可以是动态的,仅照明了需要照明以改善来自相机的图像的质量的区域,并且还能够快速偏移照明光以考虑机器人的旋转。方法可以包括以下步骤:将所述相机的曝光时间与阈值曝光时间进行比较,并且如果所述曝光时间小于所述阈值曝光时间持续预定时间段,则减小提供给所述多个光源的功率。结果,仅当曝光时间超过阈值时才激活照明。这意味着在正常照明条件下,照明系统通常将保持关闭状态,以防止不必要的功率浪费,从而减少机器人的运行时间。方法可以进一步包括将所述图像划分成多个图像片段。结果,可以分别处理图像的不同区域,从而允许在机器人周围环境的不同区域内独立控制由多个光源提供的照明。方法还可以包括计算所述多个图像片段中的每个图像片段的平均亮度的步骤。所述方法还可以包括将每个图像片段的所计算的平均亮度与上亮度阈值和下亮度阈值进行比较。如果针对特定图像片段所计算的平均亮度低于下亮度阈值,则该方法可以包括增大到能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。如果针对特定图像片段所计算的平均亮度高于上亮度阈值,则该方法可以包括减小到能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。如果针对特定图像片段所计算的平均亮度在上亮度阈值和下亮度阈值之间,则该方法可以包括不改变能够照亮与该图像片段相对应的区域的多个光源中的一个或多个的功率。增大或减小到所述多个光源中的一个或多个的功率的步骤可以包括增大针对该图像片段的光变化请求值,并且将新的光变化请求值与预定请求值阈值进行比较。结果,照明水平变化之间的过渡将是平滑的。此外,在应用照明变化之前会引入轻微延迟,因此光不会振荡。所述方法可以包括基于机器人旋转信息通过沿与移动机器人旋转的方向相反的方向偏移所述多个光源的功率水平,来调整由所述多个光源提供的照明水平。这提供了一种简单而有效的调整方法,可以进行快速调整以考虑移动机器人的旋转。所述方法可以包括从所述移动机器人的陀螺仪系统中获得机器人旋转信息的步骤。所述方法可以包括针对由所述相机捕获的每个图像重复地调整由所述多个光源提供的照明水平。结果,照明能够快速考虑并解决它在移动机器人导航环境时遇到的环境照明的变化。附图说明为了可以更容易地理解本发明,现在将参考以下附图,通过示例的方式描述本发明的实施例,其中:图1示出了移动机器人;图2示出了图1的移动机器人的视觉系统的分解图;图3示出了通过包括图2的视觉系统的图1的移动机器人的一部分的横截面;图4示出了用于视觉系统的透镜模块的横截面;图5示出了通过图2和3的视觉系统的一部分的横截面;图6示出了来自图2和图3的视觉系统的视觉系统支架;图7a是由图2和图3的视觉系统捕获的球面图像的表示,图7b是图7a的图像在展开之后的图像的表示;图8示出了pcb上的传感器支架;图9示出了图8的传感器支架的底视图;图10示出了通过图9的传感器支架的横截面;图11示出了移动机器人的示意性表示;图12是示出用于移动机器人的照明算法的输入和输出的流程图;图13是示出图12的照明算法中的步骤的流程图;和图14是示出图13的照明算法的一部分的替代步骤的流程图。具体实施方式图1示出了机器人真空吸尘器1,其包括主体2和分离装置4。主体2包括呈连续坦克履带形式的牵引单元5,以及吸尘器头6,吸尘器头6容纳有刷杆,脏空气可通过吸尘器头6被吸入机器人真空吸尘器1并进入分离装置4。一旦在分离装置4中清除了空气中的污垢,空气便从分离装置21中出来并穿过主体2,该主体2容纳用于产生气流的马达和风扇。然后,空气通过出口从机器人1排出。视觉系统8从移动机器人1的主体2的顶表面3突出。视觉系统8包括相机12和照明系统14。相机12是全向相机,能够捕获机器人1周围的环境的360°视图。相机12可以是例如鱼眼镜头相机或全景环形透镜(pal)相机。机器人1包括体现在机器人1的软件和电子器件内的控制系统,该控制系统能够使用同时定位和地图绘制(slam)技术来处理由视觉系统8捕获的图像,并允许机器人1理解、解释并自主导航本地环境。该控制系统还使用从机器人1上提供的多个其他传感器(例如碰撞传感器)收集的信息,并且还包括多个位置传感器,例如位置敏感设备(psd)和/或飞行时间(tof)传感器。psd和/或tof传感器容纳在位于分离装置4侧面的传感器盒10内。传感器盒带有透明盖,psd和tof传感器可以通过透明盖发射和接收诸如红外(ir)光之类的光。传感器盒10容纳有指向不同方向的传感器阵列,使得不仅可以在机器人的前方而且可以向侧面检测障碍物。面向下的传感器也可以检测地板表面的下落,通常称为悬崖传感器,从而使机器人能够在离开楼梯之类的下落之前停止和/或调整其行进方向。尽管一些机器人使用可移动的保险杠部分作为物理接触传感器,但是该机器人1具有碰撞传感器,其检测分离的底盘与主体2的本体部分之间的相对运动以记录与障碍物的物理接触。图2示出了移动机器人1的视觉系统的分解图。视觉系统8的各个部分已经沿着标记为x的虚线轴线在轴向方向上彼此分离。视觉系统8包括形成相机12和照明系统14二者的多个部件,包括透镜模块20,透镜模块保持器22,视觉系统支架24,在其上设置有图像传感器31的印刷电路板(pcb)30,传感器支架32,在其上设置有发光二极管(led)27形式的多个光源的第二pcb28,以及透光盖34。透镜模块20是鱼眼镜头模块,并且其通过传感器支架32安装到图像传感器31。传感器支架32通过螺钉33安装到图像传感器31上方的pcb30。传感器支架32是安装在图像传感器31和透镜模块20之间的机械部件,其目的是对准透镜模块20和图像传感器31。图像传感器31可以是相机中通常使用的任何传感器之一,例如图像传感器31可以是电荷耦合器件(ccd)传感器或互补金属氧化物半导体(cmos)传感器。稍后相对于图8、9和10描述传感器安装到传感器支架32的替代实施例。八个led27以环形布置在pcb28上。pcb28限定孔,透镜模块20可以延伸穿过该孔,使得led27围绕透镜模块20布置成环形。当然,将理解的是,led的数量可以不同,并且视觉系统可以取决于视觉系统的照明要求而包括两个或更多个led27。led产生电磁光谱的可见部分中的光,但是在替代实施例中,led可以产生光谱的其他区域中的光,例如红外或近红外光。视觉系统支架24用于将组装的视觉系统8安装到移动机器人1。视觉系统支架24包括八个孔26,八个led可以通过其突出。将理解的是,孔26的数量也可以不同以匹配led26的数量。视觉系统支架24还包括多个翅片25,其定位成使得翅片25位于每对相邻的孔26之间。这些翅片25用于分割由led27产生的光,从而使光更具方向性。视觉系统支架24由金属(例如镁)形成,并用作散热器以从led27吸走热量。这有助于通过减小led27过热的风险来延长led27的寿命,并且还停止了来自led27的热量损坏透镜模块20。为了提高视觉系统支架24作为散热器的效率,散热器29通过散热器支架24a固定到视觉系统支架24。透镜模块保持器22装配在透镜模块20周围,并用于将透镜模块20安装到视觉系统支架24。反射表面23设置在凸缘的下方,该凸缘从透镜模块支架22的外部径向向外突出。该反射表面23形成半抛物面环形镜,该半抛物面环形镜用于向外反射从led27发出的光,这将在下面更详细地描述。透光盖34限定孔35,透镜模块保持器22和透镜模块20的顶部可通过该孔35突出。因此,透光盖34覆盖并保护视觉系统8的照明系统14的一部分,但是使相机12暴露以捕获尽可能高质量的图像。图3示出了通过移动机器人1的视觉系统8和一部分的横截面。视觉系统8部分地在移动机器人1的上表面3上方突出。图像传感器31位于机器人的顶表面3下方,并且透镜模块从图像传感器31的顶表面延伸至视觉系统8的最顶部。通过鱼眼镜头模块示例的横截面如图4所示。多个透镜42、44、46、48保持在透镜模块本体40内。在图3中可以看出,led27位于移动机器人的顶表面3下方,这有助于保护led和pcb免于损坏。但是,从led27发出的光通过透光盖35向上和向外定向,以照亮移动机器人周围的环境,如标记为y的区域所示。图5示出了透镜模块保持器22上的反射表面23如何是半环形抛物面镜,其用于将来自led27的光沿远离透镜模块的方向引导。结果,来自led27的光不能直接行进到透镜模块中,这将有效地以过高的亮度使视觉系统失明。反射表面23设置在从透镜模块保持器22的外部径向向外突出的凸缘的下方,并且该凸缘径向向外延伸超过led27,使得来自led27的光不能直接向上传播。如果来自led27的光能够直接向上传播,则这将导致照明集中在移动机器人上方的天花板上的亮点,这又将有效地以过高的亮度使视觉系统失明。代替地,示例性照明射线u、v和w示出了反射表面23如何将光径向向外反射到移动机器人1周围的环境中。而且,如图3所示,由于反射表面23在移动机器人的顶表面3的上方稍稍延伸,所以来自led27的光能够在与机器人1的顶表面3平行的水平方向上延伸。结果,照明系统甚至能够照亮移动机器人侧面的区域。图6示出了视觉系统支架24的俯视图,led27通过每个孔26突出。每个led产生用于照亮特定照明区域ah的光。例如,led27a照亮照明区域a,led27b照亮标记为b的照明区域,依此类推。翅片25强调了这种分割效果。翅片25的顶部被成形为使得当组装视觉系统8时,翅片的顶部遵循反射表面的弯曲形状,因此这减少了任何光从任何特定led泄漏到其照明区域之外。每个led27a-h是可单独控制的,因此仅在必要时才可以在环境的各个部分中提供照明。这有助于最大程度地减少浪费的功率,从而延长产品的电池寿命。延长电池寿命可以使移动机器人有更多的运行时间,并在需要返回充电站进行充电之前覆盖更多的地面区域。照明区域ah一起总计为完整的可照明区域,该完整的可照明区域围绕移动机器人1延伸了整个360°。在一些实施例中,led可以被分组在一起以简化控制。例如,led27a和27b可以是第一组,27c和27d是第二组,27e和27f是第三组,然后27g和27h是第四组。这些组然后可以是可单独控制的。与所有八个led27都是可单独控制的八分体照明控制相反,这为机器人提供了象限照明控制。将理解的是,可以根据视觉系统和移动机器人的要求来选择led组的其他分组和数量。图7a示出了由视觉系统8捕获的球形图像70的表示。图像70可以被分成与led照明区域a-h相对应的多个片段72。在处理过程中,球面图像70如箭头q和r所示被分开和展开,并且获得了显示移动机器人1周围全360°视角的展开矩形图像74。球形图像70中的片段72然后对应于矩形图像74中的片段76。当机器人1正在操作时,照明系统14可以用于照亮由相机捕获的与标记为a-h的片段相对应的环境的任何区域。例如,如果机器人前方的区域较暗,例如当机器人从光线充足的房间进入较暗的房间时,则面向前的片段a和b在图像70和74中会显得更暗。因此,机器人的控制系统可以增加led27a和27b的功率,以使它们在a和b片段提供更多的照明,并且机器人能够继续。下面将参照图11至图14描述关于照明系统的控制的更多细节。图8示出了传感器支架82的替代实施例,该传感器支架82安装至pcb80上的图像传感器。先前相对于图2描述的传感器支架32通过螺钉33安装到图像传感器31和pcb30。螺钉有助于使图像传感器31和传感器支架32以及因此透镜模块保持良好的对准。然而,在图8的替代实施例中,没有使用螺钉将传感器支架82安装到图像传感器。这样,替代实施例的传感器支架82可以被称为被动对准传感器支架82。被动对准传感器支架82设置有可与透镜或透镜模块接合的接合部分83。在该实施例中,接合部分83设置有螺纹,该螺纹与透镜或透镜模块上的类似螺纹互补,从而可以将透镜或透镜模块拧到被动对准传感器支架82上。被动对准传感器支架82是安装在图像传感器与透镜或透镜模块之间的机械部件。与先前描述的传感器支架32一样,被动对准传感器支架82的目的是使透镜或透镜模块与图像传感器对准,但是在这种情况下,被动对准传感器支架82必须仅通过机械手段并且在没有外部输入(例如通过螺钉)的情况下在图像传感器上产生居中的聚焦图像。传感器支架82还必须允许聚焦所需的相对运动。图9示出了被动对准传感器支架82的底视图,并且图10示出了沿图9所示的线p-p穿过被动对准传感器支架的横截面。由于作用在图像传感器侧面上的第一可变形塑料元件84,实现了x轴对准。这产生了由箭头m表示的力,该力将图像传感器压在集成在被动对准传感器支架82的本体中的第一垂直基准86上。类似地,由于作用在图像传感器的另一个侧面上的第二可变形塑料元件88,实现了y轴对准。这产生了由箭头n表示的力,该力将图像传感器压在第二垂直基准89上,该第二垂直基准89也集成在被动对准传感器支架82的本体中。通过将图像传感器压在两个垂直基准86、89上,这会将传感器轴与被动传感器对准支架82的轴对准。关于z轴线,被动对准传感器支架82位于图像传感器封装玻璃的顶部,该玻璃形成了图像传感器的顶层,将其用作第三基准,并允许透镜的光轴与玻璃的法向矢量对准,其对应于透镜的“俯仰”和“偏航”轴线。留下“滚动”轴线可自由旋转以进行聚焦。这组反应产生的对准的公差最小化到透镜、传感器支架和图像传感器封装的制造公差。如前所述,被动对准传感器支架82仅通过被动机械器件就可以使透镜和图像传感器在x和y轴上以及在俯仰和滚动上对准。被动对准传感器支架82的另一个好处是,由于第一和第二可变形塑料元件的弹性,被动对准传感器支架可附接和可拆卸到图像传感器,而不会损坏任何部件。图11示出了移动机器人1的实施例的示意性表示。在移动机器人1的控制系统90中执行照明控制算法。控制系统90包括处理器91,图像处理单元92和导航单元93。控制系统可以包括图11中未示出的用于控制移动机器人1的其他系统的其他单元,例如,控制系统可以进一步包括任务控制单元,以控制由移动机器人执行的任务,例如真空清洁操作。视觉系统8包括相机12和照明系统14。如已经描述的,相机12能够捕获移动机器人1周围的区域的图像。例如,相机12可以是用于捕获天花板的图像的向上定向的相机,用于在机器人1的向前行进方向上捕获图像的面向前的相机,捕获机器人1周围区域的360°视图的全景环形镜头(pal)相机,或者能够捕获机器人1周围区域的360°视图的鱼眼镜头相机。当机器人1位于光线不足的环境中或由相机12捕获的图像对比度差的环境中时,照明系统14能够改善由相机12捕获的图像的质量。示出的照明系统14包括与先前图中所示的led相对应的多个led27a-h。led27a-h中的每一个具有对应的led驱动器94a-h,其用于驱动对led的功率。led27a-h发射相机的传感器能够检测到的任何带宽的光,以提高相机12捕获的图像的质量。例如,led发出的光可以在电磁光谱的可见,近红外(nir)或红外(ir)部分内。已经发现可见光特别有利,特别是因为机器人拥有者能够更容易地确定照明系统正确且有效地起作用。控制系统90还负责控制移动机器人1在其环境内的运动。由视觉系统8收集的图像和其他数据被馈送到控制系统8的导航单元93中。导航单元93可以是例如同时定位和映射(slam)单元。slam单元可用于分析图像,以在图像中所示的机器人1周围区域内找到地标特征。地标特征是高对比度特征,可以在图像内轻松检测到,例如桌子的边缘或相框的拐角。图像的部分或全部分析可以由图像处理单元92执行。然后,地标特征可以被导航单元93用来三角测量并确定环境中机器人的位置或姿势。导航单元93可以使用来自图像的信息以及从移动机器人1中的其他传感器捕获的数据来创建环境的地图,机器人1用来解释和导航该环境。指令从控制系统8发送到驱动系统98,驱动系统98使机器人1运动。驱动系统98在图1中示出为包括左侧(lhs)牵引单元99a和右侧(rhs)牵引单元99b。每个牵引单元99a,99b可以被独立地控制,使得机器人1可以被操纵。例如,如果rhs牵引单元99b在向前方向驱动得比lhs牵引单元99a快,那么机器人将在其向前移动时向左转向,或者,如果lhs和rhs牵引单元99a,99b以相同的速度但以相反的方向驱动,则机器人1将当场转动。移动机器人1还包括传感器系统95,该传感器系统向机器人1提供关于周围环境以及环境内机器人的姿势的信息。传感器系统95包括碰撞传感器96和陀螺仪系统97。陀螺仪系统97包括惯性测量单元(imu)97a和里程表97b。里程表97b从驱动系统98接收数据以提供牵引单元行进的距离的指示(例如,通过使用车轮的转数)。碰撞传感器96使机器人1知道何时与障碍物进行了物理接触。响应于来自碰撞传感器96的信号,机器人可以例如停止和/或调节其位置和轨迹。这防止了机器人1对其自身或与其接触的障碍物造成任何损坏。传感器系统95可以包括在图11中未示出的其他传感器,例如一个或多个接近传感器,诸如psd和/或tof传感器。接近传感器能够指示可能在机器人1附近的任何障碍物。这允许机器人1避免障碍物而不与它们接触。现在将描述关于如何控制照明系统的细节。图12是示出用于控制移动机器人1上的照明系统14的算法100的输入和输出的流程图。照明算法具有三个输入,可用于提供led控制值108:曝光时间102,来自相机12的图像104,和有关机器人旋转的信息106。图12示出了单个led控制值108作为照明算法100的输出,但是将理解,如果多个led的控制需要它,则可以生成一个以上的led控制值108。照明算法100控制照明系统14以提供平衡的光,这使得导航单元93能够在暗区域中可靠地执行。算法100分析相机12捕获的每个单帧,并评估采用来自照明系统14的增强照明的需要。算法执行的频率与相机12捕获帧的频率相同。计算曝光时间102并将其传递给照明算法。仅当计算的曝光时间102超过特定阈值时,照明系统才被激活。这意味着在正常照明条件下,照明系统通常将保持关闭状态,以防止不必要的功率浪费,从而减少机器人的运行时间。通过曝光控制算法来计算曝光时间102,其细节不在本发明的范围内。但是,应该理解,有许多众所周知的方法可以计算曝光时间,例如用于计算曝光值的测光算法,因此对于本文档而言,没有必要详细说明确切的方法。如果机器人1旋转,则算法100使用关于机器人旋转106的信息来移动光。该信息是从陀螺仪系统97获得的。在不使用有关机器人旋转的信息的情况下,该算法将能够相应地调整照明,但是该算法需要花费时间来评估新的图像帧并进行必要的调整。在此调整时间内,图像会出现饱和或非常暗的像素,并且会对机器人的导航产生负面影响。然而,通过使用关于机器人的旋转的信息,该算法能够在与机器人的旋转相反的方向上移动光,以更快地将照明维持在机器人1周围的环境的必要区域中。这样,可以说照明系统向环境提供了动态照明。图13是示出执行算法100期间采用的步骤的流程图。该算法在110开始,并且在112的第一动作是从相机12获得新的帧102并将其划分为片段。框架102将是由图像处理单元92展开的诸如图7b所示的展开的矩形图像。片段对应于先前关于图6、7a和7b讨论的片段和照明区域ah。在步骤114中,如果所计算的曝光时间texp102小于阈值曝光时间tthresh的持续时间长于预定时间段tx,则确定不需要照明系统,并且确定led功率lp在步骤115减少。lp的减小将导致在分析每个帧时led随时间变暗为零,而texp仍小于tthresh。选择此项是为了使照明变化具有平滑且渐变的效果。但是,替代方法是立即关闭led的电源。如果计算的曝光时间texp102不小于阈值曝光时间tthresh的持续时间长于预定时间段tx(即,大于阈值),则确定照明系统是必需的,然后算法继续进行到步骤116,在该步骤中,将下一个片段a-h选择为下一个步骤的关注区域。已经发现150毫秒(0.15秒)的阈值曝光时间tthresh和3秒的预定时间段tx提供了最佳的平衡。但是,可以选择50至300毫秒(0.05至0.3秒)范围内的tthresh,并且可以选择1至5秒范围内的tx。如果机器人需要,可以选择tthresh和tx不在这些范围内的其他值。然后在步骤118中计算所选片段的平均亮度。使用该片段中像素强度的平均值来计算平均亮度。使用以下公式1计算每个片段的平均强度或亮度,其中sw是片段宽度,sh是片段高度。例如,在具有八个片段的1024×128图像中,sw=128和sh=128,或者在不同的实施例中,具有四个片段的1024×128图像中,sw=256和sh=128。此公式计算所有像素的强度总和,然后将其除以该片段中像素的总数。然后,使用下面的公式2将公式1中计算的平均强度分类为平均亮度。使用两个预定参数a和b来确定图像的亮度。如果片段的平均强度在a和b之间,则该片段的亮度被视为正常。如果片段的平均强度高于b,则该片段被认为是亮的。最后,如果片段的平均强度小于a,则该片段被认为是暗的。在步骤120中,如果所选片段的分类平均亮度为“正常”,则算法直接进行到步骤122,在步骤122中进行检查以确定在帧中是否还有剩余片段要处理。如果仍有剩余的片段,则算法返回到步骤116,并选择帧中的下一个片段作为关注区域,并重复亮度计算和分类步骤。替代地,如果在步骤120中所选片段的分类平均亮度为“暗”,则算法改为进行到步骤121a,在步骤121a中,增大用于照亮该片段的led的led功率lp。这是通过向该led27的led驱动器94发送增大的lp值来实现的。然后,算法进行到如前所述的步骤122。替代地,如果在步骤120中所选片段的分类平均亮度为“亮”,则算法改为进行到步骤121b,在步骤121b中,减小用于照亮该片段的led的led功率lp。这是通过向该led27的led驱动器94发送减小的lp值来实现的。然后,算法进行到如前所述的步骤122。一旦处理完帧中的所有片段,算法就在步骤122前进到步骤124,步骤124使用从陀螺仪系统97获得的机器人旋转信息106确定机器人1是否已经旋转。如果机器人尚未旋转,则算法返回到步骤112,从相机获得新的帧104并重复该过程。但是,如果机器人已经旋转,则算法进入步骤126,并在与机器人旋转相反的方向上将led功率(lp)值移动与检测到的机器人旋转角度相应的片段数。例如,如果有八个led片段,则该算法将关联的lp值在与旋转方向相反的每45°旋转偏移1个片段。替代地,如果有四个led片段,则该算法将关联的lp值在与旋转方向相反的每90°旋转偏移1个片段。例如,取图7a和7b中所示的图像片段以及图6中的相应led27a-h,下面的表1的第一行示出了第一机械人姿态中每个leda-h的lp值。在这种姿态下,机器人1前面有暗区域,因此指向机器人1前面的led27a和27b被充分照明,指向机器人前面左右两侧的led27h和27c稍微照明。然后,表1的第二行示出了第二机器人姿态中每个leda-h的lp值,其中机器人已沿顺时针方向旋转了90°,而所有其他因素均保持不变。在顺时针旋转90°之后,指向机器人左手侧的led27c和27d现在面向暗区域,并且由于算法将lp值逆时针偏移了两个片段而被照明。led27a27b27c27d27e27f27g27h姿态10.30.30.100000.1姿态200.10.30.30.1000表1当然,如果机器人的旋转速度足够慢,则算法无需偏移光,因为可以通过亮度计算充分调整照明。这样,仅当旋转速度比预定阈值快时才可以考虑旋转。一旦在步骤126中通过算法将lp值偏移了所需量,则算法返回到步骤112,从相机获得新的帧104并重复该过程。使用图13流程图中列出的步骤的算法可能会导致照明系统生成的光有些“振荡”。当照明系统产生的照明快速变化时,可能会发生振荡。例如,当从亮的环境进入暗区域时,照明的快速增加可能会导致图像显得太亮。为了解决这个问题,该算法将减小照明,进而导致图像显得太暗等等。为了防止这种振荡效应,在更改照明级别之前应稍有延迟,以确保检测到的环境光变化持续存在并持续。此外,应稍微减慢并平滑照明过渡。但是,有必要使机器人对环境光的变化做出足够快的反应,以使其导航系统能够不受阻碍地继续运行。图14是示出图13的照明算法的一部分的替代步骤的流程图,其解决了振荡的问题。步骤118和120与图13中的相同,但是随后的步骤不同。将光增大请求(lir)和光减小请求(ldr)引入此方法。在步骤120中将平均亮度分类为“正常”的情况下,算法进行到步骤130,其中将lir和ldr的值重置为零,并且led功率(lp)保持不变。然后,以与图13中所示算法相同的方式针对每个图像片段重复该算法。在图14中将其表示为步骤160以简化该图。在步骤120中将平均亮度分类为“暗”的情况下,算法进行到步骤140,在步骤140中,增加当前所选片段的lir值。在此示例中,lir值增加了1。然后,在步骤142中,如果满足亮度为“暗”且当前lir值高于预定阈值thrlir的条件,则增大该片段的led功率lp(lp=lp+1),并且lir值重置为零(lir=0)。该算法然后在步骤160中针对每个图像片段重复。在步骤120中将平均亮度分类为“亮”的情况下,算法进行到步骤150,在步骤140中,增加当前所选片段的ldr值。在此示例中,ldr值增加了1。然后,在步骤152中,如果满足亮度为“亮”且当前ldr值高于预定阈值thrldr的条件,则减小该片段的led功率lp(lp=lp-1),并且ldr值重置为零(lir=0)。该算法然后在步骤160中针对每个图像片段重复。一旦已经处理了当前帧或图像的所有片段,则该算法前进到步骤162,在此它以与关于图13中的步骤124和126所描述的相同的方式来调整针对机器人的任何旋转的lp值。一旦已经针对机器人旋转调整了lp值,则算法然后前进到步骤164,在此将所有lp值发送到每个相应的led驱动器。然后,算法再次返回到算法的步骤112,并获取新的帧。因此,总而言之,下面的公式3示出了如何解释图像中的亮度。如果图像暗,则lir将增大。如果亮度正常,则两个光请求lir和ldr都会重置。如果亮度亮,则ldr将增大。通过光变化请求,光水平的变化之间的过渡将是平滑的。另外,在照明变化发生之前,lir和ldr值超过阈值的需求会导致应用变化的延迟。通过在算法中使用此方法,光将不会振荡。该方法的另一个好处是,可以通过变化多个增大/减小请求的阈值thrlir和thrldr轻松调整照明的变化速度。较高的阈值将降低变化速度,而较低的阈值将增加变化速度。值得注意的是,在上述算法中,led功率的变化被描述为+1或-1。这对应于光变化的步骤。光变化的步骤可以定义为可应用于led驱动器的最小变化量。将容易理解,这取决于led驱动器和电特性。例如,如果led灯在0%到100%的范围内,则可以将一个步长定义为1%的变化。可以根据机器人的要求或用户的需求来不同地定义步长变化。光水平步长是所需的光输出和过渡平滑度之间的平衡。光步长应足够小,以使用户不会注意到照明的变化,但也应足够快,以使照明可以在可接受的时间内达到最大光水平以进行图像处理。替代地,如果不计算led功率的增量变化,而是要计算lp的较大变化,则可以将其以离散水平发送给led驱动器,以给用户带来平稳增加的印象。尽管到目前为止已经描述了特定的实施例,但是应当理解,可以在不脱离由权利要求限定的本发明的范围的情况下进行包括以上所述的各种修改。当前第1页1 2 3 

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips