一种立体图像变焦方法
技术领域
本发明涉及一种图像信号的处理方法,尤其是涉及一种立体图像变焦方法。
背景技术
随着3D技术的快速发展,立体图像和立体视频已越来越受到人们的关注和喜爱。特别是随着手机、平板和个人电脑的发展,移动端的显示也越来越受到用户们的欢迎。然而,在移动端屏幕上显示立体图像和立体视频时,立体感会随之减弱甚至消失,电影制造者试图通过调整特定对象的大小和深度来使得观看者将注意力集中在该特定对象上,以提升该特定对象的立体感。因此,对于在移动端屏幕上显示立体图像和立体视频时,通过调整相机的聚焦深度可以增强对象的关注度和深度感。
在立体图像的聚焦深度调整上,大致可分为两种方法:使用深度图进行深度调整和不使用深度图进行深度调整。前一类方法需要精确的深度图,并利用虚拟视点绘制技术来产生深度调整后的立体图像;后一类方法是直接通过对立体图像中的像素点搬移来达到深度调整的目的的,然而该方法在深度调整后常常会产生空洞或者导致对象的形变,因此,如何减少深度调整后的立体图像的图像形变,如何根据用户指定的聚焦深度控制对象的调整以突出显著内容,都是在对立体图像进行聚焦深度调整过程中需要研究解决的问题。
发明内容
本发明所要解决的技术问题是提供一种立体图像变焦方法,利用其变焦后的立体图像具有近距离观看的沉浸感、具有较高的深度感,能够获得更高的三维体验质量。
本发明解决上述技术问题所采用的技术方案为:一种立体图像变焦方法,其特征在于包括以下步骤:
步骤一:将待处理的宽度为W且高度为H的立体图像的左视点图像、右视点图像及左视差图像对应记为{L(x,y)}、{R(x,y)}及{dL(x,y)};其中,1≤x≤W,1≤y≤H,L(x,y)表示{L(x,y)}中坐标位置为(x,y)的像素点的像素值,R(x,y)表示{R(x,y)}中坐标位置为(x,y)的像素点的像素值,dL(x,y)表示{dL(x,y)}中坐标位置为(x,y)的像素点的像素值;
步骤二:将{L(x,y)}分割成M个互不重叠的尺寸大小为22×22的四边形网格,将{L(x,y)}中的第k个四边形网格记为UL,k;然后根据{L(x,y)}中的所有四边形网格和{dL(x,y)},获取{R(x,y)}中的所有互不重叠的尺寸大小为22×22的四边形网格,将{R(x,y)}中的第k个四边形网格记为UR,k;其中,符号为向下取整运算符号,k为正整数,1≤k≤M,UL,k通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示UL,k的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述,UR,k通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示UR,k的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,以的水平坐标位置和垂直坐标位置来描述,表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值;
采用尺度不变特征转换提取出{L(x,y)}中的所有特征点,将{L(x,y)}中的第q个特征点记为 然后根据{L(x,y)}中的每个特征点和{dL(x,y)},获取{R(x,y)}中与{L(x,y)}中的每个特征点匹配的特征点,将{R(x,y)}中与匹配的特征点记为 其中,q为正整数,1≤q≤Q,Q表示{L(x,y)}中的特征点的总个数,也表示{R(x,y)}中的特征点的总个数,表示的横坐标位置,表示的纵坐标位置,表示的横坐标位置,表示{dL(x,y)}中坐标位置为的像素点的像素值,表示的纵坐标位置,
步骤三:根据用户指定的聚焦深度偏移量,计算{L(x,y)}中的每个四边形网格的期望网格,将UL,k的期望网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的期望网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, f表示相机的焦距,e表示待处理的立体图像的左视点与右视点之间的水平基线距离,Δz表示用户指定的聚焦深度偏移量;
根据用户指定的聚焦深度偏移量,计算{R(x,y)}中的每个四边形网格的期望网格,将UR,k的期望网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的期望网格顶点,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值;
步骤四:{L(x,y)}中的每个四边形网格对应有目标四边形网格,将UL,k对应的目标四边形网格记为同样,{R(x,y)}中的每个四边形网格对应有目标四边形网格,将UR,k对应的目标四边形网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的目标网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的目标网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述,
步骤五:计算{L(x,y)}和{R(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,记为Eline;
步骤六:用户通过编辑操作手工选择对象,然后根据{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格,计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的坐标偏移能量,记为Ecorr;
步骤七:根据{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有特征点,计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的立体质量能量,记为Edepth;
步骤八:根据{L(x,y)}中落于背景区域内的所有四边形网格及其对应的目标四边形网格、{R(x,y)}中落于背景区域内的所有四边形网格及其对应的目标四边形网格,计算{L(x,y)}和{R(x,y)}中落于背景区域内的所有四边形网格对应的目标四边形网格的背景保持能量,记为Eback;
步骤九:根据Eline、Ecorr、Edepth和Eback,计算{L(x,y)}和{R(x,y)}中的所有四边形网格对应的目标四边形网格的总能量,记为Etotal,Etotal=λ1Eline+λ2Ecorr+λ3Edepth+λ4Eback;然后通过最小二乘优化求解得到{L(x,y)}中的所有四边形网格对应的最佳目标四边形网格构成的集合及{R(x,y)}中的所有四边形网格对应的最佳目标四边形网格构成的集合,对应记为及 接着计算{L(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,将UL,k对应的最佳目标四边形网格的仿射变换矩阵记为 并计算{R(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,将UR,k对应的最佳目标四边形网格的仿射变换矩阵记为 其中,λ1、λ2、λ3、λ4均为加权参数,min()为取最小值函数,表示{L(x,y)}中的所有四边形网格对应的目标四边形网格构成的集合, 表示{R(x,y)}中的所有四边形网格对应的目标四边形网格构成的集合, 表示UL,k对应的最佳目标四边形网格,表示UR,k对应的最佳目标四边形网格,通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示的第1个网格顶点、第2个网格顶点、第3个网格顶点、第4个网格顶点,通过其左上、左下、右上和右下4个网格顶点的集合来描述,表示UR,k对应的最佳目标四边形网格, 对应表示的第1个网格顶点、第2个网格顶点、第3个网格顶点、第4个网格顶点,(AL,k)T为AL,k的转置,((AL,k)TAL,k)-1为(AL,k)TAL,k的逆,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,(AR,k)T为AR,k的转置,((AR,k)TAR,k)-1为(AR,k)TAR,k的逆,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置;
步骤十:根据{L(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,计算{L(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,将UL,k中水平坐标位置为x'L,k和垂直坐标位置为y'L,k的像素点经仿射变换矩阵变换后的水平坐标位置和垂直坐标位置对应记为和 然后根据{L(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,获取变焦后的左视点图像,记为其中,1≤x'L,k≤W,1≤y'L,k≤H,1≤x'≤W',1≤y'≤H,W'表示变焦后的立体图像的宽度,H亦为变焦后的立体图像的高度,表示中坐标位置为(x',y')的像素点的像素值;
同样,根据{R(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,计算{R(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,将UR,k中水平坐标位置为x'R,k和垂直坐标位置为y'R,k的像素点经仿射变换矩阵变换后的水平坐标位置和垂直坐标位置对应记为和 然后根据{R(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,获取变焦后的右视点图像,记为其中,1≤x'R,k≤W,1≤y'R,k≤H,1≤x'≤W',1≤y'≤H,表示中坐标位置为(x',y')的像素点的像素值。
所述的步骤五中的Eline的计算过程为: 其中,表示{L(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,表示{R(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,符号“||||”为求欧氏距离符号,eL,k表示UL,k的所有网格顶点的边缘组成的矩阵,(eL,k)T为eL,k的转置,((eL,k)TeL,k)-1为(eL,k)TeL,k的逆,表示的所有网格顶点的边缘组成的矩阵,eR,k表示UR,k的所有网格顶点的边缘组成的矩阵,(eR,k)T为eR,k的转置,((eR,k)TeR,k)-1为(eR,k)TeR,k的逆,表示的所有网格顶点的边缘组成的矩阵,
所述的步骤六中的Ecorr的计算过程为:其中,符号“|| ||”为求欧氏距离符号,t为正整数,t=1,2,3,4,表示的第t个网格顶点,表示{L(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格的网格顶点的集合,表示的第t个网格顶点,表示的第t个网格顶点,表示{R(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格的网格顶点的集合,表示的第t个网格顶点。
所述的步骤七中的Edepth的计算过程为:
A1、根据用户指定的聚焦深度,得到{L(x,y)}中落于用户选择的对象内的所有特征点的最佳目标视差集合,记为 其中,p为正整数,表示{L(x,y)}中落于用户选择的对象内的第p个特征点的最佳目标视差,表示{L(x,y)}中落于用户选择的对象内的第p个特征点的视差值,也表示{dL(x,y)}中坐标位置为落于用户选择的对象内的第p个特征点的像素点的像素值,表示{L(x,y)}中落于用户选择的对象内的所有特征点重新编号后的序号构成的集合;
A2、根据计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的立体质量能量Edepth,其中,表示的横坐标位置,表示{L(x,y)}中落于用户选择的对象内的第p个特征点,i'为正整数,1≤i'≤4,k'为正整数,1≤k'≤M,表示与之间的欧氏距离,表示所在的四边形网格UL,k'的第i'个网格顶点,UL,k'表示{L(x,y)}中的第k'个四边形网格,表示的横坐标位置,表示{R(x,y)}中落于用户选择的对象内的第p个特征点, 表示与之间的欧氏距离,表示所在的四边形网格UR,k'的第i'个网格顶点,UR,k'表示{R(x,y)}中的第k'个四边形网格,表示的横坐标位置,表示的纵坐标位置,表示对应的目标特征点, 表示所在的目标四边形网格的第i'个网格顶点,表示UL,k'对应的目标四边形网格,表示的横坐标位置,表示的横坐标位置,表示对应的目标特征点, 表示所在的目标四边形网格的第i'个网格顶点,表示UR,k'对应的目标四边形网格。
所述的步骤八中的Eback的计算过程为:
其中,背景区域为除用户选择的对象所在的区域外的区域,表示{L(x,y)}中落于背景区域内的所有四边形网格的期望网格的网格顶点的集合,表示{R(x,y)}中落于背景区域内的所有四边形网格的期望网格的网格顶点的集合。
与现有技术相比,本发明的优点在于:
本发明方法首先根据用户指定的聚焦深度获得立体图像的左视点图像和右视点图像中的每个四边形网格的期望网格,然后提取立体图像的左视点图像和右视点图像中的所有四边形网格对应的目标四边形网格的边缘弯曲能量、落于用户选择的对象内的所有四边形网格对应的目标四边形网格的坐标偏移能量和立体质量能量、落于背景区域内的所有四边形网格对应的目标四边形网格的背景保持能量,并通过优化使得总能量最小,进而获取立体图像的左视点图像和右视点图像中的每个四边形网格的最佳目标四边形网格,并通过双线性插值得到变焦后的左视点图像和右视点图像,这样可使得变焦后的立体图像能够保留精确的对象形状和准确的目标聚焦深度,变焦后的立体图像具有近距离观看的沉浸感、具有较高的深度感,能够获得更高的三维体验质量。
附图说明
图1为本发明方法的总体实现框图;
图2a为“Image1”的原始立体图像的“红/绿”图;
图2b为“Image1”的变焦后的“红/绿”图;
图3a为“Image2”的原始立体图像的“红/绿”图;
图3b为“Image2”的变焦后的“红/绿”图;
图4a为“Image3”的原始立体图像的“红/绿”图;
图4b为“Image3”的变焦后的“红/绿”图;
图5a为“Image4”的原始立体图像的“红/绿”图;
图5b为“Image4”的变焦后的“红/绿”图;
图6a为“Image5”的原始立体图像的“红/绿”图;
图6b为“Image5”的变焦后的“红/绿”图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提出的一种立体图像变焦方法,其总体实现框图如图1所示,其包括以下步骤:
步骤一:将待处理的宽度为W且高度为H的立体图像的左视点图像、右视点图像及左视差图像对应记为{L(x,y)}、{R(x,y)}及{dL(x,y)};其中,1≤x≤W,1≤y≤H,L(x,y)表示{L(x,y)}中坐标位置为(x,y)的像素点的像素值,R(x,y)表示{R(x,y)}中坐标位置为(x,y)的像素点的像素值,dL(x,y)表示{dL(x,y)}中坐标位置为(x,y)的像素点的像素值。
步骤二:将{L(x,y)}分割成M个互不重叠的尺寸大小为22×22的四边形网格,将{L(x,y)}中的第k个四边形网格记为UL,k;然后根据{L(x,y)}中的所有四边形网格和{dL(x,y)},获取{R(x,y)}中的所有互不重叠的尺寸大小为22×22的四边形网格,将{R(x,y)}中的第k个四边形网格记为UR,k;其中,符号为向下取整运算符号,k为正整数,1≤k≤M,UL,k通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示UL,k的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述,UR,k通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示UR,k的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,以的水平坐标位置和垂直坐标位置来描述,表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值。
采用现有的尺度不变特征转换(Scale Invariant Feature Transform,SIFT)提取出{L(x,y)}中的所有特征点,将{L(x,y)}中的第q个特征点记为 然后根据{L(x,y)}中的每个特征点和{dL(x,y)},获取{R(x,y)}中与{L(x,y)}中的每个特征点匹配的特征点,将{R(x,y)}中与匹配的特征点记为 其中,q为正整数,1≤q≤Q,Q表示{L(x,y)}中的特征点的总个数,也表示{R(x,y)}中的特征点的总个数,表示的横坐标位置,表示的纵坐标位置,表示的横坐标位置,表示{dL(x,y)}中坐标位置为的像素点的像素值,表示的纵坐标位置,
步骤三:根据用户指定的聚焦深度偏移量,计算{L(x,y)}中的每个四边形网格的期望网格,将UL,k的期望网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的期望网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, f表示相机的焦距,e表示待处理的立体图像的左视点与右视点之间的水平基线距离,Δz表示用户指定的聚焦深度偏移量,在本实施例中取f=4152.073毫米、e=176.252毫米、Δz=600毫米。
根据用户指定的聚焦深度偏移量,计算{R(x,y)}中的每个四边形网格的期望网格,将UR,k的期望网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的期望网格顶点,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值,以的水平坐标位置和垂直坐标位置来描述, 表示{dL(x,y)}中坐标位置为的像素点的像素值。
步骤四:{L(x,y)}中的每个四边形网格对应有目标四边形网格,将UL,k对应的目标四边形网格记为同样,{R(x,y)}中的每个四边形网格对应有目标四边形网格,将UR,k对应的目标四边形网格记为其中,通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的目标网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 通过其左上、左下、右上和右下4个网格顶点的集合来描述,对应表示的作为第1个网格顶点的左上网格顶点、作为第2个网格顶点的左下网格顶点、作为第3个网格顶点的右上网格顶点、作为第4个网格顶点的右下网格顶点,也对应表示各自的目标网格顶点,以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述, 以的水平坐标位置和垂直坐标位置来描述,
步骤五:计算{L(x,y)}和{R(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,记为Eline, 其中,表示{L(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,表示{R(x,y)}中的所有四边形网格对应的目标四边形网格的边界弯曲能量,符号“|| ||”为求欧氏距离符号,eL,k表示UL,k的所有网格顶点的边缘组成的矩阵,(eL,k)T为eL,k的转置,((eL,k)TeL,k)-1为(eL,k)TeL,k的逆,表示的所有网格顶点的边缘组成的矩阵,eR,k表示UR,k的所有网格顶点的边缘组成的矩阵,(eR,k)T为eR,k的转置,((eR,k)TeR,k)-1为(eR,k)TeR,k的逆,表示的所有网格顶点的边缘组成的矩阵,
步骤六:用户通过编辑操作手工选择对象,然后根据{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格,计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的坐标偏移能量,记为Ecorr,其中,符号“|| ||”为求欧氏距离符号,t为正整数,t=1,2,3,4,表示的第t个网格顶点,表示{L(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格的网格顶点的集合,表示的第t个网格顶点,表示的第t个网格顶点,表示{R(x,y)}中落于用户选择的对象内的所有四边形网格的期望网格的网格顶点的集合,表示的第t个网格顶点。
步骤七:根据{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有特征点,计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的立体质量能量,记为Edepth。
在本实施例中,步骤七中的Edepth的计算过程为:
A1、根据用户指定的聚焦深度,得到{L(x,y)}中落于用户选择的对象内的所有特征点的最佳目标视差集合,记为其中,p为正整数,表示{L(x,y)}中落于用户选择的对象内的第p个特征点的最佳目标视差,表示{L(x,y)}中落于用户选择的对象内的第p个特征点的视差值,也表示{dL(x,y)}中坐标位置为落于用户选择的对象内的第p个特征点的像素点的像素值,表示{L(x,y)}中落于用户选择的对象内的所有特征点重新编号后的序号构成的集合。
A2、根据计算{L(x,y)}和{R(x,y)}中落于用户选择的对象内的所有四边形网格对应的目标四边形网格的立体质量能量Edepth,其中,表示的横坐标位置,表示{L(x,y)}中落于用户选择的对象内的第p个特征点,i'为正整数,1≤i'≤4,k'为正整数,1≤k'≤M,表示与之间的欧氏距离,表示所在的四边形网格UL,k'的第i'个网格顶点,表示所在的四边形网格UL,k'的作为第1个网格顶点的左上网格顶点,表示所在的四边形网格UL,k'的作为第2个网格顶点的左下网格顶点,表示所在的四边形网格UL,k'的作为第3个网格顶点的右上网格顶点,表示所在的四边形网格UL,k'的作为第4个网格顶点的右下网格顶点,UL,k'表示{L(x,y)}中的第k'个四边形网格,表示的横坐标位置,表示{R(x,y)}中落于用户选择的对象内的第p个特征点, 表示与之间的欧氏距离,表示所在的四边形网格UR,k'的第i'个网格顶点,表示所在的四边形网格UR,k'的作为第1个网格顶点的左上网格顶点,表示所在的四边形网格UR,k'的作为第2个网格顶点的左下网格顶点,表示所在的四边形网格UR,k'的作为第3个网格顶点的右上网格顶点,表示所在的四边形网格UR,k'的作为第4个网格顶点的右下网格顶点,UR,k'表示{R(x,y)}中的第k'个四边形网格,表示的横坐标位置,表示的纵坐标位置,表示对应的目标特征点, 表示所在的目标四边形网格的第i'个网格顶点,表示所在的目标四边形网格的作为第1个网格顶点的左上网格顶点,表示所在的目标四边形网格的作为第2个网格顶点的左下网格顶点,表示所在的目标四边形网格的作为第3个网格顶点的右上网格顶点,表示所在的目标四边形网格的作为第4个网格顶点的右下网格顶点,表示UL,k'对应的目标四边形网格,表示的横坐标位置,表示的横坐标位置,表示对应的目标特征点, 表示所在的目标四边形网格的第i'个网格顶点,表示所在的目标四边形网格的作为第1个网格顶点的左上网格顶点,表示所在的目标四边形网格的作为第2个网格顶点的左下网格顶点,表示所在的目标四边形网格的作为第3个网格顶点的右上网格顶点,表示所在的目标四边形网格的作为第4个网格顶点的右下网格顶点,表示UR,k'对应的目标四边形网格。
步骤八:根据{L(x,y)}中落于背景区域内的所有四边形网格及其对应的目标四边形网格、{R(x,y)}中落于背景区域内的所有四边形网格及其对应的目标四边形网格,计算{L(x,y)}和{R(x,y)}中落于背景区域内的所有四边形网格对应的目标四边形网格的背景保持能量,记为Eback,其中,背景区域为除用户选择的对象所在的区域外的区域,表示{L(x,y)}中落于背景区域内的所有四边形网格的期望网格的网格顶点的集合,表示{R(x,y)}中落于背景区域内的所有四边形网格的期望网格的网格顶点的集合。
步骤九:根据Eline、Ecorr、Edepth和Eback,计算{L(x,y)}和{R(x,y)}中的所有四边形网格对应的目标四边形网格的总能量,记为Etotal,Etotal=λ1Eline+λ2Ecorr+λ3Edepth+λ4Eback;然后通过最小二乘优化求解得到{L(x,y)}中的所有四边形网格对应的最佳目标四边形网格构成的集合及{R(x,y)}中的所有四边形网格对应的最佳目标四边形网格构成的集合,对应记为及 接着计算{L(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,将UL,k对应的最佳目标四边形网格的仿射变换矩阵记为 并计算{R(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,将UR,k对应的最佳目标四边形网格的仿射变换矩阵记为 其中,λ1、λ2、λ3、λ4均为加权参数,在本实施例中取λ1=3、λ1=4、λ3=2、λ4=4,min()为取最小值函数,表示{L(x,y)}中的所有四边形网格对应的目标四边形网格构成的集合, 表示{R(x,y)}中的所有四边形网格对应的目标四边形网格构成的集合, 表示UL,k对应的最佳目标四边形网格,表示UR,k对应的最佳目标四边形网格,通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示的第1个网格顶点、第2个网格顶点、第3个网格顶点、第4个网格顶点,表示UR,k对应的最佳目标四边形网格,通过其左上、左下、右上和右下4个网格顶点的集合来描述, 对应表示的第1个网格顶点、第2个网格顶点、第3个网格顶点、第4个网格顶点,(AL,k)T为AL,k的转置,((AL,k)TAL,k)-1为(AL,k)TAL,k的逆,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,(AR,k)T为AR,k的转置,((AR,k)TAR,k)-1为(AR,k)TAR,k的逆,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置,和对应表示的水平坐标位置和垂直坐标位置。
步骤十:根据{L(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,计算{L(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,将UL,k中水平坐标位置为x'L,k和垂直坐标位置为y'L,k的像素点经仿射变换矩阵变换后的水平坐标位置和垂直坐标位置对应记为和 然后根据{L(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,获取变焦后的左视点图像,记为其中,1≤x'L,k≤W,1≤y'L,k≤H,1≤x'≤W',1≤y'≤H,W'表示变焦后的立体图像的宽度,H亦为变焦后的立体图像的高度,表示中坐标位置为(x',y')的像素点的像素值;
同样,根据{R(x,y)}中的每个四边形网格对应的最佳目标四边形网格的仿射变换矩阵,计算{R(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,将UR,k中水平坐标位置为x'R,k和垂直坐标位置为y'R,k的像素点经仿射变换矩阵变换后的水平坐标位置和垂直坐标位置对应记为和 然后根据{R(x,y)}中的每个四边形网格中的每个像素点经仿射变换矩形变换后的水平坐标位置和垂直坐标位置,获取变焦后的右视点图像,记为其中,1≤x'R,k≤W,1≤y'R,k≤H,1≤x'≤W',1≤y'≤H,表示中坐标位置为(x',y')的像素点的像素值。
为了进一步说明本发明方法的可行性和有效性,对本发明方法进行试验。
以下就利用本发明方法对Image1、Image2、Image3、Image4和Image5五幅立体图像进行变焦实验。图2a给出了“Image1”的原始立体图像的“红/绿”图,图2b给出了“Image1”的变焦后的“红/绿”图;图3a给出了“Image2”的原始立体图像的“红/绿”图,图3b给出了“Image2”的变焦后的“红/绿”图;图4a给出了“Image3”的原始立体图像的“红/绿”图,图4b给出了“Image3”的变焦后的“红/绿”图;图5a给出了“Image4”的原始立体图像的“红/绿”图,图5b给出了“Image4”的变焦后的“红/绿”图;图6a给出了“Image5”的原始立体图像的“红/绿”图,图6b给出了“Image5”的变焦后的“红/绿”图。从图2a至图6b中可以看出,采用本发明方法得到的变焦后的立体图像能够较好地保留对象形状,且可以根据用户的选择增加重要对象的尺寸。