掌桥专利:专业的专利平台
掌桥专利
首页

基于机器视觉的图像处理方法和设备

文献发布时间:2023-06-19 09:29:07


基于机器视觉的图像处理方法和设备

技术领域

本公开实施例涉及智能控制和感知技术领域,尤其涉及一种基于机器视觉的图像处理方法和设备。

背景技术

目标检测算法是自动驾驶、智能无人机的关键技术之一,它可以检测、识别出视觉图像中感兴趣物体的位置、类别和置信度,为后续智能功能提供必需的观测信息。

相关技术中,目标检测算法针对所有场景通常只使用一个通用模型,例如经过训练的神经网络模型或者基于特征点识别的感知算法模型。为了保证在不同场景都有高可靠性的识别结果,当使用神经网络模型时,需要学习较多不同场景的数据。可以在不同场景下能够获得高性能检测结果,模型设计往往较为复杂,会大大增加计算量。

发明内容

本公开提供一种基于机器视觉的图像处理方法和设备,提升了图像处理效率。

第一方面,本公开提供一种基于机器视觉的图像处理方法,应用于搭载图像获取装置的可移动平台,所述方法包括:

获取环境图像;

使用预加载的环境检测模型,根据所述环境图像确定当前场景;

加载与所述当前场景匹配的场景检测模型;

基于所述场景检测模型处理环境图像。

第二方面,本公开提供一种车辆,所述车辆搭载有摄像装置,存储器,以及处理器,所述存储器用于存储指令,所述指令被处理器执行以实现第一方面中任一项所述的方法。

第三方面,本公开提供一种无人机,所述无人机搭载有摄像装置,存储器,以及处理器,所述存储器用于存储指令,所述指令被处理器执行以实现第一方面中任一项所述的方法。

第四方面,本公开提供一种电子设备,与摄像装置可通信连接,所述电子设备包含存储器,以及处理器,所述存储器用于存储指令,所述指令被处理器执行以实现第一方面中任一项所述的方法。

第五方面,本公开提供一种手持云台,所述手持云台包括:摄像装置,存储器,以及处理器,所述存储器用于存储指令,所述指令被处理器执行以实现第一方面中任一项所述的方法。

第六方面,本公开提供一种移动终端,所述移动终端包括:摄像装置,存储器,以及处理器,所述存储器用于存储指令,所述指令被处理器执行以实现第一方面中任一项所述的方法。

本公开提供一种基于机器视觉的图像处理方法和设备,获取环境图像;使用预加载的环境检测模型,根据所述环境图像确定当前场景;加载与所述当前场景匹配的场景检测模型;基于所述场景检测模型处理环境图像,在算力受到约束的情况下,选择当前场景对应的轻量化的场景检测模型,提高了图像处理的效率和不同场景下各自的性能。

附图说明

为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本公开一实施例提供的无人机示意图;

图2为本公开一实施例提供的手持云台示意图;

图3为本公开一实施例提供的一种应用示意图;

图4是本公开提供的基于机器视觉的图像处理方法一实施例的流程示意图;

图5为本公开一实施例提供的场景示意图;

图6为本公开另一实施例提供的场景示意图;

图7为本公开一实施例的网络模型对比示意图;

图8是本公开提供的图像处理方法另一实施例的流程示意图;

图9为本公开图像处理方法又一实施例的流程示意图;

图10为本公开一实施例提供的车辆的结构示意图;

图11为本公开一实施例提供的无人机的结构示意图;

图12为本公开一实施例提供的电子设备的结构示意图;

图13为本公开一实施例提供的手持云台的结构示意图;

图14为本公开一实施例提供的移动终端的结构示意图;

图15是本说明书实施例披露的内存加载情况示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。

首先对本公开所涉及的应用场景进行介绍:

本公开实施例提供的基于机器视觉的图像处理方法,应用于自动驾驶、智能无人机等场景中,可以检测、识别出图像中感兴趣物体的位置、类别和在该类别中的置信度,为后续其他功能提供必需的观测信息。

在一个可选的实施例中,该方法可以由无人机10执行,如图1所示,该无人机10可以搭载有摄像装置1,例如可以由该无人机的处理器执行相应的软件代码实现,也可由该无人机在执行相应的软件代码的同时,通过和服务器进行数据交互来实现,如服务器执行部分操作,来控制无人机执行该图像处理方法。

在一个可选的实施例中,该方法可以由手持云台执行,如图2所示,该手持云台20可以包括有摄像装置2,例如可以由该手持云台的处理器执行相应的软件代码实现,也可由该无人机在执行相应的软件代码的同时,通过和服务器进行数据交互来实现,如服务器执行部分操作,来控制无人机执行该图像处理方法。

其中,摄像装置用于获取环境图像,例如该无人机或手持云台周边的环境图像。

在一个可选的实施例中,该方法可以由移动终端等电子设备执行,如图3所示,该电子设备可以设置在车辆或无人机上;或者可以由与该电子设备通信的车载控制设备执行。上述车辆可以是自动驾驶车辆或普通车辆。例如可由电子设备如该电子设备的处理器执行相应的软件代码实现,也可由该电子设备在执行相应的软件代码的同时,通过和服务器进行数据交互来实现,如服务器执行部分操作,来控制电子设备执行该图像处理方法。

在消费级电子市场,电子设备会因为搭载的处理器型号不同面临着算力和带宽瓶颈。

下面以具体的实施例对本公开的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图4是本公开提供的基于机器视觉的图像处理方法一实施例的流程示意图。如图4所示,本实施例提供的方法,应用于搭载图像获取装置的可移动平台,该方法包括:

步骤101、获取环境图像。

在一个可选的实施例中,环境图像可以是采用图像获取装置采集到的图像信息。图像获取装置通常搭载于可移动体上,可移动体可以是车辆、无人机、地面移动机器人等。图像获取装置可以是单目摄像装置、双目摄像装置、多目摄像装置、鱼眼镜头、复眼镜头等等。摄像装置获取到可移动体周边的环境图像信息,例如可移动体前方、后方或者侧方的图像信息。在可选的实施例中,摄像装置还可以获得可移动体周边的宽幅信息或者全景信息;可以获得多个图像、图像的局部、图像局部或者图像的组合。获取的环境图像可以是图像传感器输出的原始图像,也可以是经过图像处理但是保留原始图像亮度信息的图像,例如保留有RGB格式或者HSV格式的图像。上述环境图像可以是通过图像获取装置采集车辆行驶过程中,或无人机飞行过程中的环境图像信息。

可移动平台例如指无人机、车辆、电子设备等平台。

步骤102、使用预加载的环境检测模型,根据环境图像确定当前场景。

在一个可选的实施例中,确定当前场景信息包括根据前述步骤101获取的环境图像来提取可移动体所处的可能场景。

该步骤可以根据一个判断函数来实现,例如读取步骤101中获得的环境图像的RGB或HSV分布信息,根据分布判断当前的场景。

该步骤也可以是一个统计比较的过程,例如,读取HSV中的直方图信息,然后基于直方图信息判断场景。

该步骤也可以通过环境检测模型,该环境检测模型可以基于神经网络实现,构建一个神经网络,根据输入的环境图像输出当前的场景。

在一个可选的实施例中,场景可以包括不同时间场景,例如白天、黑夜;不同天气场景,例如晴天、雨天、雾天、雪天等;不同路况场景等,例如,高速公路、城市道路、乡村道路等。

在一个可选的实施例中,当前场景可以包括按照图像亮度划分的至少两个场景。

在一个可选的实施例中,按照图像亮度划分的当前场景可以包括高亮度场景和低亮度场景。

在一个可选的实施例中,按照图像亮度划分的当前场景可以包括高亮度场景、中亮度场景和低亮度场景。

在一个可选的实施例中,当前场景可以包括根据图像能见度划分的至少两个场景。

在一个可选的实施例中,根据图像能见度划分的当前场景可以包括高可见度场景和低可见度场景。

在一个可选的实施例中,根据图像能见度划分的当前场景可以包括包括高可见度场景、中可见度场景和低可见度场景。

在一个可选的实施例中,根据图像能见度划分的至少两个场景可以包括雾霾场景、沙尘场景、雪天场景、雨天场景等。

在一个可选的实施例中,当前场景可以包括根据图像纹理信息划分的至少两个场景。

在一个可选的实施例中,根据图像纹理信息划分的场景包括天气信息。在一个可选的实施例中,该天气信息包括雨、雪、雾、扬沙等天气信息。

以神经网络为例,用于场景识别的网络只需要输出少量分类结果,想达到准确的输出结果,网络层也不会需要太多的参数。即,用于该步骤判断的神经网络只需要耗费少量的系统算力,模型加载也只需要耗费很小的系统带宽。

在一个可选的实施例中,在确定当前场景之前可以预加载环境检测模型,使用时无需进行加载操作,可以提高处理效率。

在一个可选的实施例中,预加载的环境检测模型在环境图像获取过程中始终处于加载状态。

为了保证处理效率,在环境图像获取过程中预加载的环境检测模型始终处于加载状态,随时可以利用该环境检测模型确定当前场景。

步骤103、加载与当前场景匹配的场景检测模型。

在一个可选的实施例中,该步骤基于步骤102中确定出的当前场景,加载与当前场景匹配的场景检测模型。

该场景检测模型可以基于CNN、VGG、GoogleNet等神经网络模型建立,并基于不同场景的训练数据进行训练得到不同场景匹配的场景检测模型。

场景可以包括不同时间场景,例如白天、黑夜;不同天气场景,例如晴天、雨天、雾天、雪天等;不同路况场景等,例如,高速公路、城市道路、乡村道路等。

例如图5、图6中车辆所处的场景,分别是晴天场景和阴天场景,或高亮度场景和低亮度场景。

每个场景对应的场景检测模型可以不需要太多的参数,只需要耗费少量的系统算力,多个场景对应的小的场景检测模型代替一个大的通用的检测模型,在算力有限的情况下,使设备可以正常工作。

例如设备的算力是500M,如果实现图像处理功能需要加载一个2.7G的网络模型(例如图7左边的a部分),这显然是无法做到的。而本公开实施例的方案中,通过将大的网络模型拆分成了若干个小于500M的小的网络模型(即场景检测模型,例如图7右边的b部分),使得在设备算力有限的情况下,使设备可以正常工作。

在一个可选的实施例中,场景检测模型还可以基于其他网络模型建立,本公开对此并不限定。

在一个可选的实施例中,与当前场景匹配的场景检测模型,随当前场景的变化而被切换加载。

在一个可选的实施例中,与当前场景匹配的场景检测模型不因切换加载而退出内存。

具体的,基于当前场景加载与当前场景匹配的场景检测模型,若当前场景发生变化,则切换加载与变化后的场景匹配的场景检测模型。

进一步,在切换加载的过程中,场景检测模型可以不退出内存,为了下次使用,可提高加载速度。

在一个可选的实施例中,预加载的环境检测模型与场景检测模型处于不同线程中。

具体的,预加载的环境检测模型与场景检测模型,可以处于不同线程中,例如在利用前一次确定的场景匹配的场景检测模型处理环境图像的同时,还可以利用环境检测模型确定当前场景,此时的场景可能发生变化,与该场景检测模型不匹配。在利用该场景检测模型处理完环境图像后,可以切换加载与变化后的场景匹配的场景检测模型处理环境图像。

在一个可选的实施例中,预加载的环境检测模型通过回调函数进行线程间通信。

例如可以通过回调函数将环境检测模型确定的当前场景的信息通知给场景检测模型,或者基于回调函数获取图像获取装置得到的环境图像。

步骤104、基于场景检测模型处理环境图像。

在一个可选的实施例中,基于识别出的当前场景对应的场景检测模型处理环境图像,例如识别该环境图像中目标物体的位置、该目标物体所属的类别以及在该类别中的置信度等。

在一个可选的实施例中,基于场景检测模型处理环境图像包括:获取环境图像中的物体信息。

在一个可选的实施例中,物体信息包括:环境图像中目标物体的位置信息、所述目标物体的类别信息和所述目标物体在对应类别中的置信度。

在一个可选的实施例中采用非极大值抑制方法对物体信息进行过滤,获取目标检测结果。

具体的,场景检测模型输出的物体信息中包括的目标物体的信息数量非常多,其中会有很多重复的信息,例如位置信息有很多,其中有些内容有重叠。可以采用非极大值抑制等方法对物体信息进行过滤,得到最终的目标检测结果。

即最终可以获得图像上感兴趣物体的位置、类别和置信度。该输出可以作为外界的观测信息提供给下游模块,比如状态估计、导航控制等,用于完成更加复杂的自动驾驶功能。

在一个可选的实施例中,将环境图像的信息输入到加载的当前场景对应的场景检测模型中,经过场景检测模型的若干个网络层输出目标检测结果,例如包括:目标物体的位置、所属的类别以及在该类别中的置信度等信息。其中,目标物体例如可以是动态目标和/或静态目标,动态目标例如可以包括行驶的车辆、无人机等,静态目标例如可以包括周边的数目、道路指示牌、电线杆等等。

示例性的,如图5所示,车辆加载的图像获取装置获取车辆周边的环境图像,车辆使用预加载的环境检测模型,根据环境图像确定当前场景,例如确定出当前场景为高亮度场景,加载该高亮度场景对应的场景检测模型,并基于该场景检测模型处理图像获取装置获取的环境图像。

示例性的,如图6所示,车辆加载的图像获取装置获取车辆周边的环境图像,车辆使用预加载的环境检测模型,根据环境图像确定当前场景,例如确定出当前场景为低亮度场景,加载该低亮度场景对应的场景检测模型,并基于该场景检测模型处理图像获取装置获取的环境图像。

本实施例的方法,获取环境图像;使用预加载的环境检测模型,根据所述环境图像确认确定当前的场景;加载与所述当前场景匹配的场景检测模型;基于场景检测模型处理环境图像,在算力受到约束的情况下,选择当前场景对应的轻量化的场景检测模型,提高了图像处理的效率和不同场景下各自的性能。

在上述实施例的基础上,进一步的,在对环境图像进行处理或基于环境图像确定场景之前,还可以对所述环境图像进行压缩处理。

具体的,获取到的环境图像一般为彩色RGB图像信息,图像分辨率一般较大,例如为1280×720,在对环境图像进行处理时,可以对该环境图像进行压缩处理,例如将分辨率压缩到640×360,在算力约束时可以提高处理效率。

在一个可选的实施例中,预加载的环境检测模型用于提取环境图像中的亮度信息,确定当前场景。

例如可以获取到环境图像的RGB或HSV信息,从而提取环境图像中的亮度信息,进而确定当前场景,例如按照图像亮度划分的高亮度场景、中亮度场景和低亮度场景等。例如根据图像能见度划分的高可见度场景、中可见度场景和低可见度场景等。

在一个可选的实施例中,预加载的环境检测模型用于提取环境图像中的亮度信息和图像,确定当前场景。

进一步的,上述预加裁的环境检测模型除了可以提取环境图像的亮度信息,还可以提取图像,结合图像和亮度信息,确定当前场景。

进一步的,步骤102的一种可能的实现方式如下:

获取所述环境图像中的分布信息,利用所述分布信息确定当前场景。

在一个可选的实施例中,读取步骤101中获得的环境图像的RGB或HSV分布信息,根据分布信息判断当前场景。

对于RGB分布信息来说,在一个可选的实施例中,获取到环境图像中的RGB分布信息后,可以将环境图像中像素点的R、G、B三个通道的信息分别求平均得到各个通道对应的平均像素值,或者,获取亮度值大于预设亮度值的像素的占比等,从而确定当前场景,例如亮度值大于预设亮度值的像素的占比大于一定值可以确定为高亮度场景,例如白天场景。

对于HSV分布信息来说,HSV是一种将RGB色彩空间中的点在倒圆锥体中的表示方法。HSV即色相(Hue)、饱和度(Saturation)、亮度(Value),色相即颜色的基本属性,即平常所说的颜色名称,如红色、黄色等;饱和度指色彩的纯度,越高则色彩越纯,低则逐渐变灰,取0-100%的数值;亮度指色彩的明亮程度,取0-100%。

在一个可选的实施例中,获取到环境图像信息中的HSV分布信息后,可以将环境图像中像素点的H、S、V三个通道的信息分别求平均得到各个通道对应的平均像素值,或者,获取亮度值大于预设亮度值的像素的占比,或者,获取红黄光占比,从而确定出当前场景。

进一步的,步骤102的另一种可能的实现方式如下:

统计所述环境图像中的直方图信息,利用所述直方图信息确定当前场景。

在一个可选的实施例中,读取步骤101中获得的环境图像的RGB或HSV直方图信息,根据RGB或HSV直方图判断当前场景。

在一个可选的实施例中,对于RGB直方图信息来说,在一个可选的实施例中,获取到环境图像后,对环境图像中像素点的R、G、B三个通道进行统计得到直方图信息,从而根据R、G、B三个通道的直方图信息确定当前场景。

在一个可选的实施例中,对于HSV直方图信息来说,在一个可选的实施例中,获取到环境图像后,对环境图像中像素点的H、S、V三个通道进行统计得到直方图信息,从而根据H、S、V三个通道的直方图信息确定当前场景。

进一步的,还可以根据前述步骤得到的分布信息或直方图信息,利用预先训练得到的环境检测模型,确定当前场景。

在一个可选的实施例中,还可以将前述得到的分布信息或直方图信息输入到预先训练得到的环境检测模型,输出当前场景的信息,从而确定出当前场景。

进一步的,步骤102的另一种可能的实现方式如下:

根据所述环境图像,利用预先训练得到的环境检测模型,确定当前场景。

在一个可选的实施例中,可以直接将环境图像输入到环境检测模型中,输出对应的当前场景的信息。

其中,该环境检测模型可以基于CNN等神经网络模型建立,并基于训练数据进行训练,得到该环境检测模型的较佳参数。

该环境检测模型可以只输出少量分类结果,想达到准确的输出结果,网络层也不会需要太多的参数。即,用于该步骤判断的神经网络只需要耗费少量的系统算力,模型加载也只需要耗费很小的系统带宽。

在本公开的其他实施例中,环境检测模型还可以基于其他网络模型建立,本公开实施例对此并不限定。

进一步的,步骤102的另一种可能的实现方式如下:

获取所述环境图像中的路标信息;

根据所述路标信息确定所述当前场景。

具体的,获取环境图像中的路标信息,根据路标信息确定当前场景,例如为城市道路场景、高速路场景等。例如可以通过识别算法获取环境图像信息中的路标信息。

在上述实施例的基础上,进一步的,步骤104具体可以采用如下方式实现:

若确定出的当前场景包括多个场景,例如白天场景、雪天场景、高速公路场景(例如依据一个环境图像可以同时确定出多个场景,例如既是白天场景也是雪天场景也是高速公路场景),则可以依次加载上述多个场景对应的场景检测模型,基于多个场景对应的场景检测模型处理环境图像。

在一个可选的实施例中,假设,首先,加载白天场景匹配的场景检测模型,基于白天场景匹配的场景检测模型处理该环境图像,获取第一检测结果;进一步,加载雪天场景匹配的场景检测模型,将该第一检测结果和环境图像的信息输入雪天场景匹配的场景检测模型,基于该雪天场景匹配的场景检测模型处理该第一检测结果和环境图像的信息,第一检测结果可以作为先验信息,使得获取到的第二检测结果更为准确;进一步,加载高速公路场景匹配的场景检测模型,将该第一检测出结果、第二检测结果和环境图像的信息输入高速公路场景匹配的场景检测模型,基于该高速公路场景匹配的场景检测模型处理该第一检测结果、第二检测结果和环境图像的信息,第一检测结果和第二检测结果可以作为先验信息,使得获取到的第三检测结果更为准确,最终根据第三检测结果获取目标检测结果,或者根据第一检测结果、第二检测结果和第三检测结果获取目标检测结果。

在一个可选的实施例中,获取目标检测结果具体可以通过如下方式实现:

采用非极大值抑制方法对所述第三检测结果(或第一检测结果、第二检测结果和第三检测结果中的至少一项)进行过滤,获取所述目标检测结果;所述目标检测结果包括以下至少一项:所述环境图像信息中目标物体的位置信息、所述目标物体的类别信息和所述目标物体在对应类别中的置信度。

具体的,场景检测模型输出的检测结果中包括的目标物体的信息数量非常多,其中会有很多重复的信息,例如位置信息有很多,其中有些内容有重叠。可以采用非极大值抑制等方法对检测结果进行过滤,得到最终的目标检测结果。

即最终可以获得图像上感兴趣物体的位置、类别和置信度。该输出可以作为外界的观测信息提供给下游模块,比如状态估计、导航控制等,用于完成更加复杂的自动驾驶功能。

在上述实施例的基础上,进一步的,步骤103之前还可以进行如下操作:

获取与所述当前场景匹配的场景检测模型对应的训练数据;所述训练数据包括不同场景中包括目标物体的位置信息和类别信息的环境图像数据;

通过所述训练数据训练所述场景检测模型。

具体的,不同场景对应的场景检测模型都需要通过预先训练得到该场景检测模型的较优参数。

为了得到针对白天环境、夜晚环境等不同场景有着更好性能的场景检测模型,需要针对白天数据、夜晚数据等不同场景对应的训练数据分别训练模型。具体地,预先针对白天、夜晚等不同场景分别采集一批训练数据,每个训练数据包含环境图像和该环境图像上感兴趣物体的位置和类别标注,然后基于不同场景对应的训练数据分别设计模型并训练,从而得到不同场景下较优的场景检测模型。

上述具体实施方式中,在模型训练过程中,针对每一个场景使用相应的训练集训练场景检测模型。在实际使用过程中,首先根据环境图像判断环境对应的当前场景,然后再加载当前场景对应的场景检测模型来进行目标检测,从而提升检测性能,而且在算力受到约束的情况下,提高检测效率。

图8是本公开提供的目标检测方法另一实施例的流程示意图。如图8所示,本实施例提供的方法,包括:

步骤201、获取环境图像。

环境图像可以是图像获取装置采集到的图像信息,例如车辆周边的环境图像,环境图像可以包括多个图像,例如包括触发加载对应场景检测模型的图像、或用于确定当前场景的图像。

步骤202、提取环境图像中的特征信息。

进一步,在步骤202之前,还可以对环境图像进行压缩处理。

步骤203、根据环境图像中的特征信息,确定当前场景。

具体的,针对该环境图像信息可以判断当前场景,例如不同时间场景,例如白天场景或夜晚场景。

获取到的环境图像一般为彩色RGB图像信息,图像分辨率一般较大,例如为1280×720,在对环境图像信息进行处理时,可以对该环境图像信息进行压缩处理,例如将分辨率压缩到640×360,可以在算力约束时提高处理效率。

在一个可选的实施例中,通过环境图像中提取出的特征信息,利用环境检测模型可以确定出当前场景,例如为白天场景或夜晚场景。

其中,特征信息包括以下至少一项:平均像素值、高亮度值占比、红黄光占比、色调饱和度明度HSV三通道统计直方图。

以下介绍提取特征信息的过程:

彩色图像可以由R、G、B三个通道堆叠而成,可分别提取每个通道的直方图。其中,平均像素值可以是将三个通道分别求平均。高亮度值占比指的是亮度值大于预设高亮值的像素的占比。

HSV是一种将RGB色彩空间中的点在倒圆锥体中的表示方法。HSV即色相(Hue)、饱和度(Saturation)、亮度(Value),色相即颜色的基本属性,即平常所说的颜色名称,如红色、黄色等;饱和度指色彩的纯度,越高则色彩越纯,低则逐渐变灰,取0-100%的数值;亮度指色彩的明亮程度,取0-100%。

HSV颜色空间特征的提取方法和RGB类似,关键一点就是要将原图像转化为HSV颜色空间的图像,之后再对三个通道分别进行直方图绘制操作即可。

转化为HSV颜色空间的图像信息之后还可以获取到红黄光占比。

其中,HSV三通道统计直方图的特征信息的数目可以为3×20=60,在一实施例中可以将上述4个特征拼接在一起组成长度为63的特征信息。

进一步,可以采用预先训练得到的环境检测模型,将提取的特征信息输入到环境检测模型中,输出对应的当前场景的信息;

在本公开的其他实施例中,还可以直接将环境图像输入到环境检测模型中,输出对应的当前场景的信息。

进一步的,对于不同的白天、夜晚等时间场景或雪天、雾天、雨天、晴天等天气场景等,步骤203具体可以采用如下方式实现:

根据环境图像中的特征信息,确定当前场景所处的环境光强。

根据当前场景所处的环境光强,确定当前场景。

在一个可选的实施例中,可以采用预先训练得到的环境检测模型,将提取的特征信息输入到环境检测模型中,输出当前场景所处的环境光强,根据该环境光强,确定当前场景,由于不同的时间场景,例如白天场景和夜晚场景的环境光强不同,因此可以根据环境光强确定当前场景。

在本公开的一实施例中,预先还可以对环境检测模型进行训练,具体可以通过如下方式实现:

获取训练数据;所述训练数据包括多个环境图像的特征信息以及各个环境图像对应的场景信息,或,多个环境图像以及各个环境图像对应的场景信息;

通过所述训练数据对预先建立的环境检测模型进行训练,得到训练后的环境检测模型。

具体的,环境检测模型可以通过深度学习算法,例如卷积神经网络CNN模型、VGG模型、GoogleNet模型等建立,为了得到针对白天场景、夜晚场景等不同场景有着更好识别性能的环境检测模型,需要针对白天场景、夜晚场景等不同场景对应的训练数据训练该环境检测模型,以得到该环境检测模型的较优的参数。

步骤204、加载与当前场景匹配的场景检测模型。

具体的,该步骤基于步骤203中确定出的当前场景,在设备的内存中加载对应的场景检测模型。

步骤205、基于场景检测模型处理环境图像,获取第一检测结果。

具体的,基于该当前场景对应的场景检测模型处理环境图像,例如识别该环境图像中目标物体的位置、该目标物体所属的类别以及在该类别中的置信度等。

其中,场景检测模型可以是预先训练得到的机器学习模型,例如卷积神经网络模型等。在模型训练过程中针对每一个场景使用相应的训练数据集训练场景检测模型。在检测时,将环境图像的信息输入当前场景对应的场景检测模型,经过若干个卷积层、池化层等处理,输出第一检测结果。

步骤206、采用非极大值抑制方法对第一检测结果进行过滤,获取目标检测结果;目标检测结果包括以下至少一项:环境图像中目标物体的位置信息、目标物体的类别信息和目标物体在对应类别中的置信度。

具体的,场景检测模型输出的检测结果中包括的目标物体的信息数量非常多,其中会有很多重复的信息,例如位置信息有很多,其中有些内容有重叠。可以采用非极大值抑制等方法对检测结果进行过滤,得到最终的目标检测结果。

即最终可以获得图像上感兴趣物体的位置、类别和置信度。该输出可以作为外界的观测信息提供给下游模块,比如状态估计、导航控制等,用于完成更加复杂的自动驾驶功能。

进一步的,在本公开的一实施例中,如图5所示,若所述当前场景包括第一场景和第二场景,步骤205可以通过如下方式实现:

步骤2051、基于第一场景匹配的场景检测模型处理环境图像,获取第一检测结果;

步骤2052、基于第二场景匹配的场景检测模型处理第一检测结果,获取第二检测结果;

步骤2053、根据第二检测结果,获取目标检测结果。

具体的,基于环境图像可以确定出所处的场景,例如当前场景包括不同的白天、夜晚等时间场景,或雪天、雾天、雨天、晴天等天气场景,或高速路、乡村路、城市路等路况场景。

假设基于环境图像确定出当前场景至少包括两种场景,例如第一场景和第二场景。

假设第一场景为时间场景中的白天场景,基于该第一场景匹配的场景检测模型处理该环境图像,获取第一检测结果;进一步,将该第一检测结果输入第二场景,例如第二场景为天气场景中的雪天场景,基于该第二场景匹配的场景检测模型处理该第一检测结果,获取第二检测结果,最终根据第二检测结果获取目标检测结果。由于在利用第二场景匹配的检测模型进行目标检测时,已利用第一场景匹配的场景检测模型处理该环境图像,得到了先验信息,使得最终获取的目标检测结果更准确。

在一个可选的实施例中,第一场景和第二场景可以分别是高亮度场景和低亮度场景。

在本公开的其他实施例中,也可以先基于第二场景匹配的场景检测模型处理,再基于第一场景匹配的场景检测模型处理,本公开实施例对此并不限定。

图9中其余步骤参见图8说明,此处不再赘述。

本实施例的方法,获取环境图像;根据所述环境图像确认确定当前的场景;加载与所述当前场景匹配的场景检测模型;基于场景检测模型处理环境图像,在算力受到约束的情况下,选择当前场景对应的轻量化的场景检测模型,提高了图像处理的效率和不同场景下各自的检测性能。

如图10所示,本公开实施例中还提供一种车辆,所述车辆搭载有摄像装11,存储器12,以及处理器13,所述存储器12用于存储指令,所述指令被处理器13执行以实现前述方法实施例中任一项所述的方法。

本实施例提供的车辆,用于执行前述任一实施例提供的图像处理方法,技术原理和技术效果相似,此处不再赘述。

如图11所示,本公开实施例中还提供一种无人机,所述无人机搭载有摄像装置21,存储器22,以及处理器23,所述存储器22用于存储指令,所述指令被处理器23执行以实现前述方法实施例中任一项所述的方法。

本实施例提供的无人机,用于执行前述任一实施例提供的图像处理方法,技术原理和技术效果相似,此处不再赘述。

如图12所示,本公开实施例中还提供一种电子设备,与摄像装置可通信连接,所述电子设备包含存储器32,以及处理器31,所述存储器32用于存储指令,所述指令被处理器31执行以实现前述方法实施例中任一项所述的方法。

本实施例提供的电子设备,用于执行前述任一实施例提供的图像处理方法,技术原理和技术效果相似,此处不再赘述。

如图13所示,本公开实施例中还提供一种手持云台,所述手持云台包括:摄像装置41,存储器42,以及处理器43,所述存储器42用于存储指令,所述指令被处理器43执行以实现前述方法实施例中任一项所述的方法。

本实施例提供的手持云台,用于执行前述任一实施例提供的图像处理方法,技术原理和技术效果相似,此处不再赘述。

如图14所示,本公开实施例中还提供一种移动终端,所述移动终端包括:摄像装置51,存储器52,以及处理器53,所述存储器52用于存储指令,所述指令被处理器53执行以实现前述方法实施例中任一项所述的方法。

本实施例提供的移动终端,用于执行前述任一实施例提供的图像处理方法,技术原理和技术效果相似,此处不再赘述。

本公开实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法实施例中对应的方法,其具体实施过程可以参见前述方法实施例,其实现原理和技术效果类似,此处不再赘述。

本公开实施例中还提供一种程序产品,该程序产品包括计算机程序(即执行指令),该计算机程序存储在可读存储介质中。处理器可以从可读存储介质读取该计算机程序,处理器执行该计算机程序用于执行前述方法实施例中任一实施方式提供的目标检测方法。

本公开实施例中还提供一种车辆,包括:

车体;以及

前述任一实施例所述的电子设备,所述电子设备安装在所述车体上。其实现原理和技术效果与方法实施例类似,此处不再赘述。

本公开实施例中还提供一种无人机,包括:

机身;以及

前述任一实施例所述的电子设备,所述电子设备安装在所述车体上。其实现原理和技术效果与方法实施例类似,此处不再赘述。

图15是本说明书实施例提供的模型加载过程中内存占用比例示意图。环境检测模型始终被加载,例如,其可以在可移动平台工作过程中始终被加载于处理器内存中。其只需要判断当前环境,所需占用的系统资源较小,环境检测模型只需要识别并输出当前环境的类别信息,该类别信息用于场景检测模型的加载。场景检测模型用于对可移动平台周围物体的检测,一方面,环境检测模型和场景模型可以在很大程度上减小被加载模型的占用资源;另一方面,场景模型占用资源会大于环境检测模型。作为一个可选的实施例,环境检测模型可以是一个经过训练的神经网络模型,可以根据输入的图像信息输出识别的分类结果,例如白天、夜晚、雨、雪、雾。作为一个可选的实施例,环境检测模型可以是一个经过训练的神经网络模型,可以根据输入的图像信息输出识别的二维分类结果,例如白天-雨、夜晚-雨、白天-雾。作为一个可选的实施例,环境检测模型可以是一个经过训练的神经网络模型,可以根据输入的图像信息输出识别的三维分类结果,维度包括但是不限于天候-气候明亮度,例如白天-雨-昏暗、夜晚-雨-黑暗、白天-晴-明亮。作为一个可选的实施例,环境检测模型可以是一个经过训练的神经网络模型,可以根据输入的图像信息输出识别的四维甚至高维分类结果,维度包括但是不限于天候-气候明亮度,例如白天-雨-昏暗-道路、夜晚-雨-黑暗-道路、白天-晴-明亮-隧道。作为一个可选的实施例,环境检测模型可以是一个基于图像传感器输出参数的判断函数,例如根据图像的亮度信息判断白天或者黑夜。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本公开实施例的技术方案,而非对其限制;尽管参照前述各实施例对本公开实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的范围。

相关技术
  • 基于机器视觉的图像处理方法和设备
  • 一种基于机器视觉软件的图像处理方法
技术分类

06120112182247