发明名称 一种基于最小插值误差平方和的彩色图像下采样方法
摘要 本发明提供了一种基于最小插值误差平方和的彩色图像下采样方法,它是根据不同彩色空间之间存在的误差平方和不对等现象,在RGB彩色空间插值误差平方和最小的前提下,利用RGB和YCbCr彩色空间之间的转换矩阵为非酉矩阵的特性,对YCbCr空间的彩色图像进行下采样,生成低分辨率图像;通过把两种彩色空间之间存在的插值误差转换关系融入到彩色图像的下采样中,将色彩转换矩阵与图像插值矩阵相结合,大幅度提高了图像的下采样效率,进而提高了彩色图像的插值效率。利用本发明所产生的低分辨率彩色图像,在经过图像插值重建后,能够产生质量较高的分辨率RGB图像。
申请公布号 CN106485760A 申请公布日期 2017.03.08
申请号 CN201610866876.3 申请日期 2016.09.30
申请人 电子科技大学 发明人 朱树元;李明宇
分类号 G06T7/90(2017.01)I 主分类号 G06T7/90(2017.01)I
代理机构 电子科技大学专利中心 51203 代理人 曾磊
主权项 一种基于最小插值误差平方和的彩色图像下采样方法,其特征是它包括以下步骤:步骤1,图像的预处理首先,将分辨率为w×h的原始RGB彩色图像,记为X,这里,w是图像的宽度,h是图像的高度;其次,按照标准的提取RGB图像分量的方法提取红、绿和蓝三个色彩分量图像,提取出的红、绿和蓝三个色彩分量图像分别记为R、G和B,这里R、G和B的分辨率都是w×h;接着,按照标准的无重叠式图像分块方法将R划分为N=(w×h)/n<sup>2</sup>个互不重叠的,大小为n×n的正方形图像块,记为r<sub>1</sub>,r<sub>2</sub>,…,r<sub>i</sub>,…,r<sub>N</sub>;按照标准的无重叠式图像分块方法将G划分为N=(w×h)/n<sup>2</sup>个互不重叠的,大小为n×n的正方形图像块,记为g<sub>1</sub>,g<sub>2</sub>,…,g<sub>i</sub>,…,g<sub>N</sub>;按照标准的无重叠式图像分块方法将B划分为N=(w×h)/n<sup>2</sup>个互不重叠的,大小为n×n的正方形图像块,记为b<sub>1</sub>,b<sub>2</sub>,…,b<sub>i</sub>,…,b<sub>N</sub>;这里,N代表所产生的图像块的个数,n代表所产生的每个正方形图像块的宽度或高度,i代表图像块的索引,i∈{1,2,…,N};步骤2,将图像块转化为列向量首先,将步骤1产生的图像块r<sub>1</sub>,r<sub>2</sub>,…,r<sub>i</sub>,…,r<sub>N</sub>,依次按照标准的矩阵转化为列向量的方法转化成N个列向量,记为<img file="FDA0001124681180000011.GIF" wi="491" he="55" />其次,将步骤1产生的图像块g<sub>1</sub>,g<sub>2</sub>,…,g<sub>i</sub>,…,g<sub>N</sub>,依次按照标准的矩阵转化为列向量的方法转化成N个列向量,记为<img file="FDA0001124681180000012.GIF" wi="547" he="55" />接着,将步骤1产生的图像块b<sub>1</sub>,b<sub>2</sub>,…,b<sub>i</sub>,…,b<sub>N</sub>,依次按照标准的矩阵转化为列向量的方法转化成N个列向量,记为<img file="FDA0001124681180000013.GIF" wi="515" he="71" />最后,将<img file="FDA0001124681180000014.GIF" wi="131" he="55" />和<img file="FDA0001124681180000015.GIF" wi="35" he="69" />按照标准的低维列向量合成高维列向量的方法产生一个列向量,记为Z<sub>1</sub>;将<img file="FDA0001124681180000016.GIF" wi="64" he="55" /><img file="FDA0001124681180000017.GIF" wi="50" he="62" />和<img file="FDA0001124681180000018.GIF" wi="42" he="68" />按照标准的低维列向量合成高维列向量的方法产生一个列向量,记为Z<sub>2</sub>;…;同理,将<img file="FDA0001124681180000019.GIF" wi="128" he="55" />和<img file="FDA00011246811800000110.GIF" wi="37" he="70" />按照标准的低维列向量合成高维列向量的方法产生一个列向量,记为Zi;…;将<img file="FDA00011246811800000111.GIF" wi="162" he="63" />和<img file="FDA00011246811800000112.GIF" wi="53" he="71" />按照标准的低维列向量合成高维列向量的方法产生一个列向量,记为Z<sub>N</sub>;步骤3,产生插值矩阵首先,按照标准的生成双三次插值矩阵的方法,产生一个大小为n<sup>2</sup>×(n<sup>2</sup>/4)的插值矩阵,记为H;其次,按照标准的生成单位矩阵的方法,产生一个大小为n<sup>2</sup>×n<sup>2</sup>的单位矩阵,记为I;接着,按照标准的生成全零矩阵的方法,产生一个大小为n<sup>2</sup>×(n<sup>2</sup>/4)的单位矩阵,记为O<sub>1</sub>;然后,按照标准的生成全零矩阵的方法,产生一个大小为n<sup>2</sup>×n<sup>2</sup>的单位矩阵,记为O<sub>2</sub>;最后,用I、H和O按照从左到右、从上到下的顺序,生成一个插值矩阵,记为C:<maths num="0001"><math><![CDATA[<mrow><mi>C</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>I</mi></mtd><mtd><msub><mi>O</mi><mn>1</mn></msub></mtd><mtd><msub><mi>O</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>O</mi><mn>2</mn></msub></mtd><mtd><mi>H</mi></mtd><mtd><msub><mi>O</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>O</mi><mn>2</mn></msub></mtd><mtd><msub><mi>O</mi><mn>1</mn></msub></mtd><mtd><mi>H</mi></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0001124681180000021.GIF" wi="374" he="206" /></maths> 步骤4,产生彩色空间转换矩阵首先,定义标准的RGB图像转化YCbCr图像的方法中的线性转化矩阵记为Ψ;其次,对Ψ求逆矩阵,将得到的逆矩阵记为Λ,这里,<img file="FDA0001124681180000022.GIF" wi="486" he="222" />其中λ<sub>11</sub>、λ<sub>12</sub>、λ<sub>13</sub>、λ<sub>21</sub>、λ<sub>22</sub>、λ<sub>23</sub>、λ<sub>31</sub>、λ<sub>32</sub>和λ<sub>33</sub>都是Λ的元素;接着,用λ<sub>11</sub>、λ<sub>12</sub>、λ<sub>13</sub>、λ<sub>21</sub>、λ<sub>22</sub>、λ<sub>23</sub>、λ<sub>31</sub>、λ<sub>32</sub>和λ<sub>33</sub>依次与单位矩阵I相乘,将得到的大小为n<sup>2</sup>×n<sup>2</sup>的对角矩阵分别记为α<sub>11</sub>、α<sub>12</sub>、α<sub>13</sub>、α<sub>21</sub>、α<sub>22</sub>、α<sub>23</sub>、α<sub>31</sub>、α<sub>32</sub>和α<sub>33</sub>,这里,<img file="FDA0001124681180000023.GIF" wi="1469" he="295" />同理,<img file="FDA0001124681180000024.GIF" wi="686" he="294" />最后,用α<sub>11</sub>、α<sub>12</sub>、α<sub>13</sub>、α<sub>21</sub>、α<sub>22</sub>、α<sub>23</sub>、α<sub>31</sub>、α<sub>32</sub>和α<sub>33</sub>按照从左到右、从上到下的顺序,生成一个大小为3n<sup>2</sup>×3n<sup>2</sup>的插值矩阵,记为A,这里<maths num="0002"><math><![CDATA[<mrow><mi>A</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>&alpha;</mi><mn>11</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>12</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>13</mn></msub></mtd></mtr><mtr><mtd><msub><mi>&alpha;</mi><mn>21</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>22</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>23</mn></msub></mtd></mtr><mtr><mtd><msub><mi>&alpha;</mi><mn>31</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>32</mn></msub></mtd><mtd><msub><mi>&alpha;</mi><mn>33</mn></msub></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0001124681180000025.GIF" wi="470" he="231" /></maths>步骤5,产生下采样矩阵首先,用步骤4产生的转换矩阵A左乘步骤3产生的插值矩阵C,得到变换矩阵D,这里D=A·C;其次,用D产生一个下采样矩阵,记为F,这里,F=(D<sup>T</sup>·D)<sup>‑1</sup>.D<sup>T</sup>,其中符号“T”表示矩阵的转置操作;步骤6,产生下采样列向量用步骤5产生的下采样矩阵F依次左乘步骤2产生的列向量Z<sub>1</sub>,Z<sub>2</sub>,…,Z<sub>i</sub>,…,Z<sub>N</sub>,得到变换系数列向量,记为<img file="FDA0001124681180000031.GIF" wi="890" he="63" />这里,<img file="DA00011246811832707.GIF" wi="345" he="71" /><img file="FDA0001124681180000032.GIF" wi="395" he="71" /><img file="FDA0001124681180000033.GIF" wi="822" he="70" />步骤7,列向量转化为图像块第1步,将步骤6产生的下采样列向量<img file="FDA0001124681180000034.GIF" wi="156" he="62" />的第1至n<sup>2</sup>个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块n×n的图像块,记为y<sub>1</sub>;将<img file="FDA0001124681180000035.GIF" wi="154" he="62" />的第n<sup>2</sup>+1至n<sup>2</sup>+(n<sup>2</sup>/4)个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cb<sub>1</sub>;将<img file="FDA0001124681180000036.GIF" wi="154" he="63" />的第n<sup>2</sup>+(n<sup>2</sup>/4)+1至最后一个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cr<sub>1</sub>;第2步,将步骤6产生的下采样列向量<img file="FDA0001124681180000037.GIF" wi="162" he="55" />的第1至n<sup>2</sup>个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块n×n的图像块,记为y<sub>2</sub>;将<img file="FDA0001124681180000038.GIF" wi="163" he="55" />的第n<sup>2</sup>+1至n<sup>2</sup>+(n<sup>2</sup>/4)个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cb<sub>2</sub>;将<img file="FDA0001124681180000039.GIF" wi="163" he="62" />的第n<sup>2</sup>+(n<sup>2</sup>/4)+1至最后一个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cr<sub>2</sub>;……;第i步,将步骤6产生的下采样列向量<img file="FDA00011246811800000310.GIF" wi="155" he="62" />的第1至n<sup>2</sup>个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块n×n的图像块,记为y<sub>i</sub>;将<img file="FDA00011246811800000311.GIF" wi="169" he="63" />的第n<sup>2</sup>+1至n<sup>2</sup>+(n<sup>2</sup>/4)个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cb<sub>i</sub>;将<img file="FDA00011246811800000312.GIF" wi="161" he="63" />的第n<sup>2</sup>+(n<sup>2</sup>/4)+1至最后一个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cr<sub>i</sub>;……;同理,第N步,将步骤6产生的下采样列向量<img file="FDA0001124681180000041.GIF" wi="171" he="63" />的第1至n<sup>2</sup>个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块n×n的图像块,记为y<sub>N</sub>;将<img file="FDA0001124681180000042.GIF" wi="171" he="63" />的第n<sup>2</sup>+1至n<sup>2</sup>+(n<sup>2</sup>/4)个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cb<sub>N</sub>;将<img file="FDA0001124681180000043.GIF" wi="159" he="63" />的第n<sup>2</sup>+(n<sup>2</sup>/4)+1至最后一个元素依次取出,按照标准的用像素点产生图像块的方法,产生一个大小为图像块(n/2)×(n/2)的图像块,记为cr<sub>N</sub>;步骤8,图像重建用步骤7产生的图像块y<sub>1</sub>,y<sub>2</sub>,…,y<sub>i</sub>,…,y<sub>N</sub>,采用标准的图像块合成图像的方法进行合成,得到完整的亮度图像,记为Y;用步骤7产生的图像块cb<sub>1</sub>,cb<sub>2</sub>,…,cb<sub>i</sub>,…,cb<sub>N</sub>,采用标准的图像块合成图像的方法进行合成,得到第一个下采样的亮度图像,记为Cb;用步骤7产生的图像块cr<sub>1</sub>,cr<sub>2</sub>,…,cr<sub>i</sub>,…,cr<sub>N</sub>,采用标准的图像块合成图像的方法进行合成,得到第二个下采样的亮度图像,记为Cr。
地址 611731 四川省成都市高新区(西区)西源大道2006号