一种图像数据处理方法、装置、设备及存储介质与流程

文档序号:27625915发布日期:2021-11-29 15:17阅读:188来源:国知局
一种图像数据处理方法、装置、设备及存储介质与流程

1.本公开涉及图像数据处理技术领域,尤其涉及一种图像数据处理方法及装置。


背景技术:

2.目前,大部分车辆内部设置有全景影像系统(around view monitor,avm)和行车记录仪(digital video recorder,dvr)。avm和dvr通常会分别获取各自对应的摄像头采集到的图像数据,然后经各自处理或渲染后在终端屏幕上显示。但由于avm和dvr数据各自独立,在录制与渲染的时候需要各自处理,消耗车辆系统的资源过多。因此,在现阶段镜头数量和分辨率逐渐提升的情况下,车辆中同时设有avm和dvr的系统容易产生卡顿。


技术实现要素:

3.本公开提供一种图像数据处理方法、装置、设备及存储介质,能够在车辆系统同时设置avm和dvr时,节约系统资源,减少系统出现卡顿的情况。
4.为达到上述目的,本公开的实施例采用如下技术方案:
5.第一方面,本公开提供一种图像数据处理方法,包括:获取第一图像;第一图像为部署于车辆的摄像头拍摄的图像。确定第一图像的纹理数据。在确定车辆系统中的目标线程已启动的情况下,向运行目标线程的装置发送第一图像的纹理数据的信息;纹理数据的信息用于指示根据纹理数据完成图像渲染,或者完成图像渲染及显示;运行目标线程的装置包括已全景影像系统avm或行车记录仪dvr中的至少一个。
6.基于上述技术方案,本公开通过在将图像数据发送至avm和dvr之前,先将图像数据转换为纹理数据后,再把纹理数据提供给avm和dvr,以支持avm和dvr相应功能的运行。由此避免直接分发图像数据导致的avm和dvr分别再对图像数据进行处理所引起的系统资源浪费,节约了系统的资源,减少了系统卡顿问题的出现。
7.在一种可能的设计方案中,上述图像数据处理方法还包括:存储纹理数据。
8.在一种可能的设计方案中,目标线程包括第一线程和第二线程,avm运行有第一线程,dvr运行有第二线程;上述向运行目标线程的装置发送第一图像的纹理数据的信息,包括:获取纹理数据的存储地址信息,向avm和dvr分别发送存储地址信息。
9.在一种可能的设计方案中,上述图像数据处理方法还包括:向avm和dvr发送同步通知消息,同步通知消息用于指示avm和dvr同步获取纹理数据。
10.在一种可能的设计方案中,同步通知消息包括共享上下文id。
11.第二方面,本公开提供一种图像数据处理装置,包括:获取单元、处理单元和发送单元。获取单元,用于获取第一图像;第一图像为部署于车辆的摄像头拍摄的图像。处理单元,用于确定第一图像的纹理数据。发送单元,用于在确定车辆中的目标线程已启动的情况下,向运行目标线程的装置发送第一图像的纹理数据的信息;纹理数据的信息用于指示根据纹理数据完成图像渲染,或者完成图像渲染及显示;运行目标线程的装置包括已全景影像系统avm或行车记录仪dvr中的至少一个。
12.在一种可能的设计方案中,处理单元,还用于存储纹理数据。
13.在一种可能的设计方案中,获取单元,还用于获取纹理数据的存储地址信息。发送单元,还用于向avm和dvr分别发送存储地址信息。
14.在一种可能的设计方案中,发送单元,还用于向avm和dvr发送同步通知消息,同步通知消息用于指示avm和dvr同步获取纹理数据。
15.在一种可能的设计方案中,同步通知消息包括共享上下文id。
16.可选地,第二方面所述的图像数据处理装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得图像数据处理装置可以执行上述第一方面所述的图像数据处理方法。
17.此外,第二方面所述的图像数据处理装置的技术效果可以参考上述第一方面所述的图像数据处理方法的技术效果,此处不再赘述。
18.第三方面,本公开提供一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,上述指令当被本公开的电子设备执行时使电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的图像数据处理方法。
19.第四方面,本公开提供一种电子设备,包括:处理器以及存储器;其中,存储器用于存储一个或多个程序,一个或多个程序包括计算机执行指令,当电子设备运行时,处理器执行存储器存储的计算机执行指令,以使电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的图像数据处理方法。
20.第五方面,本公开提供一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得本公开的电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的图像数据处理方法。
21.第六方面,本公开提供一种芯片系统,该芯片系统应用于图像数据处理装置;所述芯片系统包括一个或多个接口电路,以及一个或多个处理器。所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述图像数据处理装置的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令。当所述处理器执行所述计算机指令时,所述图像数据处理装置执行如第一方面及其任一种可能的设计方式所述的图像数据处理方法。
附图说明
22.图1为本公开的实施例提供的一种图像数据处理装置的架构示意图;
23.图2为本公开的实施例提供的一种图像数据处理方法的流程示意图;
24.图3为本公开的实施例提供的另一种图像数据处理方法的流程示意图;
25.图4为本公开的实施例提供的一种图像数据处理方法的多线程运行示意图;
26.图5为本公开的实施例提供的一种图像数据处理装置的架构示意图;
27.图6为本公开的实施例提供的另一种图像数据处理装置的架构示意图。
具体实施方式
28.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于
本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
29.本文中字符“/”,一般表示前后关联对象是一种“或者”的关系。例如,a/b可以理解为a或者b。
30.本公开的说明书和权利要求书中的术语“第一”和“第二”是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一边缘服务节点和第二边缘服务节点是用于区别不同的边缘服务节点,而不是用于描述边缘服务节点的特征顺序。
31.此外,本公开的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
32.另外,在本公开实施例中,“示例性的”、或者“例如”等词用于表示作例子、例证或说明。本公开中被描述为“示例性的”或“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、或者“例如”等词旨在以具体方式呈现概念。
33.为了便于理解本公开的技术方案,下面对本公开涉及到的一些技术术语进行介绍。
34.1、外部视景系统(external vision system,evs)
35.evs是一种设置于车辆外部的视景系统,包括数个用于拍摄图像的摄像头或其他传感器,能够获取车辆周边的光学视景。
36.2、全景式监控影像系统(around view monitor,avm)
37.avm是一种通过多个超大广角镜头拍摄图像,经过特殊算法对所拍摄图像进行畸变矫正以及拼接,形成物体周围的全景影像的系统。
38.avm多应用于车辆,即通过广角摄像头获取车辆周边的实时画面,再经软件合成为360度环视景象并显示于车辆多媒体屏幕上,以辅助驾驶员在复杂情况下亦能够安全轻松的停泊车辆。
39.3、行车记录仪
40.行车记录仪主要为应用在车辆上的特化的硬盘录像机(digital video recorder,dvr)。
41.dvr是一套进行图像存储处理的计算机系统,具有对图像/语音进行长时间录像、录音、远程监视和控制的功能。dvr采用的是数字记录技术,在图像数据处理、图像储存、检索、备份、以及网络传递、远程控制等方面也远远优于模拟监控设备,dvr代表了电视监控系统的发展方向,是市面上车辆监控系统的首选产品。
42.4、开放式图形库嵌入式系统
43.开放式图形库嵌入式系统(opengl for embedded systems,oprengl es)是一种功能完善的2d和3d图形应用程序接口(application programming interface,api),主要针对多种嵌入式系统专门设计包括控制台、移动电话、手持设备、家电设备和汽车。
44.在本公开中的技术方案中,opengl es用于将evs系统获取的图像数据转换为纹理数据。
45.5、共享上下文
46.共享上下文(shared context)被正在请求或响应的同一线程内运行的服务消息对象的所有实例共享。共享上下文能够支持系统内多线程运行时的数据共享及同步。
47.在本公开的技术方案中,共享上下文用于实现多线程并行时的数据共享,以保证车辆中多个子线程所使用的纹理数据是同步的。
48.现阶段的车辆多在内部设有全景影像系统avm和行车记录仪dvr。当avm和dvr同时进行工作时,会分别获取摄像头所拍摄的图像数据,之后,avm和dvr会分别对获取到的图像数据进行处理,进一步获取图像数据对应的纹理数据,并根据纹理数据来执行相应的录制或渲染功能。
49.然而,由于avm和dvr获取图像数据并进行相应的处理的过程是相互独立的,因此当avm和dvr同时运行时会消耗过多的车辆系统的资源,例如gpu、内存等资源。因此,在现阶段车辆外置摄像头的数量和分辨率逐渐提升的情况下,avm和dvr获取图像数据并进行相应的处理所占用的系统资源会越来越多,导致现阶段车辆中avm和dvr同时运行时,车辆系统容易产生卡顿的现象,降低了车辆用户的体验。
50.为了解决上述问题,本公开实施例提供一种图像数据处理方法,通过图像处理装置在将图像数据发送至avm和dvr之前,先根据图像数据确定纹理数据,并在确定车辆中的avm和dvr已启动的情况下,再把纹理数据分发至avm和dvr,由avm和dvr根据纹理数据再执行相应的录制或渲染功能。由此避免avm和dvr分别再执行对图像数据进行处理转换为纹理数据的流程所引起的系统资源浪费,以节约系统资源,减少系统卡顿问题的出现。
51.本公开实施例提供的图像数据处理方法的执行主体为图像输数据处理装置。该图像数据处理装置可以是车辆配置的电子设备,也可以是电子设备中的cpu,还可以是车载设备中用于进行图像数据处理的客户端。本公开实施例以电子设备作为图像数据处理装置来执行图像处理方法方法为例,对本公开提供的图像数据处理方法进行说明。
52.图1为本公开实施例所涉及的一种图像数据处理装置的架构示意图。如图1所示,图像数据处理装置包括evs、avm、dvr和图像数据处理模块。
53.evs用于通过摄像头来拍摄获取图像数据。
54.图像数据处理模块,用于在获取到图像数据后,将其转换为纹理数据,再发送至avm和dvr。
55.avm和dvr,用于在接收到纹理数据后,根据纹理数据执行录制或渲染线程,以提供录制和图像显示功能。
56.下面结合说明书附图,对本公开实施例所提供的技术方案进行具体阐述。
57.需要说明的是,本公开实施例中,以图像数据处理装置通过车载evs获取图像数据为例,来进行技术方案的说明。在实际应用中,图像数据处理装置也能够通过其他方式来获取图像数据,本公开对此不做限定。
58.图2为本公开实施例提供的一种图像数据处理方法的流程示意图。如图2所示,该方法包括以下步骤:
59.s201、图像数据处理装置获取第一图像。
60.其中,第一图像为部署于车辆的evs的摄像头拍摄的图像。
61.摄像头可以是部署于车辆设备内部所包括的倒车影像摄像头等摄像设备,也可以
是部署于车辆设备之外通过接口与车辆进行图像数据传输的摄像头,本公开实施例对此不作具体限定。
62.可以理解的是,在实际应用中,摄像头的部署位置、清晰度、型号等均可根据实际需求具体配置。
63.在一种可能的实现方式中,s202具体可由图像数据处理装置中的evs和图像数据处理模块来执行。
64.s202、图像数据处理装置确定第一图像的纹理数据。
65.在获取到第一图像后,图像数据处理装置对第一图像进行处理,以获取第一图像的纹理数据。
66.在实际应用中,图像数据处理可以采用自身所属车辆的操作系统所支持的纹理数据获取方法,确定第一图像的纹理数据。不同操作系统支持的纹理数据获取方法可能不同。
67.例如,当车辆的系统类型为安卓,可以使用开放式图形库opengl标准中的嵌入式系统opengl es方法生成纹理数据。需要说明的是,具体如何将第一图像转换为纹理数据,是现阶段成熟的技术,本公开实施例对此不做限定。
68.可选的,图像数据处理装置在确定第一图像的纹理数据后,将纹理数据进行存储,以便于后续步骤中avm和dvr获取纹理数据。
69.示例性的,图像数据处理装置将纹理数据存储于系统内存中,也可存储在图像数据处理装置内置的数据库中,本公开实施例对此不做限定。
70.在一种可能的实现方式中,s202具体可由图像数据处理装置中的图像数据处理模块来执行。
71.s203、图像数据处理装置在确定车辆中的目标线程已启动的情况下,向运行目标线程的装置发送第一图像的纹理数据的信息。
72.其中,运行目标线程的装置可以是上述avm和dvr中的至少一个。在实际应用中,若运行目标线程的装置是avm,则目标线程可以是avm渲染线程,也可以是avm录制线程;同理,若运行目标线程的装置是dvr则目标线程可以是dvr渲染线程,也可以是dvr录制线程。若运行目标线程的装置同时包括avm和dvr,则目标线程可以是avm录制线程、avm渲染线程、dvr录制线程和dvr渲染线程中的多个。
73.需要说明的是,目标线程具体所包括的线程的类型和数量,由avm和dvr启动的功能来确定。在avm和dvr启动目标功能后,目标功能对应的目标线程会开始运行,此时图像处理装置确定车辆系统中的目标线程已启动,将第一图像的纹理数据的信息发送至启动目标功能的avm和/或dvr。
74.具体的,若图像数据处理装置在确定车辆中的avm渲染线程已启动,则图像数据处理装置会向avm发送第一图像的纹理数据的信息。相应的,avm接收到信息后,可以根据第一图像的纹理数据的信息获取到第一图像的纹理数据,之后avm根据纹理数据来运行avm的图像显示功能。若图像数据处理装置在确定车辆中的avm录制线程已启动,则图像数据处理装置会向avm发送第一图像的纹理数据的信息。相应的,avm接收到信息后,可以根据第一图像的纹理数据的信息获取到第一图像的纹理数据,之后avm根据纹理数据来运行avm的录制功能。
75.同理,若图像数据处理装置在确定车辆中的dvr渲染线程已启动,则图像数据处理
装置会向dvr发送第一图像的纹理数据的信息。相应的,dvr接收到信息后,可以根据第一图像的纹理数据的信息获取到第一图像的纹理数据,之后dvr根据纹理数据来运行dvr的图像显示功能。若图像数据处理装置在确定车辆中的dvr录制线程已启动,则图像数据处理装置会向dvr发送第一图像的纹理数据的信息。相应的,dvr接收到信息后,可以根据第一图像的纹理数据的信息获取到第一图像的纹理数据,之后dvr根据纹理数据来运行dvr的录制功能。
76.其中,纹理数据的信息可以是纹理数据的存储地址,也可以是纹理数据id,本公开实施例对此不做不限定。示例性的,纹理数据的存储地址和纹理数据id都能够用于指示运行目标线程的装置获取纹理数据。
77.为了便于理解,本公开实施例以纹理数据的信息是纹理数据的存储地址为例进行说明。
78.可选的,图像数据处理装置获取纹理数据的存储地址信息,并向运行目标线程的装置发送存储地址信息。运行目标线程的装置会根据存储地址信息,获取纹理数据,并根据纹理数据运行目标线程对应的功能。
79.在一种可能的实现方式中,s203具体可由图像数据处理装置中的图像数据处理模块来执行。
80.基于上述技术方案,本公开实施例中图像数据处理装置通过在将图像数据发送至avm和dvr之前,先将图像数据转换为纹理数据,再把纹理数据提供给avm和dvr,以支持avm和dvr相应功能的运行。由此避免直接分发图像数据导致的avm和dvr分别再对图像数据进行转换所引起的系统资源浪费,节约了系统的资源,减少了系统卡顿问题的出现。
81.进一步地,在图像数据处理装置向运行目标线程的装置发送第一图像的纹理数据的信息时,为了保证运行目标线程的装置获取到的纹理数据是同步的,装置还可以向运行有目标线程的装置发送同步通知消息。
82.结合图2,如图3所示,本公开提供的图像数据处理方法还包括:
83.s301、图像数据处理装置向运行有目标线程的装置发送同步通知消息。
84.其中,同步消息可以包括共享上下文id,共享上下文id用于实现多线程并行时的数据共享,以保证目标线程中包括的所有线程所使用的纹理数据是同步的。
85.具体的,图像数据处理装置在确定纹理数据之后,获取共享上下文id和纹理数据id,并发送至运行有目标线程的装置。运行有目标线程的装置获取共享上下文id后,与自身存储的共享上下文id进行对比验证。若验证通过,则运行有目标线程的装置根据纹理数据的存储地址来获取纹理数据。
86.综上所述,图3示出的流程,可以实现多线程并行时的数据共享,以保证车辆中目标线程所包括的多个线程所使用的纹理数据是同步的。
87.如图4所示,为本公开实施例中的一种多线程运行示意图。在图4中,以目标线程包括avm渲染线程、dvr录制线程和dvr渲染线程为例。其中,主线程用于将第一图像转换为纹理数据并将纹理数据的信息发送至目标线程。avm渲染线程、dvr录制线程和dvr渲染线程分别对应avm的图像显示功能、dvr的录制功能和dvr的图像显示功能。
88.可以理解的是,目标线程在接收到图像数据处理装置发送的第一图像的纹理数据的信息和同步通知消息后,验证同步通知消息中包括的共享上下文id。在共享上下文id验
证通过后,目标线程根据第一图像的纹理数据的信息中包括的纹理数据的存储地址信息或纹理数据id,来获取纹理数据,以保证avm和dvr相应功能的运行。
89.本公开实施例可以根据上述方法示例对图像数据处理装置进行功能模块或者功能单元的划分,例如,可以对应各个功能划分各个功能模块或者功能单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块或者功能单元的形式实现。其中,本公开实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
90.示例性的,如图5所示,为本公开实施例所涉及的一种图像数据处理装置的一种可能的结构示意图。该图像数据处理装置500包括:获取单元501、处理单元502和发送单元503。
91.其中,获取单元501,用于获取第一图像。例如,结合图2,获取单元501具体用于执行步骤s201。
92.处理单元502,用于确定第一图像的纹理数据。例如,结合图2,处理单元502具体用于执行步骤s202。
93.发送单元503,用于在确定车辆中的目标线程已启动的情况下,向运行目标线程的装置发送第一图像的纹理数据的信息。例如,结合图2,处理单元502具体用于执行步骤s203。
94.可选的,处理单元502,还用于存储纹理数据。例如,结合图2,处理单元502具体用于执行步骤s201。
95.可选的,获取单元501,还用于获取纹理数据的存储地址信息。例如,结合图2,获取单元501具体用于执行步骤s202。
96.可选的,发送单元503,还用于向avm和dvr分别发送存储地址信息。例如,结合图2,发送单元503具体用于执行步骤s203。
97.可选的,发送单元503,还用于向avm和dvr发送同步通知消息,同步通知消息用于指示avm和dvr同步获取纹理数据。例如,结合图3,发送单元503具体用于执行步骤s301。
98.可选地,图像数据处理装置500还可以包括存储单元(图5中以虚线框示出),该存储单元存储有程序或指令。当处理单元502执行该程序或指令时,使得图像数据处理装置可以执行上述方法实施例所述的图像数据处理方法。
99.此外,图5所述的图像数据处理装置的技术效果可以参考上述实施例所述的图像数据处理方法的技术效果,此处不再赘述。
100.示例性地,图6为上述实施例中所涉及的图像数据处理装置的又一种可能的结构示意图。如图6所示,图像数据处理装置600包括:处理器602。
101.其中,处理器602,用于对该图像数据处理装置的动作进行控制管理,例如,执行上述获取单元501、处理单元502、和发送单元503执行的步骤,和/或用于执行本文所描述的技术方案的其它过程。
102.上述处理器602可以是实现或执行结合本公开内容所描述的各种示例性的逻辑方框,模块和电路。该处理器可以是中央处理器,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本公开公开内容所描述的各种示例性的逻辑方框,模块和电路。
所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
103.可选地,图像数据处理装置600还可以包括通信接口603、存储器601和总线604。其中,通信接口603用于支持图像数据处理装置600与其他网络实体的通信。存储器601用于存储该图像数据处理装置的程序代码和数据。
104.其中,存储器601可以是图像数据处理装置中的存储器,该存储器可以包括易失性存储器,例如随机存取存储器;该存储器也可以包括非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘;该存储器还可以包括上述种类的存储器的组合。
105.总线604可以是扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线604可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
106.通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
107.本公开实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在本公开的电子设备上运行时,使得所述计算机执行上述方法实施例所述的图像数据处理方法。
108.本公开实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,该本公开的电子设备执行上述方法实施例所示的方法流程中图像数据处理装置执行的各个步骤。
109.其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘。随机存取存储器(random access memory,ram)、只读存储器(read

only memory,rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、寄存器、硬盘、光纤、便携式紧凑磁盘只读存储器(compact disc read

only memory,cd

rom)、光存储器件、磁存储器件、或者上述的人以合适的组合、或者本领域数值的任何其他形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(application specific integrated circuit,asic)中。在本公开实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
110.以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何在本公开揭露的技术范围内的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1