基于安卓系统的摄像头数据处理方法、装置和车载设备制造方法及图纸

技术编号:22005731 阅读:24 留言:0更新日期:2019-08-31 06:59
本发明专利技术提出一种基于安卓系统的摄像头数据处理方法、装置和车载设备,其中,方法包括:获取视窗的界面信息,当获取到界面信息时,创建在中央处理器CPU运行的第一线程,以及根据界面信息,创建在图像处理器GPU运行的第二线程,运行第一线程,以从摄像头获取采集到的图像数据,并将图像数据传递至第二线程,运行第二线程,以根据界面信息对图像数据进行渲染处理,得到显示在视窗的图像,通过CPU和GPU的协同合作进行图像数据的处理,充分发挥了GPU的并行处理能力,减轻了CPU的负载,实现了多个摄像头的接入,解决现有技术中通过CPU来进行图像数据处理,CPU占用过多,无法同时接入多个摄像头的技术问题。

Data Processing Method, Device and Vehicle Equipment of Camera Based on Android System

【技术实现步骤摘要】
基于安卓系统的摄像头数据处理方法、装置和车载设备
本专利技术涉及图像数据处理
,尤其涉及一种基于安卓系统的摄像头数据处理方法、装置和车载设备。
技术介绍
在目前的车载系统中,车辆大多采用安卓Android系统,而安卓系统中的CPU是负责获取摄像头的图像数据并进行处理,然而车载安卓系统中,每增加一个摄像头,CPU就需要多运行一个线程,而开启线程使得CPU处理的数据量很大,占用了过多的CPU,因此,安卓系统采用限制摄像头的个数,也就是说目前的车载安卓系统为防止CPU负载太多,影响性能,无法支持多个摄像头的接入。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一个目的在于提出一种基于安卓系统的摄像头数据处理方法,通过CPU和GPU协同合作进行图像数据的处理,充分发挥了GPU的并行处理能力,减轻了CPU的负载,实现了多个摄像头的接入。本专利技术的第二个目的在于提出一种基于安卓系统的摄像头数据处理装置。本专利技术的第三个目的在于提出一种车载设备。本专利技术的第四个目的在于提出一种计算机可读存储介质。为达上述目的,本专利技术第一方面实施例提出了一种基于安卓系统的摄像头数据处理方法,包括:获取视窗的界面信息;当获取到所述界面信息时,创建在中央处理器CPU运行的第一线程,以及根据所述界面信息,创建在图像处理器GPU运行的第二线程;运行所述第一线程,以从摄像头获取采集到的图像数据,并将所述图像数据传递至所述第二线程;运行所述第二线程,以根据所述界面信息对所述图像数据进行渲染处理,得到显示在所述视窗的图像。为达上述目的,本专利技术第二方面实施例提出了一种基于安卓系统的摄像头数据处理装置,包括:获取模块,用于获取视窗的界面信息;创建模块,用于当获取到所述界面信息时,创建在CPU运行的第一线程,以及根据所述界面信息,创建在GPU运行的第二线程;第一运行模块,用于运行所述第一线程,以从摄像头获取采集到的图像数据,并将所述图像数据传递至所述第一线程;第二运行模块,用于运行所述第二线程,以根据所述界面信息对所述图像数据进行渲染处理,得到显示在所述视窗的图像。为达上述目的,本专利技术第三方面实施例提出了一种车载设备,包括多个摄像头、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器与所述多个摄像头连接,所述处理器执行所述程序时,实现如第一方面所述的基于安卓系统的摄像头数据处理方法。为了实现上述目的,本专利技术第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如第一方面所述的基于安卓系统的摄像头数据处理方法。本专利技术实施例所提供的技术方案,可以包含如下的有益效果:获取视窗的界面信息,当获取到界面信息时,创建在中央处理器CPU运行的第一线程,以及根据界面信息,创建在图像处理器GPU运行的第二线程,运行第一线程,以从摄像头获取采集到的图像数据,并将图像数据传递至第二线程,运行第二线程,以根据界面信息对图像数据进行渲染处理,得到显示在视窗的图像,通过CPU和GPU的协同合作进行图像数据的处理,充分发挥了GPU的并行处理能力,减轻了CPU的负载,实现了多个摄像头的接入。本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术实施例所提供的一种基于安卓系统的摄像头数据处理方法的流程示意图;图2为本专利技术实施例提供的一种基于安卓系统的摄像头数据处理装置的结构示意图;图3为本专利技术实施例所提供的一种车载设备的结构示意图;以及图4示出了适于用来实现本申请实施方式的示例性车载设备的框图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。下面参考附图描述本专利技术实施例的基于安卓系统的摄像头数据处理方法、装置和车载设备。图1为本专利技术实施例所提供的一种基于安卓系统的摄像头数据处理方法的流程示意图。如图1所示,该方法包括以下步骤:步骤101,获取视窗的界面信息。本专利技术实施例中,视窗的个数为1个,是运行在CPU的应用软件创建的,用于多个摄像头的图像显示。具体地,通过与应用软件之间的接口,例如Java的本地接口(JavaNativeInterface,JIN),获取应用软件所创建的视窗的界面信息,具体可以是获取视窗的对象,例如为object对象,对对象进行解析,得到界面信息。其中,界面信息包括视窗的显示位置和显示尺寸,视窗的显示位置和显示尺寸,是由应用软件在创建视窗时确定的,不同的应用软件创建的视窗对应的显示位置和显示尺寸可以是不同的,也可以是相同的。步骤102,当获取到界面信息时,创建在中央处理器CPU运行的第一线程,以及根据界面信息,创建在图像处理器GPU运行的第二线程。本专利技术实施例中,是通过中央处理器CPU和图像处理器GPU协同来处理获取的多个摄像头的图像数据,来实现多个摄像头的接入,具体地,在获取到界面信息时,创建在CPU运行的第一线程,以及根据界面信息创建在GPU运行的第二线程,也就是说通过在CPU中运行的第一线程和在GPU中运行的第二线程来协同处理,充分发挥了GPU的并行处理的能力,在不增加CPU负载的前提下,实现对接入的多个摄像头的图像数据的处理。步骤103,运行第一线程,以从摄像头获取采集到的图像数据,并将图像数据传递至第二线程。具体地,运行在CPU中创建的第一线程,其中,第一线程,用于通过与摄像头之间的虚拟通道获取图像数据,其中,虚拟通道与摄像头之间一一对应,通过设置多个虚拟通道以实现并行获取多个摄像头的图像数据,并通过开放图形库OpenGL接口将图像数据从CPU中复制到GPU,得到存储地址,并将存储地址发送至第二线程,以使第二线程根据存储地址读取图像数据,从而实现在GPU中对图像数据进行处理。步骤104,运行第二线程,以根据界面信息对图像数据进行渲染处理,得到显示在视窗的图像。具体地,运行在GPU中创建的第二线程,第二线程,用于根据图像数据进行色域转换和拼接处理后,对处理后的图像数据进行渲染得到处于显示位置且符合显示尺寸的图像,也就是说在GPU中运行的第二线程将获取到的图像数据处理完成后,该数据可以直接用于在显示器上显示,也就是说不需要应用软件获取图像数据再与视窗的界面信息合成显示了,由于应用软件是运行在CPU中的,这样也就避免了CPU复制并处理获取得到的图像数据的过程,降低了CPU的负载,实现了多个摄像头的接入。本专利技术实施例的基于安卓系统的摄像头数据处理方法中,获取视窗的界面信息,当获取到界面信息时,创建在中央处理器CPU运行的第一线程,以及根据界面信息,创建在图像处理器GPU运行的第二线程,运行第一线程,以从摄像头获取采集到的图像数据,并将图像数据传递至第二线程,运行第二线程,以根据界面信息对图像数据进行渲染处理,得到显示在视窗的图像,通过CPU和GPU的协同合作进行图像数据的处理,充分发挥了GPU的并行处理能力,减轻了CP本文档来自技高网...

【技术保护点】
1.一种基于安卓系统的摄像头数据处理方法,其特征在于,所述方法包括以下步骤:获取视窗的界面信息;当获取到所述界面信息时,创建在中央处理器CPU运行的第一线程,以及根据所述界面信息,创建在图像处理器GPU运行的第二线程;运行所述第一线程,以从摄像头获取采集到的图像数据,并将所述图像数据传递至所述第二线程;运行所述第二线程,以根据所述界面信息对所述图像数据进行渲染处理,得到显示在所述视窗的图像。

【技术特征摘要】
1.一种基于安卓系统的摄像头数据处理方法,其特征在于,所述方法包括以下步骤:获取视窗的界面信息;当获取到所述界面信息时,创建在中央处理器CPU运行的第一线程,以及根据所述界面信息,创建在图像处理器GPU运行的第二线程;运行所述第一线程,以从摄像头获取采集到的图像数据,并将所述图像数据传递至所述第二线程;运行所述第二线程,以根据所述界面信息对所述图像数据进行渲染处理,得到显示在所述视窗的图像。2.根据权利要求1所述的摄像头数据处理方法,其特征在于,所述运行所述第一线程,以从摄像头获取采集到的图像数据,并将所述图像数据传递至所述第二线程,包括:运行所述第一线程;其中,所述第一线程,用于通过与摄像头之间的虚拟通道获取所述图像数据,通过开放图形库OpenGL接口将所述图像数据复制到所述GPU,得到存储地址,并将所述存储地址发送至所述第二线程,以使所述第二线程根据所述存储地址读取所述图像数据;其中,所述虚拟通道与所述摄像头之间一一对应。3.根据权利要求1所述的摄像头数据处理方法,其特征在于,所述获取视窗的界面信息,包括:通过与应用软件之间的接口,获取所述应用软件所创建视窗的界面信息。4.根据权利要求3所述的摄像头数据处理方法,其特征在于,所述获取所述所创建视窗的界面信息,包括:获取视窗的对象;对所述对象进行解析,得到所述界面信息。5.根据权利要求1-4任一项所述的摄像头数据处理方法,其特征在于,所述视窗的个数为一个,是运行在所述CPU的应用软件创建的,用于多个摄像头的图像显示。6.根据权利要求5所述的摄像头数据处理方法,其特征在于,所述界面信息包括视窗的显示位置和显示尺寸;所述运行所述第二线程,以根据所述界面信息对所述图像数据进行渲染处理,得到显示在所述视窗的图像,包括:运行所述第二线程;其中,所述第二线程,用于根据所述图像数据进行色域转换和拼接处理后,对处理后的图像数据进行渲染得到处于所述显示位置且符合所述显示尺寸的图像。7.一种基于安卓系统的摄像头数据处理装置,其特征在于,所述装置包括以下步骤:获取模块,用于获取视窗的界面信息;创建模块,用于当获取到所述界面信息时,创建在CPU运行的第一线程,以及根据所述界面信息,创建在GPU运行的第二线程;第一运行模块,用于运行所述第一线程,以从摄像头获取采集到的图...

【专利技术属性】
技术研发人员:汤文民
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1