CN116257771A - 一种数据采集设备、数据处理装置及相关方法 - Google Patents
一种数据采集设备、数据处理装置及相关方法 Download PDFInfo
- Publication number
- CN116257771A CN116257771A CN202111487751.7A CN202111487751A CN116257771A CN 116257771 A CN116257771 A CN 116257771A CN 202111487751 A CN202111487751 A CN 202111487751A CN 116257771 A CN116257771 A CN 116257771A
- Authority
- CN
- China
- Prior art keywords
- data
- circuit
- data processing
- data acquisition
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请公开了一种数据采集设备,应用于人工智能技术领域。该数据采集设备包括:特征提取电路和数据传输电路;特征提取电路用于获取环境数据并基于神经网络模型对环境数据进行特征提取处理,以得到特征数据,特征提取电路为模拟电路;数据传输电路用于将特征数据转换为数字信号,并向数据处理装置发送数字信号。其中,数据处理装置部署于数据采集设备之外,且数据处理装置用于对数字信号进行处理,以得到数据处理结果。本方案中,通过采用功耗较低的模拟电路对环境数据实现特征提取,能够降低数据处理过程中的功耗;并且仅将特征提取电路集成于数据采集设备中,能够使得数据采集设备适应大部分算法,提高数据采集设备的适用性。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种数据采集设备、数据处理装置及相关方法。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
自动驾驶是人工智能领域的一种主流应用,自动驾驶技术依靠计算机视觉、雷达、监控装置和全球定位系统等协同合作,让机动车辆可以在不需要人类主动操作下,实现自动驾驶。自动驾驶的车辆使用各种计算系统来帮助将乘客从一个位置运输到另一位置。一些自动驾驶车辆可能要求来自操作者(诸如,领航员、驾驶员、或者乘客)的一些初始输入或者连续输入。自动驾驶车辆准许操作者从手动模操作式切换到自动驾驶模式或者介于两者之间的模式。由于自动驾驶技术无需人类来驾驶机动车辆,所以理论上能够有效避免人类的驾驶失误,减少交通事故的发生,且能够提高公路的运输效率。因此,自动驾驶技术越来越受到重视。
目前,自动驾驶车辆主要依靠部署于车辆上的摄像头以及雷达等环境采集设备采集环境信息,并由自动驾驶车辆中的运算芯片对环境信息进行分析,以确定自动驾驶车辆的行驶策略。随着自动驾驶车辆所使用的环境采集设备越来越多,且环境采集设备的精度越来越高,自动驾驶车辆的算力需求也越来越高,导致了自动驾驶车辆中运算芯片的能耗提高。自动驾驶车辆中运算芯片的能耗提高,会导致运算芯片出现耗电量过高以及发热量过高等问题,容易影响自动驾驶车辆的正常行驶。
因此,如何降低自动驾驶车辆中运算芯片的能耗成为亟待解决的问题。
发明内容
本申请第一方面提供一种数据采集设备,包括:特征提取电路和数据传输电路。所述特征提取电路用于获取环境数据并基于神经网络模型对环境数据进行特征提取处理,以得到特征数据,所述特征提取电路为模拟电路,所述特征数据为模拟信号。其中,所述特征数据例如可以为图像特征,能够用于表征环境图像中的特征信息;或者,所述特征数据例如可以为点云数据特征,能够用于表征点云数据中的特征信息。特征提取电路基于神经网络模型对环境图像或点云数据进行特征提取处理,即可提取得到包含关键信息的特征数据,这些特征数据能够用于供数据处理装置执行后续的数据处理。
所述数据传输电路用于将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号。在特征提取电路提取得到的特征数据为模拟信号的情况下,数据传输电路中的模数转换器可以将模拟信号形式的特征数据转换为数字信号,以便于将特征数据传输给数据处理装置。
其中,所述数据处理装置部署于所述数据采集设备之外,即数据处理装置与数据采集设备是分离的。并且,所述数据处理装置用于对所述数字信号进行处理,以得到数据处理结果。
本方案中,通过采用功耗较低的模拟电路对环境数据实现特征提取,能够降低数据处理过程中的功耗。并且,通过由数据采集设备对环境数据进行特征提取后再向数据处理装置发送特征数据,能够减少传输数据的数据量,从而降低数据处理过程的能耗,提高数据处理的效率。
此外,基于数据采集设备中的特征提取电路对采集得到的原数据进行特征提取处理,并且将提取得到的特征数据发送给数据处理装置,使得整个数据处理过程都是基于采集得到的原数据进行的。相较于相关技术中将采集得到的原数据压缩后再传输至中心侧进行处理,本方案不会丢失细节信息,对微小目标的处理能力得到增强,数据处理的精度更高。
由于对环境数据进行处理的算法中的特征提取处理过程通常都是不变或者变化较小的,变化较大的通常是特征数据的处理过程。因此本方案中将负责特征提取处理过程的特征提取电路集成于数据采集设备中,能够使得数据采集设备适应大部分算法且不受算法更新的影响,提高数据采集设备的适用性,避免频繁对数据采集设备进行软件或硬件上的更新。
在一种可能的实现方式中,所述数据处理装置具体用于基于数字电路对所述特征数据进行处理。相较于模拟电路而言,数字电路能够执行更多种类以及更复杂的算术运算,例如幂运算;并且,数字电路的适用性较强,同一个数字电路能够用于执行不同的算法。
本方案中,由于数字电路能够支持更多种类以及更复杂的算术运算,且数字电路的适用性较强,因此基于数字电路来实现特征数据的处理,能够满足不同算法的特征数据处理要求,从而保证数据采集设备和数据处理装置能够支持不同的算法,确保了对不同算法支持的灵活性。
在一种可能的实现方式中,所述数据采集设备和所述数据处理装置分别部署于车辆中的不同位置。例如,所述数据采集设备部署于车辆外部,所述数据处理装置则部署于车辆内部。
在一种可能的实现方式中,所述数据采集设备为摄像头,且所述环境数据为图像数据;或,所述数据采集设备为激光雷达或毫米波雷达,且所述环境数据为点云数据。其中,点云数据是指在一个三维坐标系统中的一组向量的集合,即雷达装置所获取的带空间坐标的采样点的一个集合,能够表示三维空间中的障碍物。
在一种可能的实现方式中,所述特征数据用于供所述数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述特征提取电路包括卷积运算电路、残差结构电路;也就是说,特征提取电路所用于实现的特征提取网络中包括卷积运算和残差结构。
所述卷积运算电路用于对所述环境数据执行多层卷积运算,以得到所述特征数据;所述残差结构电路与所述卷积运算电路连接,所述残差结构电路用于存储所述卷积运算电路所执行的任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。其中,残差结构电路所存储的输出数据对应的卷积运算层位于目标层卷积运算之前。例如,残差结构电路存储第1层卷积运算的输出数据,以使得第1层卷积运算的输出数据与第20层卷积运算(即目标层卷积运算)的输出数据相加,得到第21层卷积运算的输入数据。
本方案中,通过在特征提取电路所实现的特征提取网络中引入残差结构,并由残差结构电路来实现特征提取网络中的残差结构,可以避免特征提取网络在具有较多层数的卷积运算时出现网络退化的现象,提高特征提取网络提取特征的能力。
在一种可能的实现方式中,所述残差结构电路包括电容、输入开关以及输出开关;当所述输入开关闭合且所述输出开关断开时,所述电容用于存储输入信号;或者,当所述输入开关断开且所述输出开关闭合时,所述电容用于输出所存储的信号。
本方案中,通过采用模拟电路来实现残差结构电路,避免了执行模数转换后将数据存入存储器中并且再经数模转换的方式输出数据的繁杂过程,节省了模数转换以及数模转换所需的功耗。也就是说,相较于采用数字电路所实现的残差结构电路,基于模拟电路来实现的残差结构电路能够有效地节省功耗。
在一种可能的实现方式中,所述特征提取电路还包括激活函数电路;所述激活函数电路与所述卷积运算电路连接,所述激活函数电路用于对所述卷积运算电路所执行的一层或多层卷积运算的输出数据进行激活函数处理。
本方案中,通过激活函数电路对卷积运算的输出数据进行激活函数处理,能够为特征提取处理的过程引入非线性因素,从而提高提取得到的特征数据的表达能力。
在一种可能的实现方式中,所述激活函数电路包括选通器和比较器;所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,或者在所述输入信号小于所述零值信号时向所述选通器发送第二信号;所述选通器用于在接收到所述第一信号时输出所述输入信号,或者在接收到所述第二信号时输出所述零值信号。
在一种可能的实现方式中,所述激活函数电路包括选通器、比较器以及与所述选通器连接的衰减电路;所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,或者在所述输入信号小于所述零值信号时向所述选通器发送第二信号;所述衰减电路用于对所述输入电路进行衰减处理,得到衰减后的输入信号;所述选通器用于在接收到所述第一信号时输出所述输入信号,或者在接收到所述第二信号时输出所述衰减后的输入信号。
在一种可能的实现方式中,所述数据采集设备还包括传感器,所述传感器用于采集所述环境数据。
本申请第二方面提供一种数据处理装置,包括:数据接收电路,用于接收数据采集设备发送的特征数据,所述特征数据是所述数据采集设备中的模拟电路通过神经网络模型对环境数据进行特征提取后得到的,所述数据处理装置部署于所述数据采集设备之外;数据处理电路,用于对所述特征数据进行处理,得到数据处理结果。
本方案中,通过采用功耗较低的模拟电路对环境数据实现特征提取,能够降低数据处理过程中的功耗。并且,通过由数据采集设备对环境数据进行特征提取后再向数据处理装置发送特征数据,由数据处理装置实现特征数据的后续处理,能够减少传输数据的数据量,从而降低数据处理过程的能耗,提高数据处理的效率。
此外,基于数据采集设备中的特征提取电路对采集得到的原数据进行特征提取处理,并且将提取得到的特征数据发送给数据处理装置,使得整个数据处理过程都是基于采集得到的原数据进行的。相较于相关技术中将采集得到的原数据压缩后再传输至中心侧进行处理,本方案不会丢失细节信息,对微小目标的处理能力得到增强,数据处理的精度更高。
在一种可能的实现方式中,所述数据处理电路用于基于所述特征数据执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述数据处理电路为数字电路。
本申请第三方面提供一种数据处理方法,所述方法应用于数据采集设备上,所述方法包括:通过神经网络模型对环境数据进行特征提取处理,以得到特征数据,其中,所述对环境数据进行特征提取处理是基于模拟电路实现的,所述特征数据为模拟信号;将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号;其中,所述数据处理装置部署于所述数据采集设备之外,且所述数据处理装置用于对所述数字信号进行处理,以得到数据处理结果。
在一种可能的实现方式中,所述数据处理装置具体用于基于数字电路对所述特征数据进行处理。
在一种可能的实现方式中,所述数据采集设备和所述数据处理装置分别部署于车辆中的不同位置。
在一种可能的实现方式中,所述数据采集设备为摄像头,且所述环境数据为图像数据;或,所述数据采集设备为激光雷达或毫米波雷达,且所述环境数据为点云数据。
在一种可能的实现方式中,所述特征数据用于供所述数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述对环境数据进行特征提取处理,包括:对所述环境数据执行多层卷积运算,以得到所述特征数据;其中,在对所述环境数据执行多层卷积运算的过程中,存储任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。
在一种可能的实现方式中,所述对环境数据进行特征提取处理,还包括:在对所述环境数据执行多层卷积运算的过程中,对一层或多层卷积运算的输出数据进行激活函数处理。
本申请第四方面提供一种数据处理方法,所述方法应用于数据处理装置上,所述方法包括:接收数据采集设备发送的特征数据,所述特征数据是所述数据采集设备中的模拟电路通过神经网络模型对环境数据进行特征提取后得到的,所述数据处理装置部署于所述数据采集设备之外;对所述特征数据进行处理,得到数据处理结果。
在一种可能的实现方式中,所述方法应用于执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述对所述特征数据进行处理,得到数据处理结果,包括:基于数字电路对所述特征数据进行处理,得到数据处理结果。
本申请第五方面提供一种数据处理装置,该数据处理装置包括:存储器和处理器;所述存储器存储有代码,所述处理器被配置为执行所述代码,当所述代码被执行时,所述数据处理装置执行如第三方面中的任意一种实现方式的方法。
本申请第六方面提供一种数据处理装置,该数据处理装置包括:存储器和处理器;所述存储器存储有代码,所述处理器被配置为执行所述代码,当所述代码被执行时,所述数据处理装置执行如第四方面中的任意一种实现方式的方法。
本申请第七方面提供一种车辆,包括如第一方面中的任意一种实现方式的数据采集设备。
在一种可能的实现方式中,所述车辆还包括如第二方面中的任意一种实现方式的数据处理装置。
本申请第八方面提供一种视频监控系统,包括如第一方面中的任意一种实现方式的数据采集设备和如第二方面中的任意一种实现方式的数据处理装置。
在一种可能的实现方式中,所述数据处理装置部署于云端的服务器中。
本申请第九方面提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如第三方面至第四方面中的任意一种实现方式的方法。
本申请第十方面提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行如第三方面至第四方面中的任意一种实现方式的方法。
上述第二方面至第十方面提供的方案,用于实现或配合实现上述第一方面提供的数据处理设备,因此可以与第一方面达到相同或相应的有益效果,此处不再进行赘述。
附图说明
图1为本申请实施例提供的一种自动驾驶场景的架构示意图;
图2为本申请实施例提供的一种视频监控场景的架构示意图;
图3为本申请实施例提供的一种车辆100的功能框图;
图4为本申请实施例提供的一种车辆中的计算机系统101的结构示意图;
图5为本申请实施例提供的一种卷积神经网络的示意图;
图6为本申请实施例提供的另一种卷积神经网络的示意图;
图7为本申请实施例提供的一种数据采集设备和数据处理装置的结构示意图;
图8为本申请实施例提供的一种残差结构电路的示意图;
图9为本申请实施例提供的一种残差结构电路的示意图;
图10为本申请实施例提供的另一种残差结构电路的示意图;
图11为本申请实施例提供的一种ReLU激活函数的示意图;
图12为本申请实施例提供的一种激活函数电路的示意图;
图13为本申请实施例提供的一种Leaky ReLU激活函数的示意图;
图14为本申请实施例提供的一种激活函数电路的示意图;
图15为本申请实施例提供的一种Mish激活函数的示意图;
图16为本申请实施例提供的一种目标检测算法的流程示意图;
图17为本申请实施例提供的一种双目深度估计算法的流程示意图;
图18为本申请实施例提供的数据采集设备和数据处理装置的示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
近年来,随着自动驾驶领域的迅速发展,越来越多先进的深度学习算法被开发出来,以应用于自动驾驶领域中的目标识别。这些深度学习算法通常是通过增加神经网络的深度和参数量来提高神经网络的性能,以提高自动驾驶过程中目标识别的准确率。随着深度学习算法中神经网络的深度和参数量的提高,对自动驾驶车辆的算力有了更高的要求。
此外,随着自动驾驶车辆所使用的环境采集设备越来越多,且环境采集设备的精度越来越高,自动驾驶车辆的算力需求也越来越高,导致了自动驾驶车辆中运算芯片的能耗提高。自动驾驶车辆中运算芯片的能耗提高,会导致运算芯片出现耗电量过高以及发热量过高等问题,容易影响自动驾驶车辆的正常行驶。
一般来说,自动驾驶车辆主要依靠部署于车辆上的摄像头以及雷达等环境采集设备采集环境信息,并由自动驾驶车辆中的控制器对环境信息进行分析,以确定自动驾驶车辆的行驶策略。以自动驾驶车辆上所部署的摄像头为例,在自动驾驶车辆的行驶过程中,摄像头实时采集环境图像,并在对环境图像进行压缩编码处理后,向自动驾驶车辆的运算芯片发送压缩处理后的环境图像。自动驾驶车辆中的运算芯片对环境图像进行解码处理后,基于神经网络对解码后的环境图像进行分析处理,得到相应的数据处理结果,该数据处理结果用于确定行驶策略。例如,运算芯片对环境图像进行分析处理后,得到环境图像中的障碍物识别结果,该障碍物识别结果用于确定行驶策略为减速行驶或绕行。
在自动驾驶车辆中所部署的环境采集设备较多,且环境采集设备的精度较高的情况下,运算芯片通常需要耗费大量的算力对环境采集设备所传输的环境信息进行解码处理,进而导致运算芯片的能耗提高。
有鉴于此,本申请实施例提供了一种数据采集设备及数据处理装置,在该数据采集设备中集成了特征提取电路,能够对数据采集设备采集得到的环境数据进行特征提取,得到数据量更少的特征数据。然后,该数据采集设备向数据处理装置发送特征数据,由数据处理装置对特征数据执行进一步的处理,得到最终的数据处理结果。通过由数据采集设备对采集得到的环境数据进行特征提取后再向数据处理装置发送特征数据,能够减少所传输的数据的数据量,从而降低数据处理过程的能耗,提高数据处理的效率。
本申请实施例中的所提供的数据采集设备及数据处理装置例如可以为自动驾驶(self driving)中的电子设备、智能电网(smart grid)中的无线电子设备、运输安全(transportation safety)中的无线电子设备、智慧城市(smart city)中的无线电子设备、智慧家庭(smart home)中的无线电子设备、深海探测中的电子设备、遥测遥感中的电子设备、智能手机(mobile phone)、个人电脑(personal computer,PC)、笔记本电脑、平板电脑、智慧电视、服务器、移动互联网设备(mobile internet device,MID)、可穿戴设备(如智能手表、智能眼镜或者智能头盔等),虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线电子设备、远程手术(remote medical surgery)中的无线电子设备等。并且,数据采集设备与数据处理装置之间通过有线或无线的方式实现通信连接,以使得数据采集设备能够向数据处理装置传输特征数据。以下实施例对数据采集设备及数据处理装置的具体形式不做特殊限制。
举例来说,本申请实施例所提供的数据采集设备及数据处理装置可以应用于自动驾驶领域、视频监控领域、深海探测领域以及遥感遥测领域。
可以参阅图1,图1为本申请实施例提供的一种自动驾驶场景的架构示意图。如图1所示,在自动驾驶领域中,自动驾驶车辆中部署有数据采集设备和数据处理装置,该数据采集设备例如可以为摄像头或雷达,该数据处理装置例如可以为集中控制器或集中控制器中的装置。具体地,数据采集设备采集得到环境图像或点云数据等环境数据之后,对环境数据进行特征提取处理,得到特征数据。然后,数据采集设备将特征数据发送给数据处理装置。数据处理装置接收到特征数据后,对特征数据进行处理,得到相应的数据处理结果,该数据处理结果用于确定自动驾驶车辆的行驶策略。
可以参阅图2,图2为本申请实施例提供的一种视频监控场景的架构示意图。如图2所示,在视频监控领域中,视频监控系统中部署有数据采集设备和数据处理装置,该数据采集设备例如可以为部署于户外或室内的摄像头,该数据处理装置例如可以部署于本地机房或云端服务器中。具体地,数据采集设备采集得到环境图像之后,对环境图像进行特征提取处理,得到特征数据,并将特征数据发送给数据处理装置。数据处理装置接收到特征数据后,对特征数据进行处理,得到相应的数据处理结果,该数据处理结果例如可以为图像分类结果或者目标检测结果。
在深海探测领域中,探测器与地面上的计算中心连接。探测器上部署有数据采集设备,地面上的计算中心则部署有数据处理装置。探测器上的数据采集设备在采集到深海图像后,提取得到深海图像的特征数据,并将特征数据回传至计算中心的数据处理装置。数据处理装置根据特征数据识别到数据采集设备已经拍摄到特定的目标时,再向数据采集设备下发指令,以获取高像素目标图像。
在遥测遥感领域中,用于实现遥感遥测的无人机与地面上的计算中心连接。无人机上部署有数据采集设备,地面上的计算中心则部署有数据处理装置。无人机上的数据采集设备在采集到地面图像后,提取得到地面图像的特征数据,并将特征数据回传至计算中心的数据处理装置。数据处理装置根据特征数据识别到数据采集设备已经拍摄到特定的目标时,再向数据采集设备下发指令,以获取高像素目标图像。
以上介绍了本申请实施例所应用的场景,为了便于理解,以下将介绍本申请实施例在自动驾驶场景下所应用的设备。
图3为本申请实施例提供的一种车辆100的功能框图。在一个实施例中,将车辆100配置为完全或部分地自动驾驶模式。例如,车辆100可以在处于自动驾驶模式中的同时控制自身,并且可通过人为操作来确定车辆及其周边环境的当前状态,确定周边环境中的至少一个其他车辆的可能行为,并确定其他车辆执行可能行为的可能性相对应的置信水平,基于所确定的信息来控制车辆100。在车辆100处于自动驾驶模式中时,可以将车辆100置为在没有和人交互的情况下操作。
车辆100可包括各种子系统,例如行进系统102、传感器系统104、控制系统106、一个或多个外围设备108以及电源110、计算机系统112和用户接口116。可选地,车辆100可包括更多或更少的子系统,并且每个子系统可包括多个元件。另外,车辆100的每个子系统和元件可以通过有线或者无线互连。
行进系统102可包括为车辆100提供动力运动的组件。在一个实施例中,推进系统102可包括引擎118、能量源119、传动装置120和车轮/轮胎121。引擎118可以是内燃引擎、电动机、空气压缩引擎或其他类型的引擎组合,例如气油发动机和电动机组成的混动引擎,内燃引擎和空气压缩引擎组成的混动引擎。引擎118将能量源119转换成机械能量。
能量源119的示例包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和其他电力来源。能量源119也可以为车辆100的其他系统提供能量。
传动装置120可以将来自引擎118的机械动力传送到车轮121。传动装置120可包括变速箱、差速器和驱动轴。在一个实施例中,传动装置120还可以包括其他器件,比如离合器。其中,驱动轴可包括可耦合到一个或多个车轮121的一个或多个轴。
传感器系统104可包括感测关于车辆100周边的环境的信息的若干个传感器。例如,传感器系统104可包括定位系统122(定位系统可以是GPS系统,也可以是北斗系统或者其他定位系统)、惯性测量单元(inertial measurement unit,IMU)124、雷达系统126、激光测距仪128以及相机130。传感器系统104还可包括被监视车辆100的内部系统的传感器(例如,车内空气质量监测器、燃油量表、机油温度表等)。来自这些传感器中的一个或多个的传感器数据可用于检测对象及其相应特性(位置、形状、方向、速度等)。这种检测和识别是自主车辆100的安全操作的关键功能。
其中,随着高级驾驶辅助系统(ADAS)和无人驾驶技术的发展,其对雷达系统126的距离、角度分辨率等性能提出了更高的要求。而车载雷达系统126的距离、角度分辨率的提升使得车载雷达系统126在对目标进行成像时,一个目标对象会检测出多个测量点,形成高分辨率点云数据,本申请中的雷达系统126也可以称为点云成像雷达。
定位系统122可用于估计车辆100的地理位置。IMU 124用于基于惯性加速度来感测车辆100的位置和朝向变化。在一个实施例中,IMU 124可以是加速度计和陀螺仪的组合。
雷达系统126可利用无线电信号来感测车辆100的周边环境内的物体。在一些实施例中,除了感测物体以外,雷达系统126还可用于感测物体的速度和/或前进方向。
激光测距仪128可利用激光来感测车辆100所位于的环境中的物体。在一些实施例中,激光测距仪128可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他系统组件。
相机130可用于捕捉车辆100的周边环境的多个图像。相机130可以是静态相机或视频相机。本申请实施例中,相机130也可称之为摄像设备。
控制系统106为控制车辆100及其组件的操作。控制系统106可包括各种元件,其中包括转向系统132、油门134、制动单元136、计算机视觉系统140、路线控制系统142以及障碍物避免系统144。
转向系统132可操作来调整车辆100的前进方向。例如在一个实施例中可以为方向盘系统。
油门134用于控制引擎118的操作速度并进而控制车辆100的速度。
制动单元136用于控制车辆100减速。制动单元136可使用摩擦力来减慢车轮121。在其他实施例中,制动单元136可将车轮121的动能转换为电流。制动单元136也可采取其他形式来减慢车轮121转速从而控制车辆100的速度。
计算机视觉系统140可以处理和分析由相机130捕捉的图像以便识别车辆100周边环境中的物体和/或特征。所述物体和/或特征可包括交通信号、道路边界和障碍物。计算机视觉系统140可使用物体识别算法、运动中恢复结构(Structure from Motion,SFM)算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉系统140可以用于为环境绘制地图、跟踪物体、估计物体的速度等等。
路线控制系统142用于确定车辆100的行驶路线。在一些实施例中,路线控制系统142可结合来自传感器138、GPS 122和一个或多个预定地图的数据以为车辆100确定行驶路线。
障碍物避免系统144用于识别、评估和避免或者以其他方式越过车辆100的环境中的潜在障碍物。
当然,在一个实例中,控制系统106可以增加或替换地包括除了所示出和描述的那些以外的组件。或者也可以减少一部分上述示出的组件。
车辆100通过外围设备108与外部传感器、其他车辆、其他计算机系统或用户之间进行交互。外围设备108可包括无线通信系统146、车载电脑148、麦克风150和/或扬声器152。
在一些实施例中,外围设备108为车辆100的用户提供与用户接口116交互的手段。例如,车载电脑148可向车辆100的用户提供信息。用户接口116还可操作车载电脑148来接收用户的输入。车载电脑148可以通过触摸屏进行操作。在其他情况中,外围设备108可提供用于车辆100与位于车内的其它设备通信的手段。例如,麦克风150可从车辆100的用户接收音频(例如,语音命令或其他音频输入)。类似地,扬声器152可向车辆100的用户输出音频。
无线通信系统146可以直接地或者经由通信网络来与一个或多个设备无线通信。例如,无线通信系统146可使用3G蜂窝通信,例如码分多址(code division multipleaccess,CDMA)、增强型多媒体盘片系统(enhanced versatile disk,EVD)、全球移动通讯系统(global system for mobile communications,GSM)/通用分组无线业务(generalpacket radio service,GPRS),或者4G蜂窝通信,例如LTE。或者5G蜂窝通信。无线通信系统146可利用WiFi与无线局域网(wireless local area network,WLAN)通信。在一些实施例中,无线通信系统146可利用红外链路、蓝牙或ZigBee与设备直接通信。其他无线协议,例如各种车辆通信系统,例如,无线通信系统146可包括一个或多个专用短程通信(dedicatedshort range communications,DSRC)设备,这些设备可包括车辆和/或路边台站之间的公共和/或私有数据通信。
电源110可向车辆100的各种组件提供电力。在一个实施例中,电源110可以为可再充电锂离子或铅酸电池。这种电池的一个或多个电池组可被配置为电源为车辆100的各种组件提供电力。在一些实施例中,电源110和能量源119可一起实现,例如一些全电动车中那样。
车辆100的部分或所有功能受计算机系统112控制。计算机系统112可包括至少一个处理器113,处理器113执行存储在例如数据存储装置114这样的非暂态计算机可读介质中的指令115。计算机系统112还可以是采用分布式方式控制车辆100的个体组件或子系统的多个计算设备。
处理器113可以是任何常规的处理器,诸如商业可获得的中央处理器(centralprocessing unit,CPU)。替选地,该处理器可以是诸如专用集成电路(applicationspecific integrated circuit,ASIC)或其它基于硬件的处理器的专用设备。尽管图1功能性地图示了处理器、存储器、和在相同块中的计算机110的其它元件,但是本领域的普通技术人员应该理解该处理器、计算机、或存储器实际上可以包括可以或者可以不存储在相同的物理外壳内的多个处理器、计算机、或存储器。例如,存储器可以是硬盘驱动器或位于不同于计算机110的外壳内的其它存储介质。因此,对处理器或计算机的引用将被理解为包括对可以或者可以不并行操作的处理器或计算机或存储器的集合的引用。不同于使用单一的处理器来执行此处所描述的步骤,诸如转向组件和减速组件的一些组件每个都可以具有其自己的处理器,处理器只执行与特定于组件的功能相关的计算。
本申请实施例中,处理器113可以获取到相机130以及其他传感器设备的数据,并基于获取的数据进行车辆的定位。
在此处所描述的各个方面中,处理器可以位于远离该车辆并且与该车辆进行无线通信。在其它方面中,此处所描述的过程中的一些在布置于车辆内的处理器上执行而其它则由远程处理器执行,包括采取执行单一操纵的必要步骤。
在一些实施例中,数据存储装置114可包含指令115(例如,程序逻辑),指令115可被处理器113执行来执行车辆100的各种功能,包括以上描述的那些功能。数据存储装置114也可包含额外的指令,包括向推进系统102、传感器系统104、控制系统106和外围设备108中的一个或多个发送数据、从其接收数据、与其交互和/或对其进行控制的指令。
除了指令115以外,数据存储装置114还可存储数据,例如道路地图、路线信息,车辆的位置、方向、速度以及其它的车辆数据,以及其他信息。这种信息可在车辆100在自主、半自主和/或手动模式中被车辆100和计算机系统112使用。
用户接口116,用于向车辆100的用户提供信息或从车辆100接收信息。可选地,用户接口116可包括在外围设备108的集合内的一个或多个输入/输出设备,例如无线通信系统146、车车在电脑148、麦克风150和扬声器152。
计算机系统112可基于从各种子系统(例如,行进系统102、传感器系统104和控制系统106)以及从用户接口116接收的输入来控制车辆100的功能。例如,计算机系统112可利用来自控制系统106的输入以便控制转向单元132来避免由传感器系统104和障碍物避免系统144检测到的障碍物。在一些实施例中,计算机系统112可操作来对车辆100及其子系统的许多方面提供控制。
可选地,上述这些组件中的一个或多个可与车辆100分开安装或关联。例如,数据存储装置114可以部分或完全地与车辆100分开存在。上述组件可以按有线和/或无线方式来通信地耦合在一起。
可选地,上述组件只是一个示例,实际应用中,上述各个模块中的组件有可能根据实际需要增添或者删除,图1不应理解为对本发明实施例的限制。
在道路行进的自动驾驶汽车,如上面的车辆100,可以识别其周围环境内的物体以确定对当前速度的调整。物体可以是其它车辆、交通控制设备、或者其它类型的物体。在一些示例中,可以独立地考虑每个识别的物体,并且基于物体的各自的特性,诸如它的当前速度、加速度、与车辆的间距等,可以用来确定自动驾驶汽车所要调整的速度。
可选地,车辆100或者与车辆100相关联的计算设备(如图3的计算机系统112、计算机视觉系统140、数据存储装置114)可以基于所识别的物体的特性和周围环境的状态(例如,交通、雨、道路上的冰、等等)来预测识别的物体的行为。可选地,每一个所识别的物体都依赖于彼此的行为,因此还可以将所识别的所有物体全部一起考虑来预测单个识别的物体的行为。车辆100能够基于预测的识别的物体的行为来调整它的速度。换句话说,自动驾驶汽车能够基于所预测的物体的行为来确定车辆将需要调整到(例如,加速、减速、或者停止)什么稳定状态。在这个过程中,也可以考虑其它因素来确定车辆100的速度,诸如,车辆100在行驶的道路中的横向位置、道路的曲率、静态和动态物体的接近度等等。
除了提供调整自动驾驶汽车的速度的指令之外,计算设备还可以提供修改车辆100的转向角的指令,以使得自动驾驶汽车遵循给定的轨迹和/或维持与自动驾驶汽车附近的物体(例如,道路上的相邻车道中的轿车)的安全横向和纵向距离。
上述车辆100可以为轿车、卡车、摩托车、公共汽车、船、飞机、直升飞机、割草机、娱乐车、游乐场车辆、施工设备、电车、高尔夫球车和火车等,本申请实施例不做特别的限定。
可以参阅图4,图4为本申请实施例提供的一种车辆中的计算机系统101的结构示意图。如图4所示,计算机系统101包括处理器103,处理器103和系统总线105耦合。处理器103可以是一个或者多个处理器,其中每个处理器都可以包括一个或多个处理器核。显示适配器(video adapter)107,显示适配器可以驱动显示器109,显示器109和系统总线105耦合。系统总线105通过总线桥111和输入输出(I/O)总线耦合。I/O接口115和I/O总线耦合。I/O接口115和多种I/O设备进行通信,比如输入设备117(如:键盘,鼠标,触摸屏等),多媒体盘(media tray)121,(例如,只读光盘(compact disc read-only memory,CD-ROM),多媒体接口等)。收发器123(可以发送和/或接受无线电通信信号),摄像头155(可以捕捉静态和动态数字视频图像)和外部USB端口125。其中,可选地,和I/O接口115相连接的接口可以是USB接口。
其中,处理器103可以是任何传统处理器,包括精简指令集计算(reducedinstruction set Computing,RISC)处理器、复杂指令集计算(complexinstruction setcomputing,CISC)处理器或上述的组合。可选地,处理器可以是诸如ASIC的专用装置。可选地,处理器103可以是神经网络处理器或者是神经网络处理器和上述传统处理器的组合。
可选地,在本文的各种实施例中,计算机系统101可位于远离自动驾驶车辆的地方,并且可与自动驾驶车辆无线通信。在其它方面,本文的一些过程在设置在自动驾驶车辆内的处理器上执行,其它由远程处理器执行,包括采取执行单个操纵所需的动作。
计算机101可以通过网络接口129和软件部署服务器149通信。示例性的,网络接口129是硬件网络接口,比如,网卡。网络127可以是外部网络,比如因特网,也可以是内部网络,比如以太网或者虚拟私人网络(virtual private network,VPN)。可选地,网络127还可以是无线网络,比如WiFi网络,蜂窝网络等。
硬盘驱动接口和系统总线105耦合。硬件驱动接口和硬盘驱动器相连接。系统内存135和系统总线105耦合。运行在系统内存135的数据可以包括计算机101的操作系统137和应用程序143。
操作系统包括Shell 139和内核(kernel)141。Shell 139是介于使用者和操作系统的内核间的一个接口。shell是操作系统最外面的一层。shell管理使用者与操作系统之间的交互:等待使用者的输入,向操作系统解释使用者的输入,并且处理各种各样的操作系统的输出结果。
内核141由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。内核141直接与硬件交互,操作系统内核通常运行进程,并提供进程间的通信,提供CPU时间片管理、中断、内存管理和IO管理等等。
应用程序143包括控制汽车自动驾驶相关的程序,比如,管理自动驾驶的汽车和路上障碍物交互的程序,控制自动驾驶汽车路线或者速度的程序,控制自动驾驶汽车和路上其他自动驾驶汽车交互的程序。应用程序143也存在于deploying server 149的系统上。在一个实施例中,在需要执行应用程序143时,计算机系统101可以从软件部署服务器149下载应用程序143。
传感器153和计算机系统101关联。传感器153用于探测计算机系统101周围的环境。举例来说,传感器153可以探测动物,汽车,障碍物和人行横道等,进一步传感器153还可以探测上述动物,汽车,障碍物和人行横道等物体周围的环境,比如:动物周围的环境,例如,动物周围出现的其他动物,天气条件,周围环境的光亮度等。可选地,如果计算机101位于自动驾驶的汽车上,传感器可以是雷达系统等。
在本申请实施例中,数据采集设备对环境数据进行特征提取处理的过程以及数据处理装置处理特征数据的过程均涉及到神经网络模型,为便于理解,以下先对本申请实施例所涉及的相关术语及神经网络模型等相关概念进行介绍。
(1)神经网络。
神经网络可以是由神经单元组成的,神经单元可以是指以xs(即输入数据)和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入,激活函数可以是sigmoid函数。神经网络是将多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)卷积神经网络(Convosutionas Neuras Network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。该特征抽取器可以看作是滤波器,卷积过程可以看作是使用一个可训练的滤波器与一个输入的图像或者卷积特征平面(feature map)做卷积。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层(例如本实施例中的第一卷积层、第二卷积层)。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。这其中隐含的原理是:图像的某一部分的统计信息与其他部分是一样的。即意味着在某一部分学习的图像信息也能用在另一部分上。所以对于图像上的所有位置,我们都能使用同样的学习得到的图像信息。在同一卷积层中,可以使用多个卷积核来提取不同的图像信息,一般地,卷积核数量越多,卷积操作反映的图像信息越丰富。
卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
具体的,如图5所示,图5为本申请实施例提供的一种卷积神经网络的示意图。卷积神经网络(CNN)100可以包括输入层110,卷积层/池化层120,其中池化层为可选的,以及神经网络层130。
其中,卷积层/池化层120以及神经网络层130组成的结构可以为本申请中所描述的第一卷积层以及第二卷积层,输入层110和卷积层/池化层120连接,卷积层/池化层120连接与神经网络层130连接,神经网络层130的输出可以输入至激活层,激活层可以对神经网络层130的输出进行非线性化处理。
卷积层/池化层120。卷积层:如图5所示卷积层/池化层120可以包括如示例121-126层,在一种实现中,121层为卷积层,122层为池化层,123层为卷积层,124层为池化层,125为卷积层,126为池化层;在另一种实现方式中,121、122为卷积层,123为池化层,124、125为卷积层,126为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
以卷积层121为例,卷积层121可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depthdimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用维度相同的多个权重矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化……该多个权重矩阵维度相同,经过该多个维度相同的权重矩阵提取后的特征图维度也相同,再将提取到的多个维度相同的特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以从输入图像中提取信息,从而帮助卷积神经网络100进行正确的预测。
当卷积神经网络100有多个卷积层的时候,初始的卷积层(例如121)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络100深度的加深,越往后的卷积层(例如126)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,即如图2中120所示例的121-126各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。
神经网络层130:在经过卷积层/池化层120的处理后,卷积神经网络100还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层120只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或别的相关信息),卷积神经网络100需要利用神经网络层130来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层130中可以包括多层隐含层(如图2所示的131、132至13n)以及输出层140,该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类,目标检测等等。
在神经网络层130中的多层隐含层之后,也就是整个卷积神经网络100的最后层为输出层140,该输出层140具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络100的前向传播(如图2由110至140的传播为前向传播)完成,反向传播(如图2由140至110的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络100的损失及卷积神经网络100通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图5所示的卷积神经网络100仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在。例如,可以参阅图6,图6为本申请实施例提供的另一种卷积神经网络的示意图。如图6所示的多个卷积层/池化层并行,将分别提取的特征均输入给全神经网络层130进行处理。
以上介绍了本申请实施例所应用的场景以及所涉及的相关术语等技术概念,以下将详细介绍本申请实施例所提供的数据采集设备和数据处理装置。
可以参阅图7,图7为本申请实施例提供的一种数据采集设备和数据处理装置的结构示意图。
如图7所示,数据采集设备包括传感器、特征提取电路和数据传输电路;数据处理装置包括数据接收电路和数据处理电路。
在数据采集设备中,传感器用于采集环境数据。示例性地,在自动驾驶领域中,所述数据采集设备例如可以为摄像头,摄像头中的传感器所采集的环境数据为环境图像。所述数据采集设备还可以为激光雷达或毫米波雷达等雷达装置,激光雷达和毫米波雷达所采集的环境数据可以为点云数据。其中,点云数据是指在一个三维坐标系统中的一组向量的集合,即雷达装置所获取的带空间坐标的采样点的一个集合,能够表示三维空间中的障碍物。
此外,在视频监控领域中,所述数据采集设备同样可以为摄像头。该摄像头例如可以为部署于室外或室内的监控摄像头,用于采集室外或室内的环境图像。
数据采集设备中的特征提取电路与传感器连接,能够获取传感器所采集的环境数据。该特征提取电路用于基于神经网络模型对所述环境数据进行特征提取处理,得到特征数据。其中,所述特征数据的数据量小于所述环境数据的数据量,所述特征数据例如可以为图像特征,能够用于表征环境图像中的特征信息;或者,所述特征数据例如可以为点云数据特征,能够用于表征点云数据中的特征信息。一般来说,环境图像和点云数据中通常会包含较多的冗余信息,通过神经网络模型对环境图像或点云数据进行特征提取处理,即可提取得到包含关键信息的特征数据,这些特征数据能够用于供数据处理装置执行后续的数据处理。其中,特征提取电路中用于对环境数据进行特征提取处理的神经网络模型例如可以称为特征提取网络。
例如,假设数据采集设备为摄像头,该摄像头用于采集1920*1080分辨下的高清视频,且视频的采集帧率为30帧/秒。那么,该摄像头每秒所采集的像素点数量具体为:1920*1080*3通道*30帧/秒=180兆(M)个点/秒,即该摄像头每秒所传输的数据量包括180M个像素点的值。在摄像头基于特征提取网络执行特征提取后再传输的情况下,以目标检测算法中的特征提取网络来计算,该摄像头每秒所需传输的像素点数量具体为13*13*1024*30帧/秒=5M个点/秒。对比可知,特征数据的数据量是原始视频数据的2.7%。显然,经过特征提取处理后所得到的特征数据的数据量要远小于环境数据的数据量。
示例性地,特征提取电路所提取得到的特征数据用于供数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
数据采集设备中的数据传输电路与特征提取电路连接,能够获取特征提取电路所提取得到的特征数据。该数据传输电路用于向数据处理装置发送从特征提取电路所获取的特征数据。
在数据处理装置中,数据接收电路用于接收数据采集设备所发送的特征数据,所述特征数据是所述数据采集设备基于神经网络模型对采集到的环境数据进行特征提取后所得到的。
数据处理装置中的数据处理电路与数据接收电路连接,能够从数据接收电路获取到特征数据。该数据处理电路用于对所述特征数据进行处理,得到数据处理结果。示例性地,该数据处理电路可以是基于神经网络模型对特征数据进行处理,以执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。也就是说,数据处理电路对所述特征数据进行处理后所得到的数据处理结果可以为图像分类结果、目标检测结果、目标识别结果、语义分割结果和/或深度估计结果。
在一些实施例中,所述数据处理装置可以为中央处理器(central processingunit,CPU)或可配置的专用电路。在自动驾驶领域,所述数据处理装置可以部署于车辆中的集中控制器中;在视频监控领域,所述数据处理装置则可以部署于本地机房或云端的服务器中。
简单来说,本实施例中将自动驾驶算法或视频监控算法分成两部分,一部分在数据采集设备中完成,另一部分则在数据处理装置中完成。以自动驾驶算法为例,自动驾驶算法被分为特征提取算法以及决策处理算法,特征提取算法在摄像头或雷达装置等数据采集设备上执行,用于对环境数据执行特征提取处理;决策处理算法则在集中控制器等数据处理装置上执行,用于对特征数据进行分析处理,得到决策结果,例如得到图像分类结果、目标检测结果、目标识别结果、语义分割结果或深度估计结果。
其中,自动驾驶算法或视频监控算法可以是基于神经网络模型来实现的,因此本实施例中可以是将实现自动驾驶算法或视频监控算法的神经网络模型分成两部分,一部分为特征提取网络,另一部分为决策网络。其中,特征提取网络部署于数据采集设备中的特征提取电路中,用于实现环境数据的特征提取处理;决策网络则部署于数据处理装置中,用于基于特征数据得到数据处理结果。
本实施例中,在该数据采集设备中集成了特征提取电路,能够对数据采集设备采集得到的环境数据进行特征提取,得到数据量更少的特征数据。然后,该数据采集设备向数据处理装置发送特征数据,由数据处理装置对特征数据执行进一步的处理,得到最终的数据处理结果。通过由数据采集设备对采集得到的环境数据进行特征提取后再向数据处理装置发送特征数据,能够减少传输数据的数据量,从而降低数据处理过程的能耗,提高数据处理的效率。
此外,由于本实施例中是基于数据采集设备中的特征提取电路对采集得到的原数据进行特征提取处理,并且将提取得到的特征数据发送给数据处理装置,使得整个数据处理过程都是基于采集得到的原数据进行的。相较于相关技术中将采集得到的原数据压缩后再传输至中心侧进行处理,本实施例的方案不会丢失细节信息,对微小目标的处理能力得到增强,能更早地发现更多的目标。
并且,经申请人研究发现,得益于神经网络模型的快速发展,对环境数据进行处理的算法(例如自动驾驶算法和视频监控算法)通常具有频繁更新迭代的特点。但是在自动驾驶算法和视频监控算法发生更新的情况下,这两种算法中的特征提取处理过程通常都是不变或者变化较小的,变化较大的通常是特征数据的处理过程。因此将负责特征提取处理过程的特征提取电路集成于数据采集设备中,能够使得数据采集设备适应大部分算法且不受算法更新的影响,提高数据采集设备的适用性,避免频繁对数据采集设备进行软件或硬件上的更新。
在一些可能的实施例中,所述数据采集设备中的特征提取电路为模拟电路,所述数据处理装置中的数据处理电路为数字电路。其中,模拟电路与数字电路是数据处理过程中常用的两种电路。模拟电路是指用来对模拟信号进行传输、变换、处理、放大、测量和显示等工作的电路。模拟信号是指连续变化的电信号。数字电路则是指采用数字信号对数字量进行算术运算和逻辑运算的电路。数字信号是指自变量是离散的、因变量也是离散的信号,这种信号的自变量用整数表示,因变量用有限数字中的一个数字来表示。在计算机中,数字信号的大小常用有限位的二进制数表示。
相较于模拟电路而言,数字电路能够执行更多种类以及更复杂的算术运算,例如幂运算;并且,数字电路的适用性较强,同一个数字电路能够用于执行不同的算法。因此,目前基于神经网络模型的数据处理通常都是由数字电路来完成,例如由CPU或图形处理器(graphics processing unit,GPU)来完成。
但是,与数字电路相比,模拟电路由于具有结构简单且硬件消耗小的特点,能够在消耗更低功耗的情况下实现更高的运算并行度。也就是说,在提供相同算力的情况下,模拟电路的功耗要小于数字电路的功耗。
对于不同的自动驾驶算法或视频监控算法而言,这些算法的特征处理过程通常都是相同或相近的,不同之处在于对特征数据进行处理的过程。也就是说,不同的自动驾驶算法或视频监控算法所采用的特征提取网络通常是相同的或相似的,而这些算法的区别主要是在于所采用的决策网络。
基于此,本实施例中采用模拟电路来实现特征提取处理,以及采用数字电路来实现特征数据的处理。由于大部分算法的特征提取处理过程相同或相近,基于模拟电路来实现特征提取处理,能够在不改变模拟电路结构的情况下实现大部分算法的特征提取处理需求;基于数字电路来实现特征数据的处理,则同样能够满足不同算法的特征数据处理要求,从而保证数据采集设备和数据处理装置能够支持不同的算法,确保了对不同算法支持的灵活性。
此外,在自动驾驶算法或视频监控算法中,特征提取网络的计算量占比通常要高于决策网络,即自动驾驶算法或视频监控算法中的大部分计算量均集中于特征提取处理过程中。因此,由模拟电路代替数字电路来实现计算量占比高的特征提取处理过程,能够有效降低数据处理过程中的功耗,降低自动驾驶车辆中的运算芯片或视频监控服务器的能耗。
具体而言,在自动驾驶领域中,采用模拟电路来实现特征提取处理,并且采用数字电路来实现特征数据的处理,能够提高车辆中整个计算架构的能效比,例如将当前的计算架构的能效比从1~2Tops/W提高到20Tops/W以上。其中,Tops为处理器运算能力单位,1TOPS代表处理器每秒钟可进行一万亿次操作;Tops/W用于度量在1W功耗的情况下,处理器能进行多少万亿次操作。
可以理解的是,在特征提取电路为模拟电路的情况下,特征提取电路对环境数据进行特征提取处理所得到的特征数据为模拟信号。由于自动驾驶领域或视频监控领域中,数据采集设备与数据处理装置之间通常会存在一定的物理距离,而在较长距离传输的场景下模拟信号的传输效率以及抗干扰能力均低于数字信号,因此为了保证数据传输的效率和准确性,本实施例中可以将特征数据转换为数字信号后,再进行传输。
具体地,所述数据传输电路可以包括模数转换器,所述模数转换器用于将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号。也就是说,特征提取电路对环境数据进行特征提取处理后,得到以模拟信号来表示的特征数据;然后,模数转换器对该特征数据进行模数转换处理,得到以数字信号来表示的特征数据,并向数据处理装置发送以数字信号来表示的特征数据。这样一来,数据采集设备是以数字信号的方式来向数据处理装置发送特征数据,从而保证数据传输的效率和准确性。
可选的,在数据采集设备需要频繁传输大量数据的情况下,所述数据传输电路还可以包括编码电路,所述编码电路与所述模数转换器连接,用于从所述模数转换器获取数字信号(即经所述模数转换器转换后的特征数据),并对所述数字信号进行编码,得到编码后的特征数据。最后,所述编码电路向数据处理装置发送编码后的特征数据。其中,该编码电路可以采用现有的数据编码算法对特征数据进行编码处理,本实施例对此并不做具体限定。
具体地,数据接收电路中也可以配置有数据解码算法,该数据解码算法与数据采集设备中的编码算法是匹配的。基于该数据解码算法,数据接收电路能够实现编码后的特征数据的解码处理,从而还原得到特征数据。
通过数据采集设备对特征数据进行压缩编码处理,并向数据处理装置传输编码后的特征数据,能够降低所传输的数据量,并且使得特征数据在传输过程中具有一定的纠错能力,提高数据的传输可靠性。
为了便于理解,以下将详细介绍数据采集设备中的特征提取电路的实现方式。
可选的,所述特征提取电路包括卷积运算电路和残差结构电路。也就是说,特征提取电路所用于实现的特征提取网络中包括卷积运算和残差结构。
所述卷积运算电路用于对所述环境数据执行多层卷积运算,以得到所述特征数据。其中,卷积运算电路中所执行的多层卷积运算中,首层卷积运算的输入为环境数据,除首层之外的任意一层卷积运算的输入则为前一层卷积运算的输出。简单来说,在特征提取电路用于实现的特征提取网络中包括多层依次连接的卷积层,所述卷积运算电路用于实现每层卷积层中的卷积运算。由于卷积运算的本质是由大量的乘法运算和加法运算所构成的,因此卷积运算电路可以是基于大量的乘法运算电路和加法运算电路组合构成。在实际应用中,可以根据特征提取网络中卷积层的层数以及卷积层的运算方式来确定卷积运算电路的结构,在此不再赘述。
所述残差结构电路与所述卷积运算电路连接,所述残差结构电路用于存储所述卷积运算电路所执行的任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。其中,残差结构电路所存储的输出数据对应的卷积运算层位于目标层卷积运算之前。例如,残差结构电路存储第1层卷积运算的输出数据,以使得第1层卷积运算的输出数据与第20层卷积运算(即目标层卷积运算)的输出数据相加,得到第21层卷积运算的输入数据。
具体地,特征提取电路中可以包括一个或多个残差结构电路,不同的残差结构电路用于存储不同层卷积运算的输出数据。对于任意一个残差结构电路而言,该残差结构电路可以存储特定层卷积运算的输出数据,且将特定层卷积运算的输出数据输出至后面的一层或多层其他卷积运算中,以作为后面的一层或多层其他卷积运算的输入之一。
示例性地,可以参阅图8,图8为本申请实施例提供的一种残差结构电路的示意图。如图8所示,残差结构电路可以获取第1层卷积运算、第2层卷积运算以及第3层卷积运算等层级的卷积运算的输出数据,并且存储所获取到的输出数据,然后将所存储的输出数据输出至作为其他层卷积运算的输入之一,从而得到其它层卷积运算的实际输入数据。例如,残差结构电路可以获取并存储第1层卷积运算的输出数据,并将所存储的输出数据输出至第n-1层卷积运算与第n层卷积运算之间,以使得第n层卷积运算的实际输入为第n-1层卷积运算的输出数据与第1层卷积运算的输出数据之和。
本实施例中,通过在特征提取网络中引入残差结构,并由残差结构电路来实现特征提取网络中的残差结构,可以避免特征提取网络在具有较多层数的卷积运算时出现网络退化的现象,提高特征提取网络提取特征的能力。
可选的,所述特征提取电路还可以包括激活函数电路,所述激活函数电路与所述卷积运算电路连接,所述激活函数电路用于对所述卷积运算电路所执行的一层或多层卷积运算的输出数据进行激活函数处理。也就是说,特征提取电路中可以包括一个或多个激活函数电路,任意一个激活函数电路均可以设置于相邻的两层卷积运算之间,用于对前一层卷积运算的输出数据进行激活函数处理,以使得后一层卷积运算的输入数据为前一层卷积运算中执行激活函数处理后的输出数据。其中,所述激活函数电路可以是用于实现ReLU激活函数、Leaky ReLU激活函数和/或Mish激活函数的电路。
本实施例中,通过激活函数电路对卷积运算的输出数据进行激活函数处理,能够为特征提取处理的过程引入非线性因素,从而提高提取得到的特征数据的表达能力。
可选的,所述特征提取电路还包括批量归一化电路和/或池化处理电路。
其中,批量归一化电路与所述卷积运算电路连接,所述批量归一化电路用于对所述卷积运算电路所执行的一层或多层卷积运算的输出数据进行批量归一化处理。也就是说,特征提取电路中可以包括一个或多个批量归一化电路,任意一个批量归一化电路均可以设置于相邻的两层卷积运算之间,用于对前一层卷积运算的输出数据进行批量归一化处理,以使得后一层卷积运算的输入数据为前一层卷积运算中执行批量归一化处理后的输出数据。
其中,批量归一化处理是指保留神经网络模型在训练过程中的一小批数据的均值,并且在神经网络模型的推理阶段,将某一层卷积层的所有输出数据除以上述的均值。具体地,批量归一化电路则可以是预先存储第一阈值,并且将卷积运算电路中所输出的一层或多层卷积运算的输出数据除以上述的第一阈值,得到批量归一化处理后的数据;或者,批量归一化电路则可以是预先存储第二阈值,并且将卷积运算电路中所输出的一层或多层卷积运算的输出数据乘以上述的第二阈值,得到批量归一化处理后的数据,其中第二阈值可以为第一阈值的倒数。此外,批量归一化电路也可以是用于对一层或多层卷积运算中的权重参数进行更新,从而使得执行卷积运算后所得到的输出数据为执行批量归一化处理后的数据。例如,批量归一化电路可以将一层或多层卷积运算中的权重参数均除以阈值,得到更新后的权重参数,基于更新后的权重参数执行的卷积运算所输出的数据即为批量归一化处理后的数据。
本实施例中,通过对各层卷积运算的输出数据执行批量归一化处理,可以使得各层卷积运算的输出数据符合相同的分布方式,从而保证各层卷积运算的输出数据的稳定性,进而提高特征提取网络的泛化能力。
在特征提取电路中,池化处理电路与所述卷积运算电路连接,所述池化处理电路用于对所述卷积运算电路所执行的一层或多层卷积运算的输出数据进行池化处理。
其中,池化处理电路所执行的池化处理用于降低特征提取处理过程中特征的数据量,池化处理具体可以为均值池化处理和最大值池化处理中的一种或多种。
对于均值池化处理,具体是将卷积运算中所输出的特征数据均分成多个部分,每个部分包括一定数量的特征值,然后求取每个部分内的特征值的均值,从而得到多个部分中每个部分的特征均值,进而得到池化处理后的特征数据。例如,假设卷积运算输出的特征数据为100*100的特征图,均值池化处理可以是将该特征图划分为2500个部分,每个部分的大小为2*2,然后求取每个部分内的特征值的均值,从而得到2500个部分中每个部分的特征均值,进而得到池化处理后的特征数据,即50*50的特征图。在电路实现上,池化处理电路可以是将每个部分所包括的特征值与值全为1的向量进行卷积乘加操作,得到每个部分的均值,例如将2*2矩阵与[1,1,1,1]进行卷积乘加操作。
对于最大值池化处理,具体是将卷积运算中所输出的特征数据均分成多个部分,每个部分包括一定数量的特征值,然后求取每个部分内的特征值的最大值,从而得到多个部分中每个部分的特征均值,进而得到池化处理后的特征数据。例如,假设卷积运算输出的特征数据为100*100的特征图,均值池化处理可以是将该特征图划分为2500个部分,每个部分的大小为2*2,然后求取每个部分内的特征值的最大值,从而得到2500个部分中每个部分的特征均值,进而得到池化处理后的特征数据,即50*50的特征图。在电路实现上,池化处理电路可以是将每个部分所包括的特征值转换为1维向量,例如将2*2矩阵转换为1*4向量,然后通过比较器获取并输出1*4向量中的最大值,得到池化处理后的特征数据。
由于上文介绍了特征提取电路可以为模拟电路,以下将详细介绍在特征提取电路为模拟电路的情况下,残差结构电路以及激活函数电路的具体实现方式。
在一种可能的实现方式中,所述残差结构电路包括电容、设置于所述电容与所述残差结构电路的输入之间的输入开关以及设置于所述电容与所述残差结构电路的输出之间的输出开关。当所述输入开关闭合且所述输出开关断开时,所述电容用于存储输入信号;当所述输入开关断开且所述输出开关闭合时,所述电容用于输出所存储的信号。
可以参阅图9,图9为本申请实施例提供的一种残差结构电路的示意图。如图9所示,Vin表示输入电压,Sin表示输入开关,Sout表示输出开关,Sin与Sout之间连接有电容,Vout表示输出电压。在Sin闭合且Sout断开的情况下,Vin输入给电容充电且电容充电后的电压Vc为Vin;在Sin断开且Sout闭合的情况下,电容放电以输出电压,从而使得Vout为电容的电压Vc,即Vout=Vc=Vin。
在另一种可能的实现方式中,所述残差结构电路可以是由包括电容和晶体管的组合电路所构成。可以参阅图10,图10为本申请实施例提供的另一种残差结构电路的示意图。如图10所示,该残差结构电路包括电容C、开关Sin、开关Sout、开关S1、开关S2、电流晶体管NM1和源极跟随器晶体管NM2。Vin表示输入电压,Vout表示输出电压。
在准备模式下,开关S1和开关S2闭合,开关Sin和开关Sout断开,NM2上的栅源电压Vgs2被采样到电容C,因此电容C的电压Vc=Vgs2。
在输入模式下,开关Sin和开关Sout闭合,开关S1和开关S2断开。因为电容C的上极板处于高阻状态,因此电容C的上极板电压Vc_u随电容C的下极板电压变化。由于在输入模式下电容C与输入电压相连,所以Vc_u=Vin+Vc=Vin+Vgs2。
在输出模式下,开关Sout闭合,开关Sin、开关S1和开关S2断开,由于偏置电压Vbias恒定,NM1和NM2电流恒定,所以NM2的栅源电压保持不变,因此可以得到Vgs2=Vc_u-Vout,即Vout=Vc_u-Vgs2=Vin。
本实施例中,通过采用模拟电路来实现残差结构电路,避免了执行模数转换后将数据存入存储器中并且再经数模转换的方式输出数据的繁杂过程,节省了模数转换以及数模转换所需的功耗。也就是说,相较于采用数字电路所实现的残差结构电路,本实施例所提供的基于模拟电路来实现的残差结构电路能够有效地节省功耗。
在一种可能的实现方式中,所述激活函数电路可以是用于实现ReLU激活函数,所述激活函数电路具体包括选通器和比较器;所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,以及在所述输入信号小于所述零值信号时向所述选通器发送第二信号;所述选通器用于在接收到所述第一信号时输出所述输入信号,以及在接收到所述第二信号时输出所述零值信号。也就是说,在输入信号大于或等于零值信号时,激活函数电路的输出为输入信号;在输入信号小于零值信号时,激活函数电路的输出为零值信号。
可以参阅图11和图12,图11为本申请实施例提供的一种ReLU激活函数的示意图;
图12为本申请实施例提供的一种激活函数电路的示意图。如图11所示,对于ReLU激活函数,在输入数据大于或等于0时,ReLU激活函数的输出则为输入数据;在输入数据小于0时,ReLU激活函数的输出则为0。基于此,可以参阅图12,在用于实现ReLU激活函数的激活函数电路中,电压比较器用于比较输入数据与零电压之间的关系,并在输入数据大于或等于零电压时向选通器发送第一信号,以及在输入数据小于零电压时向选通器发送第二信号。这样一来,选通器则在获取到第一信号时,输出输入数据;以及在获取到第二信号时,输入零值电压,从而实现在ReLU激活函数。
在另一种可能的实现方式中,所述激活函数电路可以是用于实现Leaky ReLU激活函数,所述激活函数电路包括选通器、比较器以及与所述选通器连接的衰减电路。所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,以及在所述输入信号小于所述零值信号时向所述选通器发送第二信号;所述衰减电路用于对所述输入电路进行衰减处理,得到衰减后的输入信号;所述选通器用于在接收到所述第一信号时输出所述输入信号,以及在接收到所述第二信号时输出所述衰减后的输入信号。
也就是说,相较于用于实现ReLU激活函数的激活函数电路,用于实现Leaky ReLU激活函数的激活函数电路中还包括衰减电路,该衰减电路用于对输入数据进行衰减处理,以使得输出数据为衰减后的输入数据。
可以参阅图13和图14,图13为本申请实施例提供的一种Leaky ReLU激活函数的示意图;图14为本申请实施例提供的一种激活函数电路的示意图。如图13所示,对于LeakyReLU激活函数,在输入数据大于或等于0时,ReLU激活函数的输出则为衰减后的输入数据;在输入数据小于0时,ReLU激活函数的输出则为0。基于此,可以参阅图14,在用于实现ReLU激活函数的激活函数电路中,电压比较器用于比较输入数据与零电压之间的关系,并在输入数据大于或等于零电压时向选通器发送第一信号,以及在输入数据小于零电压时向选通器发送第二信号。这样一来,选通器则在获取到第一信号时,输出输入数据;以及在获取到第二信号时,输入零值电压,从而实现在ReLU激活函数。
此外,激活函数电路还可以用于实现Mish激活函数。具体地,可以参阅图15,图15为本申请实施例提供的一种Mish激活函数的示意图。如图15所示,Mish激活函数的表达式可以表示为:f(x)=x*tanh(ln(1+e^x));或者,Mish激活函数的表达式也可以表示为:f(x)=x*sigmode(x),其中,sigmode()表示S型函数。
为了便于理解,以下将结合自动驾驶领域的部分算法,对本申请实施例所提供的数据采集设备和数据处理装置进行介绍。
可以参阅图16,图16为本申请实施例提供的一种目标检测算法的流程示意图。如图16所示,目标检测算法共包括两个部分,分别为:特征提取部分和特征数据处理部分。其中,特征提取部分由骨干网络(Backbone)来完成,该骨干网络也可以称为特征提取网络。特征数据处理部分则由脖子(neck)网络和头部(Head)网络来完成。
在用于执行特征提取的骨干网络中,包括卷积运算、批量归一化、残差运算、激活函数处理以及池化处理。在脖子网络中,包括卷积运算、批量归一化、激活函数处理、上采样以及融合处理;在头部网络中,包括平均池化处理和softmax处理。
可以参阅图17,图17为本申请实施例提供的一种双目深度估计算法的流程示意图。如图17所示,双目深度估计算法共包括两个部分,分别为:特征提取部分和视觉估计部分,这两个部分分别可以基于不同的网络结构来实现。其中,特征提取部分包括池化处理、卷积运算、残差运算、批量归一化、激活函数处理以及n次卷积运算。视觉估计部分包括卷积运算、批量归一化、空洞卷积处理、长上下文上采样、遮挡图输出以及视觉残差图输出。
可以参阅图18,图18为本申请实施例提供的数据采集设备和数据处理装置的示意图。如图18所示,数据采集设备中包括传感器、特征提取电路和模数转换器,其中特征提取电路包括卷积运算电路、批量归一化电路、残差结构电路、激活函数电路、池化处理电路。数据处理装置中包括卷积运算单元、激活函数单元、Softmax单元、预测单元和分类单元。具体地,数据采集设备中的传感器将采集到的环境数据输入特征提取电路,由特征提取电路提取得到特征数据,然后模数转换器将特征数据转换为数字信号,并发送给数据处理装置。数据处理装置中经由卷积运算单元、激活函数单元、Softmax单元、预测单元和分类单元对特征数据进行处理,最终得到图像的分类结果。
本申请实施例还提供一种数据处理方法,所述方法应用于数据采集设备上,所述方法包括:通过神经网络模型对环境数据进行特征提取处理,以得到特征数据,其中,所述对环境数据进行特征提取处理是基于模拟电路实现的,所述特征数据为模拟信号;将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号;其中,所述数据处理装置部署于所述数据采集设备之外,且所述数据处理装置用于对所述数字信号进行处理,以得到数据处理结果。
在一种可能的实现方式中,所述数据处理装置具体用于基于数字电路对所述特征数据进行处理。
在一种可能的实现方式中,所述数据采集设备和所述数据处理装置分别部署于车辆中的不同位置。
在一种可能的实现方式中,所述数据采集设备为摄像头,且所述环境数据为图像数据;或,所述数据采集设备为激光雷达或毫米波雷达,且所述环境数据为点云数据。
在一种可能的实现方式中,所述特征数据用于供所述数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述对环境数据进行特征提取处理,包括:对所述环境数据执行多层卷积运算,以得到所述特征数据;其中,在对所述环境数据执行多层卷积运算的过程中,存储任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。
在一种可能的实现方式中,所述对环境数据进行特征提取处理,还包括:在对所述环境数据执行多层卷积运算的过程中,对一层或多层卷积运算的输出数据进行激活函数处理。
本申请实施例还提供一种数据处理方法,所述方法应用于数据处理装置上,所述方法包括:接收数据采集设备发送的特征数据,所述特征数据是所述数据采集设备中的模拟电路通过神经网络模型对环境数据进行特征提取后得到的,所述数据处理装置部署于所述数据采集设备之外;对所述特征数据进行处理,得到数据处理结果。
在一种可能的实现方式中,所述方法应用于执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
在一种可能的实现方式中,所述对所述特征数据进行处理,得到数据处理结果,包括:基于数字电路对所述特征数据进行处理,得到数据处理结果。
进一步地,本申请实施例中还提供一种包括计算机程序产品,当其在计算机上运行时,使得计算机执行如前述数据采集设备或数据处理装置所执行的步骤,或者,使得计算机执行如前述数据采集设备或数据处理装置所执行的步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于进行信号处理的程序,当其在计算机上运行时,使得计算机执行如前述数据采集设备或数据处理装置所执行的步骤,或者,使得计算机执行如前述数据采集设备或数据处理装置所执行的步骤。
本申请实施例还提供了一种芯片系统,包括处理器和接口电路,接口电路,用于接收指令并传输至处理器。其中,所述处理器用于实现上述任一方法实施例中的方法。
可选的,该芯片系统还包括存储器,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现上述任一方法实施例中的方法。
可选的,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
以上对本申请实施例进行了详细介绍,本申请实施例方法中的步骤可以根据实际需要进行顺序调度、合并或删减;本申请实施例装置中的模块可以根据实际需要进行划分、合并或删减。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
Claims (31)
1.一种数据采集设备,其特征在于,包括:特征提取电路和数据传输电路;
所述特征提取电路用于获取环境数据并基于神经网络模型对环境数据进行特征提取处理,以得到特征数据,所述特征提取电路为模拟电路,所述特征数据为模拟信号;
所述数据传输电路用于将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号;
其中,所述数据处理装置部署于所述数据采集设备之外,且所述数据处理装置用于对所述数字信号进行处理,以得到数据处理结果。
2.根据权利要求1所述的数据采集设备,其特征在于,所述数据处理装置具体用于基于数字电路对所述特征数据进行处理。
3.根据权利要求1或2所述的数据采集设备,其特征在于,所述数据采集设备和所述数据处理装置分别部署于车辆中的不同位置。
4.根据权利要求3所述的数据采集设备,其特征在于,所述数据采集设备为摄像头,且所述环境数据为图像数据;
或,所述数据采集设备为激光雷达或毫米波雷达,且所述环境数据为点云数据。
5.根据权利要求3或4所述的数据采集设备,其特征在于,所述特征数据用于供所述数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
6.根据权利要求1-5任意一项所述的数据采集设备,其特征在于,所述特征提取电路包括卷积运算电路、残差结构电路;
所述卷积运算电路用于对所述环境数据执行多层卷积运算,以得到所述特征数据;
所述残差结构电路与所述卷积运算电路连接,所述残差结构电路用于存储所述卷积运算电路所执行的任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。
7.根据权利要求6所述的数据采集设备,其特征在于,所述残差结构电路包括电容、输入开关以及输出开关;
当所述输入开关闭合且所述输出开关断开时,所述电容用于存储输入信号;
或者,当所述输入开关断开且所述输出开关闭合时,所述电容用于输出所存储的信号。
8.根据权利要求6或7所述的数据采集设备,其特征在于,所述特征提取电路还包括激活函数电路;
所述激活函数电路与所述卷积运算电路连接,所述激活函数电路用于对所述卷积运算电路所执行的一层或多层卷积运算的输出数据进行激活函数处理。
9.根据权利要求8所述的数据采集设备,其特征在于,所述激活函数电路包括选通器和比较器;
所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,或者在所述输入信号小于所述零值信号时向所述选通器发送第二信号;
所述选通器用于在接收到所述第一信号时输出所述输入信号,或者在接收到所述第二信号时输出所述零值信号。
10.根据权利要求8所述的数据采集设备,其特征在于,所述激活函数电路包括选通器、比较器以及与所述选通器连接的衰减电路;
所述比较器用于比较所述激活函数电路的输入信号与零值信号,并在所述输入信号大于或等于所述零值信号时向所述选通器发送第一信号,或者在所述输入信号小于所述零值信号时向所述选通器发送第二信号;
所述衰减电路用于对所述输入电路进行衰减处理,得到衰减后的输入信号;
所述选通器用于在接收到所述第一信号时输出所述输入信号,或者在接收到所述第二信号时输出所述衰减后的输入信号。
11.根据权利要求1-10任意一项所述的数据采集设备,其特征在于,所述数据采集设备还包括传感器,所述传感器用于采集所述环境数据。
12.一种数据处理装置,其特征在于,包括:
数据接收电路,用于接收数据采集设备发送的特征数据,所述特征数据是所述数据采集设备中的模拟电路通过神经网络模型对环境数据进行特征提取后得到的,所述数据处理装置部署于所述数据采集设备之外;
数据处理电路,用于对所述特征数据进行处理,得到数据处理结果。
13.根据权利要求12所述的数据处理装置,其特征在于,所述数据处理电路用于基于所述特征数据执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
14.根据权利要求12或13所述的数据处理装置,其特征在于,所述数据处理电路为数字电路。
15.一种数据处理方法,其特征在于,所述方法应用于数据采集设备上,所述方法包括:
通过神经网络模型对环境数据进行特征提取处理,以得到特征数据,其中,所述对环境数据进行特征提取处理是基于模拟电路实现的,所述特征数据为模拟信号;
将所述特征数据转换为数字信号,并向数据处理装置发送所述数字信号;
其中,所述数据处理装置部署于所述数据采集设备之外,且所述数据处理装置用于对所述数字信号进行处理,以得到数据处理结果。
16.根据权利要求15所述的方法,其特征在于,所述数据处理装置具体用于基于数字电路对所述特征数据进行处理。
17.根据权利要求15或16所述的方法,其特征在于,所述数据采集设备和所述数据处理装置分别部署于车辆中的不同位置。
18.根据权利要求17所述的方法,其特征在于,所述数据采集设备为摄像头,且所述环境数据为图像数据;
或,所述数据采集设备为激光雷达或毫米波雷达,且所述环境数据为点云数据。
19.根据权利要求所述17或18的方法,其特征在于,所述特征数据用于供所述数据处理装置执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
20.根据权利要求15-19任意一项所述的方法,其特征在于,所述对环境数据进行特征提取处理,包括:
对所述环境数据执行多层卷积运算,以得到所述特征数据;
其中,在对所述环境数据执行多层卷积运算的过程中,存储任意一层卷积运算的输出数据,以使得所述输出数据与目标层卷积运算的输出数据相加,得到所述目标层卷积运算的下一层卷积运算的输入数据。
21.根据权利要求20所述的方法,其特征在于,所述对环境数据进行特征提取处理,还包括:
在对所述环境数据执行多层卷积运算的过程中,对一层或多层卷积运算的输出数据进行激活函数处理。
22.一种数据处理方法,其特征在于,所述方法应用于数据处理装置上,所述方法包括:
接收数据采集设备发送的特征数据,所述特征数据是所述数据采集设备中的模拟电路通过神经网络模型对环境数据进行特征提取后得到的,所述数据处理装置部署于所述数据采集设备之外;
对所述特征数据进行处理,得到数据处理结果。
23.根据权利要求22所述的方法,其特征在于,所述方法应用于执行以下任务中的一种或多种:图像分类、目标检测、目标识别、语义分割和深度估计。
24.根据权利要求22或23所述的方法,其特征在于,所述对所述特征数据进行处理,得到数据处理结果,包括:
基于数字电路对所述特征数据进行处理,得到数据处理结果。
25.一种数据处理装置,其特征在于,包括存储器和处理器;所述存储器存储有代码,所述处理器被配置为执行所述代码,当所述代码被执行时,所述数据处理装置执行如权利要求15至24任意一项所述的方法。
26.一种车辆,其特征在于,包括如权利要求1-11任意一项所述的数据采集设备。
27.根据权利要求26所述的车辆,其特征在于,所述车辆还包括如权利要求12-14任意一项所述的数据处理装置。
28.一种视频监控系统,其特征在于,包括如权利要求1-11任意一项所述的数据采集设备和如权利要求12-14任意一项所述的数据处理装置。
29.根据权利要求28所述的视频监控系统,所述数据处理装置部署于云端的服务器中。
30.一种计算机存储介质,其特征在于,所述计算机存储介质存储有指令,所述指令在由计算机执行时使得所述计算机实施权利要求15至24任意一项所述的方法。
31.一种计算机程序产品,其特征在于,所述计算机程序产品存储有指令,所述指令在由计算机执行时使得所述计算机实施权利要求15至24任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111487751.7A CN116257771A (zh) | 2021-12-07 | 2021-12-07 | 一种数据采集设备、数据处理装置及相关方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111487751.7A CN116257771A (zh) | 2021-12-07 | 2021-12-07 | 一种数据采集设备、数据处理装置及相关方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116257771A true CN116257771A (zh) | 2023-06-13 |
Family
ID=86679750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111487751.7A Pending CN116257771A (zh) | 2021-12-07 | 2021-12-07 | 一种数据采集设备、数据处理装置及相关方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116257771A (zh) |
-
2021
- 2021-12-07 CN CN202111487751.7A patent/CN116257771A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109901574B (zh) | 自动驾驶方法及装置 | |
WO2021160184A1 (en) | Target detection method, training method, electronic device, and computer-readable medium | |
US11966838B2 (en) | Behavior-guided path planning in autonomous machine applications | |
CN110543814B (zh) | 一种交通灯的识别方法及装置 | |
CN110371132B (zh) | 驾驶员接管评估方法及装置 | |
CN110930323B (zh) | 图像去反光的方法、装置 | |
CN113792566B (zh) | 一种激光点云的处理方法及相关设备 | |
CN110532846B (zh) | 自动换道方法、装置及存储介质 | |
CN113835421B (zh) | 训练驾驶行为决策模型的方法及装置 | |
WO2023131065A1 (zh) | 一种图像处理方法、一种车道线检测方法及相关设备 | |
CN113498529B (zh) | 一种目标跟踪方法及其装置 | |
CN112543877B (zh) | 定位方法和定位装置 | |
WO2022142839A1 (zh) | 一种图像处理方法、装置以及智能汽车 | |
WO2022017307A1 (zh) | 自动驾驶场景生成方法、装置及系统 | |
US20230048680A1 (en) | Method and apparatus for passing through barrier gate crossbar by vehicle | |
CN113552867B (zh) | 一种运动轨迹的规划方法及轮式移动设备 | |
CN112810603B (zh) | 定位方法和相关产品 | |
CN115546781A (zh) | 一种点云数据的聚类方法以及装置 | |
CN116261649A (zh) | 一种车辆行驶意图预测方法、装置、终端及存储介质 | |
CN112584079A (zh) | 视频通话人脸呈现方法、视频通话装置及汽车 | |
CN116257771A (zh) | 一种数据采集设备、数据处理装置及相关方法 | |
CN115508841A (zh) | 一种路沿检测的方法和装置 | |
CN114549610A (zh) | 一种点云数据的处理方法及相关装置 | |
WO2021159397A1 (zh) | 车辆可行驶区域的检测方法以及检测装置 | |
CN115131509A (zh) | 处理点云数据的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |