使用无人机定位车辆的制作方法

文档序号:20361661发布日期:2020-04-10 23:43阅读:450来源:国知局
使用无人机定位车辆的制作方法



背景技术:

在大型停车场中找到某个车辆可能需要人从车辆间移动以识别特定车辆。在一些情况下,该人可以检查每辆车的牌照以确定它是否是所寻找的车辆。并且当有大量车辆位于停车场中时,这可能需要耗费时间的努力。

附图说明

图1示出了包括计算机和无人驾驶飞行器(uav)的车辆定位系统。

图2示意性地示出了车辆停放区域的俯视图。

图3是可位于停放区域中的示例性车辆的示意图。

图4是由uav承载的传感器的示意图。

图5是传感器的示例性视野。

图6是由uav承载的传感器的另一个示例的示意图。

图7至图9是示出可由计算机和/或uav执行的指令集的流程图。

具体实施方式

描述了一种车辆定位系统,所述车辆定位系统包括计算机和无人驾驶飞行器(uav)。根据一个说明性示例,计算机可包括包括处理器和存储可由所述处理器执行的指令的存储器,所述指令包括:从uav接收车辆停放区域的图像数据;通过识别所述区域中的车辆的反馈响应的预定间隔内发生的uav指示器的致动来处理所述数据;以及基于所述识别,确定所述车辆在所述区域内的位置。

根据上述至少一个示例,所述响应包括响应于来自uav的触发而从车辆发出的光图案。

根据上述至少一个示例,所述指示器包括位于uav上的传感器的视野内的光源。

根据上述至少一个示例,所述系统还包括所述uav,并且所述uav被编程为随着其在所述区域内从航点到航点移动,记录所述图像数据并重复地发出无线命令以触发所述响应。

根据上述至少一个示例,所述命令包括所述车辆的钥匙扣代码,其中所述uav被编程为以禁止所述uav滚动所述代码的工厂模式操作。

根据上述至少一个示例,所述系统还包括所述区域中的多个车辆,所述多个车辆包括提供所述响应的所述车辆,其中所述多个中的每一个包括车载计算机,所述车载计算机被编程为在所述uav提供与存储在所述相应车载计算机中的钥匙扣代码对应的无线命令时执行所述响应。

根据另一说明性示例,公开了一种无人驾驶飞行器(uav),其包括:计算机,所述计算机包括处理器和存储可由所述处理器执行的指令的存储器;传感器;和钥匙扣发射器,所述指令包括:经由所述传感器接收车辆停放区域的图像数据;经由所述发射器发送无线命令;以及基于所述发送,经由所述传感器接收来自所述区域中的车辆的视觉反馈响应,并记录所述视觉反馈响应。

根据上述至少一个示例,所述传感器是数码相机。

根据上述至少一个示例,所述图像数据是视频数据。

根据上述至少一个示例,所述响应包括从车辆的前照灯发出的光图案。

根据上述至少一个示例,所述uav还包括位于所述传感器的视野内的指示器。

根据上述至少一个示例,所述指示器邻近所述传感器的孔联接。

根据上述至少一个示例,所述指示器包括光源,其中所述指令还包括:发送所述命令并且同时致动所述源。

根据上述至少一个示例,其中所述指令还包括:在记录图像数据的同时在所述区域中的多个航点处重复地发送所述命令,其中所述数据包括所述响应和对所述指示器的致动;并且然后向第二计算机发送所述数据以进行视频图像处理,其中所述处理包括基于在预定间隔内发生的所述致动和所述响应两者来识别所述车辆。

根据上述至少一个示例,所述指令还包括:确定与提供所述响应的车辆相关联的位置数据。

根据上述至少一个示例,所述指令还包括:在所述uav处处理所述图像数据;基于所述处理,确定所述车辆的位置数据;以及将所述位置数据提供给第二计算机。

根据上述至少一个示例,一种系统,其包括uav和所述第二计算机,所述第二计算机被编程为保存多个车辆的钥匙扣代码的数据库,其中由所述uav发送的所述命令包括所述代码中的一个代码。

根据另一说明性示例,一种方法包括:从无人驾驶飞行器(uav)接收车辆停放区域的图像数据;通过识别所述区域中的车辆的反馈响应的预定间隔内发生的uav指示器的致动来处理所述数据;以及基于所述识别,确定所述车辆的位置。

根据上述至少一个示例,所述响应由在所述车辆的方向上发出钥匙扣代码的所述uav触发。

根据上述至少一个示例,所述指示器包括位于所述图像数据的视野内的光源,并且所述响应包括由所述车辆发出的光图案。

根据至少一个示例,公开了一种计算机,该计算机被编程为执行上述示例的任何组合。

根据至少一个示例,公开了一种计算机,所述计算机被编程为执行上述一种或多种方法的示例的任何组合。

根据至少一个示例,公开了一种计算机程序产品,该计算机程序产品包括存储可由计算机处理器执行的指令的计算机可读介质,其中所述指令包括上述指令示例的任何组合。根据至少一个示例,公开了一种计算机程序产品,所述计算机程序产品包括存储可由计算机处理器执行的指令的计算机可读介质,其中所述指令包括上述一种或多种方法的示例的任何组合。

现在转向附图,其中贯穿若干视图,相似的数字指示相似的部件,示出了车辆定位系统10,其包括工厂计算机12和无人驾驶飞行器(uav)14。在车辆工厂设置中,服务人员经常需要定位或找到特定车辆16(例如,出于检查目的,软件更新目的等)。系统10可以协助此类人员从例如位于工厂的车辆停放区域20中的潜在的数百或数千车辆18中找到车辆16。车辆工厂可以包括制造或组装设施、车辆存储设施、维护设施等。此外,下面的描述是在车辆工厂的上下文中示出的;但是,这仅仅是一个示例。其他合适的位置和应用也是可能的,诸如代客服务等。

根据至少一些示例,uav14可以从计算机12接收唯一的车辆标识符,诸如可以位于停放区域20中的特定车辆16的钥匙扣代码。此后,uav14可以使用机载传感器22来找到车辆16,例如,通过捕获停放区域20的图像数据,同时其在整个区域20(例如,移动通过一系列预定航点)重复地发送代码。在至少一个示例中,uav14可以具有机载指示器26(例如,诸如光源),在每次发送代码时其都发出信号,并且这些发出可以被捕获在图像数据内(例如,通过定位传感器22的视野(fov)内的指示器)。当特定车辆16接收到钥匙扣代码时(例如,当uav14在其附近时),车辆16可以发出响应(例如,诸如使其前照灯闪烁)。此时,车辆16可能在也可能不在uav传感器22的fov内;然而,当车辆16在fov内时,uav14可以捕获在图像数据内,该图像数据包括指示器26的信号(例如,光源照明)和来自车辆16的响应(例如,前照灯闪烁)。因此,可以通过在预定的时间间隔内识别信号和响应来部分地定位车辆16。如以下将描述的,在一个示例中,uav14可以具有足够的存储器来存储图像处理算法(和/或软件),并具有足够的处理速度和执行此类算法的能力(所谓实时地)—因此,在一个示例中,uav14可执行该识别。在其他示例中,uav14可以不执行该识别。相反,uav14可以将图像数据提供给计算机12,并且计算机12可以例如通过处理图像数据、识别车辆16并且还确定其位置数据来确定车辆16的位置。

因此,将理解,一旦确定了对对应信号和响应的识别,则该识别可以与该识别在停放区域20中何处发生的指示相匹配(例如,以便服务人员可以定位车辆16)。根据一个示例,由uav14捕获的图像数据可以被加上时间戳,并且uav可以记录其在停放区域20中移动的带有时间戳的数据记录;这两组数据可以相关以确定车辆16的位置数据。在一个示例中,uav14根据系列航点移动,例如,在每个航点处捕获图像数据;因此,每个航点的时间戳(或时间范围)也可以由uav14存储。在其他示例中,可以在图像数据内捕获其他识别信息(例如,诸如停放区域20上或附近的标记),并且uav14和计算机12可以使用该识别信息来识别车辆16的位置数据。最终,当确定车辆的位置数据时,可以将其提供给服务人员,该服务人员随后可以对车辆16执行任何适当的服务。

计算机12可以包括单个计算机或多个互连的计算装置。例如,在至少一个实例中,计算机12是制造或组装工厂计算机,其连接到其他计算机、工厂系统和/或工厂子系统的内联网。计算机12可以包括联接到存储器32的至少一个处理器30。例如,处理器30可以是能够处理电子指令的任何类型的装置,非限制性示例包括微处理器、微控制器或控制器、专用集成电路(asic)等(仅举几个例子)。通常,计算机12可以被编程为执行数字存储的指令,其可以被存储在存储器32中,除了别的之外,所述指令使得计算机12能够:从uav14接收车辆停放区域20的图像数据;通过识别在可能位于区域20内的特定车辆16的响应的预定间隔内发生的uav指示器26的致动来处理图像数据;并基于该识别和图像数据,确定车辆16的位置。这些和其他指令将在下面更详细地说明。

存储器32可包括任何非暂态计算机可用或可读介质,所述非暂态计算机可用或可读介质可包括一个或多个存储装置或物品。示例性非暂态计算机可用存储装置包括传统的计算机系统ram(随机存取存储器)、rom(只读存储器)、eprom(可擦除可编程只读存储器)、eeprom(电可擦除可编程只读存储器),以及任何其他易失性或非易失性介质。非易失性介质包括例如光盘或磁盘以及其他持久存储器。易失性介质包括动态随机存取存储器(dram),所述动态随机存取存储器通常构成主存储器。常见形式的计算机可读介质包括例如软磁盘、软盘、硬盘、磁带、任何其他磁性介质、cd-rom、dvd、任何其他光学介质、穿孔卡、纸带、带有穿孔图案的任何其他物理介质、ram、prom、eprom、flash-eeprom、任何其他存储器芯片或存储器盒或者计算机可读的任何其他介质。如上所述,存储器32可存储一个或多个计算机程序产品,该一个或多个计算机程序产品可体现为软件、固件等。

计算机12还可以包括收发器34,该收发器使计算机12与uav14之间能够进行通信。收发器34可以包括用于与uav14配合的对接连接器(例如,在有线实施方式中);然而,在至少一个示例中,收发器34促进了无线通信。例如,根据一个示例,收发器34包括天线(未示出)和短程无线芯片组(未示出);芯片组可以促进经由一种或多种协议(诸如wi-fi、wi-fidirect、蓝牙、低功耗蓝牙(ble)等)的通信。在其他示例中,收发器34可以促进远程无线通信(例如,包括lte、cdma、gsm等芯片组等);其他通信技术(例如,包括卫星通信)也是可能的。在至少一个示例中,计算机12经由ble协议与uav14通信,例如,从而需要较少的无绳uav14的功率。

在至少一个示例中,计算机12也包括至少一个数据库36。数据库36可以包括任何合适的存储器或安全连接的服务器,其除了别的之外存储用于多个车辆18(例如,包括车辆16)的唯一车辆标识符。根据一个示例,数据库36保存每个车辆18的记录,并且每个记录包括一个或多个标识符。例如,每个记录都可以包括钥匙扣代码、车辆识别号码(所谓的vin)等。在一些示例中,记录也可以包括牌照标识符;然而,应当理解,在车辆工厂环境中,此类车辆通常尚未获得许可(因此,它们将不具有牌照标识符)。

根据至少一个示例,计算机12可以位于包括停放区域20的车辆工厂处。由于典型车辆工厂的规模,可以通过彼此间隔开并且位于计算机收发器34与停放区域20之间的多个无线信号中继器38来促进短程无线通信。此外,停放区域20本身也可以具有彼此间隔开的多个中继器38(例如,在区域20的周边周围和内部)。这样的中继器38的间隔可以基于无线信号的预期衰减范围,例如部分基于所使用的无线协议。根据一个另外的位置数据示例,uav14可以使用三角测量技术和来自中继器38的信号来确定其在停放区域20(并且因此所识别的车辆16)中的位置数据。

车辆停放区域20可以是砾石或铺路垫(例如,被覆盖或未被覆盖)、停车库等。此外,在至少一些示例中,区域20包括多个位置标识符40。非限制性示例包括涂在或粘附在区域20的表面42上的字母数字标记、带有字母数字标记的标牌、独特的照明或指示区域的其他无线信号等。在图2中,标识符40包括表面42上的行和列标记(例如,行aa、bb、cc、dd等以及列1,2,…,16,…);当然,这仅仅是一个示例。其他合适的标识符40包括标牌和/或区域20中每个停车位44的唯一标记。

如下面将更详细描述的,可以使用多个航点48绘制区域20。每个航点48可以具有一组唯一的gps坐标(例如,具有5至7个小数位的精确度)和/或互联网协议版本6(ipv6)地址。此外,航点48的间隔和位置可以与uav14上的传感器22的视野(fov)(例如,它在某一时刻可以捕获多少空间)相关联,可以根据停车位44(或车辆18)的分组50、其组合等。

车辆18中的每一个(其包括特定车辆16)被示出为轿车;然而,车辆18也可以是卡车、运动型多功能车(suv)、休闲车、公共汽车、列车、船舶、飞机等。根据一个示例(参见图3),每个车辆18可以包括电子控制模块52(例如,诸如所谓的车身控制模块),其响应于来自无钥匙进入装置(例如,诸如车辆钥匙扣)的发射器的无线命令(包括钥匙扣代码)。例如,模块52可以包括计算机,该计算机包括一个或多个处理器、存储器和无线接收器,该接收器响应于来自相关联的钥匙扣的命令,而不管车辆点火是接通还是关断。以这种方式,当车辆18的用户按下钥匙扣上的开关时,模块52可以接收命令、验证钥匙扣代码,并且执行车辆功能(也在命令内指定),例如诸如锁定或解锁车门、起动车辆点火、致动紧急功能(例如,按响车辆鸣喇和/或闪烁车灯)等。在执行车辆功能的一些示例中,模块向用户提供反馈响应(例如,以便用户知道该功能已被执行)。例如,当模块52接收到锁定车门的命令时,模块52可以致动车门锁54以及闪光车辆前照灯56两者、将车辆喇叭58按响等。以这种方式,可能离开一段距离的用户知道车辆18执行了无线命令。在至少一个示例中,前照灯56利用至少一些无线命令发出预定光图案。该光图案可以包括一个或多个闪烁,每个闪烁具有预定的接通持续时间(并且在使用多个闪烁的情况下,闪烁之间的每个非闪烁持续时间可以具有预定的关断持续时间)。如将在下面更详细地解释的,uav14可以发送包括钥匙扣代码的无线命令,并且反馈响应(例如,诸如光图案)可以由uav14接收并用于从其他车辆18中识别特定车辆16。

图1和图4至图6示出了无人驾驶飞行器(uav)14(例如,所谓无人机)的各方面。uav14可以是任何合适的飞机,如果不是全部的话,至少部分地由uav14自身上的计算机70来操作和控制,这可使uav以完全自主模式操作,其中不需要人工干预或控制。在至少一个示例中,uav14可使用一个或多个螺旋桨组件72盘旋;这仅是一个示例(并且可以替代地或附加地采用其他uav飞行技术)。

通常,uav14包括计算机70、传感器22、无线收发器74和钥匙扣发射器76。计算机70包括至少一个处理器78和存储器80,存储器80存储可由至少一个处理器78执行的指令。处理器78可以与处理器30(以上关于计算机12描述的)相似或相同,并且存储器80可以与存储器32(以上也关于计算机12描述的)相似或相同;因此,该硬件将不会在这里被再次描述。然而,存储器80存储的指令不同于存储在存储器32中的指令;存储在存储器80中的指令可由处理器78执行,并且特别地配置计算机70以执行不同的任务。例如,计算机70可以用包括以下(除了别的之外)的指令来编程:从计算机12接收和/或存储钥匙扣代码;控制uav飞行;控制uav转向;控制uav的稳定性;控制uav导航;通过一系列航点48移动uav14;通过传感器22接收和/或记录车辆停放区域20的图像数据;将图像数据存储在存储器80中;向计算机12发送图像数据的视频馈送;当uav14在停放区域20中移动时,提供车辆18的录制视频剪辑;通过发射器76向试图识别特定车辆16的车辆18发送无线命令(包括钥匙扣代码)(以及重复该发送);禁止在计算机70处滚动或跳动钥匙扣代码;接收和/或记录(通过传感器22)来自车辆16的响应;当发射器76发送命令时,致动uav14上的指示器26;使用图像处理算法、指令和/或任何其他合适的技术来处理图像数据;并执行此处列出的示例性指令的任意组合。

根据一个示例,图像处理由处理器78执行,并且可以包括:分析图像数据的多个视频帧;确定哪些帧既包括来自车辆16的响应(例如,来自前照灯56的光图案发出)又包括来自指示器26的指示(例如,照明);基于在彼此的预定间隔内发生的响应和指示来识别车辆16;以及使用任何适当的技术确定车辆16的位置数据。如将在下文所述,确定位置数据可包括存储车辆16的gps坐标(一旦识别了指示和对应响应),使用来自中继器38的无线信号来对位置进行三角测量,和/或使用在停放区域20上或附近的位置标识符40。图像处理指令也可以单独执行或以彼此任意适当组合执行。此外,以上讨论的任何指令仅是示例;其他指令可以由存储器80存储并且也可以由处理器78执行。

如本文中所使用的,uav14上的传感器22包括输入装置,该输入装置被配置为当钥匙扣发射器76发送无线命令(包括合适的钥匙扣代码)时检测由车辆16生成的反馈响应。例如,传感器22可以包括数码相机(例如,互补金属氧化物半导体(cmos)装置、电荷耦合装置(ccd)等)、图像增强器(所谓的i平方装置)等,仅举几个非限制性示例。传感器22可包括与检测器或成像平面(未示出)间隔开的孔82(例如,通常具有位于其中的盖或透镜),孔82允许光入射在检测器上。

指示器26可以是任何合适的装置,当由计算机70致动时,其提供其致动的指示。在至少一个示例中,所述指示是视觉指示。例如(图4),指示器26可包括位于检测器的视野(fov)内的光源84,当被计算机70触发时,光源照亮。光源84可以是任何合适的发光装置(例如,诸如发光二极管或led)。在至少一个示例中,指示器26包括联接至传感器22的主体88的臂86,其中臂86与孔82相邻,使得来自光源84的光被捕获在检测器的fov内。

存在其他指示器示例。例如,图6示出了具有主体88'、孔82'和指示器26'的传感器22'。在此,指示器26'是标线。例如,当由计算机70触发时,标线可以被照亮。在另一指示器示例中,计算机70可以将一个或多个预定义像素或像素布置引入视频数据,并且在视频数据的帧中这些像素的存在可以指示钥匙扣代码的发送。还存在其他示例。

无线收发器74可以使得uav14和计算机12之间(除了别的之外)能够进行通信。收发器74可包括天线(未示出)和短程无线芯片组(未示出);芯片组可以促进经由任何合适的协议(诸如wi-fi、wi-fidirect、蓝牙、低功耗蓝牙(ble)等)的通信。在其他示例中,收发器74可以促进远程无线通信(例如,包括lte、cdma、gsm等芯片组等);其他通信技术(例如,包括卫星通信)也是可能的。收发器34(计算机12)和收发器74(uav14)可以匹配,例如,以便于它们之间的通信。并且在至少一个示例中,无线收发器74具有ble芯片组并利用ble协议。

uav14的钥匙扣发射器76可包括联接到无线芯片组(未示出)的微处理器(未示出),该无线芯片组在适合于执行一个或多个远程无钥匙进入功能的频率范围内(在一个示例中,以大约315mhz的频率)操作。与手持式钥匙扣不同,发射器76可能不会联接到任何用户可致动的按钮(但是替代地可以由uav上的计算机70致动)。例如,当处理器78致动发射器76时,发射器芯片组可以向车辆18发送无线命令。如上所述,命令可以包括执行与钥匙扣代码联接的车辆功能的指令。当相关联的车辆16接收到命令(并验证代码)时,车辆16可以执行指令—以类似于车辆16从手持式钥匙扣接收到命令的方式。继续上述示例,当车辆16接收到至少一个命令时,车门锁可被致动(至锁定状态)并且前照灯56可闪烁。

当用户按下按钮来致动传统的手持式钥匙扣时,钥匙扣内的微处理器通常会滚动(或跳动)代码以避免重放攻击。如本领域技术人员将理解的,重放攻击包括恶意窃听者记录所发送的代码并结合解锁车门、起动车辆点火等的指令(例如,允许窃听者进入车辆和/或把车开走)对其进行重放。为了避免这种情况,可以对手持式钥匙扣进行编程以滚动代码,即,将代码按顺序推进到下一个钥匙扣代码(例如,如由通过钥匙扣的微处理器执行的算法计算得出)。因此,当下一次致动钥匙扣时(通过用户按下按钮),下一个无线命令将按照算法确定的顺序使用不同的代码。根据手持式钥匙扣操作的对应车辆(例如,更具体地,计算机52)通常配置有相同的算法。因此,当计算机52接收到具有不同代码的命令时,计算机52被编程为确定新代码是否与可使用排序算法确定的预定数量(例如256)的其他代码中的一个代码匹配。例如,当已经按下手持式钥匙扣按钮一次或多次但是无线命令尚未到达计算机52时,计算机52可以接收到不同的代码(例如,每次按下传统的钥匙扣按钮时,钥匙扣代码可以滚动—例如,导致稍后的不匹配)。如果在预定数量的其他代码中发现了匹配(通过计算机52),则计算机52更新其存储器(关于手持式钥匙扣最近使用的钥匙扣代码),并且还执行从手持式钥匙扣发送的指令。本质上,计算机52在其存储器中同步最近使用的钥匙扣代码。(如果找不到匹配,则手持式钥匙扣不再与计算机52配对—例如,授权服务人员将需要执行特殊的再配对过程以便使手持式钥匙扣再次可操作)。

在当前情况下,钥匙扣发射器76可以被编程为在工厂模式下操作,其中在工厂模式下,发射器76在每次发送无线命令时(例如在其搜索停放区域20时)都不会滚动钥匙扣代码。因此,由于停放区域20可能非常大(并且如将在下文中进一步描述的),所以uav14可以在特定车辆16的无线范围之外重复地发送代码,而无需将钥匙扣代码滚动超过预定次数。在至少一个示例中,该预定数量可以为零。以这种方式,uav14(及其发射器76)可能不会不合需要地使发射器76无法工作,并且不能从特定车辆16接收期望的反馈响应。

除了上面列出的部件之外,uav14还可以包括定位单元94,该定位单元94可以包括可以向计算机70提供全球和/或本地位置数据的任何合适的计算装置。例如,定位单元94可以从一个或多个卫星接收位置数据(例如,诸如纬度和经度(lat/long)坐标数据)。非限制性卫星类型和位置系统包括gps和glonass。此外,使用单元94,uav14可以根据预定飞行计划移动通过停放区域20,该飞行计划包括一系列预定航点48以及在一个或多个航点处的暂停时段。例如,根据一个飞行计划,在每个航点48处的暂停时段可以是相似或相同的,例如,允许每个目标车辆18有足够的时间在uav传感器22的当前视野内以提供反馈响应。

现在转到图7至图9,这些流程图示出了可由车辆定位系统10的一个或多个计算装置执行的过程700、800、900。这些过程旨在说明系统10的使用和应用,并且不旨在限于在此阐述的示例。

过程700可以开始于框705,uav14(例如,经由收发器74)从工厂计算机12接收唯一标识符。例如,服务技术人员或计算机12本身可以确定多个车辆18中的特定车辆16需要服务,并且车辆16可以位于停放区域20的某个未知位置。仅出于说明的目的,技术人员或计算机12可以确定车辆16需要最新的远程信息处理软件更新。由计算机12通过有线或无线方式提供给uav14的标识符可以是钥匙扣代码,或者可以包括uav14可以用来定位车辆的特定车辆16的钥匙扣代码。

在框710中,uav14可以导航或移动到停放区域20中的第一(或下一个)航点48。例如,在至少一个示例中,uav14上的计算机70可以被编程为使用定位单元94来导航预定系列的航点48。为了说明,这些航点48可以包括从对接站(未示出)到停车区域20的环路,通过停放区域中的一系列间隔开的航点48(例如,以搜索车辆16),以及从一个或多个航点再次到对接站的返回路线。(在过程700之后,可以重复框710,然后框710将移动到预定系列中的“下一个”航点48)。

在框715处,在框710的航点处,uav14可以指示钥匙扣发射器76发送无线命令,该无线命令可以包括从计算机12接收到的标识符(例如,钥匙扣代码)。该命令可以在停放区域20中的多个车辆18的方向上(例如,在当前航点48处)被发送,以便触发所寻找的车辆16的反馈响应。根据一个示例,多个车辆18可以接收钥匙扣代码和车辆指令(并且接收该代码的每个车辆18可以使用其车载计算机52来确定代码是否与其存储的钥匙扣代码匹配)。根据上面阐述的一个示例,车辆指令可以适于将车门锁致动到锁定状态(例如,即使车辆16上的锁已经处于锁定状态)。基于车辆16的编程,uav14可以预期,车辆16在其接收到无线命令时不仅将执行指令(基于钥匙扣代码),而且还可以提供反馈响应,诸如车辆前照灯56的闪烁(例如,一次或两次)。

在框720中,uav14可在从传感器22接收到图像数据(例如,包括停放区域20的所述无线命令所针对的该部分的全部或一部分的图像数据)时盘旋在相应的航点48上。在至少一个示例中,该图像数据是视频数据或视频数据流(例如,多个顺序的帧)。框720可以与框715至少部分地同时发生。在一些情况下,一旦uav14到达停放区域20中的第一个航点48,它就可以接收、记录和/或存储图像数据(例如,直到对整个停放区域20成像或直到识别出车辆16)。因此,在一些示例中,可以至少紧接在框715之前接收图像数据。在其他示例中,在每个航点48处捕获视频数据的片段(例如,以节省uav14上的存储空间)。

在框725中,uav14可以经由计算机70执行机载触发器。根据一个示例,触发器致动指示器26;并且在至少一个示例中,触发器致动光源84,使其发光。如上所述,来自源84的光可以位于传感器22的视野内;因此,图像数据可以包括照明。该照明可以是暂时的,例如具有预定的持续时间(例如一秒或两秒)。框725还可以与框715和框720至少部分地同时执行。在一些情况下,框725的执行可能滞后于框715和框720的执行;然而,该滞后可小于一秒(例如,在一些示例中甚至小于500毫秒)。指示器26(例如,体现为可致动光源84)的使用可以减少对复杂软件的需求,该复杂软件用以使钥匙扣代码发送的发送(框715)与可由uav计算机70记录的视频数据相关。

框725的其他示例包括机载触发器,该机载触发器引起内部致动,诸如电子电路、开关、计数器等的致动(例如,未被传感器22的图像数据捕获)。在这种性质的至少一个示例中,触发是无线命令的执行。当uav14执行机载图像处理以确定来自车辆16的反馈响应时,该实施方式可能是合适的;在这些情况下,uav14可能能够使来自车辆16的反馈响应与其自身的内部致动相关。在其他情况下(例如,在计算机12而不是uav计算机70分析图像数据的情况下),在图像数据内捕获的可见致动可能是期望的。仅出于说明的目的,过程700的其余部分将指示器26描述为在传感器22外部(例如,作为先前描述的光源84)。

在框730中(在执行框715至725之后),计算机70确定是否从在框715中接收到无线命令的多个车辆18中的至少一些中接收到反馈响应。例如,在一些情况下,框730可以仅与传感器22的视野内的车辆18有关(例如,在执行框715至725时)。如果响应于发送无线命令(例如,具有车辆16的钥匙扣代码)而确定了反馈响应(例如,诸如车辆前照灯56的闪烁),则uav14可以确定其已经发现特定车辆16的高可能性。然而,可能需要对车辆16的进一步识别,并且该进一步识别的示例在下面的框735(可能紧随其后)中描述。

根据至少一个示例,过程700循环回并重复框715、720和725,以查看再执行这些指令是否会导致车辆产生第二次类似的反馈响应。在这种情况下,如果由于第二次尝试而同一车辆的前照灯56闪光灯再次闪烁,则uav14可以执行过程800以进一步识别其是否已经定位到车辆16。

在框730中,如果没有接收到反馈响应(或者如果在确认尝试中再执行框715、720、730时没有接收到第二反馈响应),则过程700可以循环回框710,并移至下一个航点48。此后,过程700可以如上所述进行。

在框735中,uav计算机70可以识别提供反馈响应的车辆,例如,从而确认前照灯闪烁不是一致的。在至少一个示例中,该识别可以包括对由传感器22接收的图像数据的附加分析、对与无线命令的定时相比的来自车辆的反馈响应的定时的分析等。下面将在过程800中进一步描述可以被执行以识别车辆16的一组指令的示例。

在随后的框740中,计算机70可以识别所识别的车辆16的位置数据。例如,计算机70可以确定车辆在停放区域20中的位置。根据一个示例,使用收发器74,uav14可以将车辆16相对于在停放区域20中具有已知位置的几个无线中继器38的位置进行三角测量。或使用计算机70,uav14可以执行光学字符识别处理算法,该算法使uav14能够使用停放区域20中的位置标识符40(例如,诸如标牌、停放区域20的表面42上的标记等)确定车辆16的位置数据。

在其他示例中,uav14可以简单地记录位置数据并将其下载到计算机12,然后计算机12执行图像处理(并最终确定车辆16的位置)。例如,uav14可以在其穿过停放区域20中的航点48时向计算机12发送该数据,或者其可以将图像数据(可以包括或可以不包括该位置数据)存储在存储器80中,并且稍后将其提供给计算机12。

继续其中uav14识别车辆16及其相应位置数据的示例,在随后的框745中,uav14可以向计算机12提供指示其已经找到车辆16的消息(例如,使用收发器74)。该消息也可以包括位置数据。此后,服务技术人员可以取回车辆16并在其中更新远程信息处理软件。

在框745之后,过程700可以包括uav14确定扫描另一车辆(例如,像车辆16)的停放区域20(参见框750)。如果在框750中uav14具有或接收到寻找另一车辆的指令,则过程700循环回框710,并重复相应指令,如上所述。否则,过程700可以前进至框755,其中uav14返回其对接站,并且过程结束。

现在转到图8,过程800进一步使用由uav16获取的图像数据识别特定车辆16,并尝试消除潜在的误报决定。回想在过程800之前,图像数据包括反馈响应(例如,诸如车辆前照灯56的闪烁)。当然,车辆前照灯可能会因其他原因而闪烁,并且过程800试图验证前照灯的闪烁或其他响应不是一致的。

如上所述,可以使用所谓的实时图像处理技术来在uav14处执行过程800(例如,作为框730和/或735的一部分)。或者,uav14可以执行过程800,但不是实时的。或者过程800可以由计算机12执行,例如,一旦uav14向计算机提供记录的图像数据。仅出于说明的目的而非限制,将关于执行指令框的uav14来描述过程800。

过程800可以从框810开始,其包括确定致动的机载触发器(框725)的第一时间戳(t1)。回想到该触发器可以被同时或者在无线命令的发送(框715)的预定时间内被致动。再次仅出于说明的目的,将把致动描述为指示器26的光源84被照亮。因此,时间戳t1可以对应于图像数据捕获照明状态下的光源84的时间(并且该照明状态可以是当uav14发送无线命令时视频数据的指示)。

在框820中,计算机70可以确定第二时间戳(t2),该第二时间戳与何时在图像数据中捕获到车辆前照灯照明事件(反馈响应)相对应。使用时间戳t1和t2(在框830中),计算机70可以确定时间间隔(δt),其中δt=|t1–t2|。如以下更详细说明的,触发器致动和前照灯照明之间的时间间隔(δt)可以与由钥匙扣发射器76进行的无线命令的发送相关。例如,如果间隔(δt)小于时间的预定阈值(t1),则计算机70可以确定前照灯照明是无线命令的结果的相关性和较高可能性(例如,而不是随机发生的)。

在框840中,计算机70还可以确定前照灯接通持续时间(thl_on)。接通持续时间可以从前照灯发光的时间到停止发光的时间进行测量。例如,在前照灯闪烁的情况下,此接通持续时间可能少于1秒或2秒。此外,如果图像数据包括来自车辆的多次闪光,则可以测量每个持续时间。如将在下文所述,锁定车门时的一个或多个接通持续时间可能是所寻找的车辆16的标志。例如,某些品牌或型号的车辆18可以具有不同的接通持续时间、不同的闪光或光图案等。然而,如果图像数据包括致动接通但保持接通的前照灯56(例如,用于任何合适的原因;诸如车辆即将被开走),参数thl_on可能被用来证明与所寻找的车辆16缺少相关性,如下所述。

在随后的框850中,可以将时间间隔(δt)与第一预定阈值(t1)进行比较,并且前照灯接通持续时间(thl_on)可以与第二预定阈值(t2)进行比较。根据一个示例,如果δt<t1(即,如果无线命令与前照灯闪烁之间的时间小于阈值)并且thl_on<t2(即,如果前照灯实际接通的时间小于阈值),则过程800前进到框860,其中计算机70确定已经识别出特定车辆16(例如,具有很高可能性的准确性)。然而,如果在框850中计算机70确定δt不小于t1或thl_on不小于t2,则过程800前进到框870,其中计算机70确定尚未识别出特定车辆16。

在执行过程800的uav14上的计算机70的上下文中,每当uav14在其视野内检测到前照灯光发出时,可以重复该过程。以这种方式,在uav14上保留了处理能力和性能,例如,因为uav在每次无线发送中都不执行该指令集。

在计算机12执行过程800的情况下,计算机12可以解析图像数据并识别包括前照灯光发出的图像数据段,然后使用间隔δt、持续时间thl_on、阈值t1、阈值t2等以及uav14提供的其他相关数据来识别车辆16。以这种方式,计算机12还通过不针对停放区域20中的每个航点48执行过程800来节省计算能力。

现在转到过程900,示出了过程,其中uav14捕获停放区域20的图像数据(例如逐航点48地),并且将图像数据提供给工厂计算机12进行图像处理,以用于识别车辆16及其位置数据。如下面所解释的,在至少一个示例中,可以在uav14已经越过停放区域20的所有航点48之后将图像数据提供给计算机12。

过程900开始于框905、910、915、920和925。这些框可以分别与上述框705、710、715、720和725相同或相似(过程700);因此,它们不会在这里被再次描述。

在框925之后的框970中,uav14可以确定其是否已经针对与停放区域20相关联的预定或预编程系列的航点48中的航点中的每一个执行了框910至925(例如,是否已经在所有航点48处扫描并接收了图像数据?)。如果还没有,则过程900可以(例如,对于每个航点48)循环回并重复框910至925。如果已经扫描了停放区域20中的所有航点48,则过程900可以前进至框975。

在框975中,uav14将图像数据提供给计算机12。如上所述,这可以通过有线传输(例如,通过对接站)或通过无线传输(例如,使用收发器74)发生。此外,其可作为流数据、作为零碎传输的集合或作为单个下载或传递发生。不管传递方式如何,在框975之后,过程前进至框980。

框980可以类似于框730。在框730中,以零碎的方式解析停放区域20的图像数据。在此,在至少一个示例中,所有图像数据对于计算机12都是可用的。因此,在框980的至少一个示例中,计算机12解析图像数据以找到来自停放区域20中的一个或多个车辆18的任何潜在的反馈响应。继续上述示例,这可以包括解析由uav传感器22记录的视频数据,以找到前照灯光发出的情况。

在确定了这些情况之后,过程900可以前进至框985,并尝试从视频数据中识别车辆16。根据框985的至少一个示例,这可以包括执行过程800,如上所述。因此,将不会在这里再次讨论可被执行以确定该识别的指令。

在随后的框990中,已经识别出车辆16,计算机12可以识别与特定车辆16相关联的位置数据。该指令可与框740类似或相同;因此,这里不再重述。

在识别出车辆16及其位置数据之后,可以将位置数据提供给服务技术人员,该服务技术人员然后可以取回车辆16,如上所述。在框990之后,过程900可以执行框995,框995可以与框750相似或相同(例如,是否定位另一辆车)。如果要放置另一辆车,则过程900可以继续至框905,其中计算机12可以提供(并且uav14可以接收)另一个唯一标识符。否则,过程900结束。

车辆16的其他示例也存在。例如,计算机52可以被编程为使得其响应于类钥匙扣命令,例如,使用相似的协议和/或相似的频率。在至少一个示例中,计算机52可以用不需要在uav14或车辆16处滚动钥匙扣代码的特殊指令来编程。

因此,已经描述了一种车辆定位系统,所述车辆定位系统包括计算机和无人驾驶飞行器(uav)。计算机和/或uav被编程为接收和/或分析车辆停放区域的图像数据,其中图像数据包括基于从uav发送的无线命令来自特定车辆的反馈响应。该无线命令包括使特定车辆做出响应的唯一标识符。

通常,所描述的计算系统和/或装置可以采用许多计算机操作系统中的任一者,包括但绝不限于以下版本和/或变型的操作系统:ford应用程序、applink/smartdevicelink中间件、automotive操作系统、microsoft操作系统、unix操作系统(例如,由加州红木海岸的oracle公司(oraclecorporation,redwoodshores,california)发布的操作系统)、由纽约阿蒙克市的国际商业机器公司(internationalbusinessmachines,armonk,newyork)发布的aixunix操作系统、linux操作系统、由加州库比蒂诺的apple公司(appleinc.,cupertino,california)发布的macosx和ios操作系统、由加拿大滑铁卢的黑莓有限公司(blackberry,ltd,waterloo,canada)发布的blackberryos以及由谷歌股份有限公司(google,inc.)和开放手机联盟(openhandsetalliance)开发的android操作系统,或由qnx软件系统有限公司(qnxsoftwaresystems)供应的car信息娱乐平台。计算装置的示例包括但不限于车载车辆计算机、计算机工作站、服务器、台式计算机、笔记本计算机、膝上型计算机或手持式计算机,或者某一其他计算系统和/或装置。

计算装置通常包括计算机可执行指令,其中所述指令可以由诸如上面列出的那些的一个或多个计算装置执行。计算机可执行指令可以由使用各种编程语言和/或技术创建的计算机程序来编译或解译,这些编程语言和/或技术单独地或组合地包括但不限于javatm、c、c++、visualbasic、javascript、perl等。这些应用程序中的一些应用程序可以在虚拟机(诸如java虚拟机、dalvik虚拟机等)上编译和执行。通常,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令,并且执行这些指令,由此执行一个或多个过程,其包括本文所述的一个或多个过程。可以使用多种计算机可读介质来存储和传输此类指令和其他数据。

计算机可读介质(也被称为处理器可读介质)包括参与提供可以由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂态(例如,有形)介质。此类介质可以采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质可以包括例如光盘或磁盘以及其他持久性存储器。易失性介质可以包括例如通常构成主存储器的动态随机存取存储器(dram)。此类指令可由一种或多种传输介质来传输,所述传输介质包括同轴电缆、铜线和光纤,包括构成联接到计算机的处理器的系统总线的电线。常见形式的计算机可读介质包括例如软磁盘、软盘、硬盘、磁带、任何其他磁性介质、cd-rom、dvd、任何其他光学介质、穿孔卡、纸带、带有穿孔图案的任何其他物理介质、ram、prom、eprom、flash-eeprom、任何其他存储器芯片或存储器盒或者计算机可读的任何其他介质。

数据库、数据存储库或本文所述的其他数据存储装置可以包括用于存储、访问和检索各种数据的各种机构,包括分层数据库、文件系统中的文件集、专用格式的应用数据库、关系型数据库管理系统(rdbms)等。每个此类数据存储装置通常包括在采用诸如上述那些操作系统中的一种操作系统的计算机操作系统的计算装置内,并且经由网络以各种方式中的任何一种或多种来访问。文件系统可以从计算机操作系统访问,并且可以包括以各种格式存储的文件。rdbms除了用于创建、存储、编辑和执行已存储的程序的语言(诸如上述pl/sql语言)之外还通常采用结构化查询语言(sql)。

在一些示例中,系统元件可以被实施为一个或多个计算装置(例如,服务器、个人计算机等)上的、存储在与其相关联的计算机可读介质(例如,磁盘、存储器等)上的计算机可读指令(例如软件)。计算机程序产品可以包括存储在计算机可读介质上用于执行本文所述的功能的此类指令。

处理器经由电路、芯片或其他电子部件来实现,并且可包括一个或多个微控制器、一个或多个现场可编程门阵列(fpga)、一个或多个专用电路(asic)、一个或多个数字信号处理器(dsp)、一个或多个客户集成电路等。处理器可被编程来处理传感器数据。处理数据可包括处理由传感器捕获的视频馈送或其他数据流,以确定主车辆的道路车道和任何目标车辆的存在。如下所述,处理器指示车辆部件根据传感器数据来致动。处理器可并入控制器(例如,自主模式控制器)中。

存储器(或数据存储装置)经由电路、芯片或其他电子部件来实现,并且可包括以下中的一者或多者:只读存储器(rom)、随机存取存储器(ram)、闪速存储器、电可编程存储器(eprom)、电可擦除可编程存储器(eeprom)、嵌入式多媒体卡(emmc)、硬盘驱动器、或任何易失性或非易失性介质等。存储器可存储从传感器收集的数据。

已经以说明性方式描述了本公开,并且应当理解,已经使用的术语旨在本质上是描述性的而不是限制性的字词。鉴于以上教导,本公开的许多修改和变化是可能的,并且本公开可以不同于具体描述的其他方式来实践。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1