CN111432218A - 视频编码与解码方法、装置、终端及存储介质 - Google Patents

视频编码与解码方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN111432218A
CN111432218A CN202010366283.7A CN202010366283A CN111432218A CN 111432218 A CN111432218 A CN 111432218A CN 202010366283 A CN202010366283 A CN 202010366283A CN 111432218 A CN111432218 A CN 111432218A
Authority
CN
China
Prior art keywords
steganographic
data
video frame
image channel
determining
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
Application number
CN202010366283.7A
Other languages
English (en)
Other versions
CN111432218B (zh
Inventor
何思远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN202010366283.7A priority Critical patent/CN111432218B/zh
Publication of CN111432218A publication Critical patent/CN111432218A/zh
Application granted granted Critical
Publication of CN111432218B publication Critical patent/CN111432218B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请公开了一种视频编码与解码方法、装置、终端及存储介质,属于网络技术领域。所述方法包括:确定视频帧中的隐写区域;将视频帧的隐写信息写入隐写区域中像素点的预设图像通道;对写入隐写信息后视频帧进行编码。与相关技术中的帧隐写方法相比,本申请提供的视频编码方法通过预设图像通道对隐写数据进行写入,以减少对其它视频帧信息的影响。

Description

视频编码与解码方法、装置、终端及存储介质
技术领域
本申请实施例涉及网络技术领域,特别涉及一种视频编码与解码方法、装置、终端及存储介质。
背景技术
随着互联网技术的快速发展,网络直播、互联网电视等在线娱乐方式越来越多。其中,所涉及的技术内容为视频流传输技术。
相关技术中,视频流在传输时,为了携带视频帧数据信息,通常在视频编码后采用自定义信息的方式来传递视频帧数据信息。
然而,使用自定义信息的方法,在视频编码与解码过程中无法获取视频帧数据信息,需要额外处理才能获取该视频帧数据信息;此外,相关技术中还提供有帧隐写方法,但在视频编码过程中,会产生视频帧受损会导致视频帧数据信息也同时受损的问题。
发明内容
本申请实施例提供了一种视频编码与解码方法、装置、终端及存储介质,所述技术方案如下:
一方面,提供了一种视频编码方法,所述方法包括:
确定视频帧中的隐写区域;
将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道;
对写入所述隐写信息后所述视频帧进行编码。
另一方面,提供了一种视频解码方法,所述方法包括:
对视频帧进行解码;
确定解码后所述视频帧中的隐写区域;
从所述隐写区域中像素点的预设图像通道中读取隐写信息。
另一方面,提供了一种视频编码装置,所述装置包括:
第一确定模块,用于确定视频帧中的隐写区域;
第一写入模块,用于将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道;
视频编码模块,用于对写入所述隐写信息后所述视频帧进行编码。
另一方面,提供了一种视频解码装置,其特征在于,所述装置包括:
视频解码模块,用于对视频帧进行解码;
第二确定模块,用于确定解码后所述视频帧中的隐写区域;
数据读取模块,用于从所述隐写区域中像素点的预设图像通道中读取隐写。
另一方面,提供了一种终端,所述终端包括处理器和存储器;所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现如上述方面所述的视频编码方法,或,视频解码方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如上述方面所述的视频编码方法,或,视频解码方法。
另一方面,还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述方面所述的视频编码方法,或,视频解码方法。
在本申请实施例中,可实现将隐写信息存储至视频帧中的隐写区域,进一步的,为了减少对视频帧信息的影响,隐写区域内的具体写入位置为隐写区域中像素点的预设图像通道。与相关技术中的帧隐写方法相比,本申请提供的视频编码方法通过预设图像通道对隐写数据进行写入,以减少对其它视频帧信息的影响。
附图说明
图1示出了本申请一示例性实施例提供的实施环境的示意图;
图2示出了本申请一示例性实施例提供的视频编码方法的流程图;
图3示出了本申请另一示例性实施例提供的视频编码方法的流程图;
图4示出了本申请一示例性实施例提供的视频解码方法的流程图;
图5示出了本申请另一示例性实施例提供的视频解码方法的流程图;
图6示出了本申请另一示例性实施例提供的视频编码方法的流程图;
图7示出了本申请另一示例性实施例提供的视频解码方法的流程图;
图8示出了本申请一示例性实施例提供的视频编码装置的结构框图;
图9示出了本申请一示例性实施例提供的视频解码装置的结构框图;
图10示出了本申请一示例性实施例提供的终端的结构方框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
图1是本申请一示例性实施例提供的实施环境示意图。请参考图1,该实施环境可以包括:第一用户端100、服务器200和第二用户端300。
可选的,第一用户端100安装和运行有视频制作软件或实时视频分享软件。如第一用户端100通过运行短视频制作软件(一种视频制作软件)来制作短视频,并将制作好的短视频推流至服务器进行发布;又如第一用户端100通过运行网络主播所使用的主播客户端(一种实时视频分享软件)来与观看直播的用户进行视频分享等互动。
本申请实施例中,以实施环境为网络直播环境为例进行示例性的说明。在一种可能的实施方式中,第一用户端100触发主播客户端进行开播,第一用户端100采集实时的图像,并将所采集的图像进行压缩编码得到视频流,继而将视频流推流至服务器200,其中,视频流推流时具有一定帧率,帧率用于衡量第一用户端100每秒可传输多少视频帧。
本申请提供了一种视频编码方法,用于第一用户端100进行视频帧编码过程。在一种可能的实施方式中,第一用户端100将隐写数据写入视频帧的隐写区域,并对写入隐写数据后视频帧进行编码,最终将编码后的视频帧在一定帧率下推流至服务器200,以实现视频流推流。
本申请还提供了一种视频解码方法,用于第二用户端300进行视频帧解码过程。在一种可能的实施方式中,第二用户端300对视频帧进行解码,并确定解码后视频帧中的隐写区域,从而从隐写区域中获取携带的隐写数据。
其中,第一用户端100通过无线网络或有线网络与服务器200相连,以及第二用户端300通过无线网络或有线网络与服务器200相连。
服务器200是第一用户端100与第二用户端300之间进行信息交互的中转站,用于接收来自第一用户端100的视频流,并推送给第二用户端300,继而第二用户端300接收到该视频流,并通过终端设备进行硬件解码方式或在线解码方式进行视频流的解码与播放。可选的,服务器200可以是独立的服务器,也可以集合为服务器集群、虚拟云存储或云计算中心中的任意一种。
请参考图2,其示出了本申请一示例性实施例提供的视频编码方法的流程图。该方法适用于图1所示的第一用户端,该方法包括:
步骤201,确定视频帧中的隐写区域。
为了在视频流中携带帧信息进行传输,如补充增强信息(SupplementalEnhancement Information,SEI)。其中,SEI的具体信息内容并不作限定,可以是与视频帧画面相关的信息、自定义信息等等。
在本申请实施例中,将需要携带的帧信息用隐写信息进行表示。第一用户端首先需要确定出隐写信息进行隐藏的位置,即确定视频帧中的隐写区域。
其中,隐写区域的大小与隐写信息的长度有关。在本申请实施例中,隐写信息是指经过统一格式转换的信息,基于原始信息的格式多样性,如数字、字母、中文汉字等等不同格式的信息,需要将原始信息转换为同一格式的隐写信息;进一步的,根据隐写信息的长度确定隐写区域的大小。
可选的,为了保障视频帧信息的可靠传输,隐写信息的长度最大不超过512个字节。
在一个示例中,如表一所示,其示出了一种根据隐写信息长度来确定隐写区域大小的参考方法。
如表一所示,当隐写信息长度在不超过64字节时,则隐写区域大小为64*64,以此类推。
表一
隐写信息长度 隐写区域大小
(0,64] 64*64
(64,128] 128*128
(128,256] 256*256
(256,512] 400*400
如表一所示,当隐写信息长度在不超过64字节时,则隐写区域大小为64*64,以此类推。
步骤202,将视频帧的隐写信息写入隐写区域中像素点的预设图像通道。
在一种可能的实施方式中,第一用户端可采用H264 SEI和H265 SEI方式来传递隐写信息,但当视频帧受损失时,会导致隐写信息同时受损。
在本申请实施例中,为了在写入隐写信息时减少对视频帧其他信息的影响,第一用户端可将隐写信息隐写至隐写区域中像素点的预设图像通道,其中,预设图像通道为隐写信息写入时对信息内容影响最小的图像通道。
其中,预设图像通道可以是基于不同色彩模式固定不变的图像通道,如R通道;此外,预设图像通道也可以是基于不同色彩模式而改变的图像通道,如对于RGB模式,可将R通道、G通道和B通道中的指定图像通道确定为预设图像通道,又如对于RGBA模式,可将透明通道确定为预设图像通道,且透明通道在所有图像通道中是对视频帧信息影响最小的。
步骤203,对写入隐写信息后视频帧进行编码。
对于视频流推流过程而言,推流端在同时推流过程中主要包括四个环节:对图像进行采集;对采集图像进行预处理;通过硬件编码或软件编码方式对采集图像进行编码;将编码后的视频流推送至服务器。
因此,当完成在视频帧写入隐写信息时,第一用户端还需要对写入隐写信息后视频帧进行编码。
综上所述,在本申请实施例中,可实现将隐写信息存储至视频帧中的隐写区域,进一步的,为了减少对视频帧信息的影响,隐写区域内的具体写入位置为隐写区域中像素点的预设图像通道。与相关技术中的帧隐写方法相比,本申请提供的视频编码方法通过预设图像通道对隐写数据进行写入,以减少对其它视频帧信息的影响。
请参考图3,其示出了本申请另一示例性实施例提供的视频编码方法的流程图。该方法适用于图1所示的第一用户端,该方法包括:
步骤301,确定视频帧中的隐写区域。
本步骤请参考步骤201,本申请实施例在此不再赘述。
步骤302,对视频帧的隐写信息进行数据转换,得到隐写数据。
在本申请实施例中,可对隐写信息进行数据转换,得到具有更高容错能力的隐写数据,如将隐写信息转换成图像码,而图形码具备三级抗干扰能力,即使面对隐写区域中部分像素失真,或者错误的情况下,也可正常解析出隐写数据;又或者是,经过数据转换后的隐写数据方便存储于步骤203中的预设图像通道。其中,当隐写数据为图形码形式时,可将隐写数据做二值化处理得到为二值化数据的隐写数据。
可选的,步骤302包括如下内容一和内容二。
内容一、根据隐写信息生成二维码。
在一种可能的实施方式中,隐写信息为二进制字符串,根据预设的映射关系将隐写信息转换为对应的映射值。如表二所示,预设的映射关系如表所示。
其中,隐写信息对应的二进制字符串由0和1构成,而0与0x00存在映射关系,1与0x11存在映射关系。且为了实现后续过程中的数据校验过程,还将0x01与0x10映射为信息错误,如经过解码得到某一隐写数据为0x11,则实际的隐写信息为1,如经过解码得到某一隐写数据为0x10,则表示解码有误,或,该隐写数据破损,可进行数据纠正。
进一步的,根据映射后的隐写信息得到二维码。
表二
映射值 意义
0x00 0
0x11 1
0x01 错误
0x10 错误
在一个示例中,结合表二,用0x00表示黑色色块,用0x11表示白色色块,从而将隐写数据转换成二维码。
其中,二维码中的黑色色块和白色色块对应不同二值化数值。如表二所示,黑色色块对应0x00,即可对应数值0;白色色块对应0x11,即可对应数值1。
内容二、将二维码转化为隐写数据。
除此之外,在相关技术中,二维码的生成过程是一项成熟的技术。与本申请相关的是,通过将隐写信息转换成二维码可以提高信息的容错能力,即抗干扰能力。如表三所示,示出了二维码的纠错等级表,其中,不同的纠错等级对应不同的修正率。
表三
纠错等级 修正率
L 7%字码修正
M 15%字码修正
Q 25%字码修正
H 30%字码修正
在一种可能的实施方式中,对二维码进行降采样,转化为隐写数据。即将二维码从8比特位图像转换为2比特图像,从而将转换后的2比特图像作为隐写数据。
步骤303,根据视频帧的色彩模式,确定隐写区域中像素点的预设图像通道。
为了将隐写数据写入对其它视频帧信息影响最小的位置,在本申请实施例中,第一用户端根据视频帧的色彩模式,确定隐写区域中像素点的预设图像通道。
可选的,步骤303包括如下内容一和内容二。
内容一、响应于视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为预设图像通道。
其中,响应于视频帧的色彩模式为RGB模式,则预设图像通道为R通道、G通道和B通道中的任意一种对其它视频帧信息的影响都接近,因此,对于RGB模式,可根据自定义或默认的指定图像通道作为预设图像通道。
内容二、响应于视频帧的色彩模式为RGBA模式,则将透明通道确定为预设图像通道。
其中,响应于视频帧的色彩模式为RGBA模式,R通道、G通道、B通道和透明通道的承载内容并不相同,透明通道用于表示视频帧的透明程度,所携带的信息量远小于R通道、G通道、B通道所携带的信息。
步骤304,将隐写数据写入预设图像通道的目标比特位。
在申请实施例中,结合表二示出的一种映射关系,可以得到各个隐写数据是以二比特位数据存在的,因此,在将隐写数据写入预设图像通道时,第一用户端获取预设图像通道的目标比特位进行数据隐写。其中,目标比特位按照隐写数据的存储位数来决定,如结合表二示出的一种映射关系,目标比特位为二比特位。
可选的,步骤304包括如下内容一和内容二。
内容一、将预设图像通道的k个最低有效位(Least Significant Bit,LSB)确定为目标比特位,k为大于等于1的整数。
内容二、将隐写数据写入目标比特位。
对于上述内容一,本申请提供了一种目标比特位的确定方法,由于LSB是多字节序列中最小权重的字节,因此将隐写数据写入LSB,能够将对其它视频帧信息的影响降至最低,因此第一用户端将预设图像通道的k个LSB确定为目标比特位。其中,k的大小根据隐写数据的比特位数来确定。如结合表二所示出的一种映射关系,k取2。
步骤305,对写入隐写数据后视频帧进行编码。
本步骤请参考步骤204,本申请实施例在此不再赘述。
在上述实施例的基础上,本申请实施例详细阐述了对隐写信息进行数据转换得到隐写数据的过程。其中,在将隐写数据写入视频帧之前,将隐写信息生成二维码,使得隐写信息利用二维码自身的抗干扰能力能够提高自身的容错能力;此外,在将隐写数据写入视频帧的过程中,根据视频帧的色彩模式,确定隐写区域中像素点的预设图像通道,并将隐写数据写入预设图像通道的目标比特位,能够实现将隐写数据写入对其它视频帧信息影响最小的位置。
请参考图4,其示出了本申请一示例性实施例提供的视频解码方法的流程图。该方法适用于图1所示的第二用户端,该方法包括:
步骤401,对视频帧进行解码。
由于推流端是通过硬件编码或软件编码方式对采集图像进行编码,并将编码后的视频流推送至服务器的,因此,在视频帧接收一侧,第二用户端需要对所接收得到的视频帧进行解码。
其中,视频帧接收一侧的解码方式与视频帧生成一侧的编码方式相对应。
可选的,若视频帧接收一侧的终端设备不支持解码,则可由服务器进行视频帧的解码,并将解码后的视频帧发送至视频帧接收一侧。
步骤402,确定解码后视频帧中的隐写区域。
在一种可能的实施方式中,对视频帧进行解码后,第二用户端通过预设协议确定解码后视频帧中的隐写区域。其中,预设协议由第一用户端生成,并用于向第二用户端说明隐写区域位置。
可选的,若隐写区域位置是固定不变的,则第一用户端仅通过发送一次预设协议实现第二用户端隐写区域的确定;若隐写区域位置是变化的,则第一用户端在每次推流时需要将不同的预设协议一并通过服务器传输至第二用户端。
步骤403,从隐写区域中像素点的预设图像通道中读取隐写信息。
对于第一用户端一侧,由于第一用户端将隐写信息写入隐写区域中像素点的预设图像通道,因此,第二用户端也从隐写区域中像素点的预设图像通道中读取隐写信息。
如步骤402所涉及的预设协议,在步骤403中,预设协议还可以用于向第二用户端说明预设图像通道信息。
可选的,若预设图像通道是固定不变的,则第一用户端仅通过发送一次预设协议实现第二用户端预设图像通道的确定;若预设图像通道是变化的,则第一用户端在每次推流时需要将不同的预设协议一并通过服务器传输至第二用户端。
综上所述,在本申请实施例中,对应视频编码方法,可实现对视频帧解码后,从隐写区域中像素点的预设图像通道中读取隐写信息,即得到视频帧的隐写信息。与相关技术中的帧隐写方法相比,本申请提供的视频解码方法通过从隐写区域的预设图像通道读取隐写信息,以减少对其它视频帧信息的影响。
请参考图5,其示出了本申请另一示例性实施例提供的视频解码方法的流程图。该方法适用于图1所示的第二用户端,该方法包括:
步骤501,对视频帧进行解码。
本步骤请参考步骤401,本申请实施例在此不再赘述。
步骤502,确定解码后视频帧中的隐写区域。
本步骤请参考步骤402,本申请实施例在此不再赘述。
步骤503,根据视频帧的色彩模式,确定隐写区域中像素点的预设图像通道。
可选的,步骤503包括如下内容一和内容二。
内容一、响应于视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为预设图像通道。
内容二、响应于视频帧的色彩模式为RGBA模式,则将透明通道确定为预设图像通道。
在一种可能的实施方式中,如步骤402所涉及的预设协议,在步骤503中,预设协议还可以用于向第二用户端说明预设图像通道的确定方式,即如何根据视频帧的色彩模式确定预设图像通道。
步骤504,从预设图像通道的目标比特位读取隐写数据。
可选的,步骤504包括如下内容一和内容二。
内容一、将预设图像通道的k个最低有效位LSB确定为目标比特位,k为大于等于1的整数。
内容二、从预设图像通道的k个LSB中读取隐写数据。
在一种可能的实施方式中,如步骤402所涉及的预设协议,在步骤504中,预设协议还可以用于向第二用户端说明目标比特位信息。
步骤505,对隐写数据进行数据转换,得到视频帧的隐写信息。
在第一用户端一侧,对隐写信息进行数据转换,得到具有更高容错能力的隐写数据;对应的,在第二用户端一侧,对隐写数据进行数据转换,得到视频帧的隐写信息。其中,第一用户端一侧的数据转换过程与第二用户端一侧的数据转换过程是对应相反的过程。
可选的,步骤505包括如下内容一和内容二。
内容一、将隐写数据转化为二维码。
其中,二维码中的黑色色块和白色色块对应不同二值化数值。
可选的,对应第一用户端的步骤302,在第二用户端一侧的隐写数据转化为二维码的过程为步骤302的相反过程,请参考步骤302,本申请实施例在此不再赘述。
内容二、解析二维码得到隐写信息。
可选的,对应第一用户端的步骤302,在第二用户端一侧的解析二维码得到隐写信息的过程为步骤302的相反过程,请参考步骤302,本申请实施例在此不再赘述。
在上述实施例的基础上,本申请实施例详细阐述了对隐写数据进行数据转换得到隐写信息的过程。其中,在从视频帧中读取隐写数据的过程中,根据视频帧的色彩模式,确定隐写区域中像素点的预设图像通道,并从预设图像通道的目标比特位读取隐写数据,能够实现读取隐写数据时减少对其它视频帧信息的影响;此外,将隐写数据转化为二维码,并解析二维码得到隐写信息,使得隐写信息利用二维码自身的抗干扰能力能够提高自身的容错能力,能够实现基于一定的容错能力的基础上获取隐写信息,提高隐写信息获取时的正确率。
为了进一步提高数据的容错能力,在视频帧生成一侧,还包括如下所述的一种隐写数据校验机制。
请参考图6,其示出了本申请另一示例性实施例提供的视频编码方法的流程图。该方法适用于图1所示的第一用户端,该方法包括:
步骤601,确定隐写区域中的校验区域。
结合表二示出的一种映射关系,可以得到有意义的映射值仅包括0x00和0x11,若在数据转换过程中,出现0x01或0x10,则表明存在明显的数据转换出错,记为显性错误。
如视频在压缩过程中导致视频帧信息受损,继而数据0x00在数据转换过程中,可能产生0x11、0x01或0x10。其中,通过映射关系可主动探知0x01和0x10可直接视为错误码,即数据0x00发生了显性错误;但是无法主动探知0x11是否为错误码。
首先,在本申请实施例的一种隐写数据校验机制中,第一用户端确定隐写区域中的校验区域。
其中,校验区域大小与隐写区域大小有关,且根据步骤602中的预设算法得到具体的校验区域大小。如在预设算法中,两个透明通道数据对应一个校验数据,则校验区域大小为隐写区域大小的一半,示例性的,隐写区域大小为64*64,则校验区域大小为64*32,以此类推。
步骤602,根据隐写数据生成校验数据。
其中,校验数据用于校验隐写数据的正确性。
可选的,步骤602包括如下内容一和内容二。
内容一、将隐写数据划分为n个隐写数据组,各个隐写数据组中包含至少两个二值化数据。
在一个示例中,如表四所示,设置隐写数据组中包含的二值化数据数量为2,则所有的隐写数据组数值情况为四种,即隐写数据组为0x00和0x00、0x00和0x11、0x11和0x00、0x11和0x11这四种组合情况。
表四
透明通道数据1 透明通道数据2 校验数据
0x00 0x00 0x00
0x00 0x11 0x01
0x11 0x00 0x10
0x11 0x11 0x11
内容二、通过预设算法对至少两个二值化数据进行运算,并将运算结果确定为隐写数据组对应的校验数据位;根据n个校验数据位生成校验数据。
其中,预设算法与表二所示的映射关系有关,包括:根据映射关系将隐写数据组中各个二值化数据转换为实际意义的数值,并将各个实际意义的数值确定为隐写数据组对应的校验数据位,最后根据n个校验数据位生成校验数据。
结合表二和表四,在一个示例中,隐写数据组为0x00和0x00,其中第一个和第二个0x00代表实际意义的数值0,则校验数据位包括0和0,根据该2个校验数据位生成校验数据0x00;隐写数据组为0x00和0x11,其中0x00代表实际意义的数值0,0x11代表实际意义的数值1,则校验数据位包括0和1,根据该2个校验数据位生成校验数据0x01;隐写数据组为0x11和0x00,其中0x11代表实际意义的数值1,0x00代表实际意义的数值0,则校验数据位包括1和0,根据该2个校验数据位生成校验数据0x10;隐写数据组为0x11和0x11,其中0x11代表实际意义的数值1,0x11代表实际意义的数值1,则校验数据位包括1和1,根据该2个校验数据位生成校验数据0x11。
步骤603,将校验数据写入校验区域中像素点的校验图像通道,且校验图像通道区别于预设图像通道。
进一步的,与隐写数据写入过程类似,对于校验数据而言,第一用户端将校验数据写入校验区域中像素点的校验图像通道,且校验图像通道区别于预设图像通道。
如响应于视频帧的色彩模式为RGB模式,若预设图像通道为R通道,则校验图像通道为G通道和B通道中的一种;如响应于视频帧的色彩模式为RGBA模式,预设图像通道为透明通道,则校验图像通道为R通道、G通道和B通道中的一种。
本申请实施例中,还提供了一种隐写数据校验机制,包括根据隐写数据生成校验数据,并将校验数据写入校验区域中像素点的校验图像通道,能够进一步提高数据的容错能力,以减少解码侧在数据转换过程中隐写数据的解码出错概率。
与上述实施例对应,在视频解码过程中,还包括对隐写数据进行数据校验的过程。
请参考图7,其示出了本申请另一示例性实施例提供的视频解码方法的流程图。该方法适用于图1所示的第二用户端,步骤403之后,方法还包括:
步骤701,确定隐写区域中的校验区域。
对于第一用户端一侧,第一用户端确定隐写区域中的校验区域用于写入校验数据;而对于第二用户端一侧,第二用户端确定隐写区域中的校验区域用于读取校验数据。
如步骤401所涉及的预设协议,在步骤701中,预设协议还可以用于向第二用户端说明校验区域的位置信息。
可选的,本步骤701内容还可以参考步骤601内容,本申请实施例再此不再赘述。
步骤702,从校验区域中像素点的校验图像通道中读取校验数据。
其中,校验数据在编码时根据隐写数据生成,用于校验隐写数据的正确性,且校验图像通道区别于预设图像通道。
可选的,本步骤702中关于校验数据的内容还可以参考步骤602,本申请实施例再此不再赘述。
步骤703,通过校验数据对隐写数据进行校验。
可选的,在步骤703中,步骤703包括如下内容一至内容三。
内容一、对于校验数据中的各个校验数据位,确定校验数据位对应的隐写数据组,隐写数据中包含n个隐写数据组,且各个隐写数据组中包含至少两个二值化数据。
内容二、通过预设算法对至少两个二值化数据进行运算,得到运算结果。
内容三、若运算结果与校验数据位相同,则确定隐写数据组通过校验。
其中,关于预设算法的内容还可以参考步骤602,本申请实施例再此不再赘述。
在一种可能的实施方式中,第二用户端通过预设算法对至少两个二值化数据进行运算,即根据表二所示的映射关系得到二值化数据对应的实际意义的数值,并将至少两个二值化数据对应的实际意义的数值组合的数据作为运算结果;若运算结果与校验数据位相同,则确定隐写数据组通过校验;若运算结果与校验数据位不相同,则根据校验数据对隐写数据进行纠正。
结合表二和表四,在一个示例中,校验数据为0x01,隐写数据组为0x00和0x01,由此可见,数据0x01发生了显性错误,可通过校验数据对其纠正:对于校验数据0x01中的各个校验数据位(0和1),确定出对应的隐写数据组为0x00和0x11,则得到数据0x01的正确数值应为0x11,因此得到纠正。
本申请实施例中,与视频帧生成一侧提供的一种隐写数据校验机制对应,还包括对隐写数据进行数据校验的过程,使得对数据转换过程中出现的错误隐写数据进行纠正,以减少解码侧在数据转换过程中隐写数据的解码出错概率。
请参考图8,其示出了本申请一示例性实施例提供的视频编码装置的结构框图,所述装置包括:
第一确定模块801,用于确定视频帧中的隐写区域;
第一写入模块802,用于将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道;
视频编码模块803,用于对写入所述隐写信息后所述视频帧进行编码。
可选的,所述第一写入模块802,包括:
第一写入单元,用于对所述视频帧的隐写信息进行数据转换,得到隐写数据;
第二写入单元,用于根据所述视频帧的色彩模式,确定所述隐写区域中像素点的所述预设图像通道;
第三写入单元,用于将所述隐写数据写入所述预设图像通道的目标比特位。
可选的,所述第二写入单元,包括:
第一写入子单元,用于响应于所述视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为所述预设图像通道;
第二写入子单元,用于响应于所述视频帧的色彩模式为RGBA模式,则将透明通道确定为所述预设图像通道。
可选的,所述第三写入单元,包括:
第三写入子单元,用于将所述预设图像通道的k个最低有效位LSB确定为所述目标比特位,k为大于等于1的整数;
第四写入子单元,用于将所述隐写数据写入所述目标比特位。
可选的,所述第一写入单元,包括:
第五写入子单元,用于根据所述隐写信息生成二维码;
第六写入子单元,用于将所述二维码转化为所述隐写数据,其中,所述二维码中的黑色色块和白色色块对应不同二值化数值。
可选的,所述装置还包括:
校验确定模块,用于确定所述隐写区域中的校验区域;
数据生成模块,用于根据所述隐写数据生成校验数据,所述校验数据用于校验所述隐写数据的正确性;
第二写入模块,用于将所述校验数据写入所述校验区域中像素点的校验图像通道,且所述校验图像通道区别于所述预设图像通道。
可选的,所述数据生成模块,包括:
第一生成单元,用于将所述隐写数据划分为n个隐写数据组,各个所述隐写数据组中包含至少两个二值化数据;
第二生成单元,用于通过预设算法对所述至少两个二值化数据进行运算,并将运算结果确定为所述隐写数据组对应的校验数据位;根据n个所述校验数据位生成所述校验数据。
请参考图9,其示出了本申请一示例性实施例提供的视频解码装置的结构框图,所述装置包括:
视频解码模块901,用于对视频帧进行解码;
第二确定模块902,用于确定解码后所述视频帧中的隐写区域;
数据读取模块903,用于从所述隐写区域中像素点的预设图像通道中读取隐写信息。
可选的,所述数据读取模块903,包括:
第一读取单元,用于根据所述视频帧的色彩模式,确定所述隐写区域中像素点的所述预设图像通道;
第二读取单元,用于从所述预设图像通道的目标比特位读取所述隐写数据;
第三读取单元,用于对所述隐写数据进行数据转换,得到所述视频帧的隐写信息。
可选的,所述第一读取单元,包括:
第一读取子单元,用于响应于所述视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为所述预设图像通道;
第二读取子单元,用于响应于所述视频帧的色彩模式为RGBA模式,则将透明通道确定为所述预设图像通道。
可选的,所述第二读取单元,包括:
第三读取子单元,用于将所述预设图像通道的k个最低有效位LSB确定为所述目标比特位,k为大于等于1的整数;
第四读取子单元,用于从所述预设图像通道的所述k个LSB中读取所述隐写数据。
可选的,所述第三读取单元,包括:
第五读取子单元,用于将所述隐写数据转化为二维码,其中,所述二维码中的黑色色块和白色色块对应不同二值化数值;
第六读取子单元,用于解析所述二维码得到所述隐写信息。
可选的,所述装置还包括:
检验识别模块,用于确定所述隐写区域中的校验区域;
检验读取模块,从所述校验区域中像素点的校验图像通道中读取校验数据,所述校验数据在编码时根据所述隐写数据生成,用于校验所述隐写数据的正确性,且所述校验图像通道区别于所述预设图像通道;
数据检验模块,通过所述校验数据对所述隐写数据进行校验。
可选的,所述数据检验模块,包括:
第一校验单元,用于对于所述校验数据中的各个校验数据位,确定所述校验数据位对应的隐写数据组,所述隐写数据中包含n个所述隐写数据组,且各个所述隐写数据组中包含至少两个二值化数据;
第二校验单元,用于通过预设算法对所述至少两个二值化数据进行运算,得到运算结果;
第三校验单元,用于若所述运算结果与所述校验数据位相同,则确定所述隐写数据组通过校验。
请参考图10,其示出了本申请一个示例性实施例提供的终端1000的结构框图。该终端1000可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器。终端1000还可能被称为用户设备、便携式终端等其他名称。可选的,终端1000可以是如图1所示出的第一用户端100对应的终端设备,以及第二用户端300对应的终端设备。
通常,终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1001所执行以实现本申请实施例提供的方法。
在一些实施例中,终端1000还可选包括有:外围设备接口1003和至少一个外围设备。具体地,外围设备包括:射频电路1004、触摸显示屏1005、摄像头1006、音频电路1007、定位组件1008和电源1009中的至少一种。
外围设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和外围设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和外围设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
触摸显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏1005还具有采集在触摸显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。触摸显示屏1005用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏1005可以为一个,设置终端1000的前面板;在另一些实施例中,触摸显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在再一些实施例中,触摸显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,触摸显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007用于提供用户和终端1000之间的音频接口。音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
定位组件1008用于定位终端1000的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1008可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1009用于为终端1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。当电源1009包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、指纹传感器1014、光学传感器1015以及接近传感器1016。
加速度传感器1011可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1011可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1011采集的重力加速度信号,控制触摸显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1011还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1012可以检测终端1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1012采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1013可以设置在终端1000的侧边框和/或触摸显示屏1005的下层。当压力传感器1013设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器1013设置在触摸显示屏1005的下层时,可以根据用户对触摸显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1014用于采集用户的指纹,以根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1001授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1014可以被设置终端1000的正面、背面或侧面。当终端1000上设置有物理按键或厂商Logo时,指纹传感器1014可以与物理按键或厂商Logo集成在一起。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制触摸显示屏1005的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1005的显示亮度;当环境光强度较低时,调低触摸显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1015采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1016,也称距离传感器,通常设置在终端1000的正面。接近传感器1016用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制触摸显示屏1005从亮屏状态切换为息屏状态;当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制触摸显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供一种计算机可读存储介质,该存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述各个实施例提供的视频编码方法,或,视频解码方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (18)

1.一种视频编码方法,其特征在于,所述方法包括:
确定视频帧中的隐写区域;
将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道;
对写入所述隐写信息后所述视频帧进行编码。
2.根据权利要求1所述的方法,其特征在于,所述将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道,包括:
对所述视频帧的隐写信息进行数据转换,得到隐写数据;
根据所述视频帧的色彩模式,确定所述隐写区域中像素点的所述预设图像通道;
将所述隐写数据写入所述预设图像通道的目标比特位。
3.根据权利要求2所述的方法,其特征在于,所述根据所述视频帧的色彩模式,确定所述隐写区域中像素点的预设图像通道,包括:
响应于所述视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为所述预设图像通道;
响应于所述视频帧的色彩模式为RGBA模式,则将透明通道确定为所述预设图像通道。
4.根据权利要求2所述的方法,其特征在于,所述将所述隐写数据写入所述预设图像通道的目标比特位,包括:
将所述预设图像通道的k个最低有效位LSB确定为所述目标比特位,k为大于等于1的整数;
将所述隐写数据写入所述目标比特位。
5.根据权利要求2所述的方法,其特征在于,所述对所述视频帧的隐写信息进行数据转换,得到隐写数据,包括:
根据所述隐写信息生成二维码;
将所述二维码转化为所述隐写数据,其中,所述二维码中的黑色色块和白色色块对应不同二值化数值。
6.根据权利要求2至5任一所述的方法,其特征在于,所述方法还包括:
确定所述隐写区域中的校验区域;
根据所述隐写数据生成校验数据,所述校验数据用于校验所述隐写数据的正确性;
将所述校验数据写入所述校验区域中像素点的校验图像通道,且所述校验图像通道区别于所述预设图像通道。
7.根据权利要求6所述的方法,其特征在于,所述根据所述隐写数据生成校验数据,包括:
将所述隐写数据划分为n个隐写数据组,各个所述隐写数据组中包含至少两个二值化数据;
通过预设算法对所述至少两个二值化数据进行运算,并将运算结果确定为所述隐写数据组对应的校验数据位;根据n个所述校验数据位生成所述校验数据。
8.一种视频解码方法,其特征在于,所述方法包括:
对视频帧进行解码;
确定解码后所述视频帧中的隐写区域;
从所述隐写区域中像素点的预设图像通道中读取隐写信息。
9.根据权利要求8所述的方法,其特征在于,所述从所述隐写区域中像素点的预设图像通道中读取隐写信息,包括:
根据所述视频帧的色彩模式,确定所述隐写区域中像素点的所述预设图像通道;
从所述预设图像通道的目标比特位读取隐写数据;
对所述隐写数据进行数据转换,得到所述视频帧的隐写信息。
10.根据权利要求9所述的方法,其特征在于,所述根据所述视频帧的色彩模式,确定所述隐写区域中像素点的所述预设图像通道,包括:
响应于所述视频帧的色彩模式为RGB模式,则将R通道、G通道和B通道中的指定图像通道确定为所述预设图像通道;
响应于所述视频帧的色彩模式为RGBA模式,则将透明通道确定为所述预设图像通道。
11.根据权利要求9所述的方法,其特征在于,所述从所述预设图像通道的目标比特位读取所述隐写数据,包括:
将所述预设图像通道的k个最低有效位LSB确定为所述目标比特位,k为大于等于1的整数;
从所述预设图像通道的所述k个LSB中读取所述隐写数据。
12.根据权利要求9所述的方法,其特征在于,所述对所述隐写数据进行数据转换,得到所述视频帧的隐写信息,包括:
将所述隐写数据转化为二维码,其中,所述二维码中的黑色色块和白色色块对应不同二值化数值;
解析所述二维码得到所述隐写信息。
13.根据权利要求9至11任一所述的方法,其特征在于,从所述隐写区域中像素点的预设图像通道中读取隐写数据之后,所述方法还包括:
确定所述隐写区域中的校验区域;
从所述校验区域中像素点的校验图像通道中读取校验数据,所述校验数据在编码时根据所述隐写数据生成,用于校验所述隐写数据的正确性,且所述校验图像通道区别于所述预设图像通道;
通过所述校验数据对所述隐写数据进行校验。
14.根据权利要求13所述的方法,其特征在于,所述通过所述校验数据对所述隐写数据进行校验,包括:
对于所述校验数据中的各个校验数据位,确定所述校验数据位对应的隐写数据组,所述隐写数据中包含n个所述隐写数据组,且各个所述隐写数据组中包含至少两个二值化数据;
通过预设算法对所述至少两个二值化数据进行运算,得到运算结果;
若所述运算结果与所述校验数据位相同,则确定所述隐写数据组通过校验。
15.一种视频编码装置,其特征在于,所述装置包括:
第一确定模块,用于确定视频帧中的隐写区域;
第一写入模块,用于将所述视频帧的隐写信息写入所述隐写区域中像素点的预设图像通道;
视频编码模块,用于对写入所述隐写信息后所述视频帧进行编码。
16.一种视频解码装置,其特征在于,所述装置包括:
视频解码模块,用于对视频帧进行解码;
第二确定模块,用于确定解码后所述视频帧中的隐写区域;
数据读取模块,用于从所述隐写区域中像素点的预设图像通道中读取隐写信息。
17.一种终端,其特征在于,所述终端包括处理器和存储器;所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现如权利要求1至7任一所述的视频编码方法,或,以实现如权利要求8至14任一所述的视频解码方法。
18.一种计算机可读存储介质,其特征在于,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如权利要求1至7任一所述的视频编码方法,或,以实现如权利要求8至14任一所述的视频解码方法。
CN202010366283.7A 2020-04-30 2020-04-30 视频编码与解码方法、装置、终端及存储介质 Active CN111432218B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010366283.7A CN111432218B (zh) 2020-04-30 2020-04-30 视频编码与解码方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010366283.7A CN111432218B (zh) 2020-04-30 2020-04-30 视频编码与解码方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN111432218A true CN111432218A (zh) 2020-07-17
CN111432218B CN111432218B (zh) 2021-12-14

Family

ID=71557131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010366283.7A Active CN111432218B (zh) 2020-04-30 2020-04-30 视频编码与解码方法、装置、终端及存储介质

Country Status (1)

Country Link
CN (1) CN111432218B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055229A (zh) * 2020-08-18 2020-12-08 泰康保险集团股份有限公司 一种视频认证方法及装置
CN112134687A (zh) * 2020-09-15 2020-12-25 武汉工程大学 基于二维码的信息加密解密方法
CN113453012A (zh) * 2021-06-25 2021-09-28 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及电子设备
CN114924825A (zh) * 2022-06-01 2022-08-19 咪咕文化科技有限公司 表情包呈现方法、装置、设备及计算机可读存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020080997A1 (en) * 1995-05-08 2002-06-27 Rhoads Geoffrey B. Compression-enhanced watermarking
JP2005051793A (ja) * 1995-05-08 2005-02-24 Digimarc Corp ステガノグラフィシステム
CN101651837A (zh) * 2009-09-10 2010-02-17 北京航空航天大学 一种基于帧间预测误差直方图修改的可逆视频水印方法
US20100260269A1 (en) * 2009-04-13 2010-10-14 Freescale Semiconductor, Inc. Video decoding with error detection and concealment
CN102750660A (zh) * 2012-06-08 2012-10-24 北京京北方信息技术有限公司 一种嵌入和提取数字水印的方法和装置
CN103973937A (zh) * 2014-04-29 2014-08-06 南京邮电大学 基于无线多媒体传感器网络的信息隐藏方法
CN106485641A (zh) * 2016-08-31 2017-03-08 南京师范大学 一种基于qr码的瓦片数据数字水印生成嵌入及提取方法
CN108965887A (zh) * 2018-06-29 2018-12-07 中国科学院信息工程研究所 一种基于块间去耦合的视频信息隐藏方法和装置
CN110751591A (zh) * 2019-09-16 2020-02-04 北卡科技有限公司 一种基于模糊推理系统的自适应彩色图像隐写方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020080997A1 (en) * 1995-05-08 2002-06-27 Rhoads Geoffrey B. Compression-enhanced watermarking
JP2005051793A (ja) * 1995-05-08 2005-02-24 Digimarc Corp ステガノグラフィシステム
US20100260269A1 (en) * 2009-04-13 2010-10-14 Freescale Semiconductor, Inc. Video decoding with error detection and concealment
CN101651837A (zh) * 2009-09-10 2010-02-17 北京航空航天大学 一种基于帧间预测误差直方图修改的可逆视频水印方法
CN102750660A (zh) * 2012-06-08 2012-10-24 北京京北方信息技术有限公司 一种嵌入和提取数字水印的方法和装置
CN103973937A (zh) * 2014-04-29 2014-08-06 南京邮电大学 基于无线多媒体传感器网络的信息隐藏方法
CN106485641A (zh) * 2016-08-31 2017-03-08 南京师范大学 一种基于qr码的瓦片数据数字水印生成嵌入及提取方法
CN108965887A (zh) * 2018-06-29 2018-12-07 中国科学院信息工程研究所 一种基于块间去耦合的视频信息隐藏方法和装置
CN110751591A (zh) * 2019-09-16 2020-02-04 北卡科技有限公司 一种基于模糊推理系统的自适应彩色图像隐写方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄炜: "基于主成分分析进行特征融合的JPEG隐写分析", 《软件学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055229A (zh) * 2020-08-18 2020-12-08 泰康保险集团股份有限公司 一种视频认证方法及装置
CN112134687A (zh) * 2020-09-15 2020-12-25 武汉工程大学 基于二维码的信息加密解密方法
CN113453012A (zh) * 2021-06-25 2021-09-28 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及电子设备
CN114924825A (zh) * 2022-06-01 2022-08-19 咪咕文化科技有限公司 表情包呈现方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN111432218B (zh) 2021-12-14

Similar Documents

Publication Publication Date Title
CN111432218B (zh) 视频编码与解码方法、装置、终端及存储介质
CN108810538B (zh) 视频编码方法、装置、终端及存储介质
CN108391127B (zh) 视频编码方法、装置、存储介质及设备
CN108833963B (zh) 显示界面画面的方法、计算机设备、可读存储介质和系统
CN110022489B (zh) 视频播放方法、装置及存储介质
CN110881136A (zh) 视频帧率控制方法、装置、计算机设备及存储介质
CN110830819B (zh) 编码、解码方法、编码端和解码端
CN110062246B (zh) 对视频帧数据进行处理的方法和装置
CN104205161A (zh) 用于块压缩图象的解压缩的系统、方法和计算机程序产品
CN109168032B (zh) 视频数据的处理方法、终端、服务器及存储介质
CN108769738B (zh) 视频处理方法、装置、计算机设备和存储介质
CN110996117B (zh) 视频转码方法、装置、电子设备和存储介质
CN111586413B (zh) 视频调整方法、装置、计算机设备及存储介质
CN111935542A (zh) 视频处理方法、视频播放方法、装置、设备及存储介质
CN111010588B (zh) 直播处理方法、装置、存储介质及设备
CN111083554A (zh) 直播礼物显示的方法和装置
CN111586433B (zh) 码率调整方法、装置、设备及存储介质
CN113455013B (zh) 用于处理图像的电子设备及其图像处理方法
CN110572679B (zh) 帧内预测的编码方法、装置、设备及可读存储介质
CN109714628B (zh) 播放音视频的方法、装置、设备、存储介质及系统
US20220116566A1 (en) Electronic device for processing image and image processing method thereof
CN111698512B (zh) 视频处理方法、装置、设备及存储介质
CN113192519B (zh) 音频编码方法和装置以及音频解码方法和装置
CN113055713B (zh) 视频图像超分方法及装置、存储介质和电子设备
CN109040753B (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
GR01 Patent grant
GR01 Patent grant