System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于虚拟摄像头的视觉应用开发方法及系统技术方案_技高网

一种基于虚拟摄像头的视觉应用开发方法及系统技术方案

技术编号:40259004 阅读:9 留言:0更新日期:2024-02-02 22:50
本申请涉及辅助驾驶技术领域,具体涉及一种基于虚拟摄像头的视觉应用开发方法及系统;该方法包括:用户层SDK模块获取车辆环境视频流,并对车辆环境视频流进行解码,以获取原始图像数据;此时,用户层SDK模块将原始图像数据注入至输入缓冲区;之后,虚拟摄像头驱动模块对该原始图像数据进行转换,并将转换后的图像数据填充至输出缓冲区;最后,摄像头数据应用模块从该输出缓冲区内获取转换后的图像数据,以基于转换后的图像数据进行视觉应用开发。上述方案采用软件模拟真实的视觉应用开发环境,能让使用摄像头的视觉类应用在没有真实硬件的环境下,获得跟真实环境接近的开发环境,能大大提升开发效率,加块项目落地。

【技术实现步骤摘要】

本申请涉及辅助驾驶,具体涉及一种基于虚拟摄像头的视觉应用开发方法及系统


技术介绍

1、随着汽车电气化和智能化的发展,汽车使用的摄像头数量快速增加,如前视主摄像头、前视广角摄像头以及前视窄角摄像头等。

2、目前,围绕汽车使用的摄像头所开发的基于视觉的驾驶辅助应用也快速发展落地,例如avm(around view monitor,360影视),apa(auto parking assis,自动泊车辅助系统),dms(driver monitor system,驾驶员监控系统),lka(lane keeping assist,车道保持辅助),oms(occupancy monitoring system,成员监视系统)等。这些驾驶辅助应用在实际的开发过程中需要严苛的实车开发环境,但由于一些条件限制,往往难以保证充分的实车开发环境,如:1.由于生产排期原因,在项目中早期,缺少车辆用于开发和测试;2.由于部分测试车无法取得许可进行路测,因此不能获取足够多的数据用于应用开发和测试;3.由于保密原因,部分主机厂在新车解密前不会提供实际车辆进行开发和测试。

3、因此上述方案中,应用开发者往往无法获得实车开发环境,导致驾驶辅助的项目推进困难。


技术实现思路

1、有鉴于此,本申请实施例提供一种基于虚拟摄像头的视觉应用开发方法及系统,能够让使用摄像头的视觉类应用在没有真实硬件的环境下,获得与真实环境接近的开发环境,大大提升开发效率,加块项目落地。

2、第一方面,本申请提供了一种基于虚拟摄像头的视觉应用开发方法,所述方法应用于一种基于虚拟摄像头的视觉应用开发系统中,所述系统包括用户层sdk模块、虚拟摄像头驱动模块、摄像头数据应用模块;

3、所述方法包括:

4、用户层sdk模块获取车辆环境视频流,并对所述车辆环境视频流进行解码,以获取所述车辆环境视频流的原始图像数据;

5、所述用户层sdk模块将所述原始图像数据注入至所述虚拟摄像头驱动模块的输入缓冲区;

6、所述虚拟摄像头驱动模块对所述原始图像数据进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区;

7、所述摄像头数据应用模块从所述输出缓冲区内获取转换后的图像数据,以基于转换后的图像数据进行视觉应用开发。

8、根据上述技术手段,本申请采用用户层sdk模块、虚拟摄像头驱动模块、摄像头数据应用模块模拟真实的视觉应用开发环境,能让使用摄像头的视觉类应用,如车辆360度全景影像系统avm、自动代客泊车系统apa、驾驶员监控系统dms、车道保持辅助系统lka、乘员监控系统oms等在没有真实硬件的环境下,获得跟真实环境接近的开发环境,能大大提升开发效率,加块项目落地。

9、结合第一方面,在一种实施方式中,在所述用户层sdk模块获取车辆环境视频流之前,所述方法还包括:

10、用户层sdk模块获取用户输入的配置文件;所述配置文件包括输入数据源、解码后的图像格式、解码后的图像分辨率以及解码的视频帧率;所述输入数据源为本地视频文件或网络视频流。

11、根据上述技术手段,本申请支持多种输入数据源,包括但不限于网络视频流,本地视频文件等;针对视觉应用的需求,可以快速调整输入数据源的参数来达到应用需求,而不必受制于真实的硬件性能,从而可以评估应用在各种硬件配置下的性能。

12、结合第一方面,在一种实施方式中,所述用户层sdk模块获取车辆环境视频流,并对所述车辆环境视频流进行解码,以获取所述车辆环境视频流的原始图像数据,包括:

13、所述用户层sdk模块根据所述输入数据源,获取所述车辆环境视频流;

14、所述用户层sdk模块根据所述解码后的图像格式、所述解码后的图像分辨率以及所述解码的视频帧率,通过所述用户层sdk模块内的视频解码器对所述车辆环境视频流进行解码,以获取所述车辆环境视频流的原始图像数据。

15、根据上述技术手段,用户层sdk模块提供标准应用程序供用户使用,用户执行这个程序的时候,可以指定如下参数:输入数据源、解码后的图像格式、解码后的图像分辨率以及解码的视频帧率,并根据输入数据源、解码后的图像格式、解码后的图像分辨率以及解码的视频帧率,对车辆环境视频流进行解码,扩大了应用场景。

16、结合第一方面,在一种实施方式中,所述用户层sdk模块将所述原始图像数据注入至所述虚拟摄像头驱动模块的输入缓冲区,包括:

17、所述用户层sdk模块调用v4l2接口,接入所述虚拟摄像头驱动模块提供的虚拟摄像头输入节点,以将所述原始图像数据注入至所述虚拟摄像头驱动模块的输入缓冲区。

18、结合第一方面,在一种实施方式中,所述虚拟摄像头驱动模块对所述原始图像数据进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区,包括:

19、所述虚拟摄像头驱动模块根据所述摄像头数据应用模块中的应用,获取输出端格式要求;所述应用包括车辆360度全景影像系统avm、自动代客泊车系统apa、驾驶员监控系统dms、车道保持辅助系统lka以及乘员监控系统oms中的至少一者;

20、将所述原始图像数据按照所述输出端格式要求进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区。

21、结合第一方面,在一种实施方式中,所述将所述原始图像数据按照所述输出端格式要求进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区,包括:

22、当所述原始图像数据的图像格式及图像分辨率,与输出端所要求的图像格式及图像分辨率相同时,则通过所述虚拟摄像头驱动模块内的dma单元将所述原始图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区;

23、当所述原始图像数据的图像格式及图像分辨率,与输出端所要求的图像格式及图像分辨率不同时,则通过所述虚拟摄像头驱动模块内的格式转换单元与缩放单元对所述原始图像数据进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区。

24、根据上述技术手段,该虚拟摄像头驱动模块内还包括dma单元、格式转换单元与缩放单元,根据输入缓冲区的图像格式及图像分辨率以及输出端所要求的图像格式及图像分辨率进行选择;从而将输入缓冲区的图像格式及图像分辨率按照输出端所要求的图像格式及图像分辨率转换后填充到虚拟摄像头驱动模块的输出缓冲区。

25、结合第一方面,在一种实施方式中,所述摄像头数据应用模块从所述输出缓冲区内获取转换后的图像数据,包括:

26、所述摄像头数据应用模块调用v4l2接口,接入所述虚拟摄像头驱动模块提供的虚拟摄像头输出节点,以从所述输出缓冲区内获取转换后的图像数据。

27、根据上述技术手段,该输出缓冲区内转换后的图像数据,可以被摄像头数据应用模块中的应用获取并应用;对于应用来说,操作虚拟摄像头输出节点跟操作真实摄像头输出节点没有任何区别本文档来自技高网...

【技术保护点】

1.一种基于虚拟摄像头的视觉应用开发方法,其特征在于,所述方法应用于一种基于虚拟摄像头的视觉应用开发系统中,所述系统包括用户层SDK模块、虚拟摄像头驱动模块、摄像头数据应用模块;

2.根据权利要求1所述的方法,其特征在于,在所述用户层SDK模块获取车辆环境视频流之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述用户层SDK模块获取车辆环境视频流,并对所述车辆环境视频流进行解码,以获取所述车辆环境视频流的原始图像数据,包括:

4.根据权利要求1所述的方法,其特征在于,所述用户层SDK模块将所述原始图像数据注入至所述虚拟摄像头驱动模块的输入缓冲区,包括:

5.根据权利要求2所述的方法,其特征在于,所述虚拟摄像头驱动模块对所述原始图像数据进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区,包括:

6.根据权利要求5所述的方法,其特征在于,所述将所述原始图像数据按照所述输出端格式要求进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区,包括:

7.根据权利要求1至6任一所述的方法,其特征在于,所述摄像头数据应用模块从所述输出缓冲区内获取转换后的图像数据,包括:

8.一种基于虚拟摄像头的视觉应用开发系统,其特征在于,所述系统用于实现如权利要求1至7任一所述的一种基于虚拟摄像头的视觉应用开发方法,所述系统包括用户层SDK模块、虚拟摄像头驱动模块、摄像头数据应用模块;

9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至7任一所述的一种基于虚拟摄像头的视觉应用开发方法。

10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至7任一所述的一种基于虚拟摄像头的视觉应用开发方法。

...

【技术特征摘要】

1.一种基于虚拟摄像头的视觉应用开发方法,其特征在于,所述方法应用于一种基于虚拟摄像头的视觉应用开发系统中,所述系统包括用户层sdk模块、虚拟摄像头驱动模块、摄像头数据应用模块;

2.根据权利要求1所述的方法,其特征在于,在所述用户层sdk模块获取车辆环境视频流之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述用户层sdk模块获取车辆环境视频流,并对所述车辆环境视频流进行解码,以获取所述车辆环境视频流的原始图像数据,包括:

4.根据权利要求1所述的方法,其特征在于,所述用户层sdk模块将所述原始图像数据注入至所述虚拟摄像头驱动模块的输入缓冲区,包括:

5.根据权利要求2所述的方法,其特征在于,所述虚拟摄像头驱动模块对所述原始图像数据进行转换,并将转换后的图像数据填充至所述虚拟摄像头驱动模块的输出缓冲区,包括:

6.根据权利要求5所述的方法,其特征在于,所述将所述原始图像数据...

【专利技术属性】
技术研发人员:刘帆
申请(专利权)人:镁佳武汉科技有限公司
类型:发明
国别省市:

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

1