发明内容
本申请提供一种地图更新方法、基于地图的驾驶决策方法及装置,用于及时获得最新的地图更新信息,从而可以更好的辅助导航或自动驾驶。
第一方面,本申请提供一种地图更新方法,应用于车辆或车辆中具有地图更新功能的模块或芯片,还可以应用于车辆中基于地图的驾驶决策功能的模块或芯片。该方法包括:获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片;根据所述车辆的定位位置、所述车辆的导航路径及所述瓦片更新信息,确定待更新瓦片,所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;从服务器下载所述待更新瓦片;根据下载的所述待更新瓦片,更新所述地图;根据所述更新后的地图,进行驾驶决策。
通过上述方法,在车辆根据发生变化的瓦片、车辆的定位位置、所述车辆的导航路径,确定出待更新瓦片后,从服务器下载所述待更新瓦片,该待更新瓦片可以参与驾驶决策,实现了边更新边使用,无需等待地图中所有瓦片更新完毕,也无需等待地图中所有发生变化的瓦片更新完毕,就可以使用部分更新瓦片进行驾驶决策,并且由于待更新瓦片与车辆的位置和导航路径相关,能够保证当前驾驶决策所使用瓦片信息的及时性和准确性,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,车辆可以根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
通过上述方法,车辆可以根据车辆的定位位置和车辆的导航路径,确定车辆定位位置所在的位置是否存在发生变化的瓦片,及根据车辆的导航路径,确定车辆将要行驶到的位置上是否存在发生变化的瓦片,例如,车辆在未来预设时间内行驶到的位置上是否存在发生变化的瓦片。从而,可以根据车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。使得车辆优先下载车辆将要行驶到的位置所对应的瓦片,保证车辆可以在行驶到该位置时,已经下载完该瓦片,并且该瓦片已更新完地图,可以用于驾驶决策,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,所述方法还包括,根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,车辆还可以确定待更新瓦片的下载顺序,从而,使得待更新瓦片的下载可以适应更多的场景的需要,例如,在不同的待更新瓦片的数据类型下,可以优先下载对驾驶安全更相关的瓦片。在车辆的驾驶为自动驾驶时,根据自动驾驶的要求,优先下载与自动驾驶相关的瓦片。从而,优先满足当前驾驶的需要,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,根据所述车辆将要行驶到的区域,确定所述车辆进行驾驶决策对应使用所述待更新瓦片的顺序。根据所述车辆进行驾驶决策对应使用所述待更新瓦片的顺序,确定所述待更新瓦片的下载顺序或所述待更新瓦片的更新所述地图的顺序。
一种可能的实现方式,根据所述车辆将要行驶到的区域,确定所述车辆进行驾驶决策对应使用所述待更新瓦片的优先级。根据所述车辆进行驾驶决策对应使用所述待更新瓦片的优先级,确定所述待更新瓦片的下载优先级或所述待更新瓦片的更新所述地图的优先级。
通过上述方法,车辆可以根据车辆将要行驶到的区域,确定车辆进行驾驶决策对应使用所述待更新瓦片的顺序,例如,车辆将要行驶到的区域对应瓦片1→瓦片2,可以确定车辆优先使用瓦片1和瓦片2进行驾驶决策,因此,可以确定先下载瓦片1,再下载瓦片2,优先满足当前驾驶的需要,保证驾驶决策使用地图的需要。
一种可能的实现方式,所述方法还包括,根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,车辆还可以根据上述信息,确定待更新瓦片的更新顺序,例如,在车辆可以大批量下载待更新瓦片时,考虑到车辆更新地图也需要花费相应的时间,因此,可以基于车辆驾驶的需要,优先更新满足上述信息的待更新瓦片,使得地图的更新可以适应车辆的驾驶。
第二方面,本申请实施例提供一种地图更新方法,应用于服务器,包括:向车辆发送地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片;获得待更新瓦片的信息,所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;向所述车辆发送所述待更新瓦片。
通过上述方法,在服务器根据发生变化的瓦片、车辆的定位位置、所述车辆的导航路径,确定出待更新瓦片后,服务器可以向车辆发送所述待更新瓦片,该待更新瓦片可以参与驾驶决策,实现了地图的边更新边使用,无需等待地图中所有瓦片更新完毕,也无需等待地图中所有发生变化的瓦片更新完毕,就可以使用部分更新瓦片进行驾驶决策,并且由于待更新瓦片与车辆的位置和导航路径相关,能够保证当前驾驶决策所使用瓦片信息的及时性和准确性,从而可以更好的辅助导航或自动驾驶。
其中,在一些实施例中,服务器可以基于所述发生变化的瓦片中的部分瓦片,确定待更新瓦片。例如,一种可能的实现方式,服务器可以获得所述车辆的定位位置和所述车辆的导航路径;根据所述瓦片更新信息、所述定位位置和所述导航路径确定所述待更新的瓦片。
通过上述方法,服务器可以基于车辆的相关信息,例如,车辆的定位位置和车辆的导航路径,及瓦片更新信息,确定出待更新瓦片的信息,利用服务器强大的处理能力,避免车辆确定待更新瓦片所带来的开销,减少车辆与服务器之间的交互,以适应车辆的处理能力有限的场景。
举例来说,服务器可以根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
通过上述方法,服务器可以根据车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片,使得车辆优先下载车辆将要行驶到的位置所对应的瓦片,保证车辆可以在行驶到该位置时,已经下载完该瓦片,并且该瓦片已更新完地图,可以用于驾驶决策,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
在另一些实施例中,服务器也可以是车辆确定待更新瓦片的信息后,向服务器发送待更新瓦片的信息,例如,一种可能的实现方式,服务器可以接收来自所述车辆发送的待更新瓦片的信息,所述待更新瓦片的信息为根据所述瓦片更新信息、所述车辆的定位位置和所述车辆的导航路径确定的。
通过上述方法,服务器可以基于车辆确定的待更新瓦片的信息,向车辆发送待更新瓦片。从而,给予车辆更多的确定待更新瓦片的自由度,并相应的减少服务器的开销,降低服务器处理过多的任务所导致的车辆更新的时延。
具体实现方式,可以根据需要确定。通过提供多种服务器获得待更新瓦片的信息的方案,可以更灵活的适应多种应用场景。
一种可能的实现方式,服务器可以根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,使得服务器发送待更新瓦片的方式可以更灵活的适应更多的场景的需要,例如,在不同的待更新瓦片的数据类型下,可以优先发送对驾驶安全更相关的瓦片。在车辆的驾驶为自动驾驶时,根据自动驾驶的要求,优先发送与自动驾驶相关的瓦片。从而,优先满足车辆当前驾驶的需要,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,服务器可以根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,服务器可以基于车辆驾驶的需要,确定待更新瓦片的更新顺序,可选的,服务器可以发送待更新瓦片的更新顺序,以指导车辆根据该更新顺序更新待更新瓦片。例如,在车辆可以大批量下载待更新瓦片时,考虑到车辆更新地图也需要花费相应的时间,因此,可以基于车辆驾驶的需要,优先更新满足上述信息的待更新瓦片,使得地图的更新可以适应车辆的驾驶。
第三方面,本申请提供一种基于地图的驾驶决策方法,应用于车辆或车辆中具有基于地图使用驾驶决策功能的模块或芯片。包括:获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;根据所述置信度信息,选择所述发生变化的瓦片中的部分瓦片,作为驾驶决策所依据的参考瓦片。
通过上述方法,车辆可以通过地图的瓦片更新信息获得发生变化的瓦片的置信度信息,然后车辆可以根据该置信度信息选择用于驾驶决策的参考瓦片,从而不必下载地图中的所有瓦片,也不必下载地图中所有发生变化的瓦片,即在仅更新部分瓦片的情况下,即可进行驾驶决策,提高了基于地图信息辅助驾驶决策的及时性和准确性。
具体而言,该置信度信息可用于指示瓦片发生变化后的地图信息的绝对可信程度,车辆优先选择并更新绝对可信程度较高的瓦片,在绝对可信程度较高的瓦片更新完毕,而非所有发生变化的瓦片更新完毕后,即进行驾驶决策。另外,该置信度信息也可用于指示瓦片发生变化后的地图信息相对于瓦片发生变化前的地图信息的相对相似程度,例如:如果相对相似程度较低,则表明瓦片发生变化前的地图信息已不适合作为驾驶决策的参考信息,需要对该瓦片进行更新,使用更新后的地图信息进行驾驶决策;如果相对相似程度较高,则表明既可以使用瓦片发生变化前的地图信息进行驾驶决策,也可以使用瓦片发生变化后的地图信息进行驾驶决策,即可以对该瓦片进行更新,也可以不对该瓦片进行更新。
一种可能的实现方式,车辆在所述发生变化的瓦片中,选择满足置信度信息要求的瓦片,作为驾驶决策所依据的参考瓦片。
通过上述方法,车辆可以在所述发生变化的瓦片中,选择满足置信度信息要求的瓦片,作为驾驶决策所依据的参考瓦片,使得车辆选择出满足置信度信息要求的可以参与驾驶决策的参考瓦片,使得车辆在没有更新为最新版的地图的情况下,也可以基于参考瓦片,保证了车辆驾驶对应的驾驶决策的安全性。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
在该方式下,服务器可以根据更新前的瓦片,例如,车辆存储的瓦片,及更新后的瓦片,即地图中发生变化的瓦片,确定地图中发生变化的瓦片与车辆存储的瓦片之间的相似度信息,从而确定出发生变化的瓦片的置信度信息,从而,使得车辆可以基于置信度信息对车辆存储的瓦片参与驾驶决策进行评估,在不更新瓦片的前提下,为车辆提供驾驶决策的地图的相关信息,以满足车辆的安全驾驶要求。
一种可能的实现方式,车辆还可以确定所述地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息;根据所述待更新瓦片与所述车辆存储的瓦片的相似度信息,确定在所述地图中的瓦片的置信度信息;根据所述地图中的瓦片的置信度信息及所述车辆存储的瓦片,进行驾驶决策。
在该方式下,车辆可以根据更新前的瓦片,例如,车辆存储的瓦片,及更新后的瓦片的信息,即地图中发生变化的瓦片的信息,确定地图中发生变化的瓦片与车辆存储的瓦片之间的相似度信息,从而确定出发生变化的瓦片的置信度信息,从而,使得车辆可以基于置信度信息对车辆存储的瓦片参与驾驶决策进行评估,在不更新瓦片的前提下,满足车辆的安全驾驶要求。
一种可能的实现方式,车辆可以获得所述车辆的定位位置和所述车辆的导航路径;根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
通过上述方法,车辆还可以基于车辆的定位位置和车辆的导航路径,确定出车辆优先使用的瓦片,有效提高了用户在车辆启动或者车辆行驶过程中,发现更新的地图数据包,在未下载相应的瓦片时,优先使用满足置信度信息要求且所述车辆将要行驶到的瓦片,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,从服务器下载所述参考瓦片;通过下载的所述参考瓦片,更新所述地图。
通过上述方法,服务器还可以向车辆下发参考瓦片,使得车辆更新相应的参考瓦片,可以及时使用更新的地图数据包中的数据,及时下载相应的待更新瓦片,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,车辆还可以向服务器发送参考瓦片的获取请求。例如,参考瓦片的获取请求还包括:参考瓦片的下载顺序或下载优先级。通过上述方法,车辆还可以在确定参考瓦片后,向服务器发送参考瓦片的获取请求,以获得参考瓦片,提高车辆获得参考瓦片的灵活性。
一种可能的实现方式,根据以下信息中的至少一项,确定所述参考瓦片的下载顺序:驾驶决策对所述参考瓦片的使用需求;所述车辆的驾驶类型;所述参考瓦片的数据类型;或者,所述置信度信息。
通过上述方法,车辆还可以确定参考瓦片的下载顺序,从而,使得参考瓦片的下载可以适应更多的场景的需要,例如,在不同的参考瓦片的数据类型下,可以优先下载对驾驶安全更相关的瓦片。在车辆的驾驶为自动驾驶时,根据自动驾驶的要求,优先下载与自动驾驶相关的瓦片。从而,优先满足当前驾驶的需要,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,根据以下信息中的至少一项,确定所述参考瓦片的更新顺序:
驾驶决策对所述参考瓦片的使用需求;所述车辆的驾驶类型;所述参考瓦片的数据类型;或者,所述置信度信息。
通过上述方法,车辆还可以根据上述信息,确定参考瓦片的更新顺序,例如,在车辆可以大批量下载参考瓦片时,考虑到车辆更新地图也需要花费相应的时间,因此,可以基于车辆驾驶的需要,优先更新满足上述信息的参考瓦片,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,车辆还可以根据所述待更新瓦片与所述车辆存储的瓦片的相似度信息,确定在所述地图中的瓦片的置信度信息;根据所述地图中的瓦片的置信度信息,构建所述车辆执行驾驶决策时采用的环境模型。
通过上述方法,车辆还可以在执行驾驶决策之前,基于置信度信息,构建所述车辆执行驾驶决策时采用的环境模型,为车辆进行驾驶决策做准备,以提高车辆的驾驶性能。
第四方面,本申请提供一种基于地图的驾驶决策方法,应用于服务器或服务器中具有基于地图更新指示车辆使用相应驾驶决策功能的模块或芯片。该方法包括:生成地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;向车辆发送所述瓦片更新信息。
通过上述方法,服务器可以通过向车辆发送地图的瓦片更新信息,及发生变化的瓦片的置信度信息,使得车辆可以根据该置信度信息选择用于驾驶决策的参考瓦片,从而不必下载地图中的所有瓦片,也不必下载地图中所有发生变化的瓦片,即在仅更新部分瓦片的情况下,即可进行驾驶决策,提高了基于地图信息辅助驾驶决策的及时性和准确性。
具体而言,该置信度信息可用于指示瓦片发生变化后的地图信息的绝对可信程度,车辆优先选择并更新绝对可信程度较高的瓦片,在绝对可信程度较高的瓦片更新完毕,而非所有发生变化的瓦片更新完毕后,即进行驾驶决策。另外,该置信度信息也可用于指示瓦片发生变化后的地图信息相对于瓦片发生变化前的地图信息的相对相似程度,例如:如果相对相似程度较低,则表明瓦片发生变化前的地图信息已不适合作为驾驶决策的参考信息,车辆需要对该瓦片进行更新,使用更新后的地图信息进行驾驶决策;如果相对相似程度较高,则表明既可以使用瓦片发生变化前的地图信息进行驾驶决策,也可以使用瓦片发生变化后的地图信息进行驾驶决策,即可以对该瓦片进行更新,也可以不对该瓦片进行更新。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
在该方式下,服务器可以根据更新前的瓦片,例如,车辆存储的瓦片,及更新后的瓦片,即地图中发生变化的瓦片,确定地图中发生变化的瓦片与车辆存储的瓦片之间的相似度信息,从而确定出发生变化的瓦片的置信度信息,从而,使得车辆可以基于置信度信息对车辆存储的瓦片参与驾驶决策进行评估,在不更新瓦片的前提下,为车辆提供驾驶决策的地图的相关信息,以满足车辆的安全驾驶要求。
一种可能的实现方式,所述方法还包括:获得参考瓦片的信息,所述参考瓦片为所述发生变化的瓦片中的部分瓦片;向所述车辆发送所述参考瓦片,所述参考瓦片为所述发生变化的瓦片中的部分瓦片。
通过上述方法,服务器还可以向车辆下发参考瓦片,使得车辆更新相应的参考瓦片,可以及时使用更新的地图数据包中的数据,及时下载相应的待更新瓦片,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,服务器可以获得所述车辆的定位位置和所述车辆的导航路径;根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
通过上述方法,服务器还可以基于车辆的定位位置和车辆的导航路径,确定出车辆优先使用的瓦片,使得车辆可以优先使用满足置信度信息要求且所述车辆将要行驶到的瓦片,使得相应的驾驶决策功能可以顺利使用,从而可以更好的辅助导航或自动驾驶。
一种可能的实现方式,服务器接收车辆发送的参考瓦片的获取请求。其中,参考瓦片的获取请求还包括:参考瓦片的下载顺序或下载优先级。通过上述方法,车辆还可以在确定参考瓦片后,向服务器发送参考瓦片的获取请求,以获得参考瓦片,提高车辆获得参考瓦片的灵活性。
一种可能的实现方式,根据以下信息中的至少一项,确定所述参考瓦片的发送顺序:
驾驶决策对所述参考瓦片的使用需求;所述车辆的驾驶类型;所述参考瓦片的数据类型;或者所述置信度信息。
一种可能的实现方式,服务器可以根据以下信息中的至少一项,确定所述参考瓦片的下载顺序:所述驾驶决策对所述参考瓦片的使用需求;所述车辆的驾驶类型;所述参考新瓦片的数据类型;或者,所述参考瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,使得服务器发送参考瓦片的方式可以更灵活的适应更多的场景的需要,例如,在不同的参考瓦片的数据类型下,可以优先发送对驾驶安全更相关的瓦片。在车辆的驾驶为自动驾驶时,根据自动驾驶的要求,优先发送与自动驾驶相关的瓦片。从而,优先满足车辆当前驾驶的需要,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,服务器可以根据以下信息中的至少一项,确定所述参考瓦片的更新顺序:所述驾驶决策对所述参考瓦片的使用需求;所述车辆的驾驶类型;所述参考瓦片的数据类型;或者,所述参考瓦片与所述车辆存储的瓦片之间的相似度信息。
通过上述方法,服务器可以基于车辆驾驶的需要,确定参考瓦片的更新顺序,可选的,服务器可以发送参考瓦片的更新顺序,以指导车辆根据该更新顺序更新参考瓦片。例如,在车辆可以大批量下载参考瓦片时,考虑到车辆更新地图也需要花费相应的时间,因此,可以基于车辆驾驶的需要,优先更新满足上述信息的参考瓦片,使得地图的更新可以适应车辆的驾驶。
一种可能的实现方式,服务器根据参考瓦片与所述车辆存储的瓦片的相似度信息,确定在所述地图中的瓦片的置信度信息;根据所述地图中的瓦片的置信度信息,构建所述车辆执行驾驶决策时采用的环境模型。
通过上述方法,车辆还可以在执行驾驶决策之前,基于置信度信息,构建所述车辆执行驾驶决策时采用的环境模型,为车辆进行驾驶决策做准备,以提高车辆的驾驶性能。
第五方面,本申请实施例还提供了一种地图更新装置,包括用于执行以上第一方面中各个步骤的单元或模块,该地图更新装置可以执行上述第一方面的方法的具有地图更新功能和基于地图进行驾驶决策功能的车辆,或者,可以为设置在车辆中的芯片。该地图更新装置包括实现上述方法相应的模块、单元、或手段(means),该模块、单元、或means可以通过硬件实现,软件实现,或者通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块或单元。具体地,可以包括获取模块、处理模块、下载模块和决策模块。
其中,获取模块,用于获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片;
处理模块,用于根据所述车辆的定位位置、所述车辆的导航路径及所述瓦片更新信息,确定待更新瓦片,所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;根据下载的所述待更新瓦片,更新所述地图;
下载模块,用于从服务器下载所述待更新瓦片;
决策模块,用于根据所述更新后的地图,进行驾驶决策。
一种可能的实现方式,所述处理模块,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
一种可能的实现方式,所述处理模块,还用于根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:
所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
一种可能的实现方式,所述处理模块,还用于根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:
所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
第六方面,本申请实施例还提供了一种地图更新装置,包括用于执行以上第二方面中各个步骤的单元或模块,该地图更新装置可以执行上述第二方面的方法的具有地图更新功能的服务器,或者,可以为设置在服务器中的芯片。示例性的,服务器可以是地图服务器,还可以是OTA升级服务器中的至少一项。该地图更新装置包括实现上述方法相应的模块、单元、或手段(means),该模块、单元、或means可以通过硬件实现,软件实现,或者通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块或单元。具体地,可以包括获得模块、处理模块和发送模块。
获得模块,用于获得待更新瓦片的信息;所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;
处理模块,用于通过发送模块向车辆发送地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,通过所述发送模块向所述车辆发送所述待更新瓦片。
一种可能的实现方式,所述获得模块,用于:
获得所述车辆的定位位置和所述车辆的导航路径;
所述处理模块,用于根据所述瓦片更新信息、所述定位位置和所述导航路径确定所述待更新的瓦片。
一种可能的实现方式,所述处理模块,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
一种可能的实现方式,所述处理模块,还用于根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:
所述驾驶决策对所述待更新瓦片的使用需求;
所述车辆的驾驶类型;
所述待更新瓦片的数据类型;或者
所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
一种可能的实现方式,所述处理模块,还用于根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:
所述驾驶决策对所述待更新瓦片的使用需求;
所述车辆的驾驶类型;
所述待更新瓦片的数据类型;或者
所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
第七方面,本申请提供一种基于地图的驾驶决策装置,包括用于执行以上第三方面中各个步骤的单元或模块,该地图更新装置可以执行上述第三方面的方法的具有地图更新功能和基于地图进行驾驶决策功能的车辆,或者,可以为设置在车辆中的芯片。该地图更新装置包括实现上述方法相应的模块、单元、或手段(means),该模块、单元、或means可以通过硬件实现,软件实现,或者通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块或单元。具体地,可以包括获取模块、处理模块和决策模块。可选的,还可以包括下载模块和地图更新模块。
其中,获取模块,用于获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;驾驶决策模块,用于根据所述置信度信息,选择所述发生变化的瓦片中的部分瓦片,作为驾驶决策所依据的参考瓦片。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
一种可能的实现方式,所述驾驶决策模块,用于:
通过所述获取模块获得所述车辆的定位位置和所述车辆的导航路径;根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
一种可能的实现方式,下载模块,用于从服务器下载所述参考瓦片;地图更新模块,用于通过下载的所述参考瓦片,更新所述地图。
第八方面,本申请实施例还提供了一种基于地图的驾驶决策装置,包括用于执行以上第四方面中各个步骤的单元或模块,该地图更新装置可以执行上述第四方面的方法的具有地图更新功能的服务器,或者,可以为设置在服务器中的芯片。示例性的,服务器可以是地图服务器,还可以是OTA升级服务器中的至少一项。该地图更新装置包括实现上述方法相应的模块、单元、或手段(means),该模块、单元、或means可以通过硬件实现,软件实现,或者通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块或单元。具体地,可以包括生成模块、处理模块和发送模块。可选的,还可以包括获得模块。
其中,生成模块,用于生成地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;处理模块,用于通过发送模块向车辆发送所述瓦片更新信息。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
一种可能的实现方式,获得模块,用于获得参考瓦片的信息,所述参考瓦片为所述发生变化的瓦片中的部分瓦片;
所述处理模块,用于通过所述发送模块向所述车辆发送所述参考瓦片,所述参考瓦片为所述发生变化的瓦片中的部分瓦片。
一种可能的实现方式,所述获得模块,用于获得所述车辆的定位位置和所述车辆的导航路径;所述处理模块,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
第九方面,本申请提供了一种地图更新装置。包括处理器,用于实现上述第一方面描述的方法。该装置可以应用于车辆。示例性地,所述地图更新装置为车辆,或者为设置在车辆中的芯片。或者是车辆中的车载装置中具有地图更新功能的组合器件、部件,或者其他具有地图更新功能的组合器件、部件等。其中,收发器例如通过车辆中的天线、馈线和编解码器等实现,或者,如果所述装置为设置在车辆中的芯片,那么接口电路例如为芯片中的通信接口,该通信接口与车辆中的射频收发组件连接,以通过射频收发组件实现信息的收发。
所述装置还可以包括存储器,用于存储程序和指令。所述存储器与处理器耦合,所述处理器执行所述存储器中存储的程序指令时,可以实现上述第一方面描述的方法。所述装置还可以包括接口电路,所述接口电路用于该装置与其它设备进行通信,示例的,所述接口电路可以是收发器、电路、总线、模块或其它类型的接口电路。
第十方面,本申请提供了一种地图更新装置。包括处理器,用于实现上述第二方面描述的方法。该装置可以应用于服务器。例如,服务器可以是地图服务器或OTA升级服务器中的至少一项。示例性地,所述地图更新装置为服务器,或者为设置在服务器中的芯片。其中,收发器例如通过服务器中的天线、馈线和编解码器等实现,或者,如果所述装置为设置在服务器中的芯片,那么接口电路例如为芯片中的通信接口,该通信接口与服务器中的射频收发组件连接,以通过射频收发组件实现信息的收发。该装置还可以应用于路侧设备,例如,所述路侧设备包括路边单元、路边单元内的地图更新装置。所述地图更新装置可以为路边单元,也可以是应用于路边单元中的芯片,也可以是路边单元内的地图更新装置,或者,应用于路边单元内的地图更新装置中的芯片等。
所述装置还可以包括存储器,用于存储程序和指令。所述存储器与处理器耦合,所述处理器执行所述存储器中存储的程序指令时,可以实现上述第二方面描述的方法。所述装置还可以包括接口电路,所述接口电路用于该装置与其它设备进行通信,示例的,所述接口电路可以是收发器、电路、总线、模块或其它类型的接口电路。
第十一方面,本申请提供了一种基于地图的驾驶决策装置。该装置包括处理器,用于实现上述第三方面描述的方法。该装置可以应用于车辆。示例性地,基于地图的驾驶决策装置为车辆,或者为设置在车辆中的芯片。或者是车辆中的车载装置中具有基于地图的驾驶决策功能的组合器件、部件,或者其他具有基于地图的驾驶决策功能的组合器件、部件等。其中,收发器例如通过车辆中的天线、馈线和编解码器等实现,或者,如果所述装置为设置在车辆中的芯片,那么接口电路例如为芯片中的通信接口,该通信接口与车辆中的射频收发组件连接,以通过射频收发组件实现信息的收发。
所述装置还可以包括存储器,用于存储程序和指令。所述存储器与处理器耦合,所述处理器执行所述存储器中存储的程序指令时,可以实现上述第三方面描述的方法。所述装置还可以包括接口电路,所述接口电路用于该装置与其它设备进行通信,示例的,所述接口电路可以是收发器、电路、总线、模块或其它类型的接口电路。
第十二方面,本申请提供了一种基于地图的驾驶决策装置。包括处理器,用于实现上述第四方面描述的方法。该装置可以应用于服务器。例如,服务器可以是地图服务器或OTA升级服务器中的至少一项。示例性地,所述装置为服务器,或者为设置在服务器中的芯片。其中,收发器例如通过服务器中的天线、馈线和编解码器等实现,或者,如果所述装置为设置在服务器中的芯片,那么接口电路例如为芯片中的通信接口,该通信接口与服务器中的射频收发组件连接,以通过射频收发组件实现信息的收发。该装置还可以应用于路侧设备,例如,所述路侧设备包括路边单元、路边单元内的基于地图的驾驶决策装置。所述装置可以为路边单元,也可以是应用于路边单元中的芯片,也可以是路边单元内的基于地图的驾驶决策装置,或者,应用于路边单元内的基于地图的驾驶决策装置中的芯片等。
所述装置还可以包括存储器,用于存储程序和指令。所述存储器与处理器耦合,所述处理器执行所述存储器中存储的程序指令时,可以实现上述第四方面描述的方法。所述装置还可以包括接口电路,所述接口电路用于该装置与其它设备进行通信,示例的,所述接口电路可以是收发器、电路、总线、模块或其它类型的接口电路。
第十三方面,本申请实施例还提供了一种计算机程序,当计算机程序在计算机上运行时,使得计算机可以执行上述第一方面至第四方面任一方面提供的各种可能的方法。
第十四方面,本申请实施例还提供了一种计算机存储介质,计算机存储介质中存储有计算机程序,当计算机程序被计算机执行时,使得计算机可以执行上述第一方面至第四方面任一方面提供的各种可能的方法。
第十五方面,本申请实施例还提供了一种芯片,芯片用于读取存储器中存储的计算机程序,以执行上述第一方面至第四方面提供的各种可能的方法。芯片可以与存储器耦合。
第十六方面,本申请实施例还提供了一种芯片系统,该芯片系统包括处理器,用于支持计算机装置实现上述第一方面至第四方面任一方面提供的各种可能的方法。在一种可能的设计中,芯片系统还包括存储器,存储器用于保存该计算机装置必要的程序和数据。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
第十七方面,本申请实施例还提供了一种基于地图更新系统,包括用户界面以及上述第五方面或第九方面中对应的地图更新装置、第六方面或第十方面中对应的地图更新装置。
第十八方面,本申请实施例还提供了一种基于地图的驾驶决策系统,包括用户界面以及上述第七方面或第十一方面中对应的基于地图的驾驶决策装置、第八方面或第十二方面中对应的基于地图的驾驶决策装置。
关于第五方面至第十八方面或各种可能的实施方式的技术效果,可参考对于第一方面至第四方面相应的实施方式的技术效果的介绍。
具体实施方式
下面结合附图进一步介绍本申请实施例。
首先,对本申请实施例的应用场景进行介绍。本申请实施例提供一种地图更新方法,通过该方法更新的地图可以应用于自动驾驶系统。自动驾驶系统中的车辆可以基于高精度地图实现交通业务。本申请实施例交通业务可以是各种自动驾驶、辅助驾驶的业务,例如:路径规划、为人工驾驶提供行驶风险预警。以上交通业务仅是举例。在自动驾驶系统中,本申请实施例提供的高精地图也可以为车辆与其他装置的通讯(vehicle to x,V2X)提供技术准备,V2X如车车通讯(vehicle to vehicle,V2V)、车路通讯(vehicle toinstallation,V2I)。
本申请实施例提供的地图更新方法可以由地图更新装置来执行,地图更新装置可以为终端设备、车载设备,或者为终端设备或车载设备内部的芯片。该终端设备包括具有支持科学运算的硬件设备,例如可以包括如个人计算机、服务器、手机移动终端、嵌入式设备等终端设备。
图1示例性示出了本申请实施例可以适用的一种场景的示意图,如图1所示,该场景中可以有一个或多个终端设备,服务器,还可以包括有一个或多个路侧单元。可选的,还可以包括有存储设备等。下面结合图1先对本申请实施例涉及到名词或术语进行介绍。
1)终端设备。
本申请实施例中的终端设备可以是具备通信功能的车辆或非机动车的终端设备、便携设备、可穿戴设备、移动电话(或称为“蜂窝”电话)、便携式、袖珍式、或手持式终端等,或这些设备中的芯片等。本申请中的终端设备可以是指应用于车联网的终端设备,本申请中的终端设备也可以称为车联网终端设备、车联网终端、车联网通信装置或车载终端设备等等。
在图1中是以终端设备为车辆为例进行示意,如图1所示,图1中示意性示出了三辆车辆,分别为车辆201、车辆202和车辆203。车辆是一种典型的车联网中的终端设备,在本申请以下实施例中,以车辆为例进行描述,本申请实施例中的任意一个车辆可以是智能车或非智能车,本申请实施例对比不做限定。本领域技术人员应该理解的是,本申请中以车辆为例的实施例还可以应用于其它类型的终端设备。终端设备具体可以通过其内部的功能单元或装置执行车联网相关业务流程。例如,当终端设备为车辆时,车辆中一个或多个如下装置可用于执行本申请实施例中终端设备相关的方法流程,如车载盒子(telematics box,T-Box)、域控制器(domian controller,DC)、多域控制器(multi-domian controller,MDC)、车载单元(on board unit,OBU)或车联网芯片等。
本申请实施例中车辆可以基于车辆与外界无线通信技术(例如,vehicle toeverything(V2X))与其它物体进行通信。例如,可以基于车辆间无线通信技术(例如,vehicle to vehicle(V2V))实现车辆与云端服务器之间的通信。车辆与其它物体之间进行通信可以基于无线保真(wireless fidelity,Wi-Fi)、蓝牙、第五代(5th generation,5G)移动通信技术等进行通信。例如,可以基于5G实现车辆与其他装置(比如路侧单元206或服务器204)之间的通信。
本申请实施例中终端设备可以用于采集周边环境信息,比如可以通过终端设备上设置的传感器采集周边环境信息。本申请实施例中车辆中可以包括信息采集装置。信息采集装置可以通过传感器采集原始数据。信息采集装置也可以对原始数据进行处理,得到处理后数据(比如特征级数据、目标级数据等)。当终端设备为车辆时,本申请实施例中车辆中的信息采集装置可以为车辆内的部件、车辆本身或者手机等。该信息采集装置可以包括该车辆中定位系统的信息采集装置、智能驾驶的信息采集装置或其他任何具有计算能力的设备实施。
本申请实施例中终端设备(比如车辆)上设置有传感器,该传感器用于采集车辆附近的信息,其中,传感器可以包括摄像头、激光雷达、毫米波雷达、超声波雷达、定位装置(例如,全球导航卫星系统(global navigation satellite system,GNSS),惯性测量单元(Inertial measurement unit,IMU))等。GNSS可以用于估计车辆的地理位置。为此,GNSS可以包括收发器,基于卫星定位数据估计车辆相对于地球的位置。在示例中,车辆中的计算机系统可以结合地图数据使用GNSS来估计车辆行驶的道路。IMU可以基于惯性加速度及其任意组合来感测车辆的位置和朝向变化。在一些示例中,IMU中传感器的组合可包括例如加速度计和陀螺仪。将基于GNSS得到的定位信息和基于其它技术(例如,IMU)得到的信息融合,将融合后的结果作为车辆的当前时刻的全局位姿。这种将基于GNSS得到的信息和基于其它技术(例如,IMU等传感器)得到的信息进行融合以实现定位的方式可以称为组合定位。当然,组合定位还可以通过其他传感器采集到的数据与地图中存储的相应的传感器的数据进行匹配,可以实现对车辆当前所在的车道级的定位位置。例如,毫米波雷达传感器可利用无线电信号来感测车辆的周边环境内的目标。在一些实施例中,除了感测目标以外,毫米波雷达还可用于感测目标的速度和/或前进方向。激光雷达可利用激光来感测车辆所位于的环境中的目标。相机传感器可用于捕捉车辆的周边环境的多个图像。另外,每辆车可以设置一种或多种传感器,每种传感器的数量可以为一个或多个。传感器可以安装在车辆的顶部(例如可以设置在车辆顶部的中间位置)、车辆前端等等位置,本申请实施例对每个车辆中传感器安装位置和数量并不做限定。
2)路侧单元(road side unit,RSU)206。
如图1所示,该应用场景中可以包括RSU206,RSU206可用于通过直接通信(如PC5)或专用短程通信技术(dedicated short range communications,DSRC)等通信方式向终端设备发送车辆到一切(vehicle to everything,V2X)消息。V2X消息可承载动态信息或者其他需要通知终端设备的信息。其中,路侧单元与终端设备之间的通信方式也可被称为车辆与路边基础设施(vehicle to infrastructure,V2I)通信。需要说明的是图1中仅仅示意出了路侧单元206与车辆201以及服务器204之间具有通信途径,在实际应用中,路侧单元206也可以与其他车辆,比如车辆202、车辆203等具有通信途径,在图中未示出。
本申请对于路侧单元的具体部署形态不作具体限定,其可以是一个终端设备、移动或非移动的终端设备、服务器或芯片等等。路侧单元还可用于将管辖范围内发生的动态信息上报至车联网服务器,如,通过路侧信息(roadside information,RSI)消息上报动态信息。
本申请实施例所适用的系统架构中可以包括有路侧单元,也可以不包括路侧单元,本申请实施例不做限制。在一种可能的实施方式中,路侧单元可以根据服务器下发的指令对一些指定的元素进行重点感知,并将感知结果进行上报。或者,在另一种可能的实施方式中,路侧单元也可以向终端设备发送指令或者下发更新后地图。
本申请实施例中的路侧单元中也可以设置有信息采集装置。信息采集装置可以通过传感器采集数据。信息采集装置也可以对传感器采集的数据进行处理,得到处理后数据(比如特征级数据、目标级数据等)。具体可以参考车辆的信息采集装置。
3)服务器204。
如图1所示,该应用场景中可以包括服务器204,服务器204可以是对终端设备和/或路侧单元进行管理、提供服务的车联网平台或服务器,包括为高精地图和导航地图提供服务的应用服务器或地图云服务器,还可以是用于车辆升级的OTA服务器。在一种可能的实施方式中,服务器204可以用于地图的更新下发,例如更新车辆和路侧单元的地图等功能。服务器的具体部署形态本申请不做限定,比如可以是云端部署,还可以是独立的计算机设备或芯片等。当需要向终端设备发送V2X消息时,可由服务器将V2X消息发送至路侧单元,并由路侧单元向其覆盖区域内的终端设备进行广播。当然,也可由服务器直接将V2X消息发送至终端设备。
在本申请中,该服务器还可以是升级服务器,是能够存储地图的更新文件,并为终端设备提供更新文件下载服务的第三方设备。可选的,所述升级服务器可以为OTA服务器等、云服务器等。
其中,OTA服务器(也称为OTA云)作为汽车厂商或服务商提供的一种云服务,负责在云端管理升级任务和软件升级包,并以OTA的通信方式(例如,通过Wifi、satellite、蜂窝网络、卫星等无线通信方式或其他有线传输方式)下发给需要升级的车辆。
OTA提供了一种远程升级汽车软件或修复汽车软件缺陷的技术手段。随着自动驾驶的发展,目前市场需求对汽车的计算和控制能力要求越来越高。越来越多的汽车功能通过软件的形式提供,软件定义汽车正在成为汽车发展的重要趋势。软件定义汽车要求汽车能够像计算机或智能手机一样,便捷地安装软件和更新软件,使汽车“常用常新”。用户可以借助OTA技术联网到OTA云端去下载和安装软件,从而可减轻汽车软件升级的时间和空间限制,避免传统的汽车软件更新需要用户将车开到4S店或维修网点,需要由专业技术人员通过专用设备去刷新车内的软件导致的不便性,使得OTA在越来越多的汽车上得到了应用。
例如,在软件为地图软件时,可以相应设置地图OTA服务器,其作为地图图商的一种云服务,负责在云端管理地图软件和高精度地图数据,并以OTA的方式下发给需要升级的用户/车辆。
在一些实施例中,升级服务器可以与地图生成装置建立连接,从而获取地图生成装置新生成的更新文件,并根据对应的版本标识对更新文件进行存储。另外,所述升级服务器可以与终端设备建立连接,从而获取终端设备对地图的升级需求,从而根据该升级需求选择对应的所述地图的多个更新文件,并将选择的多个更新文件进行拼接合并,发送给终端设备,以使所述终端设备可以进行地图的升级。
4)存储设备205。
如图1所示,该应用场景中还可以包括存储设备205,存储设备205可以用于存储数据,比如可以存储地图。
5)地图。
地图,其是指以电子数据形式存在的电子地图,地图中包括大量相互连通的路段信息,以及其它相关的信息(如路段的级别、类型等)。
矢量地图,比如开源矢量地图,包括道路级的信息。其中,道路级的信息可以为用户提供导航信息,满足开车路线的导航需求。例如,道路级的信息可以包括:当前道路的车道数量、当前道路的限速信息、转弯信息。
高精度地图包括道路级的信息和车道级的信息。其中,车道级信息用于指示路网环境中的车道的信息,例如,车道曲率、车道航向、车道中轴线、车道宽度、车道标线、车道限速、车道分割以及车道合并等信息。另外,车道之间的车道线情况(虚线、实线、单线和双线)、车道线颜色(白色、黄色)、道路隔离带、隔离带材质、道路箭头、文字内容和所在位置等也都可以包括在车道级信息中。
6)地图元素。
地图元素是指地图中的一些元素,包括不限于:道路、车道线、标牌、地面标识、信号灯、可行驶区域标识线等。其中,道路可以包括护栏、路沿等;标牌包括:路标牌、指示性牌、限高牌等各种类型,地面标识包括:分流标识、出入口标识、限速标识、限时标识等。
本申请实施例中涉及到地图元素的类型信息,地图元素可以分类,每类地图元素可以由一个类型标识,本文提到的类型信息可以为类型标识。分类规则不限,比如可以将道路标识分为一类,或者将地面标识分为一类等等。
在一种可能的实施方式中,本申请实施例可以适用于高精地图,高精地图通俗来讲就是精度更高、数据维度更多的电子地图,地图元素更多。精度更高例如体现在地图中包含的要素信息精确到厘米级别。
7)地图图层。
地图数据的管理和存储也是以文件形式存在的,不同版本的文件也就代表着高精度地图数据的新鲜度。因此,可以根据地图的版本标识(例如,版本号、版本信息等)确定是否存在待更新的地图。
考虑到地图内容的多样性,可以根据不同功能设置不同的图层,每个图层内包含的元素可以对应该图层的功能。根据地图图层的更新频率分类,可以包括静态图层和动态图层。
其中,静态图层,主要指的是高精地图中更新频率较低,无需经常更新的一些目标物体或对象,可以包括道路、车道、路口、路面标识以及交通标牌、交通灯等道路附属设施等。再例如,道路级静态图层信息可以包括道路几何、道路曲率、道路航向、道路限速、车道数、纵向坡度以及横向坡度等信息。在一些实施例中,如图2a所示,静态图层部分可以是地图的底图部分,该部分包含了最基本、最常用的地图数据元素的图层。例如:道路,河流,桥梁,绿地,建筑物或者其他地物的轮廓等地图元素。在底图的基础上,可以叠加各种图层,以满足应用的需要。例如,如图2a所示,可以包括:车道图层,感兴趣(Place of interests,POI)图层(用于设置感兴趣点,例如,饭馆、加油站等感兴趣点)等。还可以包括:道路走向图层(用于导航和线路规划),道路堵车状况的图层,卫星图图层等矢量图层。这些图层中也可以包括动态图层,动态图层指高精地图中更新频率较高的图层。在一些实施例中,动态图层包括的信息可以是在车辆驾驶过程中可能发生变化的信息,如变化的交通流,实时路况,修路或者封路等需要实时推送或者更新的数据。因此,地图图层也可以相应设置图层的版本标识,用于确定是否存在待更新的地图图层。
地图数据,尤其是高精度地图数据是自动驾驶功能下对环境感知的重要输入,地图数据的准确性和有效性对于自动驾驶的行车安全至关重要。而基于动态图层的信息进行智能网联汽车的通信可以为车辆的定位、决策规划和感知融合提供更精确的依据,从而确保更高级别自动驾驶车辆的行驶安全、舒适性和行驶效率。而交通环境是随着时间变化的,高精度地图的数据,尤其是动态图层的信息也是在不断变化中,不同元素和不同地区的数据变化情况也不同,需要及时更新保证数据。
8)地图瓦片。
高精度地图数据量庞大,管理复杂,为便于管理和存储,可以把地图分割成不同的栅格来进行管理。在一些实施例中,可以将地图划分为规则的大小相同的栅格,例如,如图2b所示,可以将地图划分为25×11个大小相同的栅格。栅格的大小可以根据地图的精度确定,还可以根据其他方式确定,在此不做限定。每个栅格对应的地图也可以称为地图的瓦片。
在制作地图的瓦片时,可以先通过地图软件(例如,ArcGIS软件等),对地图数据进行处理。具体的,可以是在底图上选取必要的地图矢量数据项,通过设定颜色,字体,显示方式,显示规则等操作,渲染得到底图的瓦片。再根据需要,确定瓦片所需的图层。从而,在底图的瓦片之上覆盖上相应的图层的数据后,可以得到地图的瓦片。
为满足不同分辨率的需要,还可以渲染出不同分辨率的底图瓦片。对于每个地图的瓦片中任一位置的描述,可以是通过多层不同分辨率的图片所组成。例如,10层至20层不同分辨率的图片组成。当用户对地图进行缩放时,根据缩放的级数,可以选择不同分辨率的瓦片拼接成一幅完整的地图。
结合地图图层的版本和地图的版本,瓦片也可以相应设置版本标识,该版本标识可以是基于不同图层的版本标识,也可以是基于该瓦片上所有图层的版本标识。从而,根据瓦片的版本标识,可以确定是否存在待更新瓦片。其中,待更新瓦片可以是瓦片中存在至少一个图层有更新,即生成相应的待更新瓦片。
9)自动驾驶的环境模型。
本申请中,在车辆使用自动驾驶功能时,为更好的实现自动驾驶时的驾驶决策,车辆或地图服务器还可以为车辆的自动驾驶功能构建自动驾驶功能对应的环境模型。该环境模型用于支持车辆在使用自动驾驶功能时进行驾驶决策(例如,对车辆速度的控制、加速、减速、是否紧急刹车、车辆行驶方向、车辆行驶车道、避让、变道等决策)。
下面一车辆构建自动驾驶功能对应的环境模型为例进行说明。
在一些实施例中,地图模块可以基于地图瓦片中的环境信息(例如,道路信息、导航信息、路况信息、天气信息等环境信息),构建自动驾驶功能对应的环境模型中的环境元素(例如,道路、导航路径、车辆、行人、路障、天气等环境元素)。
举例来说,在构建自动驾驶功能对应的环境模型中的车道时,可以基于地图瓦片中的车道信息,构建自动驾驶功能对应的环境模型中的车道。
在一些实施例中,地图模块还可以基于车辆采集到的环境信息,构建自动驾驶功能对应的环境模型中的环境元素。
举例来说,在构建自动驾驶功能对应的环境模型中的车道时,可以基于自身车辆的传感器采集到的车道信息,构建自动驾驶功能对应的环境模型中的车道。还可以基于其他车辆的传感器采集到的车道信息,构建自动驾驶功能对应的环境模型中的车道。
考虑到自动驾驶还可以分为不同的等级。例如,以美国机动车工程师学会(society of automotive engineer,SAE)提出的自动驾驶分级为例,完全自动驾驶模式可以为L5,表示由车辆完成所有驾驶操作,人类驾驶员无需保持注意力;部分地自动驾驶模式可以为L1、L2、L3、L4,其中,L1表示车辆对方向盘和加减速中的一项操作提供驾驶,人类驾驶员负责其余的驾驶操作;L2表示车辆对方向盘和加减速中的多项操作提供驾驶,人类驾驶员负责其余的驾驶动作;L3表示由车辆完成绝大部分驾驶操作,人类驾驶员需保持注意力集中以备不时之需;L4表示由车辆完成所有驾驶操作,人类驾驶员无需保持注意力,但限定道路和环境条件;人工驾驶模式可以为L0,表示由人类驾驶者全权驾驶汽车。
因此,本申请中,自动驾驶的环境模型还可以是基于不同等级的自动驾驶建立的,即不同等级下的环境模型提供的环境信息不同。例如,自动驾驶等级高的环境模型中的环境元素更丰富,或者,环境元素对应的环境信息精度更高等。以满足不同等级下的自动驾驶的需要。当然,还可以根据其他方式,确定自动驾驶的环境模型所需的环境元素和环境信息,在此不做限定。
图3a所示的,是一个车辆所包括的全部的车载设备或部分的车载设备的构架示意图。这些车载设备可以被分成若干个域(domain),每个域包括一个或多个车载设备,每个域有一个域管理员(domain manager,DM),例如,ADAS传感器构成一个域,其域管理员是移动数据中心(mobile data center,MDC)。另外图1中还包括DM1、DM2、DM3和DM4这4个域管理员,这4个域管理员对应于4个域,域内的设备通过DM与网关(gateway)通信。域管理员的设备类型可以和域内的一种设备的类型相同,或者,域管理员的设备类型和域内的设备的类型均不相同。在将车载设备划分为多个域时,划分因素可能有多种。例如可以根据车载设备所完成的功能来进行划分。例如有几个车载设备用于协同完成某种功能(例如,动力功能),就可以将这几个车载设备划分为一个域。或者也可以按照其他因素来划分不同的域。而关于域管理员,例如随机选择域内的一个车载设备作为域管理员,或者也可以选择域内的有统筹管理功能的一个车载设备作为域管理员。
图3a中的4个域中的车载设备均以ECU为例。每个ECU可以通过软件来完成某种特定的控制或计算功能。OTA可以是指对汽车某个ECU进行软件升级,此时,可从OTA云下载相应ECU的软件升级包,并通过该ECU安装该软件升级包实现升级。汽车OTA的步骤一般分为升级提醒、用户许可、下载升级包和升级执行等步骤。
为实现不同的功能,车辆上可能设置有多种不同功能的ECU。通常复杂的功能也需要多个ECU之间的协作。因此,OTA也可以是对汽车多个ECU进行软件升级。考虑到OTA对于功能的升级千差万别,有核心功能的升级,也有非核心功能的升级等,因此,为了便于管理,对于多个ECU的升级,可以是以整车为粒度来对于车辆和维护和升级的版本进行管理,即称为整车OTA升级。每次整车OTA升级对应更新一个整车版本标识,一个整个整车OTA升级任务中包含车内的多个ECU的软件更新,只有全部功能都升级成功才能标记升级成功。
考虑到整车OTA升级通常涉及到多个ECU的软件升级,而这些ECU或者这些ECU的升级之间往往有一定的依赖关系。因此,在整车OTA升级中可以设置一个集中的整车升级控制模块来协调多个ECU的软件升级。负责集中控制和协调整车OTA升级的可以是整车升级控制模块(update master),也可以称为主节点,可以以软件的形式部署在某个ECU上。图3a是以网关作为主节点为例,实际上主节点不限于网关,还可以是其他车载设备。例如,可以是网管,域管理员、MDC,核心数据中心(core data center,CDC),T-Box等。
如图3b所示,对应于主节点,车辆中还可以在待升级的ECU上部署从节点(updateslave),从节点也可以以软件的形式部署在待升级的ECU上。对于一个车辆来说,一般可以包括一个主节点,以及包括一个或多个从节点。对于一个域(或者一个集合)来说,除了从节点之外,还可以包括一个或多个车载设备。在一些实施例中,可以通过主节点控制整车升级包的下载和分发,主节点从OTA云端下载整车软件升级包,拆分后分发给对应的从节点上。在主节点确定多个ECU软件的升级都成功时,主节点更新整车版本标识并反馈给云端,指示整车OTA升级成功。可选的,如图3c所示,车辆还可以设置主节点的备份模块,从而,可以在车辆相应的ECU升级失败时,通过主节点的备份模块恢复ECU的原版本,避免升级失败导致车辆相应ECU的功能不可用。
相应的,整车OTA的客户端也可以作为从节点部署在待升级的ECU上。例如,如图3d所示,地图升级客户端可以部署在安装地图客户端的ECU上,也可以是地图客户端的一部分。在整车OTA升级中,车辆和服务器的通信可以通过主节点及整车OTA的客户端来完成。其中,服务器可以包括地图服务器和OTA服务器,其中地图服务器可以包括具有OTA功能的地图服务器,也可以包括用于管理和生成地图的服务器,OTA服务器可以包括:地图服务对应的OTA服务器,也可以包括车辆服务商对应的OTA服务器,在此不做限定,部署方式可以根据实际需要设置。主节点和整车OTA的客户端可以设置在同一ECU上,也可以分开部署,在此不做限定。例如,地图升级客户端可以部署在安装地图客户端的ECU上,也可以是地图客户端的一部分,负责地图包括地图数据的升级。同时,地图升级客户端可以作为一个从节点,参与整车OTA升级。
在另一些实施例中,也可以设置域管理员是从节点,域管理员都与主节点(网关)连接,用于接收主节点下发的软件升级包,通过域管理员分发相应的软件升级包至待升级的ECU。再比如,在整车OTA升级中,车端和云端的通信还可以通过整车OTA的代理装置来完成,通过代理装置实现主节点的功能。如图3e所示。具体包括:
步骤301:OTA服务器获得整车OTA升级任务。
在一些实施例中,可以是原设备生产商(original equipment manufacturer,OEM)发布的待升级车辆的整车OTA升级任务,并通过OTA服务器向车辆或终端发送整车OTA升级任务的提醒消息。或者,还可以是其他授权后的服务商提供的整车OTA升级任务,在此不做限定。
其中,该提醒消息用于提醒用户车辆当前存在待升级的整车OTA升级任务,整车OTA升级任务可以对应一个整车版本标识。
步骤302:响应于用户对该提醒消息的许可操作,向OTA服务器发送许可消息。
在一些实施例中,车辆通过车辆的人机交互(human machine interaction,HMI)提示用户该提醒消息,该提醒消息可以通过显示屏的方式显示,还可以通过语音或其他方式通知用户,响应于用户对该提醒消息的许可操作,终端或车辆可以确定用户同意执行该整车OTA升级任务。其中,该许可操作可以是语音操作的指令,也可以是手势操作的指令,还可以是其他方式的指令,在此不做限定。当然,终端还可以接收用户对该提醒消息的拒绝或忽略等操作,从而忽略该升级任务。可选的,还可以在预定时间后,再次提醒用户该升级任务,或者,在于该升级任务相关的应用被执行时,可以再次提醒用户该升级任务,在此不做限定。用户选择许可后,响应于用户对该提醒消息的许可操作,终端或车辆可以向OTA服务器发送许可消息,以执行升级任务。
步骤303:OTA服务器接收到许可消息后,发送整车OTA升级任务的升级包。
步骤304:OTA主节点按照顺序触发待升级的从节点安装从节点的升级包。
由车内OTA主节点下载整车升级包并将其分发给多个从节点(待升级的ECU)。
以从节点为地图ECU为例,地图ECU的升级包可以用于地图数据的更新。即地图数据的升级可以作为地图ECU的升级中的一部分,与整车升级中的其他ECU的升级一起完成。
一种可能的方式,地图数据更新方案可以是将一个地区(例如,全国区域的数据一起更新,或者,根据省份或市区划分的区域)的地图数据生成一次更新的软件升级包,使得高精地图数据作为升级软件包的一部分整体更新。为了加速地图更新,另一种可能的方式是,将地图分为多个瓦片或区域,在一次整车更新中,可以无需更新所有地图,而是更新相应的瓦片或区域。
步骤305:每个从节点安装成功后发送安装成功的消息给主节点。
步骤306:主节点在确定所有待升级的从节点升级完成后,更新整车版本标识。
虽然OTA使得汽车软件升级更加便利,但也带来了额外的风险。汽车在安装软件过程中,原有的软件功能处于不可用的状态,甚至可能无法正常驾驶,对自车安全和交通安全带来了不可预知的威胁。同时,OTA升级如果失败,则汽车原有功能可能失效,导致汽车不要用,也给自车安全和交通安全带来了隐患。
对于地图更新的场景,在启动自动驾驶功能之前,为保证地图数据的及时性,可能需要频繁更新地图,考虑到高精度地图数据量大,结合上述地图更新的方法,需要等待地区的升级包更新成功或者多个瓦片同时更新成功后才能使用,下载时间可能很长,对于需要更新可能需要用户有很长的等待时间,更新效率有限,甚至可能出现无法更新成功的情况,导致用户无法使用更新后的地图用于相应的驾驶功能,用户体验较差。如何提升地图数据更新的效率,提升用户感受是需要解决的一个重要问题。
实施例一
基于上述问题,本申请提供一种地图更新方法,该方法可以适用于如图1所示的场景中。该场景中可以包括服务器和终端,示例性的,终端可以为待升级的车辆。服务器可以包括为车辆提供升级服务的OTA服务器和提供地图信息的地图服务器,需要说明的是,OTA服务器和地图服务器可以是分开部署的服务器,也可以是集中部署的服务器,在此不做限定。车辆可以设置有地图OTA的客户端。地图OTA的客户端可以是设置在地图相关的ECU上,例如,设置在导航地图模块对应的ECU上,也可以是设置在地图模块对应的ECU上,在此不做限定。在一种可能的场景中,地图OTA的客户端可以和服务器进行交互,实现对地图相关的ECU的升级和地图数据的更新。在另一种可能的场景中,也可以通过整车OTA升级,实现对地图数据的更新。此时,车辆端可以包括主节点和从节点。地图数据更新可以作为整车OTA升级的一部分。地图OTA客户端可以作为OTA的从节点和整车的OTA的主节点进行交互,整车的OTA的主节点可以和服务器进行交互,实现对地图ECU的升级和地图数据的更新。
下面参阅图4所示的流程图对本申请实施例提供的方法进行详细介绍,包括:
步骤401:服务器向车辆发送地图的瓦片更新信息。
相应的,车辆获得地图的瓦片更新信息。其中,地图的瓦片更新信息用于指示地图中发生变化的瓦片的信息。
下面以步骤4011~步骤4013举例说明车辆获得地图中发生变化的瓦片的信息。
步骤4011:服务器确定新的地图版本的信息,生成地图数据更新任务。
在一些实施例中,地图服务器用于生成和确定新的地图版本的信息。举例来说,新的地图版本的信息可以包括以下至少一项:新的地图版本对应的地图数据,地图的版本标识,图层的版本标识,瓦片的版本标识等。在地图服务器确定新的地图版本的信息后,可以向OTA服务器发送新的地图版本的信息。相应的,OTA服务器可以根据地图服务器发送的地图版本的信息,生成地图数据的OTA升级任务。
在一些实施例中,地图服务器可以根据车辆或路侧单元采集到的数据对地图的数据进行更新的。例如,车辆中可以包括信息采集装置。信息采集装置可以通过传感器采集数据,将传感器采集的数据传输给服务器或路侧单元。信息采集装置也可以对原始数据进行处理,得到处理后数据(比如特征级数据、目标级数据等),并将处理后数据传输给服务器或路侧单元。服务器或路侧单元可以根据车辆上报的数据,生成更新后的地图及地图版本。
在另一些实施例中,地图的数据更新还可以是根据交通部门或气象部门等途径获得的,例如,一些地图的数据可能是动态更新的,例如,某一车道的交通拥堵信息、交通事故信息、路面状况信息、通行信息、行人或自行车穿越马路信息、行人或机动车占用马路信,某一路段的交通拥堵信息、交通事故信息、路面状况信息、可通行信息、行人或自行车穿越马路信息、行人或机动车占用马路信息等,或天气信息等。此时,服务器可以根据从相关部门获得的数据,生成更新后的地图及地图版本。
步骤4012:服务器根据地图数据更新任务,向车辆发送通知更新消息。
其中,该通知更新消息可以用于通知可更新的地图信息,或者,地图中发生变化的瓦片的信息。例如,地图中发生变化的瓦片的信息可以包括地图中发生变化的瓦片的版本标识及相应的更新的描述信息,以便终端确认是否需要执行该瓦片的更新。例如,该通知更新消息可以包括:地图版本标识,瓦片版本标识,适用的车辆类型等地图的瓦片更新信息。
可选的,服务器可以获得车辆存储的地图版本,从而根据车辆当前存储的地图版本与地图数据更新任务的版本比较,确定是否需要向车辆发送通知更新消息。
在一些实施例中,地图服务器中存储有历史地图版本及最新地图版本,地图服务器可以向车辆发送地图版本的查询请求,该查询请求可以用于获取车辆当前存储的地图版本,该地图版本可以包括所有瓦片的版本标识和相应的地图版本标识。或者,地图服务器还可以通过上一次车辆与地图服务器进行通信时,例如,上一次车辆进行地图更新时,获得的车辆的地图版本。从而,服务器可以根据车辆当前存储的地图版本与地图数据更新任务的版本比较,确定车辆存储的地图版本是否为最新的地图版本,可选的,还可以比较地图中的瓦片的版本是否为最新版本。在确定存在至少一个瓦片的版本需要更新时,可以向车辆发送通知更新消息,以通知车辆至少一个瓦片的版本需要更新。
在一些实施例中,服务器可以向车辆的地图OTA客户端发送该通知更新消息。在另一些实施例中,服务器可以在确定车辆与地图服务器建立连接后,向车辆发送该通知更新消息。
可选的,车辆可以向服务器查询是否存在相比车辆存储的地图版本更新的版本的地图,以使服务器根据车辆当前存储的地图版本与地图数据更新任务的版本比较,确定是否需要服务器向车辆发送通知更新消息。
在一些场景中,可以是车辆启动,开启了地图的客户端,或者车辆相关联的终端设备登录了车厂的客户端,还可以是用户开启了终端上的地图客户端,该地图客户端关联了车辆,可以用于查询、管理车辆上的地图是否需要更新的客户端。此时,上述客户端可以与地图服务器建立连接,地图服务器确定该客户端为关联该车辆的客户端后,可以向该客户端发送通知更新消息。
再比如,上述客户端还可以向服务器发送地图是否存在更新的查询请求消息,该查询请求消息中可以包括:车辆当前存储的地图版本的版本标识,车辆标识等。服务器可以根据接收到的查询请求消息后,通过该查询地图版本的响应消息的方式,向车辆发送该通知更新消息。
步骤4013:车辆根据通知更新消息,确定地图中发生变化的瓦片的信息。
在一些实施例中,车辆可以根据该通知消息中地图中发生变化的瓦片的信息,标记车辆存储的瓦片为地图中发生变化的瓦片,以便后续车辆对车辆存储的瓦片进行管理。例如,车辆可以将地图中发生变化的瓦片对应在车辆上存储的瓦片数据标识为不可用,或者标记为过期版本,使得车辆在调用地图时,可以确定该瓦片数据为过期版本,即该瓦片数据不可用,避免车辆误调用过期版本的瓦片数据,造成安全隐患。
步骤402:车辆根据车辆的定位位置、车辆的导航路径及地图中发生变化的瓦片的信息,确定待更新瓦片。
在一种可能的实现方式中,车辆根据车辆的定位位置、导航路径,确定车辆的地图的使用范围,从而,车辆根据地图的使用范围,及地图中发生变化的瓦片的信息,确定待更新瓦片。在一些实施例中,可以是车辆中的地图OTA客户端根据通知更新消息中确定的地图中发生变化的瓦片的信息,与车辆预计将要使用的地图数据(即地图的使用范围对应的地图数据)比较,确定待更新瓦片。
下面通过方式A1~方式A2举例说明车辆根据车辆的定位位置、导航路径,确定车辆的地图的使用范围。
方式A1,地图的使用范围可以是根据车辆的行驶路径覆盖的地图区域确定的。
举例来说,车辆的行驶路径可以通过以下方式确定。如图6a所示,用户需要由X点出发到达目的地Y点。在具体实施时,首先车辆或终端可以通过用户界面显示目的地输入窗口,并提示用户输入本次行程的目的地;其中,可以通过扬声器广播等提示用户输入行程的目的地;用户在用户界面成功输入所述行程的目的地后,车辆的导航地图模块获取用户输入的所述目的地,并根据用户当前的位置和获取的所述目的地的位置,规划出从用户当前所在的位置到达所述目的地的至少一条行驶路径,作为初始路径。例如,参见图4,在用户输入行程的目的地后,导航地图模块根据用户当前的位置(即出发点X)和获取的所述目的地的位置(即目的地Y),可以规划出能够到达所述目的地Y的3条行驶路径,假设分别为路径1、路径2以及路径3。这里以路径1为例进行说明,路径2和路径3的处理过程类似,不再重复赘述。
一种可能的实现方式,地图的使用范围可以是车辆根据行驶路径所涉及的瓦片确定。例如,如图6b所示,当前车辆确定的导航地图的路径1为路段1,路段2和路段3,因此,可以确定地图的使用范围为涉及路段1的瓦片1、路段2的瓦片2和瓦片3,及路段3的瓦片3和瓦片4所对应的范围。从而,可以确定当前待更新瓦片包括:瓦片1、瓦片2、瓦片3和瓦片4。可选的,可以将待更新瓦片标记为不可用,待更新等。
再一种可能的实现方式,地图的使用范围可以对应导航地图的路径1所对应的瓦片及附近的瓦片所占用的区域。具体涉及的附近的范围可以根据导航所需的精度确定,例如,导航精度要求高时,可以选择较小的范围,相应的,选取的瓦片的数量较少。导航精度要求高时,可以选择较大的范围,相应的,选取的瓦片的数量较多。
方式A2,地图的使用范围可以是根据车辆的定位位置、导航路径,确定所述车辆将要行驶到的瓦片所对应的区域。其中,车辆将要行驶到的区域的大小可以是预设大小。
例如,车辆可以根据车辆所在的定位位置及第一导航路径,确定出一个预设大小的区域,该区域可以是车辆将要行驶到的区域,从而,车辆可以将所述车辆将要行驶到的区域作为地图的使用范围。该区域可以是以车辆所在的定位位置为中心、预设大小为半径确定出的锥形区域,或者是以车辆所在的定位位置为中心,预设大小为斜边确定的方形区域,或者是以车辆定位位置为圆心、预设大小为半径确定出的圆形区域,该区域覆盖部分第一导航路径,当然,还可以通过其他方式确定,在此不做限定。
再或者,车辆也可以将目标车辆所在的区域及相邻区域,作为地图的使用范围,再比如,也可以将目标车辆所在区域及目标车辆所在区域的前方的至少1个瓦片的区域,作为地图的使用范围。进一步的,地图的使用范围还可以根据车辆的车速及车辆所处的环境的复杂度确定,例如,为提高导航的精度,若确定车辆所处的路况信息复杂,则可以扩大地图的使用范围的大小,若确定车辆所处的路况信息简单,可以缩小地图的使用范围的大小。
在车辆确定当前车辆可选的路径有多条时,可以根据用户选择的路径作为导航路径。此时,车辆可以根据用户选择的导航路径,确定地图的使用范围,进而,确定待更新瓦片的信息。
可选的,在确定待更新瓦片后,车辆还可以确定待更新瓦片的更新策略,以便车辆根据待更新瓦片的更新策略,下载/更新待更新瓦片。
其中,待更新瓦片的更新策略可以包括以下至少一项:待更新瓦片的下载顺序,待更新瓦片的更新顺序,待更新瓦片的下载优先级,或者,待更新瓦片的更新优先级。
结合方式A1,车辆可以根据所述车辆的定位位置和所述导航路径,确定所述车辆的行驶路径,从而,根据所述车辆的行驶路径和所述待更新瓦片的信息,确定所述待更新瓦片的下载/更新顺序或所述待更新瓦片的下载/更新优先级。
结合方式A2,车辆可以根据所述车辆的定位位置、所述车辆的导航路径,确定所述车辆将要行驶到的区域;根据所述车辆将要行驶到的区域及所述地图中发生变化的瓦片的信息,确定所述待更新瓦片的更新策略。
以第一导航路径为路径1举例,在路径上包括有路段1对应的瓦片1,路段2对应的瓦片2和瓦片3,和路段3对应的瓦片3和瓦片4为第一待更新瓦片。因此,可以设置的第一待更新瓦片的更新策略可以是根据地图使用的先后顺序确定的。例如,路段1对应的瓦片1最先使用,则设置瓦片1的更新优先级最高。路段2对应的瓦片2和瓦片3第二先使用,则设置瓦片2和瓦片3的更新优先级为中等。路段3对应的瓦片3和瓦片4最后使用,则设置瓦片4的更新优先级最低。从而,确定出的第一待更新瓦片的更新策略包括:瓦片1的更新优先级最高,瓦片2和瓦片3的更新优先级中等,瓦片4的更新优先级最低。
在另一种可能的实现方式中,车辆可以根据所述车辆的行驶路径、所述车辆的驾驶类型及所述第一待更新瓦片的数据类型,确定所述第一待更新瓦片的下载/更新顺序或所述第一待更新瓦片的下载/更新优先级。
其中,驾驶类型可以基于自动驾驶的不同类型划分,例如,驾驶类型还可以包括人员驾驶、自动驾驶或者长距离连续自动驾驶等。也可以是基于自动驾驶的等级划分,例如,基于L0~L4划分。此时,车辆可以根据不同的驾驶类型,及第一待更新瓦片的数据类型,确定第一更新策略。例如,假设当前驾驶类型对应自动驾驶,且第一待更新瓦片的数据类型为自动驾驶对应的数据,则根据第一导航路径确定的第一待更新瓦片的更新策略可以是下载优先级和安装优先级最高的,并且需要在车辆行驶之前,第一待更新瓦片安装完成,以满足自动驾驶的要求。再比如,假设第一导航路径中存在20%的行驶路径对应的瓦片的数据类型为自动驾驶类型的数据,其他路程为非自动驾驶类型的数据,则可以设置20%的行驶路径对应的瓦片的优先级最高,其他路程对应的瓦片的优先级相应降低,以满足自动驾驶模式的要求。基于不同的驾驶类型和不同的第一待更新瓦片的数据类型,可以对应设置不同的第一待更新瓦片的更新策略,以适应不同的驾驶类型和不同的地图的更新,进一步提高车辆的行驶的安全性和地图更新的灵活性。
在一些实施例中,下载优先级还可以根据当前网络的情况来设置。例如,在网络情况较好时,可以设置地图的使用范围内的第一待更新瓦片的下载优先级最高。地图的使用范围之外的地图中发生变化的瓦片的下载优先级较低。再比如,在网络情况较差时,可以设置仅下载地图的使用范围内的第一待更新瓦片,取消对地图的使用范围之外的地图中发生变化的瓦片的下载。可选的,还可以进一步设置地图的使用范围内的待更新瓦片的优先级,例如,设置瓦片1的下载优先级最高,瓦片2和瓦片3的下载优先级中等,瓦片4的下载优先级最低。
在另一些实施例中,更新优先级可以根据车辆更新待更新瓦片所需要的环境和要求设置,例如,对于车辆定位位置附近需要更新的瓦片,例如,瓦片1可以设置为车辆行驶前必须安装完成的。对于距离车辆定位位置较远的待更新瓦片,可以设置在行驶到距离待更新瓦片对应的地图位置相距预设位置安装完成。预设位置可以是考虑车辆行驶的场景确定出来的。例如,在高速场景、郊区场景、普通路段场景下,可以根据道路的限行速度或车辆当前的行驶速度及更新该待更新瓦片所需的时间,确定出该预设位置。再比如,对于距离车辆定位位置较远的待更新瓦片,还可以是根据预设时间确定出来的,例如,可以根据导航地图预测的车辆预计到达该待更新瓦片时的预测时刻,在该预测时刻之前的预设时间安装完该待更新瓦片。该预设时间可以考虑待更新瓦片的更新至可以使用所需的时间后确定出的时间,以提高瓦片更新的成功率和地图导航的使用体验。
可选的,在确定待更新瓦片已更新完毕后,车辆还可以开始下载/更新地图中发生变化的瓦片,以备后续车辆可能更换地图的使用范围,需要使用相应的瓦片时,车辆可以无需现场下载/更新,提高用户的使用体验。
当然,在下载地图中发生变化的瓦片的过程中,也可以考虑设置相应的优先级,例如,可以根据用户使用导航地图的历史数据,确定用户的常用路线,从而,确定用户或车辆的地图的常用使用范围,进而,通过地图的常用使用范围确定优先更新的地图中发生变化的瓦片,在优先更新的地图中发生变化的瓦片全部更新完毕后,可以启动其他地图中发生变化的瓦片的更新,直至所有的地图中发生变化的瓦片更新完毕。
步骤403:车辆从服务器下载待更新瓦片。
在一些实施例中,车辆可以按照待更新瓦片的更新策略确定待更新瓦片的下载,可选的,车辆可以向服务器发送待更新瓦片的获取请求。服务器根据接收到的待更新瓦片的获取请求进行瓦片数据的下载。
例如,车辆可以根据更新策略中确定的待更新瓦片的更新顺序或更新优先级,确定当前待下载的待更新瓦片。结合图6b,当前待下载的待更新瓦片可以是瓦片1。也可以是瓦片1、瓦片2和瓦片3,且瓦片1的优先级最高。
在另一些实施例中,车辆还可以向服务器发送所述待更新瓦片的更新策略,使得服务器根据更新策略,向车辆发送待更新瓦片的数据。例如,车辆向服务器发送所述待更新瓦片的更新策略的消息可以包括:待更新瓦片的更新策略,待更新瓦片的标识,车辆的标识等。从而,服务器可以根据待更新瓦片的更新策略,向车辆发送待更新瓦片的数据。此时,车辆无需在每次更新待更新瓦片时,都向服务器发送待更新瓦片的获取请求,用于获取待更新瓦片的数据。
一种可能的实现方式,待更新瓦片的数据包下载过程支持断点下载方式。例如,待更新瓦片的数据包可以是分片下载,例如,通过全量包或者差分包的方式下载。在另一些实施例中,服务器可以采用内容分发网络(content delivery network,CDN)等方式加速下载的速度。例如,还可以通过路侧单元预先下载地图的待更新瓦片的数据包,在车辆到达路侧单元的通信范围内,可以通过路侧单元向车辆发送车辆当前待下载的待更新瓦片的数据包。从而,提高了车辆下载待更新瓦片的效率。
举例来说,车辆当前正在下载的瓦片为瓦片1为例,在车辆到达路侧单元1的覆盖范围内后,路侧单元1可以向服务器发送通知消息,指示车辆到达路侧单元1的覆盖范围。此时,服务器可以根据路侧单元1是否存储有瓦片1的数据包,确定是否有路侧单元1向车辆发送瓦片1的数据。在服务器确定路侧单元1存储有瓦片1的数据包时,服务器可以向路侧单元1发送指示信息,该指示信息用于指示路侧单元1向车辆发送瓦片1的数据。
再比如,在车辆到达路侧单元1的覆盖范围内后,车辆可以向路侧单元1发送数据下载请求,该数据下载请求中可以包括瓦片1的标识和瓦片1的版本标识。从而,路侧单元1可以根据自身是否存储有瓦片1的数据包,判断是否向车辆发送瓦片1的数据。当然,为了保证数据的安全性,在车辆发送下载请求之前,路侧单元1和车辆可以相互进行验证,以保证双方为可信的。可选的,车辆和路侧单元1还可以通过相应的加密方式,传输瓦片1的数据,加密方式本申请不做限定。
步骤404:车辆根据所述待更新瓦片,更新所述地图。
在一些实施例中,车辆可以根据待更新瓦片下载成功的顺序,更新所述地图。
在另一些实施例中,车辆可以根据待更新瓦片的更新策略,对下载的瓦片进行安装。
例如,车辆的地图客户端(例如,地图OTA客户端)可以根据安装的优先级对下载完毕的瓦片进行安装,当然,还可以根据下载完成的顺序对待更新瓦片进行安装,可以根据具体的场景确定,在此不做限定。
可选的,车辆在每个瓦片的更新完成时,在地图显示界面显示更新后的瓦片,或者,还可以以通知消息的方式通知用户该瓦片更新完成。在一些实施例中,在车辆确定待更新瓦片更新完成后,可以将该瓦片的标识更新为已更新或可用等。如图6d所示,在确定瓦片1、瓦片2、瓦片3和瓦片4更新完成后,可以将瓦片1、瓦片2、瓦片3和瓦片4标记为已更新,或者,标记为可用。从而,车辆可以根据瓦片是否可用,确定是否可以调用相应的瓦片用于车辆的驾驶。再比如,还可以是以进度条的方式显示瓦片的更新进度,在此不做限定。
可选的,车辆确定待更新瓦片更新完成后,向服务器发送更新完成消息。
其中,该更新完成消息可以包括:更新完成的瓦片的标识,车辆的标识等。
可选的,地图OTA客户端完成返回地图更新成功后,可以向服务器发送地图更新消息,该地图更新消息可以是通过日志的方式发送。该日志可以包括地图的更新时间,地图更新时车辆状态,地图的更新结果,地图更新后的地图版本等内容。
通过上述方法,增加瓦片更新信息,标明瓦片是否可用即是否为最新数据,提高更新的成功率和用户体验。选择地图中发生变化的瓦片中的部分瓦片作为待更新瓦片进行更新,更新后的瓦片即可参与车辆使用地图用于车辆驾驶的过程,提升智能驾驶的体验。
考虑到车辆在行驶过程中,还可能出现需要切换导航路径的场景,例如,从第一导航路径切换至第二导航路径。车辆可以随时对当前的待更新瓦片(第一待更新瓦片)的待更新策略(第一更新策略)进行评估,确定是否需要更新第一待更新瓦片的第一更新策略。例如,将第一待更新瓦片的第一更新策略更新为第二待更新瓦片的第二更新策略。
例如,车辆根据更新后的瓦片,确定出当前的导航路径中包括不可通行或拥堵的道路,此时,车辆可以根据更新后的瓦片,重新规划导航路径,并向用户显示重新规划后的导航路径,以便用户选择是否需要切换导航路径。可选的,在重新规划导航路径之前,还可以提示用户前方可能存在不可通行或拥堵的道路,是否需要重新规划导航路径。
在一些实施例中,在用户切换为第二导航路径后,或者车辆确定切换为第二导航路径后,根据车辆的第二导航路径覆盖的地图区域和所述车辆的第二定位位置确定的第二待更新瓦片与第一待更新瓦片相同,此时,车辆可以根据切换后的第二导航路径覆盖的地图区域和所述车辆的第二定位位置,确定第一待更新瓦片的第二更新策略。
例如,车辆可以获取所述车辆的第二导航路径和所述车辆的第二定位位置;根据所述车辆的第二导航路径覆盖的地图区域和所述车辆的第二定位位置,确定所述第二待更新瓦片。可选的,还可以根据第二导航路径覆盖的地图区域和所述车辆的第二定位位置及第二待更新瓦片的信息,确定所述第二待更新瓦片的第二更新策略。
具体确定第二更新策略的方式,可以参考第一更新策略的确定方式,在此不在赘述。
例如,在用户切换为第二导航路径后,或者车辆确定切换为第二导航路径后,车辆可以根据切换后的第二导航路径,重新确定地图的使用范围,进而重新确定待更新瓦片及对应的待更新瓦片的第二更新策略。
举例来说,如图6c所示,原导航路径为路径1,包括路段1,路段2和路段3。切换后的导航路径为路径1’,包括路段1,路段2路、路段3’和路段4’。车辆已行驶至路段1的末尾,将要进入路段2或路段2’。根据切换后的导航路径,可以重新确定当前地图的使用范围可以包括:路段2根对应的瓦片2’和瓦片3’,及路段3’对应的瓦片4’。因此,可以确定出当前的待更新瓦片包括:瓦片2’、瓦片3’和瓦片4’。此时,可以将路径1确定出的待更新瓦片中还未更新的瓦片的标识修改为地图中发生变化的瓦片。从而,停止这些瓦片的更新,而优先更新根据路径1确定出的待更新瓦片。使得车辆在使用过程中,可以流畅的切换导航,而不会受到地图更新未完成的影响,导致可能无法使用地图实现相应的车辆的功能的问题。
在一些实施例中,在车辆确定瓦片的更新策略为第二更新策略后,可以获取第二待更新瓦片的数据。其中,第二待更新瓦片为根据所述第二更新策略确定的;从而,车辆可以根据所述第二待更新瓦片的数据,更新所述地图。
在一些实施例中,在车辆确定瓦片的更新策略为第二更新策略后,还可以向服务器发送第二更新策略。例如,车辆可以向服务器发送瓦片的更新策略的更新消息。该更新消息可以包括:第二更新策略,及车辆的标识,待更新瓦片的标识。可选的,该更新消息还可以包括:已更新的瓦片的标识。使得服务器可以根据第二更新策略,向车辆发送第二待更新瓦片的数据。
步骤405:根据所述更新后的地图,进行驾驶决策。
一种可能的实现方式,车辆可以根据更新后的地图,确定当前地图可以使用的驾驶决策。
例如,驾驶决策可以包括车辆的行驶模式,所述行驶模式还可以根据自动驾驶的不同模式进行划分,例如,可以包括人员驾驶、自动驾驶、长距离连续自动驾驶等模式。此时,车辆可以根据更新后的地图,及当前的导航路径,确定适合的行驶模式。例如,假设当前导航路径涉及到的瓦片都是更新后的瓦片,则满足自动驾驶模式的要求,车辆可以确定当前行驶模式可以支持自动驾驶模式。假设导航路径中仅存在20%的路段对应的瓦片满足自动驾驶模式的要求,则在车辆选择当前的导航路径时,可以在该20%的路程上使用自动计算模式,在其他路段上使用其他较低等级的行驶模式。再比如,若确定导航路径中存在子路径对应的瓦片满足自动驾驶模式的要求,可以在目标车辆行驶至子路径的范围内,向用户展示该子路径,用于提示用户存在子路径可以选择自动驾驶模式。不同的行驶模式可以对应设置不同的导航路径的选择条件,以适应不同的行驶模式,进一步提高导航路径规划的性能。
下面参阅图5所示的流程图对本申请实施例提供的地图更新方法进行介绍,包括:
步骤501:服务器向车辆发送地图的瓦片更新信息。
相应的,车辆获得地图的瓦片更新信息。其中,地图的瓦片更新信息用于指示地图中发生变化的瓦片的信息。
步骤502:服务器根据车辆的定位位置、导航路径及地图中发生变化的瓦片的信息,确定待更新瓦片。
其中,服务器可以通过车辆上报的定位位置和导航路径,获得车辆定位位置、导航路径覆盖的地图区域,从而,服务器可以车辆的定位位置、导航路径覆盖的地图区域及地图中发生变化的瓦片的信息,确定待更新瓦片。
具体服务器确定待更新瓦片的方式可以参考步骤402中车辆确定待更新瓦片的方式,在此不再赘述。
步骤503:车辆从服务器下载待更新瓦片。
结合步骤502,待更新瓦片可以是服务器根据所述更新策略确定的。此时,服务器可以根据自身确定的更新策略,向车辆发送待更新瓦片,使得车辆从服务器下载待更新瓦片。
一种可能的实现方式,待更新瓦片的数据包下载过程支持断点下载方式。例如,待更新瓦片的数据包可以是分片下载,例如,通过全量包或者差分包的方式下载。在另一些实施例中,服务器可以采用内容分发网络(content delivery network,CDN)等方式加速下载的速度。例如,还可以通过路侧单元预先下载地图的待更新瓦片的数据包,在车辆到达路侧单元的通信范围内,可以通过路侧单元向车辆发送车辆当前待下载的待更新瓦片的数据包。从而,提高了车辆下载待更新瓦片的效率。
步骤504:车辆根据所述待更新瓦片,更新所述地图。
在一些实施例中,车辆可以根据待更新瓦片下载成功的顺序,更新所述地图。
在另一些实施例中,车辆可以根据待更新瓦片的更新策略,对下载的瓦片进行安装。
例如,车辆的地图客户端(例如,地图OTA客户端)可以根据安装的优先级对下载完毕的瓦片进行安装,当然,还可以根据下载完成的顺序对待更新瓦片进行安装,可以根据具体的场景确定,在此不做限定。
步骤505:根据所述更新后的地图,进行驾驶决策。
一种可能的实现方式,车辆可以根据更新后的地图,确定当前地图可以使用的驾驶决策。
实施例二
本申请提供一种基于地图的驾驶决策方法,该方法可以适用于如图1所示的场景中。该场景中可以包括服务器和终端,示例性的,终端可以为待升级的车辆。服务器可以包括为车辆提供升级服务的OTA服务器和提供地图信息的地图服务器,需要说明的是,OTA服务器和地图服务器可以是分开部署的服务器,也可以是集中部署的服务器,在此不做限定。车辆可以设置有地图更新模块(例如,地图OTA的客户端)。地图OTA的客户端可以是设置在地图相关的ECU上,例如,设置在导航地图模块对应的ECU上,也可以是设置在地图模块对应的ECU上,在此不做限定。在一种可能的场景中,地图OTA的客户端可以和服务器进行交互,实现对地图相关的ECU的升级和地图数据的更新。在另一种可能的场景中,也可以通过整车OTA升级,实现对地图数据的更新。此时,车辆端可以包括主节点和从节点,地图数据更新可以作为整车OTA升级的一部分。地图OTA客户端可以作为OTA的从节点和整车的OTA的主节点进行交互,整车的OTA的主节点可以和服务器进行交互,实现对地图ECU的升级和地图数据的更新。下面参阅图7所示的流程图对本申请实施例提供的方法进行详细介绍。如图7所示。包括:
步骤701:服务器向车辆发送地图的瓦片更新信息。
相应的,车辆获得地图的瓦片更新信息。
其中,所述瓦片更新信息用于指示所述地图中发生变化的瓦片。一种可能的实现方式,服务器向车辆的地图更新模块发送地图的瓦片更新信息,使得车辆获得地图的瓦片更新信息。其中,地图的瓦片更新信息包括以下至少一项:地图中发生变化的瓦片的信息,所述地图中发生变化的瓦片与所述车辆本地存储的瓦片的相似度信息,所述车辆本地存储的瓦片的置信度信息,所述发生变化的瓦片的置信度信息。
需要说明的是,所述发生变化的瓦片的置信度信息可以是基于车辆本地存储的瓦片相对服务器存储的最新版本对应的瓦片的置信度信息。
在一些实施例中,发生变化的瓦片的置信度信息可用于指示瓦片发生变化后的地图信息的绝对可信程度,车辆优先选择并更新绝对可信程度较高的瓦片,在绝对可信程度较高的瓦片更新完毕,而非所有发生变化的瓦片更新完毕后,即进行驾驶决策。
举例来说,车辆或服务器可以根据地图中发生变化的瓦片的相似度信息,确定发生变化的瓦片的置信度信息。例如,在发生变化的瓦片的置信度较高的情况下,表明该发生变化的瓦片需要优先用于驾驶决策,因此,可以选择该瓦片作为参考瓦片,使得车辆该发生变化的瓦片的数据后,使用发生变化的瓦片进行驾驶决策。在发生变化的瓦片的置信度较低的情况下,表明该发生变化的瓦片无需用于驾驶决策,因此,车辆可以使用本地存储的瓦片的数据作为参考瓦片,进行驾驶决策。从而,在车辆的地图进行更新过程中,基于瓦片的置信度信息,选择本地存储的瓦片或者发生变化的瓦片作为驾驶决策中所依据的参考瓦片,在满足安全性要求的前提下,提高地图更新的灵活性及基于地图进行驾驶决策的灵活性和安全性。
再比如,车辆或服务器还可以根据其他方式,确定发生变化的瓦片的置信度信息。例如,车辆或服务器可以根据瓦片的内容和特征、驾驶决策的类型等确定。在瓦片的安全系数较低的图层,可以设置较低的置信度信息,在瓦片的安全系数较高的图层,可以设置较高的置信度信息,从而,使得车辆基于发生变化的瓦片的置信度信息,确定使用发生变化的瓦片,还是使用本地存储的瓦片进行驾驶决策。
其中,车辆获得地图中发生变化的瓦片的信息的方式可以参考步骤401,在此不再赘述。
其中,车辆获得地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息的方式可以有多种,下面以方式B1和方式B2举例说明。
方式B1:车辆可以根据地图中发生变化的瓦片的信息与所述车辆存储的瓦片进行比较,确定地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息。
在本申请实施例中,瓦片的相似度,又称瓦片的相似性度量,也即综合评定两个瓦片之间相近程度的一种度量。可以理解的是,两个瓦片越相似,相似度也就越大。
车辆在确定车辆的地图版本需要更新时,可以通过比较车辆的地图的版本与新的地图的版本,确定新的地图的相似度信息。具体的,可以确定每个地图中发生变化的瓦片相对车辆的瓦片的相似度信息。例如,车辆确定待更新瓦片包括:瓦片1、瓦片2和瓦片3。待更新瓦片1对应车辆上的瓦片可以为瓦片01。车辆可以根据瓦片1和瓦片01,确定瓦片1和瓦片01之间的相似度信息。待更新瓦片2对应车辆上的瓦片可以为瓦片02。车辆可以根据瓦片2和瓦片02,确定瓦片2和瓦片02之间的相似度信息。待更新瓦片3对应车辆上的瓦片可以为瓦片03。车辆可以根据瓦片3和瓦片03,确定瓦片3和瓦片03之间的相似度信息。
在另一些实施例中,车辆还可以根据瓦片的不同类型,确定相应的相似度的等级,例如,安全系数较高的瓦片的内容,可以对应的相似度的等级较低,安全系数较低的瓦片的内容,可以对应的相似度的等级较高。例如,瓦片中的车道的道路元素类型包括:车道的曲率、坡度,以及各个车道的当前天气和交通流量数据。
再比如,车辆还可以为瓦片的不同类型,设置相应的相似度,从而有助于车辆确定瓦片的置信度信息,以更好的确定瓦片的使用,提高车辆的驾驶的安全性和可靠性。
可选的,为降低车辆地图的更新任务量,车辆可以在确定相似度信息大于预设阈值时,确定是否对该瓦片进行更新。
方式B2:服务器根据地图中发生变化的瓦片的信息与所述车辆存储的瓦片的信息,确定地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息。
可选的,服务器可以根据地图中发生变化的瓦片与车辆存储的瓦片之间的相似度信息,地图中发生变化的瓦片更新任务。从而,服务器向车辆发送瓦片更新任务。其中,服务器发送瓦片更新任务的方式可以是通过OTA服务器发送的,也可以是地图服务器直接发送给车辆的,在此不做限定。具体发送方式可以参考步骤4012,在此不再赘述。其中,瓦片更新任务可以包括:地图中发生变化的瓦片的版本信息,及地图中发生变化的瓦片与车辆存储的瓦片之间的相似度信息。
在一些实施例中,地图服务器可以根据车辆的地图版本信息与新的地图版本信息比较,确定车辆的地图是否需要更新。
地图服务器在确定车辆的地图版本需要更新时,可以通过比较车辆的地图与新的地图之间的相似度,确定新的地图的相似度信息。具体的,可以确定每个地图中发生变化的瓦片相对车辆的瓦片的相似度信息。例如,地图服务器确定地图中发生变化的瓦片包括:瓦片1、瓦片2和瓦片3。地图中发生变化的瓦片1对应车辆上的瓦片可以为瓦片01。地图服务器可以根据瓦片1和瓦片01,确定瓦片1和瓦片01之间的相似度信息。地图中发生变化的瓦片2对应车辆上的瓦片可以为瓦片02。地图服务器可以根据瓦片2和瓦片02,确定瓦片2和瓦片02之间的相似度信息。地图中发生变化的瓦片3对应车辆上的瓦片可以为瓦片03。地图服务器可以根据瓦片3和瓦片03,确定瓦片3和瓦片03之间的相似度信息。
在另一些实施例中,还可以根据瓦片中不同类型的内容,确定相应的相似度的等级。例如,安全系数较高的瓦片的内容,可以对应的相似度的等级较低,安全系数较低的瓦片的内容,可以对应的相似度的等级较高。例如,瓦片中的车道的道路元素类型包括:车道的曲率、坡度,以及各个车道的当前天气和交通流量数据。
举例来说,瓦片中包括的内容是车辆的数量,而车道的数量相应确定的相似度的等级较低,在车道的数量不一致时,瓦片的相似度较低。在车道数量相同时车道的曲率的相似度的等级可以相应设置的较高,在车道的数量一致,但是车道的曲率不一致时,瓦片的相似度可以相比车道的数量不一致时得到的瓦片的相似度高。再比如,车道的坡度对应的瓦片的相似度等级可以较高。
再比如,还可以为瓦片中不同类型的内容,设置相应的相似度,从而有助于车辆确定瓦片的置信度信息,以更好的确定瓦片的使用,提高车辆的驾驶的安全性和可靠性。
可选的,为降低车辆地图的更新任务量,地图服务器可以在确定相似度信息大于预设阈值时,生成相应瓦片的瓦片更新任务。或者,也可以将所有的地图中发生变化的瓦片及该地图中发生变化的瓦片对应的相似度信息,地图中发生变化的瓦片更新任务,由车辆根据瓦片更新任务中的相似度信息,确定是否对该瓦片进行更新。
可选的,车辆根据地图中发生变化的瓦片的信息与所述车辆存储的瓦片的相似度信息,确定本地存储的瓦片的置信度信息。
在一些实施例中,车辆可以根据地图中发生变化的瓦片的相似度信息,确定本地存储的瓦片的置信度信息。置信度信息(confidence)可用于度量识别结果的可信程度。
例如,车辆可以根据预设的相似度和置信度信息之间的关系,通过地图中发生变化的瓦片的相似度,确定出本地存储的瓦片的置信度信息。例如,相似度和置信度信息之间的关系可以是线性关系,还可以是非线性关系。在相似度越大时,本地存储的瓦片的置信度信息越高。在另一些实施例中,也可以是相似度越大时,本地存储的瓦片的置信度信息越高,相应的,发生变化的瓦片的置信度信息越低,此时,发生变化的瓦片的置信度信息用于表明车辆本地存储的地图更新为发生变化的瓦片的迫切程度。
在一些实施例中,还可以设置相应的阈值,在相似度大于预设阈值时,可以确定本地存储的瓦片的置信度信息到达可信的程度,可以将本地存储的瓦片用于车辆的行驶和相应的功能中。相似度和置信度信息之间的关系可以是根据瓦片的内容和特征确定的。例如,在确定瓦片对应的图层为安全系数较高的图层,例如,包括交通信息、天气信息、车流量信息等图层的瓦片,或者,是车道更新的图层。此时,可以设置较高的相似度的阈值,即在相似度超过该较高的阈值后,才能获得较高的置信度信息。而针对安全系数较低的图层,例如,建筑物等不影响车辆行驶的地图的更新,可以设置较低的相似度的阈值。此时,在瓦片的相似度信息超过该较低的相似度阈值后,即可获得较高的置信度信息。
其中,置信度信息的方法有多种,至少包括以下几种:基于贝叶斯分类方法直接得到的后验概率,基于神经网络或其他方法得到的对后验概率的估计,基于算法随机性理论得到的随机性度量值,基于模糊数学得到的隶属度值,通过多次测试实验统计得到的准确率等。需要说明的是,本申请实施例中置信度信息的计算方法并不限于上述几种,任何可以用于确定置信度信息的计算方法都可以应用到本申请实施例中,都属于本申请实施例保护范围。
可选的,车辆的地图更新模块向车辆的驾驶功能模块发送瓦片的置信度信息。
步骤702:车辆根据所述发生变化的瓦片的置信度信息,选择所述发生变化的瓦片中的部分瓦片,作为驾驶决策所依据的参考瓦片。
其中,所述参考瓦片为所述发生变化的瓦片中的部分瓦片。
在一些实施例中,车辆可以在所述发生变化的瓦片中,选择满足置信度要求的瓦片,作为驾驶决策所依据的参考瓦片。
在另一些实施例中,车辆还可以根据车辆本地存储的所有瓦片的置信度信息,选择满足置信度要求的瓦片,作为驾驶决策所依据的参考瓦片。
可选的,车辆的驾驶功能模块可以根据车辆的地图更新模块向车辆的驾驶功能模块发送瓦片的置信度信息,使用相应的车辆的驾驶功能。
在一些实施例中,车辆的驾驶功能模块还可以根据地图中车辆本地存储的瓦片的置信度信息,构建自动驾驶功能对应的环境模型。
可选的,车辆还可以根据地图中发生变化的瓦片与车辆本地存储的瓦片之间的相似度信息,进行驾驶决策。
一种可能的实现方式,车辆的地图更新模块向车辆的驾驶功能模式发送地图中发生变化的瓦片与车辆本地存储的瓦片之间的相似度信息,车辆的驾驶功能模块根据地图中发生变化的瓦片与车辆本地存储的瓦片之间的相似度信息,进行驾驶决策。
其中,驾驶决策可以包括车辆使用相应的车辆的驾驶功能,以实现对车辆的控制。
可选的,车辆的驾驶功能模块可以根据地图中发生变化的瓦片与车辆本地存储的瓦片之间的相似度信息,确定车辆本地存储的瓦片的置信度信息,从而,车辆的驾驶功能模块根据车辆本地存储的瓦片的置信度信息,使用相应的车辆的驾驶功能。
需要说明的是,可以是驾驶功能模块构建自动驾驶功能对应的环境模型,还可以是单独的构建环境模型的模块根据瓦片的置信度信息,构建自动驾驶功能对应的环境模型,还可以是地图服务器基于瓦片的置信度信息构建的环境模型,在此不做限定。此时,地图更新模块可以向构建环境模型的模块发送瓦片的置信度信息,从而,构建环境模型的模块可以基于瓦片的置信度信息,确定构建自动驾驶功能采用的环境模型中的环境元素的来源。例如,可以是基于地图瓦片构建自动驾驶功能对应的环境模型中的环境元素,还可以是基于车辆采集到的环境信息构建自动驾驶功能对应的环境模型中的环境元素。
下面以驾驶功能模块构建自动驾驶功能对应的环境模型为例。
例如,驾驶功能模块在启用自动驾驶功能的情况下,可以根据地图瓦片的置信度信息,确定构建自动驾驶功能采用的环境模型中的环境元素的来源。举例来说,在车辆的传感器采集到的环境信息(例如,道路、路障等)与地图瓦片中的环境信息有偏差时,可以根据地图瓦片的置信度信息,确定使用地图瓦片中的环境信息还是车辆采集到的环境信息。
驾驶功能模块在地图瓦片的置信度信息高于选择阈值时,选择地图瓦片中的环境信息,来构建自动驾驶功能采用的环境模型中的环境信息。在地图瓦片的置信度信息低于选择阈值时,选择车辆采集到的环境信息,来构建自动驾驶功能采用的环境模型中的环境信息。
以构建环境模型中的道路为例,驾驶功能模块在确定表示道路信息的地图瓦片的置信度信息高于选择阈值时,则使用该地图瓦片中的道路信息来构建自动驾驶功能采用的环境模型中的道路。在该地图瓦片的置信度信息低于选择阈值时,则使用车辆采集到的道路信息来构建自动驾驶功能采用的环境模型中的道路。
需要说明的是,选择阈值可以是基于自动驾驶功能的等级确定的,例如,在自动驾驶功能的等级最高时,选择阈值也可以设置为最高的阈值,以保证构建的环境模式可以适应相应的自动驾驶功能的等级。
在另一些实施例中,驾驶功能模块确定自身车辆无法采集到环境信息构建自动驾驶功能对应的环境模型中的环境元素,或者,车辆也无法获得其他车辆采集到的环境信息时,驾驶功能模块可以选择降低该环境元素对应的自动驾驶功能的等级,并采用相应的瓦片构建该环境元素。即在车辆使用该环境元素进行自动驾驶时,驾驶功能模块可以使用该环境元素对应的自动驾驶功能的等级。
通过上述方法,构建自动驾驶功能采用的环境模型的可信度更高,可以更好的为自动驾驶服务,提高自动驾驶的安全性。
示例性地,车辆的驾驶功能可以对应车辆的自动驾驶的相关功能,其中,控制汽车自动驾驶相关的程序可以为,管理自动驾驶的汽车和路上障碍物交互的程序,控制自动驾驶汽车路线或者速度的程序,控制自动驾驶汽车和路上其他自动驾驶汽车交互的程序等。
在另一些实施例中,假设更新后的瓦片可以用于最高等级的智能驾驶。则车辆还可以通过瓦片的置信度信息,相应设置对应的智能驾驶的等级。即置信度信息还可以用于表示该瓦片对应的智能驾驶的等级。例如,在置信度信息大于第一阈值时,可以认为该瓦片可以用于最高等级的智能驾驶,在置信度信息小于或等于第一阈值,且大于第二阈值时,可以认为该瓦片可以用于中间等级的智能驾驶,在置信度信息小于第三阈值时,可以认为该瓦片只能使用最低的智能驾驶的等级。其中,第一阈值大于第二阈值,第二阈值大于第三阈值。具体阈值的设置可以根据实际需要设置,在此不做限定。
在具体实施过程中,结合方式B1,置信度信息可以是地图OTA客户端确定的,从而,地图OTA客户端可以将瓦片的置信度信息发送给智能驾驶功能和或其他功能的模块,使得这些模块可以根据瓦片的置信度信息确定可以使用的智能驾驶功能。在另一些实施例中,还可以是地图OTA客户端根据瓦片的置信度信息,确定车辆可以使用的智能驾驶等级后,向相应的模块发送可以使用的智能驾驶等级,从而,这些模块根据接收到的OTA客户端的智能驾驶等级的指令,启动等于或小于该智能驾驶等级的功能。
结合方式B2,置信度信息可以是服务器确定,发送给车辆的地图OTA客户端的。服务器确定置信度信息的方式可以参考上述车辆确定置信度信息的方式,在此不再赘述。
再比如,车辆还可以根据瓦片的置信度信息,确定车辆可以适用的行驶模式。例如,目前大部分车辆具备的三种行驶模式,分别为Sport、Normol、Eco三种,当然随着车辆技术的发展,还可能发展出更多其他可能的行驶模式,本申请这里不做限定。车辆在上述三种行驶模式下所具备的加减速/制动水平是不同的,因此,在车辆行驶过程中,对瓦片的要求也有所差异。比如,车辆在Sport模式下,具备最快速的加减速度,即加减速度所用时间较短,能够较快加速或较快减速,可以适应路况复杂,弯道较多,道路类型切换频繁的场景,因此,需要瓦片的精度较高,即瓦片的置信度信息较高,尤其是在当前的瓦片的路况较为复杂的情况下,对瓦片的要求更高。车辆在Normol模式下,具有相比Sport模式更少的加减速度。而车辆在Eco模式下,具有较低的加减速度,是三种模式中加减速度最低的一种模式,在该种模式下,车辆加速或减速都用时较多,若瓦片中存在频繁切换车道,上下高架桥或存在多条弯道等情况,则不利于提高驾驶体验,因此,在瓦片的置信度信息较低时,可能不适用Eco模式。因此,车辆可以根据不同的瓦片的置信度信息,对应设置可用的行驶模式。进一步的,还可以在选择不同情况的导航路径下挑选出更加合适的行驶模式,以提高驾驶体验。
再比如,所述行驶模式还可以根据自动驾驶的不同模式进行划分,例如,可以包括人员驾驶、自动驾驶、长距离连续自动驾驶等模式。此时,车辆可以根据置信度信息,及当前的导航路径,确定适合的行驶模式。例如,假设当前导航路径涉及到的瓦片的置信度信息较高,满足自动驾驶模式的要求,则可以确定当前行驶模式可以支持自动驾驶模式。假设导航路径中仅存在20%的路程对应的瓦片的置信度信息满足自动驾驶模式的要求,则在车辆选择当前的导航路径时,可以建议调低当前的驾驶模式的等级。再比如,若确定导航路径中存在连续路程中,对应的瓦片的置信度信息满足自动驾驶模式的要求,即超过自动驾驶的阈值的子路径时,可以在目标车辆行驶至子路径的范围内,向用户展示该子路径,用于提示用户存在子路径可以选择自动驾驶模式。不同的行驶模式可以对应设置不同的导航路径的选择条件,以适应不同的行驶模式,进一步提高导航路径规划的性能。
实施例三
本申请提供一种基于地图的驾驶决策方法,该方法可以适用于如图1所示的场景中。该场景中可以包括服务器和终端,示例性的,终端可以为待升级的车辆。服务器可以包括为车辆提供升级服务的OTA服务器和提供地图信息的地图服务器,需要说明的是,OTA服务器和地图服务器可以是分开部署的服务器,也可以是集中部署的服务器,在此不做限定。车辆可以设置有地图更新模块(例如,地图OTA的客户端)。地图OTA的客户端可以是设置在地图相关的ECU上,例如,设置在导航地图模块对应的ECU上,也可以是设置在地图模块对应的ECU上,在此不做限定。在一种可能的场景中,地图OTA的客户端可以和服务器进行交互,实现对地图相关的ECU的升级和地图数据的更新。在另一种可能的场景中,也可以通过整车OTA升级,实现对地图数据的更新。此时,车辆端可以包括主节点和从节点。地图数据更新可以作为整车OTA升级的一部分。地图OTA客户端可以作为OTA的从节点和整车的OTA的主节点进行交互,整车的OTA的主节点可以和服务器进行交互,实现对地图ECU的升级和地图数据的更新。
下面参阅图8所示的流程图对本申请实施例提供的方法进行详细介绍。如图8所示。包括:
步骤801:车辆获得地图的瓦片更新信息。
其中,地图的瓦片更新信息包括以下至少一项:地图中发生变化的瓦片的信息,及所述地图中发生变化的瓦片与所述车辆本地存储的瓦片的相似度信息,所述发生变化的瓦片的置信度信息。
其中,车辆获得地图中发生变化的瓦片的信息的方式可以参考步骤401,在此不再赘述。
其中,车辆获得地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息的方式可以参见步骤601,在此不再赘述。
步骤802:车辆根据地图的瓦片更新信息,确定参考瓦片的信息。
其中,所述参考瓦片为所述发生变化的瓦片中的部分瓦片。
结合方式B1,车辆的地图更新模块可以根据地图中发生变化的瓦片的信息和瓦片的相似度信息,确定参考瓦片。
或者,车辆的地图更新模块可以根据地图中发生变化的瓦片的信息和瓦片的置信度信息,确定参考瓦片。
可选的,车辆的地图更新模块可以根据地图中发生变化的瓦片的信息和瓦片的相似度信息,确定本地存储的瓦片的置信度信息。
可选的,车辆的地图更新模块可以根据地图中发生变化的瓦片的信息和瓦片的相似度信息,确定发生变化的瓦片的置信度信息。车辆的地图更新模块根据发生变化的瓦片的置信度信息,确定参考瓦片,及参考瓦片的更新策略。
可选的,车辆根据确定的参考瓦片和/或参考瓦片的更新策略,向服务器发送参考瓦片的获取请求,以使车辆从服务器下载参考瓦片。
在一些实施例中,车辆可以根据所述车辆的定位位置和所述导航路径,及所述地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息,确定参考瓦片的下载/更新顺序或参考瓦片的下载/更新优先级。
例如,车辆可以根据所述车辆的定位位置和所述导航路径,确定所述车辆的行驶路径;根据所述车辆的行驶路径及所述参考瓦片与所述车辆存储的瓦片的相似度信息,确定所述参考瓦片的更新顺序或所述参考瓦片的更新优先级。
举例来说,车辆可以将瓦片的置信度信息低于第一更新阈值的瓦片,作为优先更新的瓦片,将瓦片的置信度信息高于第二更新阈值的瓦片,作为最后更新的瓦片。其中,第一更新阈值可以小于或等于第二更新阈值。
再比如,还可以将所有地图中发生变化的瓦片确定为参考瓦片,其中,参考瓦片的更新策略可以是根据瓦片的置信度信息进行排序,按照置信度信息的排序确定的。例如,参考瓦片的更新策略可以包括:由低到高依次更新地图中发生变化的瓦片。当然,还可以根据置信度信息的排序,划分更新的优先级,从而,根据优先级的顺序,确定参考瓦片的更新顺序。
在另一些实施例中,参考瓦片的更新策略还可以根据瓦片的置信度信息及地图的使用范围确定。
举例来说,车辆可以根据导航路径确定出的地图的使用范围,及待更新瓦片的置信度信息,确定出待更新瓦片的更新策略。
即,根据导航路径确定出的地图的使用范围,可以确定出参考瓦片。例如,参考瓦片包括:瓦片1,瓦片2,瓦片3和瓦片4。再进一步确定参考瓦片的置信度信息,在参考瓦片的置信度信息大于第一更新阈值时,可以确定该参考瓦片的更新优先级最高,在参考瓦片的置信度信息小于第二更新阈值时,可以确定该参考瓦片的更新优先级最低。例如,瓦片1的置信度信息为95%,则可以确定瓦片1的更新优先级最低,或者,确定瓦片1不是待更新瓦片。瓦片2的置信度信息为80%,可以确定瓦片2的更新优先级为中等优先级,瓦片3和瓦片4的置信度信息都小于60%,则可以确定瓦片3和瓦片4的更新优先级为最高优先级。因此,确定出的参考瓦片可以包括:瓦片2,瓦片3和瓦片4。更新的顺序可以依次为:瓦片4、瓦片3、瓦片2。
进一步的,还可以考虑参考瓦片的使用顺序,进一步确定参考瓦片的更新策略。结合上述例子,可以确定瓦片2、瓦片3和瓦片4的先后使用顺序为瓦片2→瓦片3→瓦片4。因此,下载/更新的顺序可以依次为:瓦片3、瓦片2、瓦片4。
在该过程中,参考瓦片的更新策略还可以参考待更新瓦片的更新策略,在此不再赘述。
步骤803:车辆从服务器下载参考瓦片。
结合步骤802,例如,车辆可以根据确定的参考瓦片和/或参考瓦片的更新策略,向服务器发送参考瓦片的获取请求,以使车辆从服务器下载参考瓦片。
结合步骤802,再比如,车辆可以向服务器发送更新策略,使得服务器根据更新策略,向车辆发送参考瓦片。
具体可以参考步骤403,在此不再赘述。
步骤804:车辆根据下载的参考瓦片,更新所述地图。
具体车辆下载的参考瓦片更新所述地图的方式,可以参考步骤404中下载待更新瓦片的方式,在此不再赘述。
可选的,在车辆根据参考瓦片更新所述地图成功后,更新本地存储的待更新瓦片的标识、地图中发生变化的瓦片与车辆存储的瓦片的相似度信息和待更新瓦片的置信度信息等至少一项。
在一些实施例中,地图OTA客户端可以根据更新的参考瓦片的信息,更新本地存储的瓦片的置信度信息。例如,可以将更新后的参考瓦片的置信度信息设为最高值,从而,将更新后的参考瓦片的置信度信息发送给相应的驾驶功能的模块,使得这些模块可以根据更新后的参考瓦片的置信度信息,使用更新后的参考瓦片实现相应的驾驶决策功能。
步骤805:向车辆的驾驶功能模块发送下载的所述参考瓦片。
一种可能的实现方式,车辆的地图更新模块可以向车辆的驾驶功能模块发送下载的参考瓦片的信息,例如,该参考瓦片的信息包括以下至少一项:所述参考瓦片的版本,所述参考瓦片的数据,所述地图中发生变化的瓦片与车辆本地存储的参考瓦片的相似度信息,参考瓦片的置信度信息。
可选的,车辆的地图更新模块还可以在更新本地存储的参考瓦片的标识和参考瓦片的置信度信息后,向车辆的驾驶功能模块发送更新后的参考瓦片的置信度信息。
步骤806:车辆的驾驶功能模块根据下载的所述参考瓦片,进行驾驶决策。
例如,车辆的驾驶功能模块根据下载的所述参考瓦片的置信度信息及车辆存储的其他瓦片的置信度信息,选择满足置信度要求的瓦片,进行驾驶决策。
具体实现方式,可以参考步骤702中根据地图中发生变化的瓦片与本地存储的瓦片的置信度信息,进行驾驶决策的方式,也可以参考步骤404中根据更新后的地图,进行驾驶决策的方式,或者二者结合的方式,可以根据实际需要确定,在此不再赘述。
下面参阅图9所示的流程图对本申请实施例提供的方法进行详细介绍。如图9所示。包括:
步骤901:车辆获得地图的瓦片更新信息。
在一些实施例中,所述瓦片更新信息用于指示所述地图中发生变化的瓦片。服务器可以向车辆发送地图的瓦片更新信息。其中,地图的瓦片更新信息包括以下至少一项:地图中发生变化的瓦片的信息,及所述地图中发生变化的瓦片与所述车辆本地存储的瓦片的相似度信息,所述发生变化的瓦片的置信度信息,所述车辆本地存储的瓦片的置信度信息。
其中,车辆获得地图中发生变化的瓦片的信息的方式可以参考步骤401,在此不再赘述。可选的,服务器可以根据地图中发生变化的瓦片的信息和瓦片的相似度信息,确定车辆本地存储的瓦片的置信度信息。
其中,车辆获得地图中发生变化的瓦片与所述车辆存储的瓦片的相似度信息的方式可以参见步骤601,在此不再赘述。
步骤902:服务器根据地图的瓦片更新信息,确定参考瓦片的信息。
结合方式B2,服务器可以根据地图中发生变化的瓦片的信息和瓦片的置信度信息,确定参考瓦片。服务器根据本地存储的瓦片的置信度信息,确定参考瓦片,及参考瓦片的更新策略。可选的,服务器可以根据地图中发生变化的瓦片的信息和瓦片的相似度信息,确定发生变化的瓦片的置信度信息。服务器根据发生变化的瓦片的置信度信息,确定参考瓦片,及参考瓦片的更新策略。具体服务器确定参考瓦片的方式,可以参考车辆确定待更新瓦片的方式,在此不再赘述。
步骤903:车辆从服务器下载参考瓦片。
结合步骤902,服务器可以根据确定的参考瓦片和/或参考瓦片的更新策略,向车辆发送参考瓦片。
具体可以参考步骤403和步骤503中待更新瓦片的更新策略,在此不再赘述。
步骤904:车辆根据下载的参考瓦片,更新所述地图。
具体车辆下载的参考瓦片更新所述地图的方式,可以参考步骤404和步骤504中待更新瓦片更新地图的方式,在此不再赘述。
可选的,在车辆根据参考瓦片更新所述地图成功后,更新本地存储的待更新瓦片的标识、地图中发生变化的瓦片与车辆存储的瓦片的相似度信息和参考瓦片的置信度信息等至少一项。
在一些实施例中,地图OTA客户端可以根据参考瓦片的信息,更新本地存储的瓦片的置信度信息。例如,可以将参考瓦片的置信度信息设为最高值,从而,将参考瓦片的置信度信息发送给相应的驾驶功能的模块,使得这些模块可以根据参考瓦片的置信度信息,使用参考瓦片实现相应的驾驶决策功能。
步骤905:向车辆的驾驶功能模块发送下载的所述参考瓦片。
一种可能的实现方式,车辆的地图更新模块可以向车辆的驾驶功能模块发送参考瓦片的信息,例如,该参考瓦片的信息包括以下至少一项:所述参考瓦片的版本,所述参考瓦片的数据,所述地图中发生变化的瓦片与车辆本地存储的参考瓦片的相似度信息,车辆本地存储的参考瓦片的置信度信息。
可选的,车辆的地图更新模块还可以在更新本地存储的待更新瓦片的标识和待更新瓦片的置信度信息后,向车辆的驾驶功能模块发送参考瓦片的置信度信息。
步骤906:根据下载的所述参考瓦片,进行驾驶决策。
例如,车辆的驾驶功能模块根据所述参考瓦片,进行驾驶决策。再比如,车辆的驾驶功能模块根据所述参考瓦片的置信度信息及车辆存储的其他瓦片的置信度信息,选择满足置信度要求的瓦片,进行驾驶决策。
具体实现方式,可以参考步骤702中根据地图中发生变化的瓦片与本地存储的瓦片的置信度信息,进行驾驶决策的方式,也可以参考步骤405和步骤505中根据更新后的地图,进行驾驶决策的方式,或者二者结合的方式,可以根据实际需要确定,在此不再赘述。
可选的,在导航路径不止一条时,还可以进一步根据导航路径涉及的瓦片的置信度信息,选择瓦片置信度信息高的路径作为导航路径。或者,在导航路径不止一条时,还可以进一步根据导航路径涉及的瓦片与地图中发生变化的瓦片的相似度信息,选择相似度稿的路径作为导航路径。
举例来说,导航地图模块确定出当前可选的路径有K条,根据K条路径上,每条路径涉及的地图的使用范围,可以确定出地图的使用范围内涉及的瓦片。从而,根据每条路径涉及的瓦片的置信度信息,可以确定出每条路径对应的置信度信息。进而,车辆可以根据每条路径对应的置信度信息,选择置信度信息高的路径作为导航路径。
例如,路径1涉及的瓦片包括:瓦片1-1,瓦片1-2,和瓦片1-3。路径2涉及的瓦片包括:瓦片2-1,瓦片2-2,和瓦片2-3。瓦片1-1的置信度信息为90%,瓦片1-2的置信度信息为80%,和瓦片1-3的置信度信息为85%,则路径1的置信度信息可以为85%。瓦片2-1的置信度信息为40%,瓦片2-2的置信度信息为80%,和瓦片2-3的置信度信息为60%,则路径1的置信度信息可以为60%。因此,可以选择路径1作为导航路径,并优先下载路径1涉及的地图中发生变化的瓦片。
可选的,还可以根据瓦片对应的安全系数,优先下载安全系数高的地图中发生变化的瓦片作为待更新瓦片,并在更新完成后,优先使用更新完成后的瓦片对应的路径。
比如,待更新瓦片的信息包括:特殊道路(隧道1)的天气情况、交通拥堵情况、道路类型等。此时,可以确定该待更新瓦片的安全系数较高,可以设置该瓦片的置信度信息为较低水平,且该瓦片的下载优先级为较高优先级。
在该瓦片更新完成后,可以将该瓦片的置信度信息更新为较高水平,并优先使用更新完成后的瓦片对导航路径进行规划。
例如,在更新完该瓦片后,可以确定隧道1当前为不可通行或建议绕行的道路。假设更新后的瓦片对应的隧道1的可用信息包括:暴雨预警,已过积水警戒线等不可通行的信息,则可以确定隧道1当前为不可通行的道路,地图模块可以对隧道1附近的其他隧道或跨江桥进行筛选,确定隧道1附近的其他隧道或跨江桥是否可通行,若确定隧道1附近的其他隧道或跨江桥也是不可通行,则可以向导航地图模块返回的初始路径的车道级别道路信息可以包括:隧道1不可通行及其附近的隧道或跨江桥不可通行。进而,导航地图模块可以根据该信息,重新规划初始路径中的隧道1对应的子路段,以绕开不可通行的隧道1及其附近的不可通行的其他隧道或跨江桥。
再比如,若根据待更新瓦片的信息包括:交通拥堵情况、道路类型等,确定导航路径中的子路径1对应车辆所在的车道,或预计到达的车道为不可通行或建议绕行的车道。假设子路径1的可用信息包括:车道1严重拥堵,车道2较拥堵,车道3不拥堵,则可以确定车道1当前为建议绕行的车道,车辆可以根据更新后的瓦片对隧道1附近的其他车道进行筛选,确定车道1附近的其他车道的拥堵情况,若确定车道1附近的其他车道的拥堵情况为车道2较拥堵,车道3不拥堵。进而,车辆可以建议用户进行变道,例如,可以建议用户变道至车道2或车道3。
本申请实施例还提供了一种地图更新装置,该地图更新装置用于实现上述图4或图5中的地图更新的功能,参阅图10所示,该地图更新装置1000包括:获取模块1001、处理模块1002、下载模块1003和决策模块1004。
获取模块1001,用于获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片;
处理模块1002,用于根据所述车辆的定位位置、所述车辆的导航路径及所述瓦片更新信息,确定待更新瓦片,所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;根据下载的所述待更新瓦片,更新所述地图;
下载模块1003,用于从服务器下载所述待更新瓦片;
决策模块1004,用于根据所述更新后的地图,进行驾驶决策。
一种可能的实现方式,所述处理模块1002,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
一种可能的实现方式,所述处理模块1002,还用于根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
一种可能的实现方式,所述处理模块1002,还用于根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
如图11所示,本申请实施例还提供了一种地图更新装置1100,包括:获得模块1101,处理模块1102和发送模块1103。
其中,获得模块1101,用于获得待更新瓦片的信息;所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;处理模块1102,用于通过发送模块1103向车辆发送地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,通过所述发送模块向所述车辆发送所述待更新瓦片。
一种可能的实现方式,所述获得模块1101,用于获得所述车辆的定位位置和所述车辆的导航路径;所述处理模块1102,用于根据所述瓦片更新信息、所述定位位置和所述导航路径确定所述待更新的瓦片。
一种可能的实现方式,所述处理模块1102,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;根据所述车辆将要行驶到的瓦片及所述发生变化的瓦片,确定所述待更新瓦片。
一种可能的实现方式,所述处理模块1102,还用于根据以下信息中的至少一项,确定所述待更新瓦片的下载顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
一种可能的实现方式,所述处理模块1102,还用于根据以下信息中的至少一项,确定所述待更新瓦片的更新顺序:所述驾驶决策对所述待更新瓦片的使用需求;所述车辆的驾驶类型;所述待更新瓦片的数据类型;或者,所述待更新瓦片与所述车辆存储的瓦片之间的相似度信息。
如图12所示,本申请提供一种基于地图的驾驶决策装置,具体地,可以包括获取模块1201、处理模块1202和驾驶决策模块1203。可选的,还可以包括下载模块1204和地图更新模块1205。
其中,获取模块1201,用于获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;驾驶决策模块1203,用于根据所述置信度信息,选择所述发生变化的瓦片中的部分瓦片,作为驾驶决策所依据的参考瓦片。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
一种可能的实现方式,所述驾驶决策模块1203,用于:通过所述获取模块1201获得所述车辆的定位位置和所述车辆的导航路径;根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
一种可能的实现方式,下载模块1204,用于从服务器下载所述参考瓦片;地图更新模块1205,用于通过下载的所述参考瓦片,更新所述地图。
如图13所示,本申请实施例还提供了一种基于地图的驾驶决策装置,可以包括生成模块1301、处理模块1302和发送模块1303。可选的,还可以包括获得模块1304。
其中,生成模块1301,用于生成地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息;处理模块1302,用于通过发送模块向车辆发送所述瓦片更新信息。
一种可能的实现方式,所述置信度信息包括所述发生变化的瓦片在所述更新前与所述更新后之间的相似度信息。
一种可能的实现方式,获得模块1304,用于获得参考瓦片的信息,所述参考瓦片为所述发生变化的瓦片中的部分瓦片;所述处理模块1302,用于通过所述发送模块1303向所述车辆发送所述参考瓦片,所述参考瓦片为所述发生变化的瓦片中的部分瓦片。
一种可能的实现方式,所述获得模块1304,用于获得所述车辆的定位位置和所述车辆的导航路径;所述处理模块1302,用于根据所述定位位置和所述导航路径,确定所述车辆将要行驶到的瓦片;在所述发生变化的瓦片中,选择满足置信度信息要求且所述车辆将要行驶到的瓦片,作为驾驶决策所依据的参考瓦片。
需要说明的是,本申请上述实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述各个模块的只一个或多个可以软件、硬件、固件或其结合实现。所述软件或固件包括但不限于计算机程序指令或代码,并可以被硬件处理器所执行。所述硬件包括但不限于各类集成电路,如中央处理单元(CPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或专用集成电路(ASIC)。
集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种地图更新装置,该地图更新装置可以实现上述图4或图5中的地图更新或者基于地图的驾驶决策的功能。示例性的,该地图更新装置可以是车辆,还可以是服务器。参阅图14所示,地图更新装置1400中包括:通信接口1401、处理器1402,以及存储器1403。
通信接口1401和存储器1403与处理器1402之间相互连接。可选的,通信接口1401和存储器1403与处理器1402之间可以通过总线相互连接;总线可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extendedindustry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1401用于实现地图更新装置中的其他部件通信。例如,通信接口1401可以用于获取地图的瓦片更新信息,瓦片更新信息用于指示地图中发生变化的瓦片;从服务器下载待更新瓦片。或者,通信接口1401可以用于向车辆发送地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片;获得待更新瓦片的信息,所述待更新瓦片为所述发生变化的瓦片中的部分瓦片;向所述车辆发送所述待更新瓦片。
处理器1402用于实现上述如图4或图5所示的地图更新方法,具体可以参见上述图4或图5所示的实施例中的描述,此处不再赘述。可选的,处理器1402可以是中央处理器(central processing unit,CPU),或者其他硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器1402在实现上述功能时,可以通过硬件实现,当然也可以通过硬件执行相应的软件实现。
存储器1403用于存放程序指令和数据等。具体地,程序指令可以包括程序代码,该程序代码包括计算机操作的指令。存储器1403可能包含随机存取存储器(random accessmemory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。处理器1402执行存储器1403所存放的程序,并通过上述各个部件,实现上述功能,从而最终实现以上实施例提供的方法。
本申请实施例还提供了一种基于地图的驾驶决策装置,该基于地图的驾驶决策装置可以实现上述图7、图8或图9中的地图的驾驶决策功能。示例性的,该装置可以是图7、图8或图9中的车辆或车辆中的芯片。或者,示例性的,该装置可以是图8或图9中的服务器或服务器中的芯片。参阅图15所示,基于地图的驾驶决策装置1500中包括:通信接口1501、处理器1502,以及存储器1503。
通信接口1501和存储器1503与处理器1502之间相互连接。可选的,通信接口1501和存储器1503与处理器1502之间可以通过总线相互连接;总线可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extendedindustry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图15中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1501用于实现基于地图的驾驶决策装置中的其他部件通信。例如,通信接口1501可以用于获取地图的瓦片更新信息,所述瓦片更新信息用于指示所述地图中发生变化的瓦片,所述瓦片更新信息包括所述发生变化的瓦片的置信度信息。或者,向车辆发送所述瓦片更新信息。
处理器1502用于实现上述如图7、图8或图9所示的基于地图的驾驶决策方法,具体可以参见上述图7所示的实施例中的描述,此处不再赘述。可选的,处理器1502可以是中央处理器(central processing unit,CPU),或者其他硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器1502在实现上述功能时,可以通过硬件实现,当然也可以通过硬件执行相应的软件实现。
存储器1503用于存放程序指令和数据等。具体地,程序指令可以包括程序代码,该程序代码包括计算机操作的指令。存储器1503可能包含随机存取存储器(random accessmemory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。处理器1502执行存储器1503所存放的程序,并通过上述各个部件,实现上述功能,从而最终实现以上实施例提供的方法。
基于以上实施例,本申请实施例还提供了一种计算机程序,当计算机程序在计算机上运行时,使得计算机执行以上实施例提供的方法。
基于以上实施例,本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有计算机程序,计算机程序被计算机执行时,使得计算机执行以上实施例提供的方法。
基于以上实施例,本申请实施例还提供了一种芯片,芯片用于读取存储器中存储的计算机程序,实现以上实施例提供的方法。
基于以上实施例,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持计算机装置实现以上实施例提供的方法中高精度地图生成装置所涉及的功能和/或定位装置所涉及的功能。在一种可能的设计中,芯片系统还包括存储器,存储器用于保存该计算机装置必要的程序和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的保护范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。