CN115474077A - 视频传输方法、装置、车端控制器和存储介质 - Google Patents
视频传输方法、装置、车端控制器和存储介质 Download PDFInfo
- Publication number
- CN115474077A CN115474077A CN202211081649.1A CN202211081649A CN115474077A CN 115474077 A CN115474077 A CN 115474077A CN 202211081649 A CN202211081649 A CN 202211081649A CN 115474077 A CN115474077 A CN 115474077A
- Authority
- CN
- China
- Prior art keywords
- video
- compressor
- code rate
- data
- target
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 267
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000013139 quantization Methods 0.000 claims abstract description 51
- 238000004891 communication Methods 0.000 claims abstract description 44
- 238000010295 mobile communication Methods 0.000 claims abstract description 24
- 238000007906 compression Methods 0.000 claims description 145
- 230000006835 compression Effects 0.000 claims description 143
- 238000004590 computer program Methods 0.000 claims description 25
- 238000001914 filtration Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 239000013598 vector Substances 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000006837 decompression Effects 0.000 description 5
- 230000003247 decreasing effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 102100027556 39S ribosomal protein L17, mitochondrial Human genes 0.000 description 2
- 101100455541 Drosophila melanogaster Lsp2 gene Proteins 0.000 description 2
- 101000924474 Homo sapiens Annexin A2 Proteins 0.000 description 2
- 101000984710 Homo sapiens Lymphocyte-specific protein 1 Proteins 0.000 description 2
- 101001064282 Homo sapiens Platelet-activating factor acetylhydrolase IB subunit beta Proteins 0.000 description 2
- 102100027105 Lymphocyte-specific protein 1 Human genes 0.000 description 2
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 description 2
- 101100343498 Mus musculus Lipn gene Proteins 0.000 description 2
- 102100030655 Platelet-activating factor acetylhydrolase IB subunit beta Human genes 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 102100023441 Centromere protein J Human genes 0.000 description 1
- 101000907924 Homo sapiens Centromere protein J Proteins 0.000 description 1
- 101000693082 Homo sapiens Serine/threonine-protein kinase 11-interacting protein Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- YAFQFNOUYXZVPZ-UHFFFAOYSA-N liproxstatin-1 Chemical compound ClC1=CC=CC(CNC=2C3(CCNCC3)NC3=CC=CC=C3N=2)=C1 YAFQFNOUYXZVPZ-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234354—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering signal-to-noise ratio parameters, e.g. requantization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440218—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440254—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering signal-to-noise parameters, e.g. requantization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440281—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44245—Monitoring the upstream path of the transmission network, e.g. its availability, bandwidth
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4621—Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请涉及一种视频传输方法、装置、车端控制器和存储介质。所述方法包括:获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。采用本方法能够在远程驾驶视频传输的场景下,改善视频输出质量。
Description
技术领域
本申请涉及视频传输技术领域,特别是涉及一种视频传输方法、装置、车端控制器、存储介质和计算机程序产品。
背景技术
随着视频传输技术的发展,出现了多信道传输(MIMO,全称为Multiple InputMultiple Out)技术,多信道传输技术能够解决因信道受到干扰而造成的网络无法访问问题,还能够聚合更多的传输资源,从而保证了视频传输的鲁棒性。
传统的视频传输方法通过多信道传输技术在有限的空间范围内进行视频传输,提高了视频传输的准确性和可靠性。然而,在远程驾驶视频传输的场景下,随着车辆行驶区域的变化,车辆行驶区域的网络状况也会发生变化。若仍采用传统的视频传输方法进行视频传输,会存在由于未考虑网络状态的变化对视频传输的影响而导致的视频输出质量受限的问题,尤其是当车辆行驶到网络状况不好的区域时,会出现视频传输中断、视频卡顿等问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够改善视频输出质量的视频传输方法、装置、车端控制器、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种视频传输方法,由车端控制器执行,所述方法包括:
获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;
通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;
将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
在其中一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第一压缩比阈值,则确定压缩器的视频码率达到第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第二压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在其中一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第三压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第四压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在其中一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第五压缩比阈值,并通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第六压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第七压缩比阈值,并通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第八压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在其中一个实施例中,在通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据之前,所述方法还包括:获取路况视频,路况视频由车载摄像头对车辆行驶环境进行拍摄得到;通过对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离散小波变换,得到第一数量的离散小波数据;通过运动补偿滤波器对离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据;通过多状态描述编码将滤波数据中每个滤波数据拆解为第二数量的带冗余的描述数据,得到第三数量的带冗余的描述数据,第三数量为第一数量和第二数量的乘积;通过编码算法将带冗余的描述数据中每个带冗余的描述数据按照离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,第四数量为第一数量和第三数量的乘积,并将节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据。
在其中一个实施例中,将目标视频数据通过传输链路发送至远端服务器,包括:获取车辆的位置信息;根据车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域;在确定车辆行驶环境所属的区域为第一区域的情况下,确定传输链路为车载移动通信设备与远端服务器之间的传输链路,并将目标视频数据通过传输链路发送至远端服务器;在确定车辆行驶环境所属的区域为第二区域的情况下,确定传输链路为车载无线电台设备与远端服务器间的传输链路,并将目标视频数据通过传输链路发送至远端服务器。
第二方面,本申请还提供了一种视频传输装置。所述装置包括:
获取模块,用于获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
调整模块,用于根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;
压缩模块,用于通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;
传输模块,用于将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
第三方面,本申请还提供了一种车端控制器。所述车端控制器包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;
通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;
将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;
通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;
将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;
通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;
将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
上述视频传输方法、装置、车端控制器、存储介质和计算机程序产品,通过获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。相比于传统的视频传输方法,本申请中车端控制器的编码速率和远端服务器的解码速率都是目标码率,也就是与传输链路的信号强度相适应的码率,因此,通过解码器按照目标码率对目标视频数据进行解压得到的路况视频的质量相比于采用传统的视频传输方法得到的输出视频的质量更高,能够达到在远程驾驶视频传输的场景下,改善视频输出质量的目的,避免当车辆行驶到网络状况不好的区域时出现的视频传输中断、视频卡顿等问题,提高了远程驾驶视频传输的可靠性。
附图说明
图1为一个实施例中视频传输方法的应用环境图;
图2为一个实施例中视频传输方法的流程示意图;
图3为一个实施例中视频编码步骤的流程示意图;
图4为一个实施例中视频传输系统的结构框图;
图5为另一个实施例中视频传输方法的流程示意图;
图6为一个实施例中视频传输装置的结构框图;
图7为一个实施例中车端控制器的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的视频传输方法,可以应用于如图1所示的应用环境中。其中,车端控制器102通过传输链路与远端服务器104进行通信。车端控制器102获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;将目标视频数据通过传输链路发送至远端服务器104,以指示远端服务器104通过解码器按照目标码率对目标视频数据进行解压。
其中,车端控制器102是安装在车辆上的控制器,用于对路况视频进行编码和压缩,得到目标视频数据,并将目标视频数据传输至远端服务器104。远端服务器104也可以称作舱端服务器,可以用独立的服务器或者是多个服务器组成的服务器集群来实现,用于接收车端控制器102发送的目标视频数据,对目标视频数据进行解压缩和解码,并通过显示器向远程驾驶舱的驾驶员展示路况,远程驾驶舱包括驾驶模拟器(例如方向盘、油门、刹车)、座椅和显示器等。
应当理解的是,本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。除非上下文另外清楚地指出,否则单数形式的“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。
在一个实施例中,如图2所示,提供了一种视频传输方法,以该方法应用于图1中的车端控制器为例进行说明,包括以下步骤:
步骤202,获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种。
其中,传输链路是按照通信协议连接两个或多个结点的电信设施,用于收发数据。传输链路的信号强度是射频发送端(车辆行驶环境中的基站或者无线终端)处的功率,单位是dBm,计算公式是:dBm=10log(p/1mw)。例如无线路由器的功率是100mw,则它发射的信号强度是20dBm。传输链路的信号强度的绝对值越小,传输链路的信号越强,车端控制器和远端服务器使用的网络的状况越好。在传输链路的信号强度大于预设值的情况下,传输链路的信号强,也就是网络状况好,在传输链路的信号强度不小于预设值的情况下,传输链路的信号弱,也就是网络状况不好。预设值是根据视频传输需求预先设定的,本申请实施例对此不作限定。例如,取-90dBm作为传输链路的信号强度的预设值,当信号强度不小于-90dBm时,例如-40dBm,表示信号强、网络状况好;当信号强度小于-90dBm时,例如-100dBm,表示信号弱、网络状况不好。
车载移动通信设备,例如5G CPE(全称为Customer Premise Equipment,客户前置设备),安装在车辆上,用于从运营商的基站接收信号(例如4G或5G信号)并将其转换为WiFi或有线信号,通过转换后的WiFi或有线信号接入互联网并与远端服务器进行通信,相比于只能在固定位置使用的光网络单元设备,车载移动通信设备只要能够从运营商的基站接收信号,就可以实现联网。车载无线电台设备,例如车载背负式电台,安装在车辆上,用于通过低频率电磁波与远端服务器进行通信,具备传播距离远的优势。
具体地,车端控制器获取通信设备与远端服务器之间的传输链路的信号强度,并判断传输链路的信号强度是否大于预设值。当传输链路的信号强度小于预设值时,表示车端控制器和远端服务器使用的信号强;当传输链路的信号强度不小于预设值时,表示车端控制器和远端服务器使用的信号弱或者传输链路中断。
步骤204,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率。
其中,压缩器的输入信号为视频编码数据,输出信号为目标视频数据,用于调整视频编码数据的比特值与目标视频数据的比特值的比例,以使得目标视频数据的码率与传输链路的信号强度相适应(例如成正比关系)。视频码率为压缩器的输出信号的码率(也称作车端控制器的编码速率),目标码率是目标视频数据的码率,也就是与传输链路的信号强度相适应的码率。
量化参数(Quantitative Parameters,简称QP)是压缩器压缩视频编码数据的参数,量化参数越小,压缩器的压缩比越大,压缩器的视频码率越小。关键帧周期是图像组(Group of Picture,简称GOP)中两个相邻的IDR帧(Instantaneous Decoding Refresh,即时解码刷新,也就是每个GOP的第一个I帧)之间的距离。关键帧周期越大,压缩器的压缩比越大,压缩器的视频码率越小。
图像组由多个连续的帧组成,包括至少一个关键帧(也称作I帧),还可以包括前向预测编码帧(也称作P帧)和双向预测内插编码帧(也称作B帧)。其中,I帧是帧间压缩编码里的重要帧,解码时仅用I帧的数据就可重构完整图像,不需要参考其他画面而生成最终画面。P帧记录的当前帧与在当前帧之前的一个I帧(或P帧)的差别,解码时需要用在当前帧之前缓存的画面叠加上当前帧数据的差别,生成最终画面。B帧是参考前后的帧编码的帧,B帧记录的是当前帧与其前后帧的差别,解码时不仅要取得在当前帧之前的缓存画面,还要解码在当前帧之后的画面,通过前后画面的与当前帧数据的叠加而生成最终画面。
具体地,车端控制器根据传输链路的信号强度,确定目标码率;通过仅调整压缩器的量化参数、仅调整压缩器的视频码率、或者同时调整压缩器的量化参数和压缩器的视频码率,调整压缩器的视频码率为目标码率。
在一个实施例中,根据传输链路的信号强度,确定目标码率,可以是根据预先设定的传输链路的信号强度和压缩器的视频码率的对应关系,确定与获取到的当前传输链路的信号强度对应的压缩器的视频码率,即目标码率。其中,传输链路的信号强度和压缩器的视频码率的对应关系可以是根据历史数据分析得到的,本申请实施例对此不作限定。
步骤206,通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流。
其中,视频编码数据是对预设周期内采集的连续的车辆行驶环境图像(也称作路况视频)编码后的数据流。目标视频数据是经过编码和压缩后的、与传输链路的信号强度相适应(例如成正比关系)的视频数据,用于发送至远端服务器,以使得远端服务器通过对目标视频数据进行解压缩和解码得到实时的路况视频。车辆行驶环境是指车辆的地理位置所在的区域,在远程驾驶场景下,车辆行驶环境是变化的,因此,车辆行驶环境包括第一区域和第二区域,第一区域是移动通信网络全面覆盖的区域,例如覆盖有5G信号的城市和高速公路。第二区域是移动通信网络部分覆盖或者未覆盖的区域,例如封闭园区、无5G基站的山林和沙漠。
具体地,车端控制器通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据。
步骤208,将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
其中,解码器的输入信号为目标视频数据,输出信号为路况视频,用于调整目标视频数据的比特值与路况视频的比特值的比例,以使得目标视频数据能够被解压缩和解码得到路况视频。解码器的输出信号的码率(也称作远端服务器的解码速率)和车端控制器的编码速率相同,也是目标码率。
具体地,当车辆行驶在第一区域时,传输链路为车载移动通信设备与远端服务器之间的传输链路,车端控制器将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压缩和解码,得到实时的路况视频;当车辆行驶在第二区域时,传输链路为车载无线电台设备与远端服务器之间的传输链路,车端控制器将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压缩和解码,得到实时的路况视频。
上述视频传输方法中,通过获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率;通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流;将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。相比于传统的视频传输方法,本实施例中车端控制器的编码速率和远端服务器的解码速率都是目标码率,也就是与传输链路的信号强度相适应的码率,因此,通过解码器按照目标码率对目标视频数据进行解压得到的路况视频的质量相比于采用传统的视频传输方法得到的输出视频的质量更高,能够达到在远程驾驶视频传输的场景下,改善视频输出质量的目的,避免当车辆行驶到网络状况不好的区域时出现的视频传输中断、视频卡顿等问题,提高了远程驾驶视频传输的可靠性。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第一压缩比阈值,则确定压缩器的视频码率达到第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第二压缩比阈值,则确定压缩器的视频码率为第二目标码率。
其中,压缩器中当前帧的量化参数(QP)与压缩器中位于当前帧前面的视频帧的帧数(α)和压缩器中位于当前帧后面的视频帧的帧数(β)均正比关系,压缩器中当前帧的量化参数(QP)还与当前帧中存储每个像素点所用的字节数(bpp)成正比关系,QP与α、β、bpp的正比关系可以用以下公式表示:
QP=4.2005lnλ+13.7122,λ=α·bppβ,bpp=TTarget/Npixels
上述公式中,λ为中间参数,bpp为当前帧中存储每个像素点所用的字节数,TTarget为存储目标帧数所用的字节数,Npixels为当前帧所被编码的像素点的数量。其中,按照目标帧率(Frame rate)=目标帧数(Frames)/时间(Time),单位为帧每秒(f/s,frames persecond,fps)。目标帧数是目标帧率和时间的乘积。目标帧率即压缩器的视频帧率。例如,目标帧率为60帧每秒(fps),则在一秒钟内的目标帧数为60帧,两秒钟内的目标帧数为120帧。
第一目标码率为与小于预设值的传输链路的信号强度相适应的码率,第一目标码率可以是一个数值,也可以是一个数值范围。第二目标码率为与不小于预设值的传输链路的信号强度相适应的码率,第二目标码率可以是一个数值,也可以是一个数值范围。
在第一目标码率为一个数值的情况下,第一压缩比阈值是与第一目标码率对应的压缩器的压缩比。在第一目标码率为一个数值范围的情况下,第一压缩比阈值为与第一目标码率中的最小值对应的压缩器的压缩比。在第二目标码率为一个数值的情况下,第二压缩比阈值是与第二目标码率对应的压缩器的压缩比。在第二目标码率为一个数值范围的情况下,第二压缩比阈值为与第二目标码率中的最大值对应的压缩器的压缩比。
例如预设值为-90dBm,目标码率与传输链路的信号强度成正比且正比关系包括:当传输链路的信号强度大于-110dBm且小于-90dBm时,第一目标码率为大于1kbit/s且小于3kbit/s,正比关系还包括:当传输链路的信号强度大于-60dBm且小于-30dBm时,第二目标码率为大于100kbit/s且小于120kbit/s。第一压缩比阈值为与1kbit/s对应的压缩器的压缩比,第二压缩比阈值为与120kbit/s对应的压缩器的压缩比。
具体地,车端控制器在传输链路的信号强度小于预设值的情况下,根据传输链路的信号强度,确定第一目标码率,通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第一压缩比阈值,则确定压缩器的视频码率达到第一目标码率;在传输链路的信号强度不小于预设值的情况下,根据传输链路的信号强度,确定第二目标码率,通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第二压缩比阈值,则确定压缩器的视频码率为第二目标码率。
本实施例中,通过将传输链路的信号强度分为小于预设值和不小于预设值这两种情况,在这两种情况下通过分别调整压缩器的量化参数,能够达到在传输链路的信号弱的情况下,调整压缩器的视频码率为第一目标码率的目的,从而保证了输出视频的质量;以及能够达到在传输链路的信号强的情况下,调整压缩器的视频码率为第二目标码率的目的,从而实现了信道带宽的充分利用,即在传输链路的信号强和信号弱这两种情况下,都能够达到车端控制器的编码速率自适应当前网络状况,从而能够达到在远程驾驶视频传输的场景下,改善视频输出质量的目的。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第三压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第四压缩比阈值,则确定压缩器的视频码率为第二目标码率。
其中,压缩器的视频帧率(FR)与压缩器的关键帧周期(Nintra-period)成正比关系,FR与Nintra-period的正比关系可以用以下公式表示:
Nintra-period=4×round(FR/SF)
上述公式中,round函数用于按指定的位数对数值进行四舍五入,SF为比例因子,与车端控制器的编码速率和远端服务器的解码速率调整的时间尺度有关,是根据视频传输需求预先设定的,本申请实施例对此不作限定。例如,取SF为16和FR为50,此时Nintra-period为12。
在第一目标码率为一个数值的情况下,第三压缩比阈值是与第一目标码率对应的压缩器的压缩比。在第一目标码率为一个数值范围的情况下,第三压缩比阈值为与第一目标码率中的最小值对应的压缩器的压缩比。在第二目标码率为一个数值的情况下,第四压缩比阈值是与第二目标码率对应的压缩器的压缩比。在第二目标码率为一个数值范围的情况下,第四压缩比阈值为与第二目标码率中的最大值对应的压缩器的压缩比。
具体地,车端控制器在传输链路的信号强度小于预设值的情况下,根据传输链路的信号强度,确定第一目标码率,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第三压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,根据传输链路的信号强度,确定第二目标码率,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第四压缩比阈值,则确定压缩器的视频码率为第二目标码率。
本实施例中,通过将传输链路的信号强度分为小于预设值和不小于预设值这两种情况,在这两种情况下通过分别调整压缩器的关键帧周期,能够达到在传输链路的信号弱的情况下,调整压缩器的视频码率为第一目标码率的目的,从而保证了输出视频的质量;以及能够达到在传输链路的信号强的情况下,调整压缩器的视频码率为第二目标码率的目的,从而实现了信道带宽的充分利用,即在传输链路的信号强和信号弱这两种情况下,都能够达到车端控制器的编码速率自适应当前网络状况,从而能够达到在远程驾驶视频传输的场景下,改善视频输出质量的目的。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率,包括:在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第五压缩比阈值,并通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第六压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第七压缩比阈值,并通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第八压缩比阈值,则确定压缩器的视频码率为第二目标码率。
其中,第六压缩比阈值大于第五压缩比阈值,第八压缩比阈值小于第七压缩比阈值。在第一目标码率为一个数值的情况下,第五压缩比阈值和第六压缩比阈值均是与第一目标码率对应的压缩器的压缩比。在第一目标码率为一个数值范围的情况下,第五压缩比阈值和第六压缩比阈值均为与第一目标码率中的最小值对应的压缩器的压缩比。在第二目标码率为一个数值的情况下,第七压缩比阈值和第八压缩比阈值均是与第二目标码率对应的压缩器的压缩比。在第二目标码率为一个数值范围的情况下,第七压缩比阈值和第八压缩比阈值均为与第二目标码率中的最大值对应的压缩器的压缩比。
具体地,车端控制器在传输链路的信号强度小于预设值的情况下,根据传输链路的信号强度,确定第一目标码率,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第五压缩比阈值,并通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第六压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,根据传输链路的信号强度,确定第二目标码率,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第七压缩比阈值,并通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第八压缩比阈值,则确定压缩器的视频码率为第二目标码率。
例如,取-90dBm作为传输链路的信号强度的预设值,当传输链路的信号强度小于-90dBm时,通过先调大压缩器的视频帧率FR以增大压缩器的I帧周期,直至压缩器的压缩比增大至压缩比阈值A1,此时I帧周期为12,然后调小位于当前帧前面的视频帧的帧数α和位于当前帧后面的视频帧的帧数β,直至压缩器的压缩比增大至压缩比阈值A2(A2大于A1),此时α和β均为10,能够达到将压缩器的视频码率调小至第一目标码率的目的,从而保证了输出视频的质量。
当传输链路的信号强度大于-90dBm时,通过先调小压缩器的视频帧率FR以减小压缩器的I帧周期,直至压缩器的压缩比减小至压缩比阈值B1,此时I帧周期为6,然后调大位于当前帧前面的视频帧的帧数α和位于当前帧后面的视频帧的帧数β,直至压缩器的压缩比减小至压缩比阈值B2(B2小于B1),此时α和β均为20,能够达到将压缩器的视频码率调大至第二目标码率的目的,从而保证了输出视频的质量,实现了信道带宽的充分利用。
本实施例中,通过将传输链路的信号强度分为小于预设值和不小于预设值这两种情况,在这两种情况下通过分别调整压缩器的关键帧周期和量化参数,能够达到在传输链路的信号弱的情况下,调整压缩器的视频码率为第一目标码率的目的,从而保证了输出视频的质量;以及能够达到在传输链路的信号强的情况下,调整压缩器的视频码率为第二目标码率的目的,从而实现了信道带宽的充分利用,即在传输链路的信号强和信号弱这两种情况下,都能够达到车端控制器的编码速率自适应当前网络状况,从而能够达到在远程驾驶视频传输的场景下,改善视频输出质量的目的。相比于通过仅调整压缩器的关键帧周期或仅调整压缩器的量化参数,本实施例中通过先调整压缩器的关键帧周期再调整压缩器的量化参数,改善视频输出质量的效果更明显。
在一个实施例中,如图3所示,在通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据之前,所述方法还包括:
步骤302,获取路况视频,路况视频由车载摄像头对车辆行驶环境进行拍摄得到。
其中,车载控制器与车载摄像头连接,车载摄像头用于对车辆行驶环境进行拍摄,得到路况视频,并将路况视频发送至车端控制器。
具体地,车端控制器通过车载摄像头获取路况视频。
步骤304,通过对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离散小波变换,得到第一数量的离散小波数据。
其中,离散小波变换(DWT,全称为Discrete Wavelet Transformation)是对连续小波变换的尺度、位移按照2的幂次进行离散化得到的。对每帧进行一次离散小波变换,是将每帧分别通过一次高通滤波器和一次低通滤波器,得到每帧的两个离散小波数据:边缘特征(H)和近似帧特征(L),其中,高通滤波器用于提取图像的边缘特征,低通滤波器用于图像近似,近似帧为输入帧的近似帧,可以理解为压缩过的输入帧,或者信息有损失的输入帧。对每帧进行两次离散小波变换,是将每帧先分别通过一次低通滤波器和一次高通滤波器,然后再分别通过一次低通滤波器和一次高通滤波器,得到每帧的四个离散小波数据:近似帧特征(LL)、纵向边缘特征(HL)、横向边缘特征(LH)和对角特征(HH),其中,近似帧特征(LL)是输入帧的近似帧的图像特征,可以理解为输入帧的模糊信息。
目标层级是对每帧进行离散小波变换的次数,根据视频传输需求预先设定的,可以为1、2、3或者更多。目标层级越大,得到的离线小波数据越多,有助于降低误码率。例如目标层级为6级(6-level),则对每帧进行6次离散小波变换,得到1个近似帧特征(LL)、6个不同的纵向边缘特征(HL)、6个不同的横向边缘特征(LH)和6个不同的对角特征(HH),一共19个离线小波数据,也就是第一数量为19。
第一数量与目标层级成正比关系,第一数量与目标层级的正比关系可以是:第一数量=目标层级*3+1。
具体地,车端控制器对路况视频进行拆分,得到以图像组为基本单位的多个图像组,每个图像组由多个连续的帧组成。车端控制器通过对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离线小波变换,得到第一数量的离散小波数据。
步骤306,通过运动补偿滤波器对离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据。
其中,运动补偿滤波器也称作运动补偿时域滤波器(Motion CompensatedTemporal Filter,MCTF),是一种编码前处理工具,即当视频帧进行编码前,对该帧进行时域滤波,以消除经过目标层级的离线小波变换后得到的第一数量的离散小波数据中的噪声。
具体地,车端控制器通过运动补偿滤波器对离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据。
步骤308,通过多状态描述编码将滤波数据中每个滤波数据拆解为第二数量的带冗余的描述数据,得到第三数量的带冗余的描述数据,第三数量为第一数量和第二数量的乘积。
其中,多状态描述编码(Mutiple description coding,MDC)是将图像编码为多个描述,并使用任一个描述都能重构图像的编码方法。带冗余的描述是在将每个滤波数据拆解为第二数量的描述的基础上,通过在间隙补零得到的,带冗余的描述和不带冗余的描述的关系可以用以下公式表示:
yi=Ii+Ijp+I(j+1)p。
上述公式中,yi为带冗余的描述,Ii为不带冗余的描述,i的取值为大于等于0并且小于等于n的正整数,n为正整数;Ijp为第j个冗余的描述(表示在第j个间隙增加p个零而得到的描述),I(j+1)p为第(j+1)个冗余的描述(表示在第(j+1)个间隙增加p个零而得到的描述),p为补零数,p的取值为正整数,j为间隙序数,j的取值为小于n的正整数。
具体地,车端控制器通过多状态描述编码将滤波数据中每个滤波数据拆解为第二数量的描述,并以设定的规律将数字零增加至第二数量的描述中,得到第三数量的带冗余的描述数据,第三数量为第一数量和第二数量的乘积。
步骤310,通过编码算法将带冗余的描述数据中每个带冗余的描述数据按照离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,第四数量为第一数量和第三数量的乘积,并将节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据。
其中,编码算法为3d-SPIHT(多级树集合分裂算法,Set Partitioning InHierarchical Trees)算法,是将图像按空间方向树的结构进行编码,生成三张链表,三张链表为有序表,用于按顺序存放信息,包括不重要系数表(LIP,全称为the list ofinsignificant pixels)、不重要集合表(LIS,全称为the list of insiginificantsets)、重要系数表(LSP,全称为the list of significant pixels)。第一系数描述数据、第二系数描述数据和第三系数描述数据分别是不重要系数描述数据、不重要集合描述数据、重要系数描述数据。
具体地,车端控制器通过编码算法将带冗余的描述数据中每个带冗余的描述数据按照离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,第四数量为第一数量和第三数量的乘积;并将节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据。
本实施例中,通过车载摄像头获取路况视频,对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离散小波变换,得到第一数量的离散小波数据,提前降低了信道传输的误码率;通过运动补偿滤波器对离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据,能够减少在视频压缩过程之前,消除各种类型的噪声,以避免这些噪声在压缩和解压过程中被放大;通过多状态描述编码将滤波数据中每个滤波数据拆解为第二数量的带冗余的描述数据,得到第三数量的带冗余的描述数据,多状态描述编码能够在信道传输错误的情况下,恢复丢失的比特信息流,保证视频传输的质量;通过编码算法将带冗余的描述数据中每个带冗余的描述数据按照离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,并将节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据,能够达到由路况视频经过编码得到视频编码数据的目的。
在一个实施例中,将目标视频数据通过传输链路发送至远端服务器,包括:获取车辆的位置信息;根据车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域;在确定车辆行驶环境所属的区域为第一区域的情况下,确定传输链路为车载移动通信设备与远端服务器之间的传输链路,并将目标视频数据通过传输链路发送至远端服务器;在确定车辆行驶环境所属的区域为第二区域的情况下,确定传输链路为车载无线电台设备与远端服务器间的传输链路,并将目标视频数据通过传输链路发送至远端服务器。
具体地,车端控制器获取车辆的位置信息;根据车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域;在确定车辆行驶环境所属的区域为第一区域的情况下,确定传输链路为车载移动通信设备与远端服务器之间的传输链路,并通过传输链路向远端服务器发送目标视频数据;在确定车辆行驶环境所属的区域为第二区域的情况下,确定传输链路为车载无线电台设备与远端服务器之间的传输链路,并通过传输链路向远端服务器发送目标视频数据。
本实施例中,通过获取车辆的位置信息,根据车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域,在车辆行驶在第一区域和车辆行驶在第二区域这两种情况下,分别确定传输链路为车载移动通信设备与远端服务器之间的传输链路、传输链路为车载无线电台设备与远端服务器之间的传输链路,并分别通过传输链路向远端服务器发送目标视频数据,采用冗余设计的传输链路进行通信,能够保证车辆在不同的车辆行驶环境下,均能实现远程驾驶视频传输,保证了远程驾驶视频传输的可靠性。
在一个实施例中,提供了一种视频传输方法,应用于如图4所示的视频传输系统。视频传输系统包括摄像头、车端控制器、与车端控制器连接的交换机、通信设备、与远端服务器连接的交换机、远端服务器(即图4中的服务器)、显示器。
车辆在车端装有GNSS(全称为Global Navigation Satellite System,全球导航卫星系统)摄像头,GNSS摄像头连接车端控制器,用于采集路况视频,其中路况视频是预设周期内的车辆行驶环境的视频。车辆在车端装有车辆控制器,用于对路况视频进行编码,得到视频编码数据,并对视频编码数据进行压缩,得到目标视频数据,然后通过通信设备传输到远端服务器进行解压、解码,最后通过显示器显示出GNSS摄像头所采集的路况视频。
通信设备有两种:5G CPE(上述实施例中的车载移动通信设备)和背负式电台(上述实施例中的车载无线电台设备),对应两种无线通信模式,一个是基于5G传输,另一种是基于无线电传输。这两种无线通信模式是针对两种应用场景:一个是有5G基站并且可以访问5G网络的场景,例如当车辆行驶在城市和高速公路时,通常使用5G进行通信,主要是因为5G通信技术具有超高带宽和低时延的优点;一个是无5G基站的场景,例如当车辆行驶在封闭园区、沙漠、山林或周围无5G基站的区域时,通常使用车辆自带的背负式电台进行通讯,主要是因为背负式电台具有传播距离远的优势,但是相比于5G通信,它的带宽小,成本高,延时大。
图5所示,本实施例提供的视频传输方法包括:车端控制器从GNSS摄像头提取视频流,然后分成多组GOP进行离散小波变换,运动补偿器去除噪声,MDC结合3d-SPIHT算法应用进行多状态描述降低误码率,最后再用H.265视频压缩标准进行视频压缩,最终远端服务器接收到数据后进行H.265解压和MDC解码、然后经过运动补偿滤波器和离散小波逆变换进行视频重构,最后通过显示器显示出来。
当传输链路的信号强度小于-90dBm(也可以是网络延时>1000ms,表示网络通信条件不足以支持远程视频传输),通过调大压缩器的视频帧率FR以提升I帧周期到12,预处理编码帧数α(上述实施例中的位于当前帧前面的视频帧的帧数)和β(上述实施例中的位于当前帧后面的视频帧的帧数)均调小到10,传输更少的数据花费大量计算资源、并且保证了视频质量。当传输链路的信号强度大于-90dBm,调小压缩器的视频帧率FR以降低I帧周期到6,预处理帧数α和β均调大到20,传输更多的数据花费少量的计算资源、并且保证了视频质量。计算资源用于表征车端控制器的处理数据能力,传统技术存在车端控制器的计算资源受限的问题,主要是芯片设计限制,本实施例中远程驾驶省下的计算资源同时能够被自动驾驶支配。同时,计算资源对于车端控制器的耗电量也有影响,花费的计算资源越少,实现远程驾驶视频传输的成本越低。
下面就车端控制器实现离散小波变换DWT、运动补偿滤波器、MDC编码、3d-SPIHT编码、H.265压缩和OFDM-MIMO进行详细说明。远端服务器实现H.265解压缩、3d-SPIHT解码、MDC解码、运动补偿滤波器、IDWT离散小波逆变换以还原车端控制器采集的视频图像的方案与车控控制器实现上述方案相似,在此不再赘述。
(一)离散小波变换DWT
视频流(上述实施例中的路况视频)被拆分为GOPs,每张图片都是视频的一个帧。在一个GOP中,每个帧都由临界采样离散小波变换(DWT)分层分解。DWT能够同时提供图像空间和频域信息,通过DWT数据处理,低通滤波器提取模糊信息,而高通滤波器提取细节信息。采用2D-DWT(2维数据离散小波变换),因为2D-DWT在信噪比低重构视频帧的情况下,具有视频高质量的优势。输入的帧通常被分解四个不同子基带。低频部分在图像横纵方向,低频部份横向高频纵向,高频横向低频纵向,高频横向纵向兼顾。2D-DWT可被表达为输入图像的模糊信息,分别为输入图像的横纵及对角的信息。采用6-level的2D-DWT更适应数据处理,6-level把图像分成了更多的基带数据,也就是第一数量的离散小波数据I为:
在花费代价I不高的条件下,提前降低了误码率。离散小波变换是通过高通滤波器和低通滤波器把图像分离,低通滤波就是把图像色彩信息提取出来,高通就是把图像的边缘信息提取出来(这是一层的操作)。6层就是不断的从把图像通过低通滤波,并分离出高通滤波的数据。这样的操作使组后获得离散小波数据更能代表图像数据,若再增加层数对最终变换完成的数据差异不大,因此6层变换下图像信息提取效果最好,并且节省不过多耗费资源。
(二)运动补偿滤波器
运动补偿滤波器能够减少在视频压缩过程之前,消除各种类型的噪声。2D-DWT数据处理之后,会产生少许各类的噪声,这些噪声会在压缩和解压过程中被放大,需要提前消除。选取一组GOP中不同帧数的离散小波数据,对每相邻图片的离散小波数据进行运动估计,根据前后图片的数据矢量平方差之和差异进行补偿,并给出新样本值In,即可求出滤波过后DWT变换过后的基带信息值。
其中,I0是输入每帧中离散数据(离线小波数据)的值(输入的样本值),Ir是前后运动帧数(当前帧之前的图片的样本值和当前帧之后的图片的样本值),Wr(i,a)是当可用的运动补偿图片i的数量等于a时运动补偿图片i的样本权重,a是运动补偿帧数数量,i代表第i张图片/帧。Sl是常数,也叫滤波系数,通常取0.4。S0(n)是不同帧数图片的滤波强度,n是图片的图像序列号(POC)值,取值为0,8,16等6的整数倍,滤波强度的取值取决于帧数噪声状态。Sr是对于运动补偿图片的图片滤波权重。当S0(n)=0.81和Sr=0.51时,运动补偿滤波效果最好,峰值信噪比最大。
(三)MDC编码
MDC编码用于当出现信道传输错误时,利用差错改正的方法恢复丢失的比特信息流,保证视频传输的高质量。当离散小波经过运动补偿滤波后,需要这种多状态描述方法保证信道传输错误时视频传输高质量。可以把基带信息拆解成多个码流,每个码流都是对基带信息特有的描述,I0,I1,…,In。基于这种思想,采用了带冗余的MD-SPIHT算法,在固定有规律的间隙补零,得到带冗余的描述yi=Ii+Ijp+I(j+1)p,当任意描述丢失时,可以通过比特流重构恢复视频的质量。
其中,yi为带冗余的描述,Ii为不带冗余的描述,i的取值为大于等于0并且小于等于n的正整数,n为正整数;Ijp为第j个冗余的描述(表示在第j个间隙增加p个零而得到的描述),I(j+1)p为第(j+1)个冗余的描述(表示在第(j+1)个间隙增加p个零而得到的描述),p为补零数,p的取值为正整数,j为间隙序数,j的取值为小于n的正整数。
(四)3d-SPIHT编码
3d-SPIHT编码是基于MDC进一步处理,使带有冗余的描述按照步骤(一)离散小波变换DWT中level等级分成不同的节点,每个节点按照向量的顺序拆分为:
yLIP1,yLIS1,yLSP1;yLIP2,yLIS2,yLSP2…yLIPn,yLISn,yLSPn,
即是n组基于3d-SPIHT编码的描述。
其中,yLIP1、yLIP2、…、yLIPn是不重要系数描述数据,yLIS1、yLIS2、…、yLISn是不重要集合描述数据,yLSP1、yLSP2、…、yLSPn是重要系数描述数据。
(五)H.265压缩
H.265视频编码压缩是基于冗余的MD-SPIHT进行最终的编码压缩传输,其中变量QP值的获取和调整决定了压缩的速率.只要目标的帧数中的比特或者基准单元被提前确定了,每个经过MDC描述后像素中的比特值就可以被决定。每个帧数中描述像素点的字节数bpp,
bpp=TTarget/Npixels。
其中,TTarget是一个帧数所拥有所有字节的数量,Npixels是当前帧所被编码的描述像素点的数量。
QP的计算公式为:λ=α·bppβ,QP=4.2005lnλ+13.7122。
其中,α和β是相邻最近的预处理编码帧数,特别是他们共同决定了λ的值,当λ求出来之后,QP随着帧数不断上传更新,α和β始终相邻,也将持续更新。当每一帧被编码结束,编码器始终花费bpp和λ。α和β是能被更新的不受相互的影响。然后获得一连串的{(αnew,i,βnew,i)|i=1,...,k},k是编码帧数。QP值越小,压缩的速率也就越大,压缩的比例(压缩比)也就越大。
每一GOP调整I帧频率是直接进行编码速率调整的另一种方法。帧频率越大所耗费的编码资源越多,压缩比越大,I帧周期越大即需要处理的I帧速率就小,花费的计算资源就小。因此,为了调整比特率以及时适应不断变化的网络传输容量Nintra-period=4×round(FR/SF),来计算I帧周期内大小为调整最合适的编码传输比例。Nintra-period是I帧周期,4是处理一组图片帧数的数量,round函数是为了取整,FR是视频帧率,SF是比例因子(与编解码器中比特率调整的时间尺度有关)。通常设置的是SF=16,FR=50,第二种SF=8,FR=25。当所需要的帧率是16时,所需要的比例因子的大小。当所需要的帧数是30时,FR=96,Nintra-period=12,I帧周期相对较大,编码器压力较小。FR=49时,Nintra-period=6较小,所需要在较短的时间内处理较多的I帧,编码器压力较大,此时达到编码器处理的极限,超过此值,最终图像无法解码重构。
(六)OFDM-MIMO
将压缩后的数据分别和OFDM(Orthogonal Frequency Division Multiplexing,正交频分复用)基带的子载波结合,通过5G-CPE或背负式电台传到远端服务器。
本实施例中车端控制器的编码速率和远端服务器的解码速率都是目标码率,也就是与传输链路的信号强度相适应的码率,因此,能够在远程驾驶视频传输的场景下,改善视频输出质量。并且,采用冗余的通讯模式保证了远程驾驶视频传输的可靠性。此外,背负式电台和5G通讯装置增加了天线的数量,运用MIMO天线技术,结合MDC和H.265编码,不但能提升传输速率同时也降低信道传输误码率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的视频传输方法的视频传输装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个视频传输装置实施例中的具体限定可以参见上文中对于视频传输方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种视频传输装置600,包括:获取模块602、调整模块604、压缩模块606和传输模块608,其中:
获取模块602,用于获取通信设备与远端服务器之间的传输链路的信号强度,通信设备包括车载移动通信设备和车载无线电台设备中的至少一种。
调整模块604,用于根据传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整压缩器的视频码率为目标码率。
压缩模块606,用于通过压缩器按照目标码率对视频编码数据进行压缩,得到目标视频数据,视频编码数据是对车辆行驶环境图像编码后的数据流。
传输模块608,用于将目标视频数据通过传输链路发送至远端服务器,以指示远端服务器通过解码器按照目标码率对目标视频数据进行解压。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,调整模块604还用于在传输链路的信号强度小于预设值的情况下,通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第一压缩比阈值,则确定压缩器的视频码率达到第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第二压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,调整模块604还用于在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第三压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第四压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在一个实施例中,目标码率包括第一目标码率和第二目标码率,调整模块604还用于在传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大压缩器的关键帧周期,直至压缩器的压缩比增大至第五压缩比阈值,并通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小压缩器中当前帧的量化参数,直至压缩器的压缩比增大至第六压缩比阈值,则确定压缩器的视频码率为第一目标码率;在传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小压缩器的关键帧周期,直至压缩器的压缩比减小至第七压缩比阈值,并通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大压缩器中当前帧的量化参数,直至压缩器的压缩比减小至第八压缩比阈值,则确定压缩器的视频码率为第二目标码率。
在一个实施例中,视频传输装置600还包括编码模块,编码模块用于获取路况视频,路况视频由车载摄像头对车辆行驶环境进行拍摄得到;通过对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离散小波变换,得到第一数量的离散小波数据;通过运动补偿滤波器对离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据;通过多状态描述编码将滤波数据中每个滤波数据拆解为第二数量的带冗余的描述数据,得到第三数量的带冗余的描述数据,第三数量为第一数量和第二数量的乘积;通过编码算法将带冗余的描述数据中每个带冗余的描述数据按照离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,第四数量为第一数量和第三数量的乘积,并将节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据。
在一个实施例中,传输模块608还用于获取车辆的位置信息;根据车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域;在确定车辆行驶环境所属的区域为第一区域的情况下,确定传输链路为车载移动通信设备与远端服务器之间的传输链路,并将目标视频数据通过传输链路发送至远端服务器;在确定车辆行驶环境所属的区域为第二区域的情况下,确定传输链路为车载无线电台设备与远端服务器间的传输链路,并将目标视频数据通过传输链路发送至远端服务器。
上述视频传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于车端控制器中的处理器中,也可以以软件形式存储于车端控制器中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种车端控制器,该车端控制器是安装在车辆上的控制器,其内部结构图可以如图7所示。该车端控制器包括处理器、存储器、输入/输出接口和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该车端控制器的处理器用于提供计算和控制能力。该车端控制器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该车端控制器的输入/输出接口用于处理器与远端服务器之间交换信息。该车端控制器的通信接口用于与远端服务器通过传输链路进行通信。该计算机程序被处理器执行时以实现一种视频传输方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的车端控制器的限定,具体的车端控制器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种车端控制器,包括存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种视频传输方法,其特征在于,由车端控制器执行,所述方法包括:
获取通信设备与远端服务器之间的传输链路的信号强度,所述通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
根据所述传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整所述压缩器的视频码率为目标码率;
通过所述压缩器按照所述目标码率对视频编码数据进行压缩,得到目标视频数据,所述视频编码数据是对车辆行驶环境图像编码后的数据流;
将所述目标视频数据通过所述传输链路发送至远端服务器,以指示所述远端服务器通过解码器按照所述目标码率对所述目标视频数据进行解压。
2.根据权利要求1所述的方法,其特征在于,所述目标码率包括第一目标码率和第二目标码率,所述根据所述传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整所述压缩器的视频码率为目标码率,包括:
在所述传输链路的信号强度小于预设值的情况下,通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小所述压缩器中当前帧的量化参数,直至所述压缩器的压缩比增大至第一压缩比阈值,则确定所述压缩器的视频码率达到第一目标码率;
在所述传输链路的信号强度不小于预设值的情况下,通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大所述压缩器中当前帧的量化参数,直至所述压缩器的压缩比减小至第二压缩比阈值,则确定所述压缩器的视频码率为第二目标码率。
3.根据权利要求1所述的方法,其特征在于,所述目标码率包括第一目标码率和第二目标码率,所述根据所述传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整所述压缩器的视频码率为目标码率,包括:
在所述传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大所述压缩器的关键帧周期,直至所述压缩器的压缩比增大至第三压缩比阈值,则确定所述压缩器的视频码率为第一目标码率;
在所述传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小所述压缩器的关键帧周期,直至所述压缩器的压缩比减小至第四压缩比阈值,则确定所述压缩器的视频码率为第二目标码率。
4.根据权利要求1所述的方法,其特征在于,所述目标码率包括第一目标码率和第二目标码率,所述根据所述传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整所述压缩器的视频码率为目标码率,包括:
在所述传输链路的信号强度小于预设值的情况下,通过增大压缩器的视频帧率,增大所述压缩器的关键帧周期,直至所述压缩器的压缩比增大至第五压缩比阈值,并通过减小压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,减小所述压缩器中当前帧的量化参数,直至所述压缩器的压缩比增大至第六压缩比阈值,则确定所述压缩器的视频码率为第一目标码率;
在所述传输链路的信号强度不小于预设值的情况下,通过减小压缩器的视频帧率,减小所述压缩器的关键帧周期,直至所述压缩器的压缩比减小至第七压缩比阈值,并通过增大压缩器中位于当前帧前面的视频帧的帧数和位于当前帧后面的视频帧的帧数,增大所述压缩器中当前帧的量化参数,直至所述压缩器的压缩比减小至第八压缩比阈值,则确定所述压缩器的视频码率为第二目标码率。
5.根据权利要求1所述的方法,其特征在于,在所述通过所述压缩器按照所述目标码率对视频编码数据进行压缩,得到目标视频数据之前,所述方法还包括:
获取路况视频,所述路况视频由车载摄像头对车辆行驶环境进行拍摄得到;
通过对路况视频中所有图像组中每个图像组中的每帧进行目标层级的离散小波变换,得到第一数量的离散小波数据;
通过运动补偿滤波器对所述离散小波数据中每个离散小波数据的每相邻帧进行去噪,得到第一数量的滤波数据;
通过多状态描述编码将所述滤波数据中每个滤波数据拆解为第二数量的带冗余的描述数据,得到第三数量的带冗余的描述数据,所述第三数量为所述第一数量和所述第二数量的乘积;
通过编码算法将所述带冗余的描述数据中每个带冗余的描述数据按照所述离散小波数据的目标层级进行分级,得到第四数量的节点描述数据,所述第四数量为所述第一数量和所述第三数量的乘积,并将所述节点描述数据中每个节点描述数据按照向量的顺序拆分为第一系数描述数据、第二系数描述数据和第三系数描述数据,得到视频编码数据。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述将所述目标视频数据通过所述传输链路发送至远端服务器,包括:
获取车辆的位置信息;
根据所述车辆的位置信息,确定车辆行驶环境所属的区域为第一区域或第二区域;
在确定车辆行驶环境所属的区域为所述第一区域的情况下,确定所述传输链路为车载移动通信设备与远端服务器之间的传输链路并将所述目标视频数据通过所述传输链路发送至远端服务器;
在确定车辆行驶环境所属的区域为所述第二区域的情况下,确定所述传输链路为车载无线电台设备与远端服务器间的传输链路,并将所述目标视频数据通过所述传输链路发送至远端服务器。
7.一种视频传输装置,其特征在于,所述装置包括:
获取模块,用于获取通信设备与远端服务器之间的传输链路的信号强度,所述通信设备包括车载移动通信设备和车载无线电台设备中的至少一种;
调整模块,用于根据所述传输链路的信号强度,通过调整压缩器的量化参数和关键帧周期中的至少一种,调整所述压缩器的视频码率为目标码率;
压缩模块,用于通过所述压缩器按照所述目标码率对视频编码数据进行压缩,得到目标视频数据,所述视频编码数据是对车辆行驶环境图像编码后的数据流;
传输模块,用于将所述目标视频数据通过所述传输链路发送至远端服务器,以指示所述远端服务器通过解码器按照所述目标码率对所述目标视频数据进行解压。
8.一种车端控制器,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211081649.1A CN115474077B (zh) | 2022-09-06 | 2022-09-06 | 视频传输方法、装置、车端控制器和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211081649.1A CN115474077B (zh) | 2022-09-06 | 2022-09-06 | 视频传输方法、装置、车端控制器和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115474077A true CN115474077A (zh) | 2022-12-13 |
CN115474077B CN115474077B (zh) | 2024-07-09 |
Family
ID=84368831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211081649.1A Active CN115474077B (zh) | 2022-09-06 | 2022-09-06 | 视频传输方法、装置、车端控制器和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115474077B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103533386A (zh) * | 2013-10-21 | 2014-01-22 | 腾讯科技(深圳)有限公司 | 一种直播控制方法,及主播设备 |
CN108667848A (zh) * | 2018-05-21 | 2018-10-16 | 南京大学 | 一种利用车载ap进行视频缓存、转码和传输的系统及其工作方法 |
CN110324621A (zh) * | 2019-07-04 | 2019-10-11 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备和存储介质 |
WO2020015678A1 (zh) * | 2018-07-19 | 2020-01-23 | 北京达佳互联信息技术有限公司 | 媒体码率自适应方法、装置、计算机设备及存储介质 |
CN111884939A (zh) * | 2020-08-31 | 2020-11-03 | 广州文远知行科技有限公司 | 数据传输方法、装置、可移动载体和存储介质 |
US20200351322A1 (en) * | 2019-04-30 | 2020-11-05 | Phantom Auto Inc. | Low latency wireless communication system for teleoperated vehicle environments |
CN112203096A (zh) * | 2020-09-30 | 2021-01-08 | 北京金山云网络技术有限公司 | 视频编码方法、装置、计算机设备和存储介质 |
CN114245189A (zh) * | 2021-11-23 | 2022-03-25 | 中国联合网络通信集团有限公司 | 视频码率调整方法、装置、设备及存储介质 |
WO2022088200A1 (zh) * | 2020-11-02 | 2022-05-05 | 深圳市大疆创新科技有限公司 | 视频传输方法、装置、可移动平台及计算机可读存储介质 |
-
2022
- 2022-09-06 CN CN202211081649.1A patent/CN115474077B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103533386A (zh) * | 2013-10-21 | 2014-01-22 | 腾讯科技(深圳)有限公司 | 一种直播控制方法,及主播设备 |
CN108667848A (zh) * | 2018-05-21 | 2018-10-16 | 南京大学 | 一种利用车载ap进行视频缓存、转码和传输的系统及其工作方法 |
WO2020015678A1 (zh) * | 2018-07-19 | 2020-01-23 | 北京达佳互联信息技术有限公司 | 媒体码率自适应方法、装置、计算机设备及存储介质 |
US20200351322A1 (en) * | 2019-04-30 | 2020-11-05 | Phantom Auto Inc. | Low latency wireless communication system for teleoperated vehicle environments |
CN110324621A (zh) * | 2019-07-04 | 2019-10-11 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备和存储介质 |
CN111884939A (zh) * | 2020-08-31 | 2020-11-03 | 广州文远知行科技有限公司 | 数据传输方法、装置、可移动载体和存储介质 |
CN112203096A (zh) * | 2020-09-30 | 2021-01-08 | 北京金山云网络技术有限公司 | 视频编码方法、装置、计算机设备和存储介质 |
WO2022088200A1 (zh) * | 2020-11-02 | 2022-05-05 | 深圳市大疆创新科技有限公司 | 视频传输方法、装置、可移动平台及计算机可读存储介质 |
CN114245189A (zh) * | 2021-11-23 | 2022-03-25 | 中国联合网络通信集团有限公司 | 视频码率调整方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115474077B (zh) | 2024-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7944975B2 (en) | Inter-frame prediction method in video coding, video encoder, video decoding method, and video decoder | |
KR100679011B1 (ko) | 기초 계층을 이용하는 스케일러블 비디오 코딩 방법 및 장치 | |
CN111726633B (zh) | 基于深度学习和显著性感知的压缩视频流再编码方法 | |
JP5026965B2 (ja) | ベースレイヤを含むビットストリームをプリデコーディング、デコーディングする方法及び装置 | |
US8817872B2 (en) | Method and apparatus for encoding/decoding multi-layer video using weighted prediction | |
CN101002475B (zh) | 图像序列的视频数据编码方法 | |
US20060209961A1 (en) | Video encoding/decoding method and apparatus using motion prediction between temporal levels | |
US7042946B2 (en) | Wavelet based coding using motion compensated filtering based on both single and multiple reference frames | |
US20050157793A1 (en) | Video coding/decoding method and apparatus | |
US7023923B2 (en) | Motion compensated temporal filtering based on multiple reference frames for wavelet based coding | |
US20030202599A1 (en) | Scalable wavelet based coding using motion compensated temporal filtering based on multiple reference frames | |
US20070014356A1 (en) | Video coding method and apparatus for reducing mismatch between encoder and decoder | |
JP2008507171A (ja) | 種々の空間解像度を備えた周波数サブバンド係数へビデオ画像配列を符号化する方法及び装置 | |
KR20200044667A (ko) | Ai 부호화 장치 및 그 동작방법, 및 ai 복호화 장치 및 그 동작방법 | |
Xiong et al. | Barbell lifting wavelet transform for highly scalable video coding | |
Barua et al. | Saliency guided wavelet compression for low-bitrate image and video coding | |
CN115474077B (zh) | 视频传输方法、装置、车端控制器和存储介质 | |
WO2000064148A9 (en) | Method and apparatus for efficient video processing | |
MXPA05009483A (es) | Metodo para codificar una imagen de video considerando la parte relativa a un componente de un vector de movimiento. | |
Atzori et al. | Error recovery in JPEG2000 image transmission | |
US8306341B2 (en) | Image data compression apparatus and decoding apparatus | |
JP2005524354A (ja) | 複数基準フレームに基づいた動き補償時間的フィルタ化を行うウェーブレット・ベース符号化 | |
WO2007027012A1 (en) | Video coding method and apparatus for reducing mismatch between encoder and decoder | |
Kim et al. | Error-resilient 3-D wavelet video coding with duplicated lowest sub-band coefficients and two-step error concealment method | |
JP2010135912A (ja) | 動画像データの圧縮方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |