CN115348456B - 视频图像处理方法、装置、设备及存储介质 - Google Patents
视频图像处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115348456B CN115348456B CN202210964206.0A CN202210964206A CN115348456B CN 115348456 B CN115348456 B CN 115348456B CN 202210964206 A CN202210964206 A CN 202210964206A CN 115348456 B CN115348456 B CN 115348456B
- Authority
- CN
- China
- Prior art keywords
- residual
- information
- data
- residual error
- data packet
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/88—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/89—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例提供一种视频图像处理方法、装置、设备及存储介质。本申请涉及视频编解码技术领域。本申请通过对传输的码流数据重新组织,形成头信息数据包和交织打包残差信息的残差数据包,在发生部分残差数据包丢失时,仍可以进行解码,从而无需重传数据包或发送关键帧恢复,减少对网络造成的冲击,使视频实时通信系统继续流畅运行。
Description
技术领域
本申请实施例涉及视频编解码技术领域,尤其涉及一种视频图像处理方法、装置、设备及存储介质。
背景技术
在视频实时通信系统中,发送端进行视频的编码、数据封装后,通过网络将数据发送至接收端,接收端则对数据进行解封装和解码后,将其显示。在网络传输的过程中,会出现数据包丢失,即网络丢包的情况,使接收端未能接收到完整的数据。
在相关技术中,接收端的解码是编码的逆过程,由于编码过程中帧与帧之间存在因帧间预测导致的依赖性,因此,发送端组织的码流数据同样具有依赖性,导致在传输过程中,一旦出现网络丢包的情况,接收端后续接收的数据包将不能有效地被解码,即使是少量丢包的情况,也都需要进行数据重传或编码器编码一个关键帧进行恢复,不论是重传数据包还是发送关键帧进行恢复都会对网络造成冲击,造成画面卡顿和延迟。
发明内容
本申请实施例提供了一种视频图像处理方法、装置、设备及存储介质,减少对网络造成的冲击,使视频实时通信系统继续流畅运行。
第一方面,本申请实施例提供了一种视频图像处理方法,应用于视频实时通信系统的发送端,所述视频实时通信系统包括发送端和接收端,所述方法包括:
将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息;
对所述宏块对应的残差信息进行隔行提取得到至少两个残差分组;
将所述宏块对应的预测信息封装为头信息数据包,并将所述至少两个残差分组分别封装,得到与所述残差分组数量对应的残差数据包;
向所述接收端发送所述头信息数据包和所述残差数据包,以形成码流数据。
第二方面,本申请实施例还提供了一种视频图像处理方法,应用于视频实时通信系统的接收端,所述视频实时通信系统包括发送端和接收端,所述方法包括:
接收所述发送端发送的码流数据,所述码流数据包括对应于每个帧图像的头信息数据包和至少两个残差数据包;
对所述头信息数据包解封装以获取所述帧图像中各宏块的预测信息;以及,对所述至少两个残差数据包分别解封装以基于隔行对应方式获取所述帧图像中各宏块的残差信息;
根据所述预测信息和所述残差信息,解码得到所述帧图像。
第三方面,本申请实施例提供了一种视频图像处理装置,包括:
信息确定模块,配置为将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息;
信息提取模块,配置为对所述宏块对应的残差信息进行隔行提取得到至少两个残差分组;
数据封装模块,配置为将所述宏块对应的预测信息封装为头信息数据包,并将所述至少两个残差分组分别封装,得到与所述残差分组数量对应的残差数据包;
数据发送模块,配置为向所述接收端发送所述头信息数据包和所述残差数据包,以形成码流数据。
第四方面,本申请实施例还提供了一种视频图像处理装置,包括:
数据接收模块,配置为接收所述发送端发送的码流数据,所述码流数据包括对应于每个帧图像的头信息数据包和至少两个残差数据包;
数据解封装模块,配置为对所述头信息数据包解封装以获取所述帧图像中各宏块的预测信息;以及,对所述至少两个残差数据包分别解封装以基于隔行对应方式获取所述帧图像中各宏块的残差信息;
图像确定模块,配置为根据所述预测信息和所述残差信息,解码得到所述帧图像。
第五方面,本申请实施例提供了一种视频图像处理设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例的视频图像处理方法。
第六方面,本申请实施例还提供了一种存储计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行本申请实施例的视频图像处理方法。
本申请实施例通过对传输的码流数据重新组织,形成头信息数据包和交织打包残差信息的残差数据包,且对不同数据包赋予不同的优先级,以表示其重要程度,在发生部分残差数据包丢失时,可以进行容错解码,从而无需重传数据包或发送关键帧恢复,减少对网络造成的冲击,使视频实时通信系统继续流畅运行。
附图说明
图1为本申请实施例提供的视频图像处理方法的流程图;
图2为申请另一实施例提供的视频图像处理方法的流程图;
图3为本申请一实施例提供的视频图像处理装置的结构示意图;
图4为本申请另一实施例提供的视频图像处理装置的结构示意图;
图5为本申请一个实施例提供的视频图像处理设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。在本申请的描述中,若干的含义是一个或者多个,多个的含义是两个及两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。
本申请提供的视频图像处理方法可以应用在视频实时通信系统的发送端和接收端,由发送端和接收端的设备执行,如智能手机、电脑等具有视频传输和播放功能的设备执行,发送端执行对视频图像的编码和封装,而接收端则执行与发送端相反的操作,如解封装和解码。
图1为本申请一实施例提供的视频图像处理方法的流程图,如图1所示,该方法可应用于视频实时通信系统的发送端,该方法包括如下步骤:
S110、将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息。
在发送端通常采用编码器对输入的视频图像进行编码。编码器可采用常见的VP8、VP9、AV1、H.264以及H.265等编码标准,上述编码标准均采用了基于块的预测-变换混合编码框架。
编码器将输入的视频图像根据编码规则划分为不同的编码单元,如以16×16(像素)的宏块作为编码单元,并对每个宏块进行编码,如帧内编码或帧间编码,以去除图像内空间冗余和图像间的时域冗余,并得到对应的预测值。此外,编码器还需对原始图像与预测图像之间各宏块的残差(原始值减去预测值)进行编码,从而获得对视频图像编码后的数据。
对各宏块完成编码后,从编码器中能够获取到对应各宏块的预测信息和残差信息,其中,预测信息包括帧图像类型、宏块类型、宏块划分方式、宏块的预测模式、参考帧、运动矢量等与宏块编码相关的信息;残差信息包括宏块残差相关的信息。
S120、对宏块对应的残差信息进行隔行提取得到至少两个残差分组。
对于已划分宏块视频图像,如分辨率为1280×720的视频图像,其中包括45(720/16)行的宏块。对于多行宏块的残差信息划分为至少两个残差分组,需要说明的是,所划分的残差分组的数量可以根据对视频图像的编码要求设置,如也可以将已划分的宏块划分为3、4个残差分组。
值得注意的是,每一残差分组的残差信息均是隔行提取的,即残差分组中每行残差信息对应的每行宏块在视频图像中是互不相邻的,示例性的,对于划分为45行宏块的视频图像,且将各宏块对应的残差信息划分为两个残差分组时,一个残差分组包括0、2、……、44行的宏块对应的残差信息,另一残差分组包括1、3、……、43行的宏块对应的残差信息;若将各宏块对应的残差信息划分为两个残差分组,则可以隔行提取为:第一个残差分组包括0、3、……、41行的宏块对应的残差信息,第二个残差分组包括1、4、……、42行的宏块对应的残差信息,第三个残差信息包括2、5、……、43行的宏块对应的残差信息。
S130、对宏块对应的预测信息封装为头信息数据包,并将至少两个残差分组分别封装,得到与残差分组数量对应的残差数据包。
在残差分组的划分完成后,发送端将宏块对应的预测信息封装为头信息数据包,对每个残差分组分别封装,得到对应残差分组数量的残差数据包,即在发送至接收端的码流数据中,对应于每帧视频图像,包括有至少三个部分,如头信息数据包和至少两个残差数据包。
在一实施例中,在对预测信息和残差信息进行封装为头信息数据包和残差数据包的过程中,如步骤S131-132所示,以头信息数据包的数据内容为第一有效载荷,以残差数据包的数据内容为第二有效载荷,其中第一有效载荷包括预测信息,第二有效载荷包括残差信息。
S131、在包括预测信息的第一有效载荷和包括残差信息的第二有效载荷中添加至少两个优先级的标识信息。
对第一有效载荷和第二有效载荷中添加标识信息,对不同类型的载荷所添加的标识信息不同,如第一有效载荷和第二有效载荷分别添加不同的标识信息,且不同标识信息还对应于不同的优先级。
需要说明的是,当第二有效载荷的数量较多,即所划分的残差分组的数量较多时,还可以为残差分组分配多个优先级,并在不同的第二有效载荷中分别添加不同的标识信息。
S132、根据标识信息的不同,确定对第一有效载荷和第二有效载荷的传输方式,并对第一有效载荷和第二有效载荷进行封装。
在添加了相应的标识信息后,在发送端的网络发送模块中,对第一有效载荷和第二有效载荷进行封装,根据其中的标识信息,对应地为第一有效载荷和第二有效载荷分配不同的传输方式。可以想到的是,传输方式可以对应于传输协议,对于不同的传输协议,在封装的过程中,需要在有效载荷中添加不同的报头,因此,对第一有效载荷和第二有效载荷按照不同的封装方式,对应地封装为头信息数据包和残差数据包。传输方式还可以是对应传输头信息数据包或残差数据包的方式,如冗余发送、丢包重传等。
S140、向接收端发送头信息数据包和残差数据包,以形成码流数据。
在视频实时通信系统中,发送端和接收端通过网络进行数据的传输。视频中包括多帧视频图像,每帧视频图像对应地包括头信息数据包和至少两个残差数据包,发送端不断地向接收端发送上述数据包,形成码流数据,应当想到的是,在网络中传输的码流数据时,对于较大的数据包,通常会将数据分包发送,即将大的数据包分为若干数据小包,因此,在码流数据中,头信息数据包和残差数据包也可以分为若干个小包在网络中传输。
由上述方案可知,本申请通过对传输的码流数据重新组织,将残差信息隔行提取为多个残差分组,将残差信息对应的多个残差分组封装为多个残差数据包,并将预测信息封装为头信息数据包,且对不同数据包赋予不同的优先级,在发生部分残差数据包丢失时,可以进行容错解码,从而无需重传数据包或发送关键帧恢复,减少对网络造成的冲击,使视频实时通信系统继续流畅运行。
在一实施例中,在封装的过程中,若第一有效载荷中添加的标识信息为第一标识信息,如第一标识信息对应于高优先级,则根据第一预设传输方式,将第一有效载荷封装为头信息数据包,第一预设传输方式为可靠的传输方式,例如将第一有效载荷根据TCP(Transmission Control Protocol,传输控制协议)协议封装为头信息数据包,并向接收端发送头信息数据包。
对于添加有第一标识信息的第一有效载荷,第一预设传输方式还可以是:按照传输协议(如TCP协议或UDP协议)封装后,再进行冗余发送,即将向接收端发送多个头信息数据包。或者,对于丢包的情况,向接收端重新发送头信息数据包。
因此,对于高优先级的数据包,在网络传输的过程中,采用相对可靠的网络传输方式,以保证其能够到达接收端。
若第二有效载荷中添加的标识信息为第二标识信息。若第二有效载荷中添加的标识信息为第二标识信息,如第二标识信息对应于低优先级,则根据第二预设传输方式,将第二有效载荷封装为残差数据包,例如将第二有效载荷根据UDP(User Datagram Protocol,用户数据包协议)协议封装为残差数据包,并向接收端发送残差数据包。对于低优先级的数据包,在网络传输过程中,采相对不可靠的网络传输方式,减轻网络传输带宽占用,在网络条件差时,发送端允许丢弃部分残差数据包。
需要说明的是,对于第二标识信息,发送端还可以根据RTP(Real-time TransportProtocol,实时传输协议)协议封装第二有效载荷为残差数据包。
应当想到的是,在网络条件较好时,头信息数据包和残差数据包均采用可靠的网络传输方式,如以TCP协议进行传输。同样的,头信息数据包和残差数据包均采用UDP协议进行传输,但对于头信息数据包,在发送端和接收端需要引入反馈机制,如当接收端接收到头信息数据包后,向发送端发送应答,以表示接收到头信息数据包。
图2为申请另一实施例提供的视频图像处理方法的流程图,该方法可应用于视频实时传输系统的接收端,如图2所示该,该方法包括:
S210、接收发送端发送的码流数据。
码流数据中包括对应于每个帧图像的头信息数据包和至少两个残差数据包。接收端对接收到的接收到的码流数据中的数据包需要先进行数据包的解封装和解码。
S220、对头信息数据包解封装以获取帧图像中各宏块的预测信息;以及,对至少两个残差数据包分别解封装以基于隔行对应方式获取帧图像中各宏块的残差信息。
根据对应数据包所采用的传输协议,对接收到的数据包进行解封装,例如,若头信息数据包是根据TCP协议封装并传输的,则基于TCP协议将第一有效载荷提取,获取其中对应于帧图像中各宏块的预测信息;若残差数据包是根据UDP协议封装的,则根据UDP协议将第二有效载荷提取,获取残差信息。对于不同的残差数据包,解封装后得到的残差信息分别于帧图像中不同行的宏块的残差信息。
S230、根据预测信息和残差信息,解码得到帧图像。
接收端的解码器对解封装后得到的预测信息和残差信息进行解码,在对残差信息进行解码时,对应不同残差数据包的残差信息,接收端的解码器分别进行解码,以确保每一残差分组内的残差信息都能进行独立解码。在完成对预测信息和残差信息的解码后,接收端能够恢复帧图像。
由上述方案可知,本申请对接收到的码流数据进行解码和解封装,对接收的头信息数据包和残差数据包进行解封装获取相应的预测信息和残差信息,并解码恢复帧图像,在接收端实现视频的解码恢复。
在一实施例中,在接收码流数据之后,还对码流数据中的数据包进行是否缺失的判断,如码流数据中应当包括有多个数据包,若码流数据中缺失部分残差数据包,则对接收的数据包进行容错解码;若码流数据中缺失头信息数据包,则发送端重新请求数据。
对于头信息数据包缺失的情况,接收端在确定了丢失的数据包为头信息数据包后,会向发送端发送重传请求,以请求获取头信息数据包,或者向发送端请求关键帧图像;在发送端接收到重传信息后,将缺失的头信息数据包重新传输至接收端。需要说明的是,在接收端发起重传请求时,还可以同时请求全部视频图像更新,即重新传输码流数据,以避免错误扩散。
对于部分残差数据包缺失的情况,在进行容错解码时,对接收到的码流数据中可解码的信息进行解码,因此可以确定缺失的残差数据包对应的目标宏块在帧图像上的位置信息,例如,帧图像划分为两个残差分组,残差分组I包括0、2、……、44行的宏块对应的残差信息,残差分组II包括1、3、……、43行的宏块对应的残差信息,且其中残差分组对应的残差数据包丢失,在对头信息数据包和另一个残差数据包解封装并解码后,确定丢失的是残差分组II,即1、3、……、43行的宏块对应的残差信息丢失,或者在传输过程中以小包形式传输时,则可以确定丢失的1、3、……、43行中部分行的宏块所对应的残差信息。
因此,确定了缺失的残差数据包在帧图像上的位置信息,从而能够确定缺失残差信息的目标宏块,根据该位置信息,可以确定与目标宏块相邻的邻接宏块,以邻接宏块对应的残差数据包作为关联数据包,例如,在传输过程中,数据包均以小包的形式传输,缺失的数据包对应的是残差分组II,则残差分组I对应的残差数据包为关联数据包。根据关联数据包中的残差信息,对目标宏块的残差信息进行插值,实现容错恢复。
示例性的,所缺失的数据包对应1和3行的宏块对应的残差信息丢失,则可以以邻接宏块的残差信息进行插值,对于1行的宏块,可以根据已经解码恢复的宏块的图像像素值,确定该缺失的宏块的信息值,如则可以0行和2行的宏块对应图像像素值的中间值作为1行的宏块的图像像素值,以恢复丢失的宏块,实现容错恢复。需要说明的是,进行插值时,还可以采用邻接宏块对应的图像像素值的平均值作为目标宏块的图像像素值。
由上述方案可知,本申请的方案在缺失的部分残差数据包时,接收端仍可以对帧图像进行恢复,对于丢失的部分宏块的残差信息进行容错解码,基于邻接宏块对目标宏块进行插值,以便于实现解码并重新恢复帧图像,且本申请的方案还有效地减少数据重传的情况发送,降低数据重传或请求关键帧对网络的冲击,提高系统运行流畅度。
在一实施例中,在对接收到的码流数据进行解码时,对残差数据包的解码时根据预设的概率模型进行解码。可以想到的是,由于对残差信息的编码采用的是熵编码,因此,接收端对残差数据包中的残差信息进行熵解码。由于熵解码所采用的概率模型在每次解码前均根据前一次解码结果进行更新,但在本申请中,对不同的残差数据包进行解码,不以前一残差数据包的解码结果更新概率模型,即对另一残差数据包进行解码前,需要重新初始化概率模型,实现不同的残差数据包进行独立解码,即虽然不同的残差数据包解码时所采用的概率模型相同,但不同的残差数据包的解码是独立解码的。因此,通过取消残差分组之间的依赖,实现残差数据包的独立解码,以便于进行容错解码。
图3为本申请一实施例提供的视频图像处理装置的结构示意图,如图所示,该装置可应用于发送端,并用于执行上述实施例中提供的视频图像处理方法,具备相应的功能和有益效果,该装置包括信息确定模块301、信息提取模块302、数据封装模块303和数据发送模块304。
信息确定模块301配置为将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息;
信息提取模块302配置为对宏块对应的残差信息进行隔行提取得到至少两个残差分组;
数据封装模块303配置为将宏块对应的预测信息封装为头信息数据包,并将至少两个残差分组分别封装,得到与残差分组数量对应的残差数据包;
数据发送模块304配置为向接收端发送头信息数据包和残差数据包,以形成码流数据。
在上述实施例的基础上,数据封装模块303还配置为:
在包括预测信息的第一有效载荷和包括残差信息的第二有效载荷中添加至少两个优先级的标识信息;
根据标识信息,确定对第一有效载荷和第二有效载荷的传输方式,并对第一有效载荷和第二有效载荷进行封装。
在上述实施例的基础上,数据封装模块303还配置为:
若第一有效载荷的标识信息为第一标识信息,则根据第一预设传输方式,将第一有效载荷封装为头信息数据包;
若第二有效载荷的标识信息为第二标识信息,则根据第二预设传输方式,将第二有效载荷封装为残差数据包;
其中,第一标识信息的优先级高于第二标识信息的优先级。
图4为本申请另一实施例提供的视频图像处理装置的结构示意图,如图所示,该装置可应用于发送端,并用于执行上述实施例中提供的视频图像处理方法,具备相应的功能和有益效果,该装置包括数据接收模块401、数据解封装模块402和图像确定模块403。
数据接收模块401,配置为接收发送端发送的码流数据,码流数据包括对应于每个帧图像的头信息数据包和至少两个残差数据包;
数据解封装模块402,配置为对头信息数据包解封装以获取帧图像中各宏块的预测信息;以及,对至少两个残差数据包分别解封装以基于隔行对应方式获取帧图像中各宏块的残差信息;
图像确定模块403,配置为根据预测信息和残差信息,解码得到帧图像。
在上述实施例的基础上,数据接收模块401还配置为:
若码流数据中缺失部分残差数据包,则进行容错解码;
若码流数据中缺失头信息数据包,则向发送端发送重传请求
在上述实施例的基础上,还包括数据解码模块,数据解码模块配置为:
对接收到的码流数据进行解码,并确定缺失的残差数据包对应的目标宏块在帧图像上的位置信息;
根据位置信息,确定在帧图像上与目标宏块相邻的邻接宏块的残差数据包为关联数据包;
根据关联数据包,对目标宏块的残差信息进行插值,以进行容错恢复。
在上述实施例的基础上,数据解码模块还配置为:
根据预设的概率模型,对接收到的残差数据包进行解码;
其中,在对另一残差数据包进行解码前,重新初始化概率模型,以对不同的残差数据包进行独立解码。
值得注意的是,上述视频图像处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
图5为本申请一个实施例提供的视频图像处理设备的结构示意图,如图所示,该结构包括处理器501、存储器502、输入装置503和输出装置504,设备中处理器501的数量可以是一个或多个,图中以一个处理器501为例;设备中的处理器501、存储器502、输入装置503和输出装置504可以通过总线或其他方式连接,图中以通过总线连接为例。存储器502作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的视频图像处理方法对应的程序指令/模块。处理器501通过运行存储在存储器502中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的视频图像处理方法。输入装置503可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置504可用于发送数据包。
此外,本申请实施例还提供一种存储计算可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本申请任意实施例所提供的视频图像处理方法中的相关操作,且具备相应的功能和有益效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。
因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (8)
1.一种视频图像处理方法,其特征在于,所述方法应用于视频实时通信系统的发送端,所述视频实时通信系统包括发送端和接收端,所述方法包括:
将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息;
对所述宏块对应的残差信息进行隔行提取得到至少两个残差分组,所述残差分组中每行残差信息对应的每行宏块在所述帧图像中是互不相邻的;
将所述宏块对应的预测信息封装为头信息数据包,并将所述至少两个残差分组分别封装,得到与所述残差分组数量对应的残差数据包;
向所述接收端发送所述头信息数据包和所述残差数据包,以形成码流数据;
其中,所述对所述宏块对应的残差信息进行隔行提取得到至少两个残差分组,包括:
根据预设的分组数量,将所述残差信息划分为对应数量的残差分组,并选取所述宏块对应的残差信息作为所述残差分组,所述残差分组中相邻两组残差信息对应的宏块之间的行数差满足所述分组数量;
当所述帧图像包括N行宏块且隔行提取得到两个残差分组时,第一残差分组包括2n行宏块对应的残差信息,第二残差分组包括2n+1行宏块对应的残差信息,n取大于或等于0的整数,且n≤N/2;
或,当所述帧图像包括N行宏块且隔行提取得到三个残差分组时,第一残差分组包括3n行宏块对应的残差信息,第二残差分组包括3n+1行宏块对应的残差信息,第三残差分组包括3n+2行宏块对应的残差信息,n取大于或等于0的整数,且n≤N/3;
所述将所述宏块对应的预测信息封装为头信息数据包,并将所述至少两个残差分组分别封装,得到与所述残差分组数量对应的残差数据包,包括:
在包括所述预测信息的第一有效载荷和包括所述残差信息的第二有效载荷中添加至少两个优先级的标识信息;
根据所述标识信息,确定对所述第一有效载荷和所述第二有效载荷的传输方式,并对所述第一有效载荷和所述第二有效载荷进行封装。
2.根据权利要求1所述的视频图像处理方法,其特征在于,所述根据所述标识信息,确定对所述第一有效载荷和所述第二有效载荷的传输方式,包括:
若所述第一有效载荷的标识信息为第一标识信息,则根据第一预设传输方式,将所述第一有效载荷封装为所述头信息数据包;
若所述第二有效载荷的标识信息为第二标识信息,则根据第二预设传输方式,将所述第二有效载荷封装为所述残差数据包;
其中,所述第一标识信息的优先级高于第二标识信息的优先级。
3.一种视频图像处理方法,其特征在于,所述方法应用于视频实时通信系统的接收端,所述视频实时通信系统包括发送端和接收端,所述方法包括:
接收所述发送端发送的码流数据,所述码流数据包括对应于每个帧图像的头信息数据包和至少两个残差数据包;
对所述头信息数据包解封装以获取所述帧图像中各宏块的预测信息;以及,对所述至少两个残差数据包分别解封装以基于隔行对应方式获取所述帧图像中各宏块的残差信息;
根据所述预测信息和所述残差信息,解码得到所述帧图像;
若所述码流数据中缺失部分所述残差数据包,则进行容错解码;
若所述码流数据中缺失头信息数据包,则向所述发送端发送重传请求或请求重传关键帧;
其中,所述若所述码流数据中缺失部分所述残差数据包,则进行容错解码包括:
对接收到的所述码流数据进行解码,并确定缺失的所述残差数据包对应的目标宏块在所述帧图像上的位置信息;
根据所述位置信息,确定在所述帧图像上与所述目标宏块相邻的已恢复的邻接宏块;
根据所述邻接宏块的图像像素值,对所述目标宏块进行插值,以进行容错恢复。
4.根据权利要求3所述的视频图像处理方法,其特征在于,所述对接收到的所述码流数据进行解码,包括:
根据预设的概率模型,对接收到的所述残差数据包进行解码;
其中,在对另一所述残差数据包进行解码前,重新初始化所述概率模型,以对不同的所述残差数据包进行独立解码。
5.一种视频图像处理装置,其特征在于,所述装置应用于视频实时通信系统的发送端,所述视频实时通信系统包括发送端和接收端,该装置包括:
信息确定模块,配置为将帧图像按照预设规则划分为至少两行宏块,并确定各宏块对应的预测信息和残差信息;
信息提取模块,配置为对所述宏块对应的残差信息进行隔行提取得到至少两个残差分组,所述残差分组中每行残差信息对应的每行宏块在所述帧图像中是互不相邻的;
数据封装模块,配置为将所述宏块对应的预测信息封装为头信息数据包,并将所述至少两个残差分组分别封装,得到与所述残差分组数量对应的残差数据包;
数据发送模块,配置为向所述接收端发送所述头信息数据包和所述残差数据包,以形成码流数据;
其中,所述信息提取模块还配置为:
根据预设的分组数量,将所述残差信息划分为对应数量的残差分组,并选取所述宏块对应的残差信息作为所述残差分组,所述残差分组中相邻两组残差信息对应的宏块之间的行数差满足所述分组数量;
当所述帧图像包括N行宏块且隔行提取得到两个残差分组时,第一残差分组包括2n行宏块对应的残差信息,第二残差分组包括2n+1行宏块对应的残差信息,n取大于或等于0的整数,且n≤N/2;
或,当所述帧图像包括N行宏块且隔行提取得到三个残差分组时,第一残差分组包括3n行宏块对应的残差信息,第二残差分组包括3n+1行宏块对应的残差信息,第三残差分组包括3n+2行宏块对应的残差信息,n取大于或等于0的整数,且n≤N/3;
所述数据封装模块还配置为:
在包括所述预测信息的第一有效载荷和包括所述残差信息的第二有效载荷中添加至少两个优先级的标识信息;
根据所述标识信息,确定对所述第一有效载荷和所述第二有效载荷的传输方式,并对所述第一有效载荷和所述第二有效载荷进行封装。
6.一种视频图像处理装置,其特征在于,所述装置应用于视频实时通信系统的接收端,所述视频实时通信系统包括发送端和接收端,该装置包括:
数据接收模块,配置为接收所述发送端发送的码流数据,所述码流数据包括对应于每个帧图像的头信息数据包和至少两个残差数据包;
数据解封装模块,配置为对所述头信息数据包解封装以获取所述帧图像中各宏块的预测信息;以及,对所述至少两个残差数据包分别解封装以基于隔行对应方式获取所述帧图像中各宏块的残差信息;
图像确定模块,配置为根据所述预测信息和所述残差信息,解码得到所述帧图像;
所述数据接收模块还配置为:
若所述码流数据中缺失部分所述残差数据包,则进行容错解码;
若所述码流数据中缺失头信息数据包,则向所述发送端发送重传请求或请求重传关键帧;
其中,所述若所述码流数据中缺失部分所述残差数据包,则进行容错解码包括:
对接收到的所述码流数据进行解码,并确定缺失的所述残差数据包对应的目标宏块在所述帧图像上的位置信息;
根据所述位置信息,确定在所述帧图像上与所述目标宏块相邻的已恢复的邻接宏块;
根据所述邻接宏块的图像像素值,对所述目标宏块进行插值,以进行容错恢复。
7.一种视频图像处理设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当一个或多个所述程序被一个或多个所述处理器执行,使得一个或多个所述处理器实现如权利要求1-2或3-4中任一项所述的视频图像处理方法。
8.一种存储计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-2或3-4中任一项所述的视频图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210964206.0A CN115348456B (zh) | 2022-08-11 | 2022-08-11 | 视频图像处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210964206.0A CN115348456B (zh) | 2022-08-11 | 2022-08-11 | 视频图像处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115348456A CN115348456A (zh) | 2022-11-15 |
CN115348456B true CN115348456B (zh) | 2023-06-06 |
Family
ID=83952476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210964206.0A Active CN115348456B (zh) | 2022-08-11 | 2022-08-11 | 视频图像处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115348456B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117376632B (zh) * | 2023-12-06 | 2024-02-06 | 中国信息通信研究院 | 基于智能深度合成的数据恢复方法和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI120125B (fi) * | 2000-08-21 | 2009-06-30 | Nokia Corp | Kuvankoodaus |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
CN112465698A (zh) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | 一种图像处理方法和装置 |
CN111260553A (zh) * | 2020-01-13 | 2020-06-09 | 哈尔滨工程大学 | 一种基于远距离无损视频传输的国产视觉计算系统 |
CN112822492B (zh) * | 2020-12-30 | 2022-01-07 | 北京大学 | 抗误码视频编码重组方法、装置、设备、系统和介质 |
-
2022
- 2022-08-11 CN CN202210964206.0A patent/CN115348456B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115348456A (zh) | 2022-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6891799B1 (en) | Data transmission method | |
JP3630474B2 (ja) | 動画像伝送システム及び動画像伝送装置 | |
JP3419042B2 (ja) | 伝送システムにおける誤りマスキング方法 | |
US11425410B2 (en) | Video picture prediction method and apparatus | |
CN104333762A (zh) | 一种视频解码方法 | |
WO2012113763A1 (en) | Feedback based reference frame selection for video coding | |
CN104253996B (zh) | 视频数据的发送、接收方法及其装置以及传输系统 | |
CN115348456B (zh) | 视频图像处理方法、装置、设备及存储介质 | |
CN103650502A (zh) | 用于参考画面管理的编码器、解码器及其方法 | |
US10123028B2 (en) | Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method | |
CN101312536B (zh) | 一种用于视频传输差错控制的视频编码方法及装置 | |
CN115134629A (zh) | 视频传输方法、系统、设备及存储介质 | |
US20170347112A1 (en) | Bit Stream Switching In Lossy Network | |
CN101192903B (zh) | 数据帧编解码控制方法 | |
CN101296166B (zh) | 基于索引的多媒体数据的测量方法 | |
JP2002010265A (ja) | 送信装置およびその方法と受信装置およびその方法 | |
CN115243052A (zh) | 一种视频流的处理方法、装置、电子设备和存储介质 | |
US8218541B2 (en) | Method and device for forming, transferring and receiving transport packets encapsulating data representative of an image sequence | |
CN101754001B (zh) | 视频数据优先级确定方法、装置和系统 | |
KR100363550B1 (ko) | 동영상 인코딩 장치 및 무선 단말기의 동영상 디코딩 장치 | |
EP1298936A1 (en) | Image data decoder and image data decoding method | |
JPH04239840A (ja) | 画像情報パケット化方法 | |
CN114554198B (zh) | 基于纠删码的视频关键帧冗余传输方法和系统 | |
EP2785062B1 (en) | Resilient signal encoding | |
JP3205839B2 (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 |