预测交通事故发生地的人工智能系统和方法

文档序号:1145920 发布日期:2020-09-11 浏览:3次 >En<

阅读说明:本技术 预测交通事故发生地的人工智能系统和方法 (Artificial intelligence system and method for predicting traffic accident occurrence place ) 是由 杨瑞飞 于 2018-09-18 设计创作,主要内容包括:提供了用于预测交通事故地点的系统和方法。一种方法包括:获取多个交通事故的多个事故记录,所述多个事故记录中的每一个事故记录与相应的目标用户终端相关联,并且包括多个位置;确定多个精确事故地点,对于多个事故记录中的每一个,通过,运行第一聚类过程,将所述目标用户终端对应的多个位置作为所述第一聚类过程的输入,以及将所述第一聚类过程的第一结果作为所述目标用户终端的多个位置的精确事故地点;通过操作第二聚类过程来确定至少一个事故多发地段,所述多个事故记录对应的所述多个精确事故地点作为所述第二聚类过程的输入。(Systems and methods for predicting a location of a traffic accident are provided. One method comprises the following steps: obtaining a plurality of incident records for a plurality of traffic incidents, each incident record of the plurality of incident records being associated with a respective target user terminal and comprising a plurality of locations; determining a plurality of accurate accident locations, for each of a plurality of accident records, by running a first clustering process, taking a plurality of positions corresponding to the target user terminal as an input of the first clustering process, and taking a first result of the first clustering process as an accurate accident location of the plurality of positions of the target user terminal; determining at least one accident-prone location by operating a second clustering process, the plurality of precise accident locations to which the plurality of accident records correspond as inputs to the second clustering process.)

预测交通事故发生地的人工智能系统和方法

技术领域

本申请涉及使用人工智能确定交通事故地点和事故多发地段,并在用户移动设备显示事故多发地段的系统和方法。

背景技术

车辆在公共交通中得到广泛应用,并且在人们的日常上下班中越来越受欢迎。当发生事故时,车辆的驾驶员、车辆的乘客、事故目击者或警察需要报告事故时间和事故地点(例如事故发生的时间和地点)以寻求道路援助、救护车服务、消防车援助或保险服务。然而,所报告的事故时间和事故地点往往不准确,因此难以定位到实际事故并延误提供必要的服务。因此,需要提供用于远程确定准确的事故时间和准确的事故地点的系统和方法,从而可以实现事故的有效定位。此外,需要提供用于预测多个事故多发区域的方法和系统,以向驾驶员提供安全驾驶的辅助作用。

发明内容

本申请的一个方面引入了一个或多个电子设备的系统,用于预测交通事故地点的系统,包括:至少一个存储介质,包括第一操作系统和与所述第一操作系统兼容的一组指令,用于向至少一个信息接收终端提供事故多发地段;和与所述存储介质通信的至少一个处理器,其中,当执行所述第一操作系统和所述一组指令时,所述至少一个处理器用于:获取多个交通事故的多个事故记录,所述多个事故记录中的每一个事故记录与相应的目标用户终端相关联,并且包括交通事故的记录的事故时间和多个位置,所述多个位置是所述目标用户终端在记录的事故时间前后出现的位置;确定多个精确事故地点,对于多个事故记录中的每一个,通过,运行第一聚类过程,将所述目标用户终端对应的多个位置作为所述第一聚类过程的输入,以及将所述第一聚类过程的第一结果作为所述目标用户终端的多个位置的精确事故地点;响应于确定所述多个精确事故地点,通过操作第二聚类过程来确定至少一个事故多发地段,所述多个事故记录对应的所述多个精确事故地点作为所述第二聚类过程的输入;响应于确定至少一个事故多发地段,生成包括至少一个事故多发地段的信息的电子信号;以及通过将电子信号发送到信息接收终端,指示所述信息接收终端显示呈现所述至少一个事故多发地段的界面。

在一些实施例中,运行第一聚类过程,至少一个处理器用于:识别所述输入对应的多个点;通过点识别操作,确定结果簇以及与所述结果簇相关的结果点,包括:从所述多个点中选择一个点的候选簇;从所述点的候选簇中选择一个候选点;运行第一迭代操作,直到满足第一停止条件,其中所述第一迭代操作包括多个第一迭代,并且每个所述第一迭代包括:使用所述候选点作为中心点以及使用所述点的候选簇作为一个点的目标簇;从所述点的目标簇中识别出距离所述中心点预定距离内的一个簇,作为点的候选簇;以及从所述点的候选簇中识别出一个点,作为候选点。

在一些实施例中,在每个第一迭代中,所述第一迭代中的候选点与所述第一迭代中相应的候选簇中点的平均坐标相关。

在一些实施例中,所述至少一个处理器还用于:在所述第一迭代操作的最后一次第一迭代中确定的点的候选簇符合所述第一停止条件时,获取所述最后一次第一迭代对应的点的候选簇,作为所述第一迭代操作的结果簇;和获取所述最后一次第一迭代对应的候选点,作为所述第一迭代操作的结果点。

在一些实施例中,所述至少一个处理器还用于输出所述第一迭代操作的结果点,作为所述第一聚类过程的第一结果。

在一些实施例中,所述结果点是多个结果点之一,并且所述结果簇是多个结果簇之一;以及所述至少一个处理器进一步用于运行第二迭代操作基于所述第一迭代操作的输出,通过运行第二迭代操作,直到满足第二停止条件,获得多个后续的结果点和多个后续的结果簇,其中,所述第二迭代操作包括多个第二迭代,并且每个第二迭代包括:通过从所述多个点中移除在所述第二迭代操作的最后一次迭代中识别的位置的结果簇,来更新所述多个点;通过执行所述点识别操作,基于所述更新的多个点,来确定后续的结果簇和后续的结果点。

在一些实施例中,所述至少一个处理器进一步用于:对于多个结果簇中的每一个,基于结果簇中点的数量来确定停止时间;确定与结果簇相关联的停止时间是否大于时间阈值;和响应于所述停止时间大于所述时间阈值,将所述结果簇对应的结果点分配为所述精确事故地点。

在一些实施例中,所述第二聚类过程包括第一聚类过程;以及确定所述至少一个事故多发地段,所述处理器进一步用于:获取所述多个精确事故地点;通过运行第二聚类过程,确定多个结果簇,所述多个精确事故地点作为所述第二聚类过程的输入;和对于所述多个结果簇中的每一个,将与所述结果簇相关联的路段分配为事故多发地段。

在一些实施例中,所述至少一个处理器进一步用于:对于所述多个结果簇中的每一个,确定结果簇中的点的数量;确定所述数量是否大于密度阈值;和响应于所述数量大于所述密度阈值,基于所述结果簇中的点,确定与所述结果簇相关联的路段。

在一些实施例中,获取多个事故记录,所述至少一个处理器进一步用于:接收多个事故报告,所述多个事故报告中的每一个与相应的目标用户终端相关联,并且包括记录的事故时间和记录的事故位置;获取所述目标用户终端的多个历史位置;对于多个事故报告中的每一个事故报告,将相应的记录的事故时间和记录的事故位置与所述对应的目标用户终端的历史位置合并,以获得与所述对应的目标用户终端相关联的事故记录。

在一些实施例中,所述多个事故报告中的每一个包括以下至少一个:目标用户终端的用户报告的事故报告;保险公司报告的事故报告;或者交通警察报告的事故报告。

根据本申请的另一方面,提供了一种预测交通事故地点的方法,所述方法在一个或多个电子设备上实现,所述电子设备具有至少一个存储介质以及与所述至少一个存储介质通信的至少一个处理器,所述方法包括:获取多个交通事故的多个事故记录,所述多个事故记录中的每一个事故记录与相应的目标用户终端相关联,并且包括交通事故的记录的事故时间和多个位置,所述多个位置是所述目标用户终端在记录的事故时间前后出现的位置;确定多个精确事故地点,对于多个事故记录中的每一个,通过,运行第一聚类过程,将所述目标用户终端对应的多个位置作为所述第一聚类过程的输入,以及将所述第一聚类过程的第一结果作为所述目标用户终端的多个位置的精确事故地点;响应于确定所述多个精确事故地点,通过操作第二聚类过程来确定至少一个事故多发地段,所述多个事故记录对应的多个精确事故地点作为所述第二聚类过程的输入;响应于确定所述至少一个事故多发地段,生成包括至少一个事故多发地段的信息的电子信号;以及通过将所述电子信号发送到所述信息接收终端,指示所述信息接收终端显示呈现所述至少一个事故多发地段的界面。

根据本申请的又一方面,非暂时性计算机可读介质,包括操作系统和与所述操作系统兼容的用于预测交通事故地点的至少一组指令,其中当所述指令由一个或多个电子设备的至少一个处理器执行时,所述至少一组指令使至少一个处理器以:获取多个交通事故的多个事故记录,所述多个事故记录中的每一个事故记录与相应的目标用户终端相关联,并且包括交通事故的记录的事故时间和多个位置,所述多个位置是所述目标用户终端在记录的事故时间前后出现的位置;确定多个精确事故地点,对于多个事故记录中的每一个,通过,运行第一聚类过程,将所述目标用户终端对应的多个位置作为所述第一聚类过程的输入,以及将所述第一聚类过程的第一结果作为所述目标用户终端的多个位置的精确事故地点;响应于确定所述多个精确事故地点,通过操作第二聚类过程来确定至少一个事故多发地段,所述多个事故记录对应的所述多个精确事故地点作为所述第二聚类过程的输入。响应于确定至少一个事故多发地段,生成包括至少一个事故多发地段的数据的电子信号;以及通过将所述电子信号发送到所述信息接收终端,指示所述信息接收终端显示呈现所述至少一个事故多发地段的界面。

根据本申请的又一方面,一种预测交通事故地点的系统,包括:记录获取模块,被配置为获取多个交通事故的多个事故记录,所述多个事故记录的每一个都与对应的目标用户终端相关联,并且包括交通事故的记录的事故时间和多个位置,所述多个位置是所述目标用户终端在记录的事故时间前后出现的位置;事故地点确定模块,被配置为确定多个精确事故地点,对于多个事故记录中的每一个,通过,运行第一聚类过程,将所述目标用户终端对应的多个位置作为所述第一聚类过程的输入,以及将所述第一聚类过程的第一结果作为所述目标用户终端的多个位置的精确事故地点;路段确定模块,被配置为响应于确定所述多个精确事故地点,通过操作第二聚类过程来确定至少一个事故多发地段,所述多个事故记录对应的多个精确事故地点作为所述第二聚类过程的输入;信息发送模块,被配置为将所述至少一个事故多发地段的信息发送到信息接收终端。

附加特征将在下面的描述中部分阐述,并且对于本领域技术人员在研究以下和附图时将部分地变得显而易见,或者可以通过示例的生产或操作来了解。本申请的特征可以通过实践或使用在下面讨论的详细示例中阐述的方法,手段和组合的各个方面来实现和获取。

附图说明

本申请根据示例性实施例进行进一步描述。这些示例性实施例详细描述可参照附图。这些实施例是非限制性的示例性实施例,其中类似的参考数字表示贯穿图的多个视图中的相似结构,其中:

图1是根据本申请的一些实施例的示例性人工智能系统的示意图;

图2是根据本申请的一些实施例的计算设备的示例性硬件和/或软件组件的示意图;

图3是根据本申请的一些实施例的移动设备的示例性硬件和/或软件组件的示意图;

图4是根据本申请的一些实施例的示例性处理引擎的框图;

图5A是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图;

图5B是根据本申请的一些实施例的用于显示事故多发地段的信息接收终端的示例性用户界面;

图6是根据本申请的一些实施例的用于运行运行第一聚类过程的示例性过程的流程图;

图7是根据本申请的一些实施例的用于运行点识别操作的示例性过程的流程图;

图8是示出根据本申请的一些实施例的用于运行第一迭代操作的示例性过程的流程图;

图9是根据本申请的一些实施例的用于运行第一聚类过程的示例性过程的流程图;

图10是根据本申请的一些实施例的用于运行第二迭代操作的示例性过程的流程图;

图11是根据本申请的一些实施例的用于确定精确事故地点的示例性过程的流程图;

图12是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图;

图13是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图;和

图14是根据本申请的一些实施例的用于获取多个事故记录的示例性过程的流程图。

具体实施方式

以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并在特定应用及其要求的上下文中提供。对于本领域的普通技术人员来讲,对本申请披露的实施例进行的各种修改是显而易见的,并且本文中定义的通则在不背离本申请的精神及范围的情况下,可以适用于其他实施例及应用。因此,本申请不限于所示的实施例,而是符合与申请专利范围一致的最广泛范围。

本文中所使用的术语仅用于描述特定示例性实施例,并不限制本申请的范围。如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。

在考虑了作为本申请一部分的附图的描述内容后,本申请的特征和特点以及操作方法、结构的相关元素的功能、各部分的组合、制造的经济性变得显而易见。然而,应当理解的是附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是附图并不是按比例的。

本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面过下面的操作不一定按照顺序来精确地执行。相反,可以按照倒序和/或同事处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。

本申请中使用的定位技术可以包括全球定位系统(GPS),全球导航卫星系统(GLONASS),罗盘导航系统(COMPASS),伽利略定位系统,准天顶卫星系统(QZSS),无线保真(WiFi)定位技术等,或以上任意组合。上述定位技术中的一个或多个可以在本申请中互换使用。

本申请的一个方面涉及用于预测准确的交通事故地点和事故多发地段并将事故多发地段呈现给用户移动设备的用户的系统和方法。为此,该系统和方法可以分析事故车辆的行驶轨迹,并且将由事故信息提供者(例如,事故车辆的驾驶员,事故车辆的保险公司等)报告的事故时间和事故地点与行驶轨迹的数据相匹配。系统可以进一步获取事故车辆的位置数据以确定准确的交通事故地点。系统还可以根据车辆在一个区域内停车的持续时间进一步聚类位置数据,以获取事故车辆的准确交通事故地点。此外,系统可以获取多个事故的多个准确交通事故地点,以确定事故多发地段。系统可以根据交通事故的频率将多个准确的交通事故地点聚类以获取事故多发地段,并且呈现事故多发地段以提醒信息接收者(例如驾驶员,乘客等)在经过事故多发地段时要小心谨慎。

图1是根据本申请的一些实施例的示例性人工智能系统100的示意图。在一些实施例中,人工智能系统100可以是线上线下服务的人工智能系统。例如,人工智能系统100可以用于诸如出租车司机、司机服务、配送车辆、拼车、公共汽车服务、驾驶员雇用、班车服务和在线导航服务之类的运输服务的线上线下服务平台。人工智能系统100可以是包括服务器110、用户终端120、信息源130、存储器140、网络150和信息接收终端160。服务器110可以包括处理引擎112。

服务器110可用于处理与事故记录相关的信息和/或数据。例如,服务器110可以确定每个事故记录的精确事故地点。又例如,服务器110可以基于与多个事故记录相关联的多个精确事故地点来确定多个事故多发地段。精确事故地点可能是事故记录中包含的实际交通事故发生的准确地点。事故多发地段可能是比其他地方或地区更容易发生交通事故的地点或地区。

服务器110可以是独立的服务器或者服务器组。该服务器组可以是集中式的或者分布式的(如:服务器110可以是分布系统)。在一些实施例中该服务器110可以是区域的或者远程的。例如,服务器110可以通过网络150访问存储在信息证明系统130和/或存储器130中的信息和/或数据。又例如,服务器110可以连接到存储器130以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实现。例如,该云平台可以包括私有云、公共云、混合云、社区云、分散式云、内部云等中的一种或其任意组合。在一些实施例中,服务器110可以在计算设备200上实现,该计算设备具有在本申请中的图2所示的一个或多个组件。

在一些实施例中,服务器110可包含处理设备112。该处理设备112可处理与服务请求有关的数据和/或信息以执行一个或多个本申请中描述的功能。例如,处理引擎112可以确定每个事故记录的精确事故地点。又例如,处理引擎112可以基于与多个事故记录相关联的多个精确事故地点来确定多个事故多发地段。在一些实施例中,处理设备112可包含一个或多个子处理设备(如:单芯处理设备或多核多芯处理设备)。仅仅作为范例,处理设备112可包含中央处理器(CPU)、专用集成电路(ASIC)、专用指令处理器(ASIP)、图形处理器(GPU)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编辑逻辑电路(PLD)、控制器、微控制器单元、精简指令集电脑(RISC)、微处理器等或以上任意组合。

用户终端120可以是用户使用的任何类型的报告交通事故的设备。例如,用户终端120可以发送事故报告,包括事故时间记录和事故地点记录,以向服务器110报告交通事故。用户终端120的用户可以是报告交通事故的任何组织或个人,例如交通事故的驾驶员(或乘客)、处理交通事故的交通警察、交通事故的保险公司的工作人员、交通事故的目击者等或以上任意组合。事故时间记录和事故地点记录可能与相应的实际事故时间和实际事故地点不同。

在一些实施例中,用户终端120可以包括任何类型的设备,例如,移动设备、电子设备、汽车等或以上任意组合。例如,用户终端120可以包括台式计算机120-1、笔记本电脑120-2、机动车辆中的内置设备120-3、移动设备120-4等或以上任意组合。内置设备120-3可以包括车载计算机、车载电视、车载定位系统等。在一些实施例中,移动装置120-4可包括智能家居装置、可穿戴装置、智能行动装置、虚拟实境装置、增强实境装置等或其任意组合。在一些实施例中,可穿戴装置可包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配饰等或其任意组合。在一些实施例中,智能行动装置可包括智能电话、个人数位助理(PDA)、游戏装置、导航装置、POS装置等或其任意组合。在一些实施例中,虚拟实境装置和/或增强实境装置可包括虚拟实境头盔、虚拟实境眼镜、虚拟实境眼罩、增强实境头盔、增强实境眼镜、增强实境眼罩等或上述举例的任意组合。例如,虚拟实境装置和/或增强实境装置可以包括Google GlassTM、RIFTCONTM、FraceTSTM、Gear VRTM等。在一些实施例中,用户终端120可以是具有定位技术的设备,用于定位用户终端120和/或用户的位置。在一些实施例中,用户终端120可以在具有本申请的图2所示的一个或多个组件的计算设备200上实现,或者在具有本申请的图3所示的一个或多个组件的移动设备300。

信息源130可以用于为为系统100提供信息。例如,信息源130可以向系统100提供交通事故报告。信息源130可以是交通警察的交通系统或保险公司的保险系统。又例如,信息源130可以向系统100提供与交通事故有关的信息和/或数据,例如新闻、实时交通状况、道路监控图像或视频等。信息源130可以是电视台、广播站、实时媒体、道路网络、道路监控设备等,或它们的任何组合。在一些实施例中,信息源130可以包括网络端口,以便给人工智能系统100的一个或多个组件(例如,服务器110、存储器140等)发送和/或接收信息。例如,信息130可以通过网络端口向服务器110发送多个事故报告。

存储设备140可存储资料和/或指令。在一些实施例中,存储设备140可存储从用户终端120获取的数据(如定位数据)。在一些实施例中,存储设备140可存储供服务器110执行或使用的信息和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、挥发性读写存储器(例如随机存储器RAM)、只读存储器(ROM)等或以上任意组合。示例性大容量存储器可以包括磁盘、光盘、固态驱动器等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘,磁带等。示例性的易失性读取和写入存储器可以包括随机存储器(RAM)。示例性的随机存取存储器可以包括动态随机存储器(DRAM)、双倍数据速率同步动态随机存储器(DDR SDRAM)、静态随机存储器(SRAM)、晶闸管随机存储器(T-RAM)和零电容器随机存储器(Z-RAM)等。示例性只读存储器可以包括掩模只读存储器(MROM),可编程只读存储器(PROM),可擦除可编程只读存储器(EPROM),电可擦除可编程只读存储器(EEPROM),光盘只读存储器(CD-ROM)和数字多功能盘只读存储器等。在一些实施例中,存储器140可以在云平台上实现。仅作为示例,云平台可以包括私有云,公共云,混合云,社区云,分布式云,中间云,多云等或以上任意组合。

在一些实施例中,存储器140可以包括至少一个网络端口与人工智能系统100中的其他设备进行通信。例如,存储器140可以通过网络150连接到至少一个网络端口与人工智能系统100的一个或多个组件(例如,服务器110,用户终端120)。人工智能系统100中的一个或多个组件可以通过网络150访问存储在存储器140中的数据或指令。在一些实施例中,存储器140可以直接连接到人工智能系统100中的一个或多个组件或与其通信(例如,服务器110,用户终端120)。在一些实施例中,存储器140可以是服务器110的一部分。

网络150可以促进信息和/或数据的交换。在一些实施例中,线上线下服务的人工智能系统100的一个或多个组件(例如,服务器110,用户终端120和存储器140)可以通过网络向线上线下服务的人工智能系统100的其他组件发送信息和/或数据。例如,服务器110可以通过网络150从信息源130的信息接收端口获取多个事故记录。在一些实施例中,网络150可是任意类型的有线或无线网络。例如,网络150可包括一缆线网络、有线网络、光纤网络、电信网络、内部网络、网际网络、区域网络(LAN)、广域网络(WAN)、无线区域网络(WLAN)、都会区域网络(MAN)、公共电话交换网络(PSTN)、蓝芽网络、ZigBee网络、近场通讯(NFC)网络等或以上任意组合。在一些实施例中,网络150可包括一个或多个网络进出点。例如,网络150可包含有线或无线网络进出点,如基站和/或网际网络交换点150-1、150-2、…,通过这些进出点,线上线下服务的人工智能系统100的一个或多个组件可连接到网络150上以交换数据和/或信息。

信息接收终端160可以是用户用来接收与事故多发地段有关的信息的任何类型的设备。例如,当信息接收终端160出现在事故多发地段周围时,信息接收终端160可以是从服务器110接收警报语音或者事故多发地段的警报显示的移动设备。信息接收终端160的用户可以是驾驶员、乘客、行人等或以上任意组合。在一些实施例中,信息接收终端160可以是与用户终端120类似或相同的设备。在一些实施例中,信息接收终端160可以是具有定位技术的装置,用于定位信息接收终端160和/或其用户的位置。在一些实施例中,信息接收终端160可以在具有本申请图2中所示的一个或多个组件的计算设备200上实现或者在具有本申请图3中所示的一个或多个组件的移动设备300上实现。

图2是根据本申请的一些实施例的可以在其上实现服务器110、乘客终端120、存储器130、司机终端140和/或信息源160的计算设备200的示例性硬件和软件部件。例如,处理引擎112可以在计算设备200上实现,并且用于执行本申请中申请的处理引擎112的功能。

计算设备200可以用于实现本申请中申请的人工智能系统100的任何组件的一个或多个功能。例如,处理引擎112可以通过其硬件、软件程序、固件或以上任意在计算设备200上实现。尽管仅示出了一个这样的计算机,为描述方便,与所述线上线下服务相关的计算机功能可以以分布式的方式在多个类似的平台上实现,以分散处理负载。

例如,计算设备200可以包括连接到和连接到其上的网络的COM端口250,以便于数据通信。COM端口250可以指任何网络端口、信息交换端口或任何信息发送端口以促进数据通信。计算设备200还可以包括用于执行程序指令的一个或多个处理器(例如,逻辑电路)形式的处理器(例如,处理器220)。例如,处理器可以包括其中的接口电路和处理电路。接口电路可以用于从总线210接收电子信号,其中电子信号对结构化数据和/或指令进行编码以便处理电路进行处理。处理电路可以进行逻辑计算,然后确定编码为电子信号的结论,结果和/或指令。处理电路还可以生成包括结论或结果(例如,事故多发地段)和触发代码的电子信号。在一些实施例中,触发代码可以是人工智能系统100中的电子设备(例如,用户终端120)的操作系统(或其中安装的应用程序)可识别的格式。例如,触发代码可以包括指令、代码、标记、符号等,或以上任意组合,其可以激活移动电话的某些功能和/或操作,或者让移动电话执行预设的程序。在一些实施例中,触发代码可以用于运行电子设备的操作系统(或应用程序)以在电子设备的界面上生成结论或结果的呈现(例如,事故多发地段)。然后,接口电路可以通过总线210从处理电路发出电子信号。

示例性计算设备可以包括内部通信总线210,不同形式的程序存储和数据存储,包括例如磁盘270,只读存储器(ROM)230或随机存取存储器(RAM)240,用于存储由计算设备处理和/或传输的各种数据文件。示例性计算设备还可以包括存储在只读存储器230、随机存储器240和/或要由处理器220执行的其他类型的非暂态存储介质中的程序指令。程序指令可以实现本申请的方法和/或过程。示例性计算设备还可以包括存储在只读存储器230,随机存储器240和/或要由处理器220执行的其他类型的非暂态存储介质中的操作系统。程序指令可以与用于提供线上线下服务的操作系统兼容。计算设备200还包括支持计算机和其他组件之间的输入/输出组件260。计算设备200也可以通过网络通信接收程序和数据。

仅仅为了说明,图2中仅示出了一个处理器,还可以考虑多个处理器。因此,如本申请中所描述的由一个处理器执行的操作和/或方法步骤也可以由多个处理器联合或单独执行。例如,如果在本申请中计算设备200的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由计算设备200中的两个不同的处理器共同地或单独地执行(例如第一处理器执行步骤A并且第二处理器执行步骤B,或者第一和第二处理器共同执行步骤A和B)。

图3是示出根据本申请的一些实施例的移动设备300示例性硬件和/或软件组件的示意图,用户终端130可以在其上实现的。

如图3所示,移动设备300可以包括通信单元310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、输入输端口350,存储器360和存储器390。中央处理单元可以包括与处理器220类似的接口电路和处理电路。在一些实施例中,包括但不限于系统总线或控制器(未示出)的任何其他合适的组件也可以被包括在移动设备300中。在一些实施例中,可以从存储器390将移动操作系统370(例如,iOSTM,AndroidTM,Windows PhoneTM等)和一个或多个应用程序380加载到内存360中,以便由中央处理单元340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于接收和呈现关于服务的语音请求有关的信息。用户与信息流的交互可以通过输入输端口350来实现并且通过网络120提供给人工智能系统100的处理引擎112和/或其他组件。通信单元310可以是任何信息交换端口、信息传输端口或网络端口以促进数据通信。

为了实现本申请中描述的各种模块、单元及其功能,可以将计算机硬件平台用作在此描述的一个或多个元件的硬件平台(例如,人工智能系统100和/或关于图1-图14描述的人工智能系统100的其他组件)。这样的计算机的硬件元件,操作系统和编程语言本质上是常规的,并且假设本领域的技术人员对此充分熟悉以使这些技术响应于如本文所述的语音请求而提供服务。具有用户接口元件的计算机可以用于实现个人计算机(PC)或其他类型的工作站或终端设备,但是如果适当地编程,计算机也可以充当服务器。相信本领域的技术人员熟悉这种计算机设备的结构、编程和一般操作,因此附图不再描述。

本领域的普通技术人员应该理解,当人工智能系统100的元件执行时,元件可以通过电信号和/或电磁信号执行。例如,当用户终端120处理诸如报告交通事故的任务时,用户终端120可以操作其处理器中的逻辑电路来处理这样的任务。当用户终端120发出事故报告时,用户终端120的处理器可以生成编码的事故报告的电信号。然后用户终端120的处理器可以将电信号发送到与用户终端120相关联的信息提供系统的至少一个信息接收端口。信息提供系统可以包括用户终端120、网络150以及网络150与服务器110之间的信息接收端口。用户终端120通过有线网络与信息提供系统进行通信,该至少一个信息交换端口可以物理连接到电缆,该电缆可以进一步将电信号传输到服务器110的输入端口(例如信息交换端口)。如果用户终端120通过无线网络与信息提供系统通信,则信息提供系统的至少一个信息接收端口可以是一个或多个天线,其可以将电信号转换为电磁信号。在诸如用户终端120和/或服务器110的电子设备内,当其处理器处理指令,发出指令和/或执行动作时,指令和/或动作通过电信号进行。例如,当处理器从存储介质(例如,存储器140)检索或保存数据时,其可以将电信号发送到存储介质的读/写设备,存储介质的读/写设备可以读取或写入存储介质中的结构化数据。结构化数据可以通过电子设备的总线以电信号的形式传输到处理器。这里,电信号可以指一个电信号,一系列电信号和/或多个离散电信号。在服务器110的处理器确定结果之后,处理器可以生成编码结果的电信号,并且将电信号发送到信息接收系统的至少一个信息传输端口。信息接收系统可以包括信息接收终端160、网络150和网络150与服务器110之间的信息传输端口。信息接收终端160通过有线网络与信息接收系统通信,至少一个信息传输端口可以物理地连接到电缆,电缆可以进一步将电信号传输到服务器110的输入端口(例如,信息交换端口)。如果信息接收终端160通过无线网络与信息接收系统通信,信息接收系统的至少一个信息传输端口可以是一个或多个天线,其可以将电信号转换为电磁信号。

图4是根据本申请的一些实施例的示例性处理引擎112的框图。处理引擎112可以包括记录获取模块410、事故地点确定模块420、路段确定模块430、信息发送模块440和数据合并模块450。

记录获取模块410可以用于获取多个事故记录。在一些实施例中,多个事故记录中的每一个都与对应的目标用户终端相关联并且包括记录的事故时间以及目标用户终端在记录的事故时间周围出现的多个位置。例如,多个事故记录的事故记录可以记录与目标用户终端相关联的车辆的交通事故。记录的事故时间可以是目击交通事故的用户报告的时间。目标用户终端在记录的事故时间周围出现的多个历史位置可以通过将目标用户终端的所有历史位置与记录的事故时间进行匹配来获取。

事故地点确定模块420可以确定多个精确的事故地点。精确的事故地点可能是发生实际交通事故的准确地点。在一些实施例中,事故地点确定模块420可以基于目标用户终端的多个位置使用第一聚类过程。例如,事故地点确定模块420可以将目标用户终端的多个位置作为第一聚类过程的输入。事故地点确定模块420可以将第一聚类过程的第一结果指定为目标用户终端的多个位置的精确事故地点。在一些实施例中,事故地点确定模块420可以用于确定相应的多个事故记录的多个精确事故地点。确定多个精确事故地点的详细描述可以在本申请的其他地方找到(例如,图5-图11及其描述)。

路段确定模块430可以确定至少一个事故多发地段。事故多发地段可能是比其他地区更容易生交通事故的地区。在一些实施例中,路段确定模块430可以使用第二聚类过程来确定至少一个事故多发地段,对应于多个事故记录的多个精确事故地点作为第二聚类过程输入。确定多个精确事故地点的详细描述可以在本申请的其他地方找到(例如,图5-图13及其描述)。

信息发送模块440可以将与至少一个事故多发地段相关的信息发送到信息接收终端。在一些实施例中,与至少一个事故多发地段相关的信息可以是与触发代码一起的多个电子信号的格式。触发代码可以发布应用以在信息接收终端的界面上生成至少一个事故多发道路区段的显示。

数据合并模块450可以用于获取目标用户终端的多个事故报告和多个历史位置。数据合并模块450可以将每个事故报告中的记录的事故时间和记录的事故地点与目标用户终端的多个历史位置合并,以获取与对应的目标用户终端相关联的事故记录。合并数据以获取事故记录的详细描述可以在本申请的其他地方找到(例如,图14及其描述)。

处理引擎112中的模块可以通过有线连接或无线连接而彼此连接或通信。有线连接可以包括金属电缆、光缆、混合电缆等或以上任意组合。无线连接可以包括局域网(LAN),广域网(WAN),蓝牙,ZigBee,近场通信(NFC)等或以上任意组合两个或更多个模块可以组合成单个模块,并且任何一个模块可以分成两个或更多个单元。例如,记录获取模块410和数据合并模块450可以组合为单个模块,其可以合并事故报告并获取事故记录。又例如,处理引擎112可以包括用于存储用于确定精确的事故地点和/或事故多发地段的数据和/或信息的存储模块(未示出)。

图5A是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图。过程500可以由按需服务人工智能系统100执行。例如,流程500可以由存储在只读存储器230或随机存取存储器240中的一组指令(例如,应用程序)完成。处理器220可以执行该组指令,并且当执行该指令时,其可以执行流程500。以下所示的说明过程的操作旨在说明。在一些实施例中,流程500可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图5A中所示和下文所述的过程的操作的顺序并不没有被限制。

在操作510中,处理引擎112(例如,处理器220,记录获取模块410)可以获取多个事故记录。在一些实施例中,多个事故记录中的每一个都与对应的目标用户终端相关联并且包括记录的事故时间以及目标用户终端在记录的事故时间周围出现的多个位置。

在一些实施例中,多个事故记录中的一个事故记录可以记录与目标用户终端相关联的车辆的交通事故。当交通事故发生时,目标用户终端的使用者(或处理交通事故的保险公司的工作人员,处理交通事故的交警)可以报告记录的事故时间和记录的事故地点。记录的事故时间可以是目击交通事故的用户报告的时间。在一些实施例中,记录事故时间可能与交通事故发生时的实际事故时间不同。例如,实际发生的事故时间为15:00,发生交通事故的用户报告的事故发生时间约为15:24。记录的事故地点可以是目击交通事故的用户报告的位置。在一些实施例中,记录的事故地点可以不同于目击交通事故的用户所报告的实际事故地点。例如,实际的事故地点是1号路与2号路的交汇处,而记录的事故地点在1号路附近。

在一些实施例中,目标用户终端可以是包括用于获取车辆的实时位置的定位技术的设备。例如,目标用户终端可以是车辆的乘客的移动终端或驾驶员的移动终端、车辆导航系统、车载定位系统等或以上任意组合。实时位置可以作为多个历史位置存储在人工智能系统100的存储介质(例如,存储器140,只读存储器230,随机存储器240等)中。例如,目标用户终端可以每个预设时间段(例如,每5秒,每10秒,每30秒等)获取位置,并将该位置和与该位置相对应的时间发送到存储介质。当处理引擎112获取车辆的交通事故报告时,处理引擎112可以访问存储介质,通过将记录的事故时间和/或记录的事故地点与多个历史位置相匹配,以获取目标用户终端在记录的事故时间左右和/或记录的事故地点周围出现的多个位置与。目标用户终端在记录的事故时间左右出现的多个位置可以包括用户终端在从记录的事故时间之前的第一预设时间段到记录的事故时间之后的第二预设时间的这一时间段内出现的位置。第一和/或第二预设时间段可以由处理引擎112及其用户确定。例如,当记录的事故时间是15:00时,处理引擎112可以从14:00-16:00获取目标用户终端的多个位置。目标用户终端出现在记录的事故地点附近的多个位置可以包括用户终端出现在与记录的事故地点相距预设距离的范围内的位置。预设距离可以由处理引擎112及其用户来确定。例如,记录的事故地点是十字路口1,处理引擎112可以在距离十字路口1的5公里范围内的区域中获取目标用户终端的多个位置。

在操作520中,处理引擎112(或事故地点确定模块420)可以确定多个精确的事故地点。在一些实施例中,使用第一聚类过程基于目标用户终端的多个位置来确定多个精确的事故地点。例如,处理引擎112可以将目标用户终端的多个位置作为第一聚类过程的输入。处理引擎112可以将第一聚类过程的第一结果指派为目标用户终端的多个位置的精确事故地点。在一些实施例中,精确的事故地点可以是发生实际交通事故的准确位置。

在一些实施例中,目标用户终端的多个位置可以被映射到地图上的多个点。预设时间段期间多个点的密度可以反映与多个位置中的目标用户终端相关联的车辆的停留时间。例如,一小时内在地图上包括较高密度点的区域表示车辆在相同的一小时内比在包括地图上较低密度点的区域停留地时间更长。在一些实施例中,处理引擎112可以基于对应车辆的停留时间来运行第一聚类过程。第一聚类过程可以是对目标用户终端的多个位置相对应的多个点进行聚类的方法和/或算法。例如,处理引擎112可以将多个点输入到第一聚类过程中。第一聚类过程可以将多个点聚类以获取包括最密集点的簇,并且选择与簇中的点的平均坐标相关联的点作为第一聚类过程的第一结果。处理引擎112可以将与所选择的点对应的位置确定为目标用户终端的精确的事故地点。在一些实施例中,第一聚类过程可以是基于密度的聚类方法,诸如DBSCAN算法,OPTICS算法,Mean-shift算法,DENCLUE算法等或以上任意组合。在一些实施例中,第一聚类过程的示例性方法可以在本申请的其他地方找到(例如,图6-图10及其描述)。

在操作530中,基于多个精确事故地点的确定,处理引擎112(或路段确定模块430)可以确定至少一个事故多发地段。在一些实施例中,可以使用第二聚类过程,将多个精确事故地点作为第二聚类过程的输入,来确定所述至少一个事故多发地段。

在一些实施例中,事故多发地段可以是交通事故比其他区域更可能发生的区域。事故多发地段可以是精确的位置(例如,街道路口)、路段(例如,从高速公路入口之前的服务道路的100米到300米)等,或以上任意组合。

在一些实施例中,多个精确事故地点可以被映射到地图上的多个点。多个点的密度可以反映过去发生的事故数量。与点密度较低的区域相比,密度较高的区域可能会发生更多的交通事故。在一些实施例中,处理引擎112可以使用多个点作为输入来运行第二聚类过程。第二聚类过程可以是聚类多个精确事故地点相对应的多个点的方法和/或算法。例如,处理引擎112可以将多个点输入到第二聚类过程中。第二聚类过程可以对多个点进行聚类以获取至少一个包括比其他簇更密集的点的簇,并且为至少一个簇中的每个簇识别一个区域(例如精确位置,路段),作为事故高发路段。在一些实施例中,处理引擎112可以基于相应的簇识别区域。例如,处理引擎112可以确定至少一个簇中的多个点的平均坐标,并且将与平均坐标相距预设距离内的路段分配为相应的事故多发地段。在一些实施例中,第二聚类过程可以是基于密度的聚类方法,如DBSCAN算法,OPTICS算法,Mean-shift算法,DENCLUE算法等或以上任意组合。在一些实施例中,第二聚类过程的示例性方法可以在本申请的其他地方找到(例如,图6-图11及其描述)。第二聚类过程可能与第一聚类过程的方法相同。例如,第二聚类过程和第一聚类过程可以是图6-图11中描述的示例性方法。或者,第二聚类过程可以是与第一聚类过程不同的方法。例如,第二聚类过程是DBSCAN算法,并且第一聚类方法可以是图6-图11中描述的示例性方法。

在一些实施例中,在确定至少一个事故多发地段之后,处理引擎112(例如,处理器220,信息发送模块440)可以产生电子信号,该电子信号包括至少一个事故多发地段和一个触发代码。在一些实施例中,触发代码可以是安装在信息接收终端中的应用程序(例如,运输服务应用程序,叫车服务应用程序,导航服务应用程序等)可识别的格式。例如,触发代码可以是指令、代码、标记、符号等或以上任意组合,其可以激活信息接收终端或使信息接收终端执行计算机可读程序。触发代码可以运行程序以在信息接收终端的界面上显示至少一个事故多发地段。例如,当信息接收终端进入距离至少一个事故多发地段中的一个预设距离内的区域时,处理引擎112可以指示信息接收终端显示相应的事故多发地段以提醒用户谨慎驾驶或小心行走。在一些实施例中,处理引擎112(例如,处理器220,信息发送模块440)可以通过信息接收系统的信息发送端口将电子信号发送到信息接收终端。响应接收到的电子信号,信息接收终端可以在其界面上显示事故多发地段,以提醒用户小心。图5B是根据本申请的一些实施例的用于显示事故多发地段的信息接收终端的示例性用户界面。

图6是根据本申请的一些实施例的用于运行第一聚类过程的示例性过程的流程图。过程600可以由人工智能系统100执行。例如,过程600可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以执行流程600。以下所示过程的操作是只用来说明。在一些实施例中,流程600可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图6所示的以及以下描述中的处理操作顺序是并不限制。

在操作610中,处理引擎112(例如,处理器220)可以识别对应于第一聚类过程的输入的多个点。在一些实施例中,可以根据位置的坐标将目标用户终端的多个位置中的每一个位置映射到地图上的一个点。

在操作620中,处理引擎112(例如,处理器220)可以通过点识别操作来确定结果簇和与结果簇相关联的结果点。

在一些实施例中,处理引擎112可以根据一些预设规则将多个识别的点划分为多个聚类,并且从多个聚类中选择结果簇。例如,处理引擎112可以选择包括最密集点的簇作为结果簇。在一些实施例中,处理引擎112可以基于结果簇中的点来确定结果点。例如,处理引擎112可以确定结果簇中的点的平均坐标或加权平均坐标,并且将具有平均坐标或加权平均坐标的点指定为结果点。又例如,处理引擎112可以将结果簇中最接***均坐标或加权平均坐标的点确定为结果点。点识别操作可以是用于确定结果簇和结果点的方法或算法。点识别操作的详细描述可以在图7及其描述中找到。

图7是根据本申请的一些实施例的用于点识别操作的示例性过程的流程图。流程700可以由人工智能系统100执行。例如,流程700可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以执行流程700。以下所示过程的操作仅是说明性的。在一些实施例中,流程700可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图7所示的以及以下描述中的过程操作顺序是并不限制。

在操作710中,处理引擎112(例如,处理器220)可以从多个点中选择点的候选簇。在一些实施例中,点的候选簇可以包括所有与目标用户终端的多个位置相对应的多个点。或者,点的候选簇可以包括与目标用户终端的多个位置相对应的多个点中的一部分点。

在操作720中,处理引擎112(例如,处理器220)可以从点的候选簇中选择候选点。在一些实施例中,候选点可以是候选簇中点的平均坐标,候选簇中点的的加权平均坐标或候选簇中点的任何计算值。在一些实施例中,候选点可以是最靠近候选簇中点的平均坐标的点,最靠近候选簇中点的加权平均坐标的点或最靠近候选簇中点的的任何计算值的点。

在操作730中,处理引擎112(例如,处理器220)可以对候选簇和候选点运行第一迭代操作。在一些实施例中,第一迭代操作可以包括多次迭代。

图8是根据本申请的一些实施例的用于第一迭代操作的示例性过程的流程图。多次迭代中的每一次可以依次包括操作810-操作830的三个过程。

在操作810中,处理引擎112(例如,处理器220)可以使用候选点作为中心点并且使用点的候选簇作为点的目标簇。中心点可以用作中点以获取离中心点预设距离内的点的簇。

在操作820中,处理引擎112(例如,处理器220)可以从点的目标簇中识别距离中心点预设距离内的点的簇作为点的候选簇。例如,处理引擎112可以通过从离中心点预设距离内的点的目标簇中选择多个点来更新点的候选簇。又例如,处理引擎112可以确定距离中心点的点的目标簇的每个点的距离,并且选择相应距离在预设距离内的多个点以获取点的候选簇。

在一些实施例中,预设距离可基于与目标用户终端相关联的车辆类型,与目标用户终端相关联的车辆的平均行驶速度,与目标用户终端相关联的相应车辆的交通事故类型等或以上任意组合来确定。例如,汽车对应的预设距离不同于电动自行车对应的预设距离。汽车对应的预设距离是15米,电动自行车对应的预设距离是8米。

在操作830中,处理引擎112(例如,处理器220)可以将来自点的候选簇的一个点识别为候选点。在一些实施例中,处理引擎112可以计算候选簇中点的平均坐标,候选簇中点的的加权平均坐标或者候选簇中点的任何计算值。候选点可以是最靠近候选簇中点的平均坐标的点,最靠近候选簇中点的加权平均坐标的点或最靠近候选簇中点的任何计算值的点。在一些实施例中,可以将候选点更新为候选簇中的一个点,这个点最靠近候选簇中点的平均坐标,候选簇中点的加权平均坐标或者候选簇点的的任何计算值。

在第一迭代操作的每次迭代之后,在操作740中,处理引擎112(例如,处理器220)可以确定候选簇(或候选点)是否满足第一停止条件。如果候选簇(或候选点)满足第一停止条件,则处理引擎112可前进到操作750。如果候选簇(或候选点)不满足第一停止条件,则处理引擎112可以前进到流程800中的第一迭代操作的下一次迭代,如图8所示。例如,处理引擎112可以返回到操作810以使用在最后一次迭代中从操作830识别的候选点作为中心点并且使用在最后一次迭代中从操作820识别的点的候选簇作为点的目标簇,以继续第一迭代操作中的迭代,直到候选簇(或候选点)满足第一个停止条件。

在一些实施例中,第一停止条件可以是在第一迭代操作的多次迭代期间,在一次迭代中生成的候选簇(或候选点)与上一次生成的候选簇(或候选点)相同。例如,如果两个连续迭代的候选簇(或候选点)相同,则处理引擎112可停止第一迭代操作以获取结果簇和/或结果点。在一些实施例中,第一停止条件可以是第一迭代操作中的迭代次数大于第一迭代阈值。第一迭代阈值可以是由处理引擎112或其用户根据不同的应用场景预先确定的任何值。例如,如果第一迭代操作中的迭代次数大于20,则处理引擎112可以停止第一迭代操作以获取第一迭代操作的结果簇和/或结果点。

在操作750中,处理引擎112(例如,处理器220)可以获取与最终迭代相对应的点的候选簇作为第一迭代操作的结果簇。最后一次迭代可能是候选簇(或候选点)满足第一个停止条件之前的最后一次迭代。处理引擎112可以将最后一次迭代中的点的候选簇指定为第一迭代操作的结果簇。在一些实施例中,结果簇可以是第一迭代操作之后的多个候选簇中最密集的簇。

在操作760中,处理引擎112(或处理器220)可获取对应于最后一次迭代的候选点作为第一迭代操作的结果点。处理引擎112可以将最后一次迭代中的候选点作为第一迭代操作的结果点。在一些实施例中,结果点可以是最接近最密簇中点的平均坐标的点。

在一些实施例中,处理引擎112(或处理器220)可输出第一迭代操作的结果点作为第一聚类过程的第一结果。第一迭代操作的结果点可作为与目标用户终端相关联的精确事故地点。例如,结果点是与用户终端的多个位置对应的多个点中最靠近最密簇中点的平均坐标的点。由于结果簇是多个候选簇中最密集的簇,这表明交通事故最有可能发生在对应的结果簇的区域中,结果点可以表示目标用户终端停留最长时间的最可能的事故地点。因此,处理引擎112可以将结果点作为精确的事故地点。

图9是根据本申请的一些实施例的用于运行第一聚类过程的示例性过程的流程图。流程900可以由人工智能系统100执行。例如,过程900可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以执行流程900。以下所示过程的操作仅是说明性的。在一些实施例中,流程900可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图9所示的以及以下描述中的过程操作顺序是并不限制。

在一些实施例中,处理引擎112可以在图6的流程600之后执行图9中的流程900,以进一步运行第一个聚类过程。处理引擎112可以通过运行第一聚类过程来确定多个结果点和多个结果簇。在一些实施例中,在图6的操作620中确定的结果点可以是多个结果点中的一个并且在图6的操作620中确定的结果簇可以是多个结果簇中的一个。

在操作910中,处理引擎112(或处理器220)可以基于第一迭代操作的输出,通过运行第二迭代操作来获取多个后续的结果点和多个后续的结果簇。在一些实施例中,第二迭代操作可以包括多次迭代。

图10是根据本申请的一些实施例的用于运行第二迭代操作的示例性过程的流程图。第二迭代操作可以包括多次迭代。多次迭代中的每一次可以依次包括操作1010-操作1030的三个过程。

在操作1010中,处理引擎112(或处理器220)可以通过从多个点中去除在第二迭代操作的最后一次迭代中识别的结果簇来更新多个点。在最初的步骤中,可以通过去除在第一迭代操作中识别结果簇更新所述多个点(如图7中的操作760所示)。此外,可以通过去除在第二迭代操作的最后一次迭代中识别的结果簇更新所述多个点。

在过程1020中,处理引擎112(或处理器220)可以基于更新的多个点,通过进行点识别操作来确定后续的结果簇和后续的结果点,如图7-图8所示。在第二迭代操作的迭代中识别的后续的结果簇可以比在第二迭代操作的先前迭代中识别的结果簇具有更小的密度。因此,通过进行第二迭代操作,即通过迭代地去除从先前迭代中识别的结果簇以更新多个点,可以获取一个或多个后续的结果簇和一个或多个后续的结果点。此外,在第二迭代操作的迭代期间按顺序识别的一个或多个后续的结果簇可以按照密度降序排列。

在过程920中,处理引擎112(或处理器220)可以确定第二迭代操作是否满足第二停止条件。如果第二迭代操作满足第二停止条件,则处理引擎112可停止第二迭代操作。如果第二迭代操作不满足第二停止条件,则处理引擎112可以继续迭代(例如,操作1010-操作1020),直到第二迭代操作满足第二停止条件。

在一些实施例中,第二停止条件可以是在第二迭代操作的多次迭代期间,在一次迭代中生成的候选簇(或候选点)与在上一次迭代中生成的候选簇(或候选点)相同。例如,如果两次连续迭代的候选簇(或候选点)相同,则处理引擎112可以停止第二迭代操作。在一些实施例中,第二停止条件可以是第二迭代操作中的迭代次数大于第二迭代阈值。第二迭代阈值可以是由处理引擎112或其用户根据不同的应用场景预先确定的任何值。例如,如果第二迭代操作中的迭代次数大于10,则处理引擎112可以停止第二迭代操作以获取多个结果点的剩余部分的结果点以及多个结果簇中剩余部分的结果簇。

图11是根据本申请的一些实施例的用于确定精确事故地点的示例性过程的流程图。操作1100可以由人工智能系统100执行。例如,过程1100可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以执行流程1100。以下所示过程的操作仅是说明性的。在一些实施例中,流程1100可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图11所示的以及以下描述中的操作顺序是并不限制。

在操作1110中,对于多个结果簇中的每一个,处理引擎112(或处理器220)可以基于结果簇中的点的数量来确定停留时间。停留时间可以是目标用户终端在与结果簇相关联的区域处停留的持续时间。例如,当目标用户终端停在与结果簇相对应的区域处每5秒获取一个位置对应的点时,并且与目标用户终端的位置相对应的结果簇中的点数量是200。处理引擎可以计算与结果簇相关联的停留时间是1000秒(200*5)。

在操作1120中,处理引擎112(或处理器220)可以确定与结果簇相关联的停留时间是否大于时间阈值。在一些实施例中,时间阈值可以由处理引擎112或其用户根据不同的应用场景来预先确定。例如,可以基于车辆所在道路的交通状况来确定时间阈值。又例如,可以基于交通信号灯的最长等待时间来确定时间阈值。在一些实施例中,停留时间大于时间阈值的确定可以导致处理引擎112移除具有短暂停留或仅等待交通信号灯的车辆的结果簇。

在一些实施例中,如果与结果簇相关联的停留时间大于时间阈值,则处理引擎112可前进至操作1130。如果与结果簇相关联的停留时间不大于时间阈值,处理引擎112可以前进到操作1140。

在操作1130中,处理引擎112(或处理器220)可以将对应于结果簇的结果点作为精确的事故地点。例如,当车辆在区域中停留足够长时间时,处理引擎112可以预测该区域中存在交通事故。因此,处理引擎112可以将与结果簇相对应的结果点作为精确的事故地点。

在操作1140中,处理引擎112(或处理器220)可以放弃相应的事故记录以进行到另一个目标用户终端的另一个事故记录。例如,当车辆在区域内仅停留短时间时,处理引擎112可以预测该区域中不存在交通事故。在一些实施例中,处理引擎112可以根据本申请图6-图11中描述的方法前进到另一个目标用户终端的另一事故记录。

图12是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图。流程1200可以由人工智能系统100执行。例如,过程1200可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以用于执行流程1200。以下所示过程的操作仅是说明性的。在一些实施例中,流程1200可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图12所示的以及以下描述中的操作顺序是并不限制。

在操作1210中,处理引擎112(或处理器220)可以获取多个精确的事故地点。在一些实施例中,可以通过操作如本申请中的图6-图11所述的第一聚类过程来确定多个精确的事故地点。在一些实施例中,多个精确的事故地点可以预先确定并存储在人工智能系统100的存储介质(例如,存储器140,只读存储器230,随机存储器240等)中。

在操作1220中,处理引擎112(或处理器220)可以运行第二聚类过程,来确定多个结果簇,其中多个精确的事故地点作为第二聚类过程的输入。

在一些实施例中,第二聚类过程可以与第一聚类过程相同。例如,处理引擎112可以识别与地图上的多个精确的事故地点相对应的多个点。处理引擎112可以通过点识别操作来确定结果簇。例如,处理引擎112可以从与多个精确的事故地点相对应的多个点中选择候选簇。点的候选簇可以包括所有的多个点或多个点的一部分。处理引擎112可以从点的候选簇中选择候选点。候选点可以是基于候选簇中的点计算的任何值,诸如平均坐标,加权平均坐标等或以上任意组合。处理引擎112可以进行包括多次迭代的第一迭代操作,直到满足第一停止条件。在第一迭代操作的每次迭代期间,处理引擎112可以使用在最后一次迭代中生成的候选点作为中心点并且使用在最后一次迭代中生成的候选簇作为点的目标簇,从目标簇中识别距离中心点预定距离内的一个簇作为点的候选簇,并且将点的候选簇中的一个点确定为候选点。点的候选簇可以被更新为距离中心点预定距离内的新的一个簇。在一些实施例中,预设距离可以由处理引擎112或其用户预先确定。例如,预设距离可以基于对应的精确事故地点的区域,对应的精确事故地点的道路类型等或以上任意组合来确定。仅作为示例,预设距离可以是300米,500米,1000米等。如果在第一迭代操作的最后一次迭代中识别的点的候选簇满足第一停止条件,则处理引擎112可以获取最后一次迭代相对应的点的候选簇作为第一迭代操作的结果簇。另外,处理引擎112可以进行包括多次迭代的第二迭代操作,直到满足第二停止条件以获取多个结果簇的剩余部分。在第二迭代操作的每次迭代期间,处理引擎112可以从多个点中移除第一迭代操作中识别的点的结果簇以更新多个点,并且通过上述的点识别操作确定多个结果簇中的另一个簇。在多次迭代确定多个结果簇之后,处理引擎112可以按照精确事故地点的密度降序顺序,获取多个精确事故地点的簇。第一个结果簇可能是最密集的事故地点的簇,这可能表明交通事故更可能发生在与第一个结果簇相关的路段。

在操作1230中,对于多个结果簇中的每一个,处理引擎112(或处理器220)可以将与结果簇相关联的路段作为事故多发地段。

在一些实施例中,路段可以是道路上的地点或区域。在一些实施例中,处理引擎112可以基于结果簇来确定路段。例如,处理引擎112可以计算结果簇中点的中心点,并将中心点附近的地点指定为事故多发地段。又例如,处理引擎112可以将距中心点预设距离内的区域作为事故多发地段。预设距离可以根据不同的应用场景来确定。例如,距中心点500米范围内的区域可能被指定为事故多发地段。

图13是根据本申请的一些实施例的用于确定至少一个事故多发地段的示例性过程的流程图。流程1300可以由人工智能系统100执行。例如,过程1300可以用存储在存储只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以被配置为执行流程1300。以下所示过程的操作仅是说明性的。在一些实施例中,流程1300可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图13所示的以及以下描述中的操作顺序是并不限制。

在操作1310中,对于多个结果簇中的每一个,处理引擎112(或处理器220)可以确定结果簇中的点的数量。在一些实施例中,点的数量可以指示交通事故的频率。点的数量越大,交通事故频率越高。

在操作1320中,处理引擎112(或处理器220)可以确定点的数量是否大于密度阈值。在一些实施例中,密度阈值可以由处理引擎112或其用户根据不同的应用场景来预先确定。例如,可以基于与结果簇相对应的道路的道路类型来确定密度阈值。又例如,密度阈值可以是不小于2的值。也就是说,如果在结果簇中存在两个或多个精确交通事故地点,则与结果簇对应的区域可能是事故多发区域。

在一些实施例中,如果该数量大于密度阈值,则处理引擎112可前进至操作1330。如果该数量不大于密度阈值,则处理引擎112可前进至操作1340。

在过程1330中,处理引擎112(或处理器220)可以基于结果簇中的点来确定与结果簇对应的路段。例如,如果结果簇中的点的数量足够高,这表示在与结果簇相对应的路段发生的交通事故的频率高,则处理引擎112可以预测相应的路段是一个事故多发地段。

在过程1340中,处理引擎112(或处理器220)可以跳过结果簇。例如,如果结果簇中的点的数量低,这表示在与结果簇对应的路段发生的交通事故的频率低,处理引擎112可以预测相应的路段不是一个事故多发生路段,然后进入另一个结果簇以确定是否有事故多发地段。

图14是根据本申请的一些实施例的用于获取多个事故记录的示例性过程的流程图。流程1400可以由人工智能系统100执行。例如,过程1400可以用存储在只读存储器230或随机存储器240中的一组指令(例如,应用程序)实现。处理器220可以执行该组指令,并且当执行指令时,其可以被配置为执行过程1400。以下所示过程的操作仅是说明性的。在一些实施例中,流程1400可以利用未描述的一个或多个附加操作和/或在没有所讨论的一个或多个操作时来完成。另外,图14所示的以及以下描述中的操作顺序是并不限制。

在操作1410中,处理引擎112(或处理器220,数据合并模块450)可以接收多个事故报告。在一些实施例中,多个事故报告中的每一个与对应的目标用户终端相关联并且包括记录的事故时间和记录的事故地点。

在一些实施例中,当发生交通事故时,目标用户终端的用户(例如,发生交通事故的车辆的驾驶员,车辆的乘客,处理该交通事故的保险公司的工作人员,处理交通事故的交通警察或事故证人)可以报告事故,寻求保险服务,道路救援,救护车服务,消防车援助等或以上任意组合。事故报告可能包括一个记录的事故时间和一个记录的事故地点。记录的事故时间可以是由用户终端的用户报告的时间。在一些实施例中,记录事故时间可能与交通事故发生时的实际事故时间不同。例如,实际发生的事故时间是15:00,用户报告的事故发生时间约为15:24。记录的事故地点可以是由用户终端的用户报告的位置。在一些实施例中,记录的事故地点可以不同于用户终端的用户所报告的实际事故地点。例如,实际的事故地点是1号路与2号路的交汇处,而记录的事故地点在1号路附近。

在操作1420中,处理引擎112(或处理器220,数据合并模块450)可以获取目标用户终端的多个历史位置。

在一些实施例中,目标用户终端可以包括用于获取车辆的实时位置的定位技术的设备。例如,目标用户终端可以是车辆的乘客的移动终端或驾驶员的移动终端,车辆导航系统,车载定位系统等或以上任意组合。实时位置可以作为多个历史位置存储在人工智能系统100的存储介质(例如,存储器140只读存储器230,随机存储器240等)中。例如,目标用户终端可以在每个预设时间段(例如,每5秒,每10秒,每30秒等)获取位置,并将位置和对应于该位置的时间发送到存储介质。

在过程1430中,对于多个事故报告中的每一个,处理引擎112(或处理器220,数据合并模块450)可以将相应的记录的事故时间和记录的事故地点与相应的目标用户终端的历史位置合并,以获取与相应的目标用户终端关联的事故记录。

当处理引擎112获取车辆的交通事故报告时,处理引擎112可以访问存储介质,以通过将记录的事故地点匹配到多个历史位置来获得目标用户终端在记录的事故时间左右和/或记录的事故地点周围出现的多个位置。目标用户终端在记录事故时间左右出现的多个位置可以包括用户终端在从记录事故时间之前的第一预设时间段到在记录事故时间之后的第二预设时间的这一时间段内出现的位置。第一和/或第二预设时间段可以由处理引擎112及其用户确定。例如,当记录的事故时间是15:00时,处理引擎112可以从14:00-16:00获取目标用户终端的多个位置。目标用户终端出现在记录的事故地点附近的多个位置可以包括用户终端出现在与记录的事故地点相距预设距离的范围内的位置。预设距离可以由处理引擎112及其用户来确定。例如,记录的事故地点是十字路口1,处理引擎112可以在距离十字路口1的5公里范围内的区域中获取目标用户终端的多个位置。

已经如此描述了基本概念,在阅读该详细申请之后,对于本领域技术人员而言可能相当明显的是,前面的详细申请内容意仅是说明性的,而不是限制性的。虽然本文没有明确说明,各种改变、改进和修改可能会发生,并意在本领域技术人员。这些改变、改进和修改意在通过本公开提出,并且在本公开的示例性实施例的精神和保护范围内。

此外,某些术语已被用于描述本申请的实施例。例如,术语“一个实施例”,“实施例”和/或“一些实施例”意味着结合该实施例描述的特定特征、结构或特性被包括在本申请的至少一个实施例中。因此,强调并且应该认识到,在本说明书的各个部分中的对“一个实施例”,“某个实施例”或“替代实施例”的两个或更多个引用不一定都指的是相同的实施例。此外,特定特征、结构或特性可以在本申请的一个或多个实施例中适当地组合。

此外,本领域技术人员应当理解,本申请的各方面可在本文中以任何可授予专利的种类或上下文来说明和描述,包括任何新的和有用的过程、机器、制造或组合物物质,或任何新的和有用的改进。因此,本申请的各方面可全部采用硬件,或全部采用软件(包括固件,常驻软件,微代码等)或采用软件和硬件组合实现,其在本文中通常可被称为“块”,“模块”,“引擎”,“单元”,“组件”或“系统”。此外,本申请的各方面可以采取体现在其上包含有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。

计算机可读信号介质可以包括具有在其中体现的计算机可读程序代码的传播数据信号,例如在基带中或作为载波的一部分。这样的传播信号可以采用多种形式中的任何形式,包括电磁、光学等或其任何合适的组合。计算机可读信号介质可以是任何计算机可读介质,该计算机可读介质不是计算机可读存储介质,并且可以通信、传播或传输用于指令执行系统、设备或设备使用的或与之相关联的程序。体现在计算机可读信号介质上的程序代码可以使用任何适当的介质来传输,包括无线、有线、光缆、射频等,或者前述的任意适当的组合。

用于执行本申请的各方面的操作的计算机程序代码可以以一种或多种程序设计语言的任何组合来编写,所述程序设计语言包括面向对象的程序设计语言,如Java,Scala,Smalltalk,Eiffel,JADE,Emerald,C++,C#,VB等,“C”编程语言,如Visual Basic,Fortran1703,Perl,COBOL 1702,PHP,ABAP,动态编程语言,如Python,Ruby和Groovy,或其它编程语言。程序代码可以完全在用户的计算机上,部分在用户的计算机上,作为独立的软件包,部分在用户的计算机上和部分在远程计算机上,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,通过互联网使用互联网服务提供商)或在云计算环境中或提供服务,如软件作为服务(SaaS)。

此外,所述的处理元件或序列的顺序或数字、字母或其他标识的使用并非旨在将所要求保护的过程和方法限制为除权利要求中可能指定的任何顺序之外。虽然上面的申请通过各种示例讨论了当前被认为是本申请的各种有用实施例的内容,但是应该理解,这样的细节仅仅是为了该目的,并且所附权利要求不限于所申请的实施例,相反地,旨在覆盖在所申请的实施例的精神和范围内的修改和等同布置。例如,虽然上面描述的各种组件的实现可以体现在硬件设备中,但是其也可以被实现为仅软件解决方案,例如在现有服务器或移动设备上的安装。

类似地,应该理解的是,在本申请的实施例的前述描述中,为了简化帮助理解一个申请内容的申请内容,有时将各个特征组合在单个实施例、附图或其描述中或更多的各种实施例。然而,本申请的方法不应被解释为反映所要求保护的主题需要比每个权利要求中明确记载的更多特征的意图。相反,所要求保护的主题可能在于少于单个前述申请实施例的所有特征。

在一些实施例中,表达用于描述和要求保护本申请的某些实施例的数量或属性的数字应理解为在一些情况下由术语“大约”,“近似”或“基本上”来修饰。例如,除非另有说明,“约”,“近似”或“实质上”可以表示其所描述的值的±20%变化。因此,在一些实施例中,书面描述和所附权利要求书中提出的数字参数是近似值,其可以根据特定实施例试图获取的期望性质而变化。在一些实施例中,应该根据所报告的有效数字的数量并通过应用普通舍入技术来解释数字参数。尽管阐述本申请的一些实施方案的广泛范围的数值范围和参数是近似值,但是在具体实施例中阐述的数值是尽可能精确地报告的。

本文引用的每个专利,专利申请,专利申请的出版物以及其他材料,诸如文章、书籍、说明书、出版物、文件、事物等,在此通过引用并入本文,除了任何与之相关的起诉档案历史记录,与本文件不一致或与本文件相冲突的任何相同文件,或任何可能与本文件对现在或以后相关的最宽范围的权利要求具有限制性影响的文件之外。举例来说,如果在描述、定义和/或使用时,任何所结合的材料相关联的术语与本文献相关联的术语之间存在任何不一致或冲突,则描述、定义和/或使用以本文件中的术语为准。

最后,应该理解的是,这里申请的应用的实施例是本申请的实施例的原理性说明。在本申请的范围内可以采用的其他修改。因此,作为示例而非限制,根据本文的指导可以使用本申请的实施例的替代配置。因此,本申请的实施例不限于如所示和所描述的。

45页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种无人控制机器人的惯性传感器加热方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!