CN104618680A - 一种视频分辨率的压缩方法 - Google Patents

一种视频分辨率的压缩方法 Download PDF

Info

Publication number
CN104618680A
CN104618680A CN201510030472.6A CN201510030472A CN104618680A CN 104618680 A CN104618680 A CN 104618680A CN 201510030472 A CN201510030472 A CN 201510030472A CN 104618680 A CN104618680 A CN 104618680A
Authority
CN
China
Prior art keywords
row
image data
formula
pixel point
compression
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
CN201510030472.6A
Other languages
English (en)
Other versions
CN104618680B (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.)
BEIJING BASTRIVER CO LTD
Original Assignee
BEIJING BASTRIVER 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 BEIJING BASTRIVER CO LTD filed Critical BEIJING BASTRIVER CO LTD
Priority to CN201510030472.6A priority Critical patent/CN104618680B/zh
Publication of CN104618680A publication Critical patent/CN104618680A/zh
Application granted granted Critical
Publication of CN104618680B publication Critical patent/CN104618680B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

本发明公开一种视频分辨率的压缩方法,该方法包括步骤:提取原视频数据中的各帧原图像数据;利用基于分数形式的插值算法对各帧原图像数据进行列压缩或行压缩,得到各帧一次压缩图像数据;利用基于分数形式的插值算法对各帧一次压缩图像数据进行压缩或列压缩,得到各帧二次压缩图像数据;将各帧二次压缩图像数据组装成压缩后的视频数据。本发明所述技术方案使用分数形式进行数据计算,回避了浮点计算带来的部分取舍误差,避免了浮点计算带来的高资源消耗。且本发明所述技术方案采用行、列两次压缩计算,两次计算使用相同的算法、计算流程和资源,具有实现算法简单、资源复用的优势。

Description

一种视频分辨率的压缩方法
技术领域
本发明涉及视频技术。更具体地,涉及一种视频分辨率压缩方法。
背景技术
我国使用的标清视频演播格式为电视广播制式PAL制式,即每秒25帧图像,每帧图像由720×576个像素点构成。根据不同的应用领域,会将图像进行压缩,减少成像的像素点个数,满足不同输出、播放分辨率要求。
目前使用较多的压缩方法为线性插值算法,该算法可以比较平滑的实现图像的压缩,不会出现由于丢弃像素多造成明显的图像相邻差,而且在算法上对于压缩的分辨率没有要求,但实际上会以16或8的整数倍操作。
且目前使用的插值算法涉及到浮点运算,对于浮点的运算需要使用大量资源。
因此,需要提供一种视频分辨率压缩方法。
发明内容
本发明的目的在于提供一种视频分辨率压缩方法。
为达到上述目的,本发明采用下述技术方案:
一种视频分辨率的压缩方法,该方法包括步骤:
S1、提取原视频数据中的各帧原图像数据;
S2、利用基于分数形式的插值算法对各帧原图像数据进行列压缩或行压缩,得到各帧一次压缩图像数据;
S3、利用基于分数形式的插值算法对各帧一次压缩图像数据进行行压缩或列压缩,得到各帧二次压缩图像数据;
S4、将各帧二次压缩图像数据构成压缩后的视频数据。
优选地,步骤S2进一步包括:
S2.1、利用基于分数形式的插值算法对原图像数据中各像素点的列插值或行插值位置进行计算,得到列压缩图像数据中每一列压缩像素点的列位置或行压缩图像数据中每一行压缩像素点的行位置、与每一列压缩像素点或行压缩像素点对应的两个最邻近原像素点、以及每一列压缩像素点或行压缩像素点距两个最邻近原像素点的距离;
S2.2、根据得到的与每一列压缩像素点或行压缩像素点对应的两个最邻近原像素点、每一列压缩像素点或行压缩像素点距两个最邻近原像素点的距离,以及原像素点的像素值,利用基于分数形式的插值算法计算每一列压缩像素点或行压缩像素点的像素值,得到一次压缩图像数据。
优选地,步骤S3进一步包括:
S3.1、利用基于分数形式的插值算法对一次图像数据中各像素点的行插值或列插值位置进行计算,得到行压缩图像数据中每一行压缩像素点的行位置或列压缩图像数据中每一列压缩像素点的列位置、与每一行压缩像素点或列压缩像素点对应的两个最邻近一次压缩像素点、以及每一行压缩像素点或列压缩像素点距两个最邻近一次压缩像素点的距离;
S3.2、根据得到的与每一行压缩像素点或列压缩像素点对应的两个最邻近一次压缩像素点、每一行压缩像素点或列压缩像素点距两个最邻近一次压缩像素点的距离,以及一次压缩像素点的像素值,利用基于分数形式的插值算法计算每一行压缩像素点或列压缩像素点的像素值,得到二次压缩图像数据。
优选地,步骤S2.1进一步包括如下子步骤:
S2.1.1、设原图像数据的分辨率为n×m,一次压缩图像数据的分辨率为n×q,q<m,则列压缩图像数据中每一列压缩像素点的列位置插值间隔均为m/q,计算列压缩图像数据中每一列压缩像素点(i),i=0,1,…,q-1相对于列源点(0)的列位置Li,公式如下:
Li=((2i+1)×m-q)/2q;
S2.1.2、计算列压缩图像数据中每一列压缩像素点(i)对应的两个最邻近原像素点(Lzi)和(Lzi+1)的列号Lzi和Lzi+1,公式如下:
Lzi=((2i+1)×m-q)/2q  取整;
S2.1.3、计算列压缩图像数据中每一列压缩像素点(i)距原图像数据中两个最邻近原像素点(Lzi)和(Lzi+1)的距离lyi和2q-lyi,公式如下:
lyi=((2i+1)×m-q)/2q  取余;
S2.1.1、设原图像数据的分辨率为n×m,一次压缩图像数据的分辨率为w×m,w<n,则行压缩图像数据中每一行压缩像素点的行位置插值间隔均为n/w,计算行压缩图像数据中每一行压缩像素点(j),j=0,1,…,w-1相对于行源点(0)的列位置Lj公式如下:
Lj=((2j+1)×n-w)/2w;
S2.1.2、计算行压缩图像数据中每一行压缩像素点(j)对应的两个最邻近原像素点(Lzj)和(Lzj+1)的行号Lzj和Lzj+1,公式如下:
Lzj=((2j+1)×n-w)/2w  取整;
S2.1.3、计算行压缩图像数据中每一行压缩像素点(j)距原图像数据中两个最邻近原像素点(Lzj)和(Lzj+1)的距离lyj和2w-lyj,公式如下:
lyj=((2j+1)×n-w)/2w  取余。
优选地,步骤S2.2进一步包括如下子步骤:
S2.2.1、计算列压缩图像数据中每一列压缩像素点(i)的像素值的整数部分pzi,公式如下:
pzi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取整;
公式中,f(Lzi)为最邻近原像素点(Lzi)的像素值,f(Lzi+1)为最邻近原像素点(Lzi+1)的像素值;
S2.2.2、计算列压缩图像数据中每一列压缩像素点(i)的像素值的余数部分pyi,公式如下:
pyi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取余;
S2.2.3、根据每一列压缩像素点(i)的像素值的余数部分pyi,对每一列压缩像素点(i)的像素值的整数部分pzi进行进位,得到每一列压缩像素点(i)的像素值pi,公式如下:
pi=pzi+c;
公式中,当pyi≥q时c=1,否则c=0;
S2.2.4、根据列压缩图像数据中每一列压缩像素点(i)的列位置Li和像素值pi,构成一次压缩图像数据;
S2.2.1、计算行压缩图像数据中每一行压缩像素点(j)的像素值的整数部分pzj,公式如下:
pzj=(f(Lzj)×(2w-lyj)+f(Lzj+1)×lyj)/2w  取整;
公式中,f(Lzj)为最邻近原像素点(Lzj)的像素值,f(Lzj+1)为最邻近原像素点(Lzj+1)的像素值;
S2.2.2、计算行压缩图像数据中每一行压缩像素点(j)的像素值的余数部分pyj,公式如下:
pyj=(f(Lzj)×(2w-lyj)+f(Lzj+1)×lyj)/2w  取余;
S2.2.3、根据每一行压缩像素点(j)的像素值的余数部分pyj,对每一行压缩像素点(j)的像素值的整数部分pzj进行进位,得到每一行压缩像素点(j)的像素值pj,公式如下:
pj=pzj+c;
公式中,当pyj≥w时c=1,否则c=0;
S2.2.4、根据行压缩图像数据中每一行压缩像素点(j)的行位置Lj和像素值pj,构成一次压缩图像数据。
优选地,步骤S3.1进一步包括如下子步骤:
S3.1.1、设一次压缩图像数据的分辨率为n×q,二次压缩图像数据的分辨率为w×q,w<n,则行压缩图像数据中每一行压缩像素点的行位置插值间隔均为n/w,计算行压缩图像数据中每一行压缩像素点(j`),j`=0,1,…,w-1相对于行源点(0)的行位置Lj`,公式如下:
Lj`=((2j`+1)×n-w)/2w;
S3.1.2、计算行压缩图像数据中每一行压缩像素点(j`)对应的两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的行号Lzj`和Lzj`+1,公式如下:
Lzj`=((2j`+1)×n-w)/2w  取整;
S3.1.3、计算行压缩图像数据中每一行压缩像素点(j`)距原图像数据中两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的距离lyj`和2w-lyj`,公式如下:
lyj`=((2j`+1)×n-w)/2w  取余;
S3.1.1、设一次压缩图像数据的分辨率为w×m,二次压缩图像数据的分辨率为w×q,q<m,则列压缩图像数据中每一列压缩像素点的列位置插值间隔均为q/m,计算列压缩图像数据中每一列压缩像素点(i`),i`=0,1,…,q-1相对于列源点(0)的列位置Li`,公式如下:
Li`=((2i`+1)×m-q)/2q;
S3.1.2、计算列压缩图像数据中每一列压缩像素点(i`)对应的两个最邻近一次压缩像素点(Lzi`)和(Lzi`+1)的列号Lzi`和Lzi`+1,公式如下:
Lzi`=((2i`+1)×m-q)/2q  取整;
S3.1.3、计算列压缩图像数据中每一列压缩像素点(i`)距原图像数据中两个最邻近一次压缩像素点(Lzi`)和(Lzi`+1)的距离lyi`和2q-lyi`,公式如下:
lyi`=((2i`+1)×m-q)/2q  取余。
优选地,步骤S3.2进一步包括如下子步骤:
S3.2.1、计算行压缩图像数据中每一行压缩像素点(j`)的像素值的整数部分pzj`,公式如下:
pzj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取整;
公式中,f(Lzj`)为最邻近一次压缩像素点(Lzj`)的像素值,f(Lzj`+1)为最邻近一次压缩像素点(Lzj`+1)的像素值;
S3.2.2、计算行压缩图像数据中每一行压缩像素点(j`)的像素值的余数部分pyj`,公式如下:
pyj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取余;
S3.2.3、根据每一行压缩像素点(j`)的像素值的余数部分pyj`,对每一行压缩像素点(j`)的像素值的整数部分pzj`进行进位,得到每一行压缩像素点(j`)的像素值pj`,公式如下:
pj`=pzj`+c;
公式中,当pyj`≥w时c=1,否则c=0;
S3.2.4、根据行压缩图像数据中每一行压缩像素点(j`)的行位置Lj`和像素值pj`,构成二次压缩图像数据;
S3.2.1、计算列压缩图像数据中每一列压缩像素点(i`)的像素值的整数部分pzi`,公式如下:
pzi`=(f(Lzi`)×(2q-lyi`)+f(Lzi`+1)×lyi`)/2q  取整;
公式中,f(Lzi`)为最邻近一次压缩像素点(Lzi`)的像素值,f(Lzi`+1)为最邻近一次压缩像素点(Lzi`+1)的像素值;
S3.2.2、计算列压缩图像数据中每一列压缩像素点(i`)的像素值的余数部分pyi`,公式如下:
pyi`=(f(Lzi`)×(2q-lyi`)+f(Lzi`+1)×lyi`)/2q  取余;
S3.2.3、根据每一列压缩像素点(i`)的像素值的余数部分pyi`,对每一列压缩像素点(i`)的像素值的整数部分pzi`进行进位,得到每一列压缩像素点(i`)的像素值pi`,公式如下:
pi`=pzi`+c;
公式中,当pyi`≥q时c=1,否则c=0;
S3.2.4、根据列压缩图像数据中每一列压缩像素点(i`)的列位置Li`和像素值pi`,构成二次压缩图像数据。
本发明的有益效果如下:
本发明所述技术方案使用分数形式进行数据计算,回避了浮点计算带来的部分取舍误差,避免了浮点计算带来的高资源消耗。且本发明所述技术方案采用行、列两次压缩计算,两次计算使用相同的算法、计算流程和资源,具有实现算法简单、资源复用的优势。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1示出线性插值算法的平均对齐示意图。
图2示出插值算法原理示意图。
图3示出视频分辨率压缩方法代入压缩数据后插值算法的示意图。
图4示出视频分辨率压缩方法流程图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
本实施例中的线性插值算法是利用了压缩后图像像素点和与其位置最接近的原始图像中的前后两个相邻像素点的相关性,通过基于分数形式的插值算法来计算像素点的插值位置和像素值。
如图1所示,以只对原图像数据中的单行中的像素点进行压缩为例,计算压缩后像素点在行中的插值位置,当确定压缩后图像的成像分辨率后,通过乘权来确定每一个压缩后像素点的位置。根据计数值可以分为左对齐和右对齐两种:当目标点从左对齐端点,即行最左侧像素点开始计数时会得到左对齐插值,当目标点从右对齐端点,即行最右侧像素点开始计数时会得到右对齐插值,考虑到左右边界的点在实际的视频观看中起到的作用不大,所以本实施例根据左、右对齐所得到的值进行平均,从而得到一个平均对齐方式,改善图像中的像素点分布密度。
如图2所示,以只对原图像数据中的单行中的像素点进行压缩为例,根据压缩后像素点的插值位置,计算压缩后像素点的像素值,对于一个压缩后像素点,通过原像素点个数和压缩后像素点个数,可以得到其在原图像的行中对应的坐标i+u,其中i为非负整数,u为[0,1]区间的浮点数,则这个像素点的像素值f(i+u)可由原图像中所对应的前后两个列坐标为i、i+1的像素点的像素值f(i)、f(i+1)决定,压缩后像素点的像素值f(i+u)=(1-u)*f(i)+u*f(i+1),其中f(i)表示原图像(i)处的像素点的像素值,以此类推,这就是线性内插值法。但为了回避多次除法计算带来的浮点计数,本实施例采用基于分数形式的插值算法来计算像素点的插值位置和像素值。
本实施例提供的视频分辨率压缩方法,以对原图像数据进行列压缩,再对一次压缩图像数据进行行压缩,得到二次压缩图像数据为例,则本实施例提供的视频分辨率压缩方法包括如下步骤:
Step1、提取原视频数据中的各帧原图像数据;
Step2、利用基于分数形式的插值算法对各帧原图像数据进行列压缩,得到各帧一次压缩图像数据;
Step3、利用基于分数形式的插值算法对各帧一次压缩图像数据进行行压缩,得到各帧二次压缩图像数据;
Step4、将各帧二次压缩图像数据组装成压缩后的视频数据。
步骤Step2具体包括如下子步骤:
Step2.1、利用基于分数形式的插值算法对原图像数据中各像素点的列插值位置进行计算,得到列压缩图像数据中每一列压缩像素点的列位置、与每一列压缩像素点对应的两个最邻近原像素点、以及每一列压缩像素点距两个最邻近原像素点的距离,步骤Step2.1具体包括如下子步骤:
Step2.1.1、设原图像数据的分辨率为n×m,一次压缩图像数据的分辨率为n×q,q<m,则列压缩图像数据中每一列压缩像素点的列位置插值间隔均为m/q,每一列压缩像素点在各自行中的插值位置间隔如表1中的平均值:
表1
计算列压缩图像数据中每一列压缩像素点(i),i=0,1,…,q-1相对于列源点(0)的列位置Li,公式如下:
Li=((2i+1)×m-q)/2q  公式(1)
Step2.1.2、将公式(1)进行取整,计算列压缩图像数据中每一列压缩像素点(i)对应的两个最邻近原像素点(Lzi)和(Lzi+1)的列号Lzi和Lzi+1,,公式如下:
Lzi=((2i+1)×m-q)/2q  取整  公式(2)
Step2.1.3、计算列压缩图像数据中每一列压缩像素点(i)距原图像数据中所述两个最邻近原像素点(Lzi)和(Lzi+1)的距离lyi和2q-lyi,公式如下:
lyi=((2i+1)×m-q)/2q  取余  公式(3)
公式中模除取余结果lyi为列压缩像素点(i)距原图像数据中最邻近原像素点(Lzi)的距离,2q-lyi为列压缩像素点(i)距原图像数据中最邻近原像素点(Lzi+1)的距离。
Step2.2、根据得到的与每一列压缩像素点对应的两个最邻近原像素点、每一列压缩像素点距所述两个最邻近原像素点的距离,以及原像素点的像素值(包括像素值分量Y、U和V),利用基于分数形式的插值算法计算每一列压缩像素点的像素值,得到一次压缩图像数据,其中列压缩像素点(i)的像素值pi与列压缩像素点(i)距所述两个最邻近原像素点的距离成反比关系,步骤Step2.2具体包括如下子步骤:
Step2.2.1、计算列压缩图像数据中每一列压缩像素点(i)的像素值的整数部分pzi,公式如下:
pzi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取整  公式(4)
Step2.2.2、计算列压缩图像数据中每一列压缩像素点(i)的像素值的余数部分pyi,公式如下:
pyi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取余  公式(5)
Step2.2.3、根据每一列压缩像素点(i)的像素值的余数部分pyi,对每一列压缩像素点(i)的像素值的整数部分pzi进行进位,得到每一列压缩像素点(i)的像素值pi,即当余数部分大于等于分母2q的一半q时,满足四舍五入条件,向整数部分pzi进行进位操作,公式如下:
pi=pzi+c  公式(6)
公式中,当pyi≥q时c=1,否则c=0;
S2.2.4、根据列压缩图像数据中每一列压缩像素点(i)的列位置Li和像素值pi,构成一次压缩图像数据。
步骤Step3具体包括如下子步骤:
Step3.1、利用基于分数形式的插值算法对一次图像数据中各像素点的行插值进行计算,得到行压缩图像数据中每一行压缩像素点的行位置、与每一行压缩像素点对应的两个最邻近一次压缩像素点、以及每一行压缩像素点距所述两个最邻近一次压缩像素点的距离,步骤S3.1具体包括如下子步骤:
Step3.1.1设一次压缩图像数据的分辨率为n×q,二次压缩图像数据的分辨率为w×q,w<n,则行压缩图像数据中每一行压缩像素点的行位置插值间隔均为n/w,每一个新图像的像素点在各自列中的插值位置间隔如表2中的平均值:
表2
计算行压缩图像数据中每一行压缩像素点(j`),j`=0,1,…,w-1相对于行源点(0)的行位置Lj`,公式如下:
Lj`=((2j`+1)×n-w)/2w  公式(7)
Step3.1.2、将公式(7)进行取整,计算行压缩图像数据中每一行压缩像素点(j`)对应的两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的行号Lzj`和Lzj`+1,公式如下:
Lzj`=((2j`+1)×n-w)/2w  取整  公式(8)
Step3.1.3、计算行压缩图像数据中每一行压缩像素点(j`)距原图像数据中所述两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的距离lyj`和2w-lyj`,公式如下:
lyj`=((2j`+1)×n-w)/2w  取余  公式(9)
公式中模除取余结果lyj`为行压缩像素点(j`)距一次压缩图像数据中最邻近原像素点(Lzj`)的距离,2w-lyj`为行压缩像素点(j`)距一次压缩图像数据中最邻近原像素点(Lzj`+1)的距离。
Step3.2、根据得到的与每一行压缩像素点对应的两个最邻近一次压缩像素点、每一行压缩像素点距两个最邻近一次压缩像素点的距离,以及一次压缩像素点的像素值,利用基于分数形式的插值算法计算每一行压缩像素点的像素值,得到二次压缩图像数据,其中行压缩图像像素点(j`)的像素值pj`与行压缩像素点(j`)距所述两个最邻近一次压缩像素点的距离成反比关系,步骤S3.2具体包括如下子步骤:
Step3.2.1、计算行压缩图像数据中每一行压缩像素点(j`)的像素值的整数部分pzj`,公式如下:
pzj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取整  公式(10)
Step3.2.2、算行压缩图像数据中每一行压缩像素点(j`)的像素值的余数部分pyj`,公式如下:
pyj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取余  公式(11)
Step3.2.3、根据每一行压缩像素点(j`)的像素值的余数部分pyj`,对每一行压缩像素点(j`)的像素值的整数部分pzj`进行进位,得到每一行压缩像素点(j`)的像素值pj`,即当余数部分大于等于分母2w的一半w时,满足四舍五入条件,向整数部分pzj`进行进位操作,公式如下:
pj`=pzj`+c  公式(12)
公式中,当pyj`≥w时c=1,否则c=0。
Step3.2.4、根据行压缩图像数据中每一行压缩像素点(j`)的行位置Lj`和像素值pj`,构成二次压缩图像数据。
如表3所示,以只对原图像数据进行行压缩,且图像数据列分辨率10,目标图像,即压缩后图像数据列分辨率为6,对应列位置插值间隔均为m/q=10/6为例,对本实施例作进一步说明:
表3
i 平均插值
0 4/12
1 24/12
2 44/12
3 64/12
4 84/12
5 104/12
根据公式(3),计算出每个插值点位置如上表,如图3所示,以点2为例:
根据公式(3)所计算出的结果Lz2=44/12取整等于3,Lz2+1等于4,即生成像素位于参考像素3与4之间;
根据公式(4),Lz2到参考点3的距离为44模除12余8,到参考点4点距离为12-8=4;
根据公式(6),pz2=(f(3)×4+f(4)×8)/12,代入参考点3和参考点4的像素值f(3)和f(4),pz2即可求。
根据公式(7),代入参考点3和参考点4的像素值f(3)和f(4),py2即可求。
最后根据py2和q的大小关系确定进位c,根据公式(7)即可求出插值点2的像素值p2
综合上述,本实施例提供的技术方案使用分数形式进行数据计算,回避了浮点计算带来的部分取舍误差,避免了浮点计算带来的高资源消耗。且本发明所述技术方案采用行、列两次压缩计算,两次计算使用相同的算法、计算流程和资源,具有实现算法简单、资源复用的优势。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。

Claims (7)

1.一种视频分辨率的压缩方法,其特征在于,该方法包括步骤:
S1、提取原视频数据中的各帧原图像数据;
S2、利用基于分数形式的插值算法对各帧原图像数据进行列压缩或行压缩,得到各帧一次压缩图像数据;
S3、利用基于分数形式的插值算法对各帧一次压缩图像数据进行行压缩或列压缩,得到各帧二次压缩图像数据;
S4、将各帧二次压缩图像数据构成压缩后的视频数据。
2.根据权利要求1所述的视频分辨率的压缩方法,其特征在于,所述步骤S2进一步包括:
S2.1、利用基于分数形式的插值算法对原图像数据中各像素点的列插值或行插值位置进行计算,得到列压缩图像数据中每一列压缩像素点的列位置或行压缩图像数据中每一行压缩像素点的行位置、与每一列压缩像素点或行压缩像素点对应的两个最邻近原像素点、以及每一列压缩像素点或行压缩像素点距所述两个最邻近原像素点的距离;
S2.2、根据得到的与每一列压缩像素点或行压缩像素点对应的两个最邻近原像素点、每一列压缩像素点或行压缩像素点距所述两个最邻近原像素点的距离,以及原像素点的像素值,利用基于分数形式的插值算法计算每一列压缩像素点或行压缩像素点的像素值,得到一次压缩图像数据。
3.根据权利要求2所述的视频分辨率的压缩方法,其特征在于,所述步骤S3进一步包括:
S3.1、利用基于分数形式的插值算法对一次图像数据中各像素点的行插值或列插值位置进行计算,得到行压缩图像数据中每一行压缩像素点的行位置或列压缩图像数据中每一列压缩像素点的列位置、与每一行压缩像素点或列压缩像素点对应的两个最邻近一次压缩像素点、以及每一行压缩像素点或列压缩像素点距所述两个最邻近一次压缩像素点的距离;
S3.2、根据得到的与每一行压缩像素点或列压缩像素点对应的两个最邻近一次压缩像素点、每一行压缩像素点或列压缩像素点距所述两个最邻近一次压缩像素点的距离,以及一次压缩像素点的像素值,利用基于分数形式的插值算法计算每一行压缩像素点或列压缩像素点的像素值,得到二次压缩图像数据。
4.根据权利要求2所述的视频分辨率的压缩方法,其特征在于,所述步骤S2.1进一步包括如下子步骤:
S2.1.1、设原图像数据的分辨率为n×m,一次压缩图像数据的分辨率为n×q,q<m,则列压缩图像数据中每一列压缩像素点的列位置插值间隔均为m/q,计算列压缩图像数据中每一列压缩像素点(i),i=0,1,…,q-1相对于列源点(0)的列位置Li,公式如下:
Li=((2i+1)×m-q)/2q;
S2.1.2、计算列压缩图像数据中每一列压缩像素点(i)对应的两个最邻近原像素点(Lzi)和(Lzi+1)的列号Lzi和Lzi+1,公式如下:
Lzi=((2i+1)×m-q)/2q  取整;
S2.1.3、计算列压缩图像数据中每一列压缩像素点(i)距原图像数据中所述两个最邻近原像素点(Lzi)和(Lzi+1)的距离lyi和2q-lyi,公式如下:
lyi=((2i+1)×m-q)/2q  取余;
S2.1.1、设原图像数据的分辨率为n×m,一次压缩图像数据的分辨率为w×m,w<n,则行压缩图像数据中每一行压缩像素点的行位置插值间隔均为n/w,计算行压缩图像数据中每一行压缩像素点(j),j=0,1,…,w-1相对于行源点(0)的列位置Lj公式如下:
Lj=((2j+1)×n-w)/2w;
S2.1.2、计算行压缩图像数据中每一行压缩像素点(j)对应的两个最邻近原像素点(Lzj)和(Lzj+1)的行号Lzj和Lzj+1,公式如下:
Lzj=((2j+1)×n-w)/2w  取整;
S2.1.3、计算行压缩图像数据中每一行压缩像素点(j)距原图像数据中所述两个最邻近原像素点(Lzj)和(Lzj+1)的距离lyj和2w-lyj,公式如下:
lyj=((2j+1)×n-w)/2w  取余。
5.根据权利要求4所述的视频分辨率的压缩方法,其特征在于,步骤S2.2进一步包括如下子步骤:
S2.2.1、计算列压缩图像数据中每一列压缩像素点(i)的像素值的整数部分pzi,公式如下:
pzi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取整;
公式中,f(Lzi)为最邻近原像素点(Lzi)的像素值,f(Lzi+1)为最邻近原像素点(Lzi+1)的像素值;
S2.2.2、计算列压缩图像数据中每一列压缩像素点(i)的像素值的余数部分pyi,公式如下:
pyi=(f(Lzi)×(2q-lyi)+f(Lzi+1)×lyi)/2q  取余;
S2.2.3、根据每一列压缩像素点(i)的像素值的余数部分pyi,对每一列压缩像素点(i)的像素值的整数部分pzi进行进位,得到每一列压缩像素点(i)的像素值pi,公式如下:
pi=pzi+c;
公式中,当pyi≥q时c=1,否则c=0;
S2.2.4、根据列压缩图像数据中每一列压缩像素点(i)的列位置Li和像素值pi,构成一次压缩图像数据;
S2.2.1、计算行压缩图像数据中每一行压缩像素点(j)的像素值的整数部分pzj,公式如下:
pzj=(f(Lzj)×(2w-lyj)+f(Lzj+1)×lyj)/2w  取整;
公式中,f(Lzj)为最邻近原像素点(Lzj)的像素值,f(Lzj+1)为最邻近原像素点(Lzj+1)的像素值;
S2.2.2、计算行压缩图像数据中每一行压缩像素点(j)的像素值的余数部分pyj,公式如下:
pyj=(f(Lzj)×(2w-lyj)+f(Lzj+1)×lyj)/2w  取余;
S2.2.3、根据每一行压缩像素点(j)的像素值的余数部分pyj,对每一行压缩像素点(j)的像素值的整数部分pzj进行进位,得到每一行压缩像素点(j)的像素值pj,公式如下:
pj=pzj+c;
公式中,当pyj≥w时c=1,否则c=0;
S2.2.4、根据行压缩图像数据中每一行压缩像素点(j)的行位置Lj和像素值pj,构成一次压缩图像数据。
6.根据权利要求3所述的视频分辨率的压缩方法,其特征在于,步骤S3.1进一步包括如下子步骤:
S3.1.1、设一次压缩图像数据的分辨率为n×q,二次压缩图像数据的分辨率为w×q,w<n,则行压缩图像数据中每一行压缩像素点的行位置插值间隔均为n/w,计算行压缩图像数据中每一行压缩像素点(j`),j`=0,1,…,w-1相对于行源点(0)的行位置Lj`,公式如下:
Lj`=((2j`+1)×n-w)/2w;
S3.1.2、计算行压缩图像数据中每一行压缩像素点(j`)对应的两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的行号Lzj`和Lzj`+1,公式如下:
Lzj`=((2j`+1)×n-w)/2w  取整;
S3.1.3、计算行压缩图像数据中每一行压缩像素点(j`)距原图像数据中所述两个最邻近一次压缩像素点(Lzj`)和(Lzj`+1)的距离lyj`和2w-lyj`,公式如下:
lyj`=((2j`+1)×n-w)/2w  取余;
S3.1.1、设一次压缩图像数据的分辨率为w×m,二次压缩图像数据的分辨率为w×q,q<m,则列压缩图像数据中每一列压缩像素点的列位置插值间隔均为q/m,计算列压缩图像数据中每一列压缩像素点(i`),i`=0,1,…,q-1相对于列源点(0)的列位置Li`,公式如下:
Li`=((2i`+1)×m-q)/2q;
S3.1.2、计算列压缩图像数据中每一列压缩像素点(i`)对应的两个最邻近一次压缩像素点(Lzi`)和(Lzi`+1)的列号Lzi`和Lzi`+1,公式如下:
Lzi`=((2i`+1)×m-q)/2q  取整;
S3.1.3、计算列压缩图像数据中每一列压缩像素点(i`)距原图像数据中所述两个最邻近一次压缩像素点(Lzi`)和(Lzi`+1)的距离lyi`和2q-lyi`,公式如下:
lyi`=((2i`+1)×m-q)/2q  取余。
7.根据权利要求6所述的视频分辨率的压缩方法,其特征在于,步骤S3.2进一步包括如下子步骤:
S3.2.1、计算行压缩图像数据中每一行压缩像素点(j`)的像素值的整数部分pzj`,公式如下:
pzj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取整;
公式中,f(Lzj`)为最邻近一次压缩像素点(Lzj`)的像素值,f(Lzj`+1)为最邻近一次压缩像素点(Lzj`+1)的像素值;
S3.2.2、计算行压缩图像数据中每一行压缩像素点(j`)的像素值的余数部分pyj`,公式如下:
pyj`=(f(Lzj`)×(2w-lyj`)+f(Lzj`+1)×lyj`)/2w  取余;
S3.2.3、根据每一行压缩像素点(j`)的像素值的余数部分pyj`,对每一行压缩像素点(j`)的像素值的整数部分pzj`进行进位,得到每一行压缩像素点(j`)的像素值pj`,公式如下:
pj`=pzj`+c;
公式中,当pyj`≥w时c=1,否则c=0;
S3.2.4、根据行压缩图像数据中每一行压缩像素点(j`)的行位置Lj`和像素值pj`,构成二次压缩图像数据;
S3.2.1、计算列压缩图像数据中每一列压缩像素点(i`)的像素值的整数部分pzi`,公式如下:
pzi`=(f(Lzi`)×(2q-lyi`)+f(Lzi`+1)×lyi`)/2q  取整;
公式中,f(Lzi`)为最邻近一次压缩像素点(Lzi`)的像素值,f(Lzi`+1)为最邻近一次压缩像素点(Lzi`+1)的像素值;
S3.2.2、计算列压缩图像数据中每一列压缩像素点(i`)的像素值的余数部分pyi`,公式如下:
pyi`=(f(Lzi`)×(2q-lyi`)+f(Lzi`+1)×lyi`)/2q  取余;
S3.2.3、根据每一列压缩像素点(i`)的像素值的余数部分pyi`,对每一列压缩像素点(i`)的像素值的整数部分pzi`进行进位,得到每一列压缩像素点(i`)的像素值pi`,公式如下:
pi`=pzi`+c;
公式中,当pyi`≥q时c=1,否则c=0;
S3.2.4、根据列压缩图像数据中每一列压缩像素点(i`)的列位置Li`和像素值pi`,构成二次压缩图像数据。
CN201510030472.6A 2015-01-21 2015-01-21 一种视频分辨率的压缩方法 Active CN104618680B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510030472.6A CN104618680B (zh) 2015-01-21 2015-01-21 一种视频分辨率的压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510030472.6A CN104618680B (zh) 2015-01-21 2015-01-21 一种视频分辨率的压缩方法

Publications (2)

Publication Number Publication Date
CN104618680A true CN104618680A (zh) 2015-05-13
CN104618680B CN104618680B (zh) 2017-09-05

Family

ID=53152939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510030472.6A Active CN104618680B (zh) 2015-01-21 2015-01-21 一种视频分辨率的压缩方法

Country Status (1)

Country Link
CN (1) CN104618680B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106162224A (zh) * 2016-07-26 2016-11-23 北京金山安全软件有限公司 一种传输视频的方法、装置及电子设备
CN107333083A (zh) * 2017-07-25 2017-11-07 郑州云海信息技术有限公司 一种视频分辨率调整的方法
CN115314731A (zh) * 2022-06-23 2022-11-08 浙江大华技术股份有限公司 视频处理系统、方法、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285597A1 (en) * 2005-06-20 2006-12-21 Flextronics International Usa, Inc. Reusing interpolated values in advanced video encoders
CN101616325A (zh) * 2009-07-27 2009-12-30 清华大学 一种视频编码中自适应插值滤波计算的方法
CN103650490A (zh) * 2011-06-24 2014-03-19 株式会社Ntt都科摩 用于运动补偿预测的方法和设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285597A1 (en) * 2005-06-20 2006-12-21 Flextronics International Usa, Inc. Reusing interpolated values in advanced video encoders
CN101616325A (zh) * 2009-07-27 2009-12-30 清华大学 一种视频编码中自适应插值滤波计算的方法
CN103650490A (zh) * 2011-06-24 2014-03-19 株式会社Ntt都科摩 用于运动补偿预测的方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马涛,陈杰: "一种快速分数维运动估计算法", 《科学技术与工程》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106162224A (zh) * 2016-07-26 2016-11-23 北京金山安全软件有限公司 一种传输视频的方法、装置及电子设备
CN107333083A (zh) * 2017-07-25 2017-11-07 郑州云海信息技术有限公司 一种视频分辨率调整的方法
CN115314731A (zh) * 2022-06-23 2022-11-08 浙江大华技术股份有限公司 视频处理系统、方法、计算机设备和存储介质

Also Published As

Publication number Publication date
CN104618680B (zh) 2017-09-05

Similar Documents

Publication Publication Date Title
CN104219533B (zh) 一种双向运动估计方法和视频帧率上转换方法及系统
JP4958302B2 (ja) 多視点画像奥行値抽出装置、その方法およびそのプログラム
US9883200B2 (en) Method of acquiring neighboring disparity vectors for multi-texture and multi-depth video
JP2011129116A (ja) ビデオ変換システムのためのデプスマップを生成する方法およびそのシステム
JP2006512029A (ja) セグメントベース動き推定
JP3451985B2 (ja) 動画像類似度算出装置および方法
KR20110032157A (ko) 저해상도 비디오로부터 고해상도 비디오를 생성하는 방법
US20110080463A1 (en) Image processing apparatus, method, and recording medium
CN104618680A (zh) 一种视频分辨率的压缩方法
US20110279643A1 (en) Image processing apparatus and control method thereof
CN102306393B (zh) 一种基于轮廓匹配的深度扩散方法及装置
CN108833925B (zh) 一种基于深度神经网络的帧间预测方法
CN103702122A (zh) 编码模式选择方法、装置及编码器
US9609361B2 (en) Method for fast 3D video coding for HEVC
CN104159095A (zh) 一种多视点纹理视频和深度图编码的码率控制方法
US9208549B2 (en) Method and apparatus for color transfer between images
JP5387781B2 (ja) 奥行き信号生成装置、擬似立体画像信号生成装置、奥行き信号生成方法、擬似立体画像信号生成方法、奥行き信号生成プログラム、擬似立体画像信号生成プログラム
JP2004356747A (ja) 画像のマッチング方法および装置
TWI478100B (zh) 影像深度估計方法及其裝置
KR101868017B1 (ko) 스테레오 매칭 방법 및 그 장치
CN104994368B (zh) 2d‑3d视频转换中的非关键帧排序方法
KR101105675B1 (ko) 영상 데이터 인페인팅 방법 및 장치
JP2014072809A (ja) 画像生成装置、画像生成方法、画像生成装置用プログラム
JP4973591B2 (ja) 動きベクトル検出装置及び動きベクトル検出方法
JP7308051B2 (ja) 多視点映像色合わせ装置およびそのプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant