CN110012252A - 一种适用于自主驾驶仿真平台的快速图像存储方法以及*** - Google Patents
一种适用于自主驾驶仿真平台的快速图像存储方法以及*** Download PDFInfo
- Publication number
- CN110012252A CN110012252A CN201910280565.2A CN201910280565A CN110012252A CN 110012252 A CN110012252 A CN 110012252A CN 201910280565 A CN201910280565 A CN 201910280565A CN 110012252 A CN110012252 A CN 110012252A
- Authority
- CN
- China
- Prior art keywords
- image
- autonomous driving
- emulation platform
- storage
- driving emulation
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000005315 distribution function Methods 0.000 claims description 3
- 238000000151 deposition Methods 0.000 claims 1
- 238000004422 calculation algorithm Methods 0.000 abstract description 10
- 238000012549 training Methods 0.000 abstract description 4
- 238000013135 deep learning Methods 0.000 abstract description 2
- 238000011161 development Methods 0.000 abstract description 2
- 241001269238 Data Species 0.000 abstract 1
- 238000007906 compression Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 9
- 238000010276 construction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 241001062009 Indigofera Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种适用于自主驾驶仿真平台的快速图像存储方法以及***,包括:将显存中存储的图像直接送入计算机内存。本发明能够在自主驾驶仿真平台上实现高速无损截图,提高了自主驾驶仿真平台的通用性,能够为深度学习算法开发提供更多、更加准确的训练数据。
Description
技术领域
本发明涉及一种快速图像存储方法,特别是一种适用于自主驾驶仿真平台的快速图像存储方法以及***。
背景技术
当前,自主驾驶仿真平台均具备图像存储功能,用于将所得的渲染图像存储在计算机硬盘中或将图像通过网络发送到算法端,以进行图像处理计算和训练。
业界主流的仿真软件一般是通过CPU主线程完成图像的复制、编码、存储、发送。然而,在仿真***中,CPU主线程非常繁忙。如果CPU主线程的负载过大,将导致仿真***主频过低,并影响仿真***帧率,从而影响仿真***的准确性。以微软AirSim为例,在开启截图功能时,其帧率仅为15fps。为解决这一问题,惯常的做法是降低图像存储频率(如降低到1Hz),或是降低图像分辨率。然而,这两种方法均会严重影响图像处理算法的训练效果,甚至导致算法无法正常运转。
发明内容
针对上述现有技术中存在的技术问题,本发明的目的是提供一种适用于海上生活楼管道静压试压的封堵工具。
为实现本发明的目的,本发明提供了一种适用于自主驾驶仿真平台的快速图像存储方法,包括步骤一:将显存中存储的图像直接送入计算机内存。
其中,在步骤一之前,还包括步骤二:利用一个指向显存的指针标定显存中存储图像的区域。
其中,在步骤二之后,还包括步骤三:当显存图像存储到内存之中后,对其进行排序并处理。
其中,利用结构体进行顺序存储。
其中,为图像的存储和发送分配一个独立线程,实现异步存储和发送。
其中,利用线程分配功能,为图像的存储和发送分配一个独立线程。
其中,在独立线程中,将结构体从队列中取出,并根据用户设置存储为位图文件或通过套接字发送到网络。
相应地,还提出了一种适用于自主驾驶仿真平台的快速图像存储***,包括图像复制单元,所述图像复制单元用于将显存中存储的图像直接送入计算机内存。
其中,还包括图像排序单元,所述图像排序单元用于当显存图像存储到内存之中后,对其进行排序并处理。
其中,还包括独立线程单元,利用独立线程单元将结构体从队列中取出,并根据用户设置存储为位图文件或通过套接字发送到网络。
与现有技术相比,本发明的有益效果为,本发明能够在自主驾驶仿真平台上实现高速无损截图,提高了自主驾驶仿真平台的通用性,能够为深度学习算法开发提供更多、更加准确的训练数据。
附图说明
图1所示为本申请图像由显存复制至计算机内存示意图;
图2所示为本申请图像存储结构体示意图;
图3所示为本申请图像异步存储/发送示意图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
应当说明的是,本申请中所述的“连接”和用于表达“连接”的词语,如“相连接”、“相连”等,既包括某一部件与另一部件直接连接,也包括某一部件通过其他部件与另一部件相连接。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用属于“包含”和/或“包括”时,其指明存在特征、步骤、操作、部件或者模块、组件和/或它们的组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施方式例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,在这里可以使用空间相对术语,如“在……之上”、“在……上方”、“在……上表面”、“上面的”等,用来描述如在图中所示的一个部件或者模块或特征与其他部件或者模块或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了部件或者模块在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的部件或者模块被倒置,则描述为“在其他部件或者模块或构造上方”或“在其他部件或者模块或构造之上”的部件或者模块之后将被定位为“在其他部件或者模块或构造下方”或“在其他部件或者模块或构造之下”。因而,示例性术语“在……上方”可以包括“在……上方”和“在……下方”两种方位。该部件或者模块也可以其他不同方式定位(旋转90度或处于其他方位),并且对这里所使用的空间相对描述作出相应解释。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明通过充分利用当代CPU的多线程特性,完成图像的同步截取、异步存储。在保证高清图像存储的同时,不影响仿真***的整体帧率。
本发明提供的一种适用于自主驾驶仿真平台的快速图像存储方法,采用以下技术方案:
1、从显存复制到内存
通常,3D软件输出图像的方法为调用底层API将图像从GPU的存储器中传输至显示器。本发明利用一个指向显存的指针(如Unity3D中的RenderTexture(渲染贴图))标定显存中存储图像的区域,并将其直接送入计算机内存,如图1示。此过程不占用CPU计算资源,仅占用一部分内存数据传输带宽。
2、内存推入队列
当显存图像存储到内存之中后,需要对其进行排序并处理。
内存中,图像的存储方式为字节流,即按照字节存储图像。图像的红(R)、绿(G)、蓝(B)均为4字节浮点数。
如图2示,为了在存储时做到顺序存储,利用一个结构体,存储该帧图像渲染时的时间(精确到毫秒)以及该图片像素颜色,将此结构体推入队列,按照先进先出的原则进行处理。
3、异步存储/发送
为了不影响主线程,利用线程分配功能(如C#.Net Framework提供的Threading功能),为图像的存储和发送分配一个独立线程。在该线程中,***将结构体从队列中取出,并根据用户设置存储为位图文件或通过Socket(套接字)发送到网络。
如需存储为bmp位图文件,则在文件前增加54字节的BMP_HEADER(位图文件的文件头),如图3示。
文件头字节依次为:
byte 55
byte 66
uint图像宽度*图像高度*3+54
ushort 0
ushort 0
uint 54
uint 40
int图像宽度
int图像高度
ushort 1
ushort 24
uint 0
uint 0
int 0xB12
int 0xB12
uint 0
uint 0
与上述方法相对应地,本发明还提出了一种适用于自主驾驶仿真平台的快速图像存储***,包括图像复制单元,所述图像复制单元用于将显存中存储的图像直接送入计算机内存。
其中,还包括图像排序单元,所述图像排序单元用于当显存图像存储到内存之中后,对其进行排序并处理。
其中,还包括独立线程单元,利用独立线程单元将结构体从队列中取出,并根据用户设置存储为位图文件或通过Socket发送到网络。
应用示例:
本实施例中,测试计算机配置如下:
CPU:Intel Core i7-8700K。
GPU:Nvidia GTX 1080Ti。
内存:8GB。
固态硬盘剩余空间:500GB。
操作***:Windows 10
经测试,在以3840*2160的分辨率运行仿真***时,本发明能够以20帧/秒的速度捕捉和存储1920*1080像素的光学图像,并将其存储为无损压缩的24位位图文件。在进行截图的过程中,***帧率能够保持为约90帧/秒。
然而,如果采用传统的图像存储方法,图像捕捉速度、***帧率则大大下降:
1.JPEG压缩算法
JPEG图片占用硬盘空间较小,但JPEG压缩为有损压缩,会导致输出图像出现噪点和边缘模糊,对于图像识别特别是Ground Truth图像,这是致命的缺陷。同时,JPEG在压缩过程中需要大量计算,会导致***帧率降低。
经测试,在以3840*2160分辨率运行仿真***时,如采用JPEG压缩算法,仅能以5帧/秒的速度捕捉和存储1920*1080像素的光学图像。在进行截图的过程中,***帧率仅能达到20帧/秒。
2.PNG压缩算法
PNG为当前通用的网络图像压缩算法,其为有损压缩,但效果优于JPEG。但PNG在压缩过程中依然需要大量计算,导致***帧率降低。
经测试,在以3840*2160分辨率运行仿真***时,如采用PNG压缩算法,仅能以10帧/秒的速度捕捉和存储1920*1080像素的光学图像。在截图过程中,***帧率仅能达到25帧/秒。
以上所述仅是本发明的优选实施方式,应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,包括步骤一:将显存中存储的图像直接送入计算机内存。
2.根据权利要求1所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,在步骤一之前,还包括步骤二:利用一个指向显存的指针标定显存中存储图像的区域。
3.根据权利要求2所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,在步骤二之后,还包括步骤三:当显存图像存储到内存之中后,对其进行排序并处理。
4.根据权利要求3所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,利用结构体进行顺序存储。
5.根据权利要求3所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,为图像的存储和发送分配一个独立线程,实现异步存储和发送。
6.根据权利要求5所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,利用线程分配功能,为图像的存储和发送分配一个独立线程。
7.根据权利要求5所述的一种适用于自主驾驶仿真平台的快速图像存储方法,其特征在于,在独立线程中,将结构体从队列中取出,并根据用户设置存储为位图文件或通过套接字发送到网络。
8.一种适用于自主驾驶仿真平台的快速图像存储***,其特征在于,包括图像复制单元,所述图像复制单元用于将显存中存储的图像直接送入计算机内存。
9.根据权利要求8所述的一种适用于自主驾驶仿真平台的快速图像存储***,其特征在于,还包括图像排序单元,所述图像排序单元用于当显存图像存储到内存之中后,对其进行排序并处理。
10.根据权利要求9所述的一种适用于自主驾驶仿真平台的快速图像存储***,其特征在于,还包括独立线程单元,利用独立线程单元将结构体从队列中取出,并根据用户设置存储为位图文件或通过套接字发送到网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910280565.2A CN110012252A (zh) | 2019-04-09 | 2019-04-09 | 一种适用于自主驾驶仿真平台的快速图像存储方法以及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910280565.2A CN110012252A (zh) | 2019-04-09 | 2019-04-09 | 一种适用于自主驾驶仿真平台的快速图像存储方法以及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110012252A true CN110012252A (zh) | 2019-07-12 |
Family
ID=67170471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910280565.2A Pending CN110012252A (zh) | 2019-04-09 | 2019-04-09 | 一种适用于自主驾驶仿真平台的快速图像存储方法以及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110012252A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115589527A (zh) * | 2022-11-23 | 2023-01-10 | 禾多科技(北京)有限公司 | 自动驾驶图像发送方法、装置、电子设备和计算机介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102628956A (zh) * | 2011-04-08 | 2012-08-08 | 中国科学院地质与地球物理研究所 | Gpu/cpu协同方式可控震源数据相关处理设备及方法 |
CN102831629A (zh) * | 2012-08-23 | 2012-12-19 | 汕头市东方超声科技有限公司 | 基于图形处理器的乳腺ct图像重建方法 |
CN105719333A (zh) * | 2014-12-02 | 2016-06-29 | 上海联影医疗科技有限公司 | 三维图像数据处理方法及装置 |
CN106293953A (zh) * | 2015-06-08 | 2017-01-04 | 龙芯中科技术有限公司 | 一种访问共享显示数据的方法及*** |
CN107807542A (zh) * | 2017-11-16 | 2018-03-16 | 北京北汽德奔汽车技术中心有限公司 | 自动驾驶仿真*** |
CN107870334A (zh) * | 2017-10-27 | 2018-04-03 | 西安电子科技大学昆山创新研究院 | 基于嵌入式gpu的单像素激光雷达成像装置及成像方法 |
CN109213763A (zh) * | 2018-08-15 | 2019-01-15 | 武汉中海庭数据技术有限公司 | 车载激光扫描点云的组织管理方法及*** |
-
2019
- 2019-04-09 CN CN201910280565.2A patent/CN110012252A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102628956A (zh) * | 2011-04-08 | 2012-08-08 | 中国科学院地质与地球物理研究所 | Gpu/cpu协同方式可控震源数据相关处理设备及方法 |
CN102831629A (zh) * | 2012-08-23 | 2012-12-19 | 汕头市东方超声科技有限公司 | 基于图形处理器的乳腺ct图像重建方法 |
CN105719333A (zh) * | 2014-12-02 | 2016-06-29 | 上海联影医疗科技有限公司 | 三维图像数据处理方法及装置 |
CN106293953A (zh) * | 2015-06-08 | 2017-01-04 | 龙芯中科技术有限公司 | 一种访问共享显示数据的方法及*** |
CN107870334A (zh) * | 2017-10-27 | 2018-04-03 | 西安电子科技大学昆山创新研究院 | 基于嵌入式gpu的单像素激光雷达成像装置及成像方法 |
CN107807542A (zh) * | 2017-11-16 | 2018-03-16 | 北京北汽德奔汽车技术中心有限公司 | 自动驾驶仿真*** |
CN109213763A (zh) * | 2018-08-15 | 2019-01-15 | 武汉中海庭数据技术有限公司 | 车载激光扫描点云的组织管理方法及*** |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115589527A (zh) * | 2022-11-23 | 2023-01-10 | 禾多科技(北京)有限公司 | 自动驾驶图像发送方法、装置、电子设备和计算机介质 |
CN115589527B (zh) * | 2022-11-23 | 2023-06-27 | 禾多科技(北京)有限公司 | 自动驾驶图像发送方法、装置、电子设备和计算机介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ying et al. | Patch-vq:'patching up'the video quality problem | |
US11537873B2 (en) | Processing method and system for convolutional neural network, and storage medium | |
CN109685072A (zh) | 一种基于生成对抗网络的复合降质图像高质量重建方法 | |
CN110148085A (zh) | 人脸图像超分辨率重建方法及计算机可读取的存储介质 | |
CN110035328A (zh) | 动态抖动和延迟容忍渲染 | |
CN104768009B (zh) | 一种桌面虚拟化spice协议下的图像传输方法 | |
CN110956202A (zh) | 基于分布式学习的图像训练方法、***、介质及智能设备 | |
DE102021207678A1 (de) | Streamen eines komprimierten lichtfelds | |
CN108229346B (zh) | 使用有符号的前景提取与融合的视频摘要 | |
CN109961404A (zh) | 一种基于gpu并行计算的高清视频图像增强方法 | |
DE102021127982A1 (de) | Streaming eines lichtfeldes mit verlustfreier oder verlustbehafteter kompression | |
CN107665128A (zh) | 图像处理方法、***、服务器及可读存储介质 | |
CN109389667A (zh) | 一种基于深度学习的高效全局光照明绘制方法 | |
US20170206633A1 (en) | Method and apparatus for up-scaling an image | |
CN112686172A (zh) | 机场跑道异物检测方法、装置及存储介质 | |
CN109523558A (zh) | 一种人像分割方法及*** | |
CN110428382A (zh) | 一种用于移动终端的高效视频增强方法、装置和存储介质 | |
CN110012252A (zh) | 一种适用于自主驾驶仿真平台的快速图像存储方法以及*** | |
CN115147383A (zh) | 一种基于轻量化YOLOv5模型的绝缘子状态快速检测方法 | |
CN108540799A (zh) | 一种可以精确表示一个视频文件两帧图像之间差异的压缩方法 | |
CN112991412B (zh) | 一种液晶仪表序列帧动画性能优化方法及液晶仪表 | |
CN113205599A (zh) | 一种视频三维融合时gpu加速的视频纹理更新方法 | |
CN106600656A (zh) | 图形渲染方法和装置 | |
US20230131366A1 (en) | Computer-implemented method for completing an image | |
WO2022257184A1 (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 |