1.一种光场特征油画鉴别方法,其特征在于,具体按照以下步骤实施:步骤1、将微透镜阵列板贴合于油画表面,并用聚焦式光场相机进行拍摄,得到光场原始图像;
步骤2、对步骤1中得到的光场原始图像进行解码得到四维参数化矩阵L[s,t,u,v];
步骤3、利用步骤2得到的四维参数化矩阵L[s,t,u,v]提取多个子孔径图像;
步骤4、将中心行子孔径图像统一剪裁为分辨率大小相等的图像,得到剪裁后的中心行子孔径图像,将剪裁后的中心行子孔径图像转换为灰度图像,计算灰度图像的平均亮度值,将所有灰度图像中亮度值低于灰度图像平均亮度值的子孔径图像筛除出去,再选择出最左角度和最右角度的灰度图像;
步骤5、对步骤4选出的两幅灰度图像逐像素的提取基于视角稳定变化的特征点;
步骤5具体按照以下步骤实施:
步骤5.1、分别计算步骤4中选出的最左角度灰度图像的每个像素点和最右角度灰度图像的每个像素点的邻域像素均值,表达式为:其中,M(i,j)为每个像素点I(i,j)的邻域像素均值,len为邻域范围半径;
步骤5.2、计算步骤4中选出的最左角度灰度图像的每个像素点相对于最右角度灰度图像的对应位置像素点的视差值,表达式为:式(10)中,D(i,j)为最左角度灰度图像的每个像素点的视差值,abs为求绝对值函数,k为视差,l为最左角度灰度图像,r为最右角度灰度图像;
步骤5.3、将步骤5.2得到的视差值小于阈值A的像素点筛除;
步骤5.4、将步骤5.3筛除后保留的像素点中每个扎堆的像素点集合保留该集合内像素点视差值最大的像素点作为特征点;
步骤6、以步骤5中提取出的特征点作为数据集,并固定五个初始质心点对数据集进行K‑Means聚类分析,进而得到最终质心点;
步骤6具体按照以下步骤实施:
步骤6.1、将步骤5提取出的特征点根据坐标位置构成数据集;
步骤6.2、从步骤6.1构成的数据集中选择(50,50)、(50,350)、(350,350)、(350,50)、(200,200)五个点作为初始质心点;
步骤6.3、对步骤6.1构成的数据集进行K‑Means聚类分析,得到最终的聚类质心点,表达式为:其中ρ表示点(x1,x2)与点(y1,y2)之间的欧氏距离;
步骤7、将步骤6得到的最终质心点连接构成多边形图像,并计算多边形图像相似性值,当鉴别油画真伪时,重复步骤1至步骤7,当多边形图像相似性值低于设定的阈值时判定该油画为真,反之则为假。
2.根据权利要求1所述的一种光场特征油画鉴别方法,其特征在于,所述步骤1具体过程如下:将油画的表面垂直于桌面并固定在桌面上,将微透镜阵列板贴合于油画表面,使用聚焦式光场相机距离微透镜阵列板0.2米进行拍摄,得到光场原始图像。
3.根据权利要求1所述的一种光场特征油画鉴别方法,其特征在于,所述步骤2具体按照以下步骤实施:步骤2.1、将光场原始图像以及光场原始图像对应的txt文件、白图像分别输入至MATLAB软件中进行读取,并利用im2double函数将txt文件进行double操作转化为微透镜阵列的旋转角数据rot_angle、水平间隔和垂直间隔数据[lens.x,lens.y]以及每个微透镜的高度数据height、宽度数据width、中心点坐标数据[center.x,center.y];
步骤2.2、利用imrotate函数将光场原始图像、白图像分别以微透镜阵列的旋转角数据rot_angle进行旋转从而对光场原始图像、白图像中的每个微透镜中心进行定位;
步骤2.3、利用微透镜阵列的水平间隔和垂直间隔数据[lens.x,lens.y]计算得到光场原始图像的方向信息数据[u,v],表达式为:u=ceil(lens.y/2)*2+1
v=ceil(lens.x/2)*2+1 (1)
式(1)中,ceil为取整函数;
步骤2.4、利用微透镜阵列中每个微透镜的高度数据height对光场原始图像中每个微透镜的垂直方向数据s进行赋值,利用微透镜阵列中每个微透镜的宽度数据width对光场原始图像中每个微透镜的水平方向数据t进行赋值,得到光场原始图像的位置信息数据[s,t];
步骤2.5、以光场原始图像的方向信息数据的u为高度,v为宽度建立光场原始图像的UV平面,以光场原始图像的位置信息数据的s为高度,t为宽度建立光场原始图像的ST平面,以光线与UV平面和ST平面的交点参数化表示光场,在光场中计算UV平面的中心点坐标、每个微透镜中心对应在光场原始图像上的宏像素坐标、在光场原始图像上每个宏像素在水平和垂直方向相对于UV平面中心点坐标的偏移量、光场原始图像上每个像素的坐标,并将每个像素的坐标通过r、g、b三个通道输出,得到四维参数化矩阵L[s,t,u,v];
其中,计算UV平面的中心点坐标的表达式为:
UV.center.width=floor(u/2)+1UV.center.height=floor(v/2)+1 (2)式(2)中,floor为取整函数;
计算每个微透镜中心对应在光场原始图像上的宏像素坐标的表达式为:macrocenter.x=round(centers((s‑1)*ST.width+t,1))+1macrocenter.y=round(centers((t‑1)*ST.height+t,2))+1 (3)式(3)中,round为取整函数,centers为每个微透镜的中心点坐标数据,ST.width为ST平面宽度,ST.height为ST平面高度;
计算在光场原始图像上每个宏像素在水平和垂直方向相对于UV平面中心点坐标的偏移量的表达式为:offset.y=UV.center.height‑u
offset.x=UV.center.width‑v (4)计算光场原始图像上每个像素的坐标的表达式为:
piexl.x=macrocenter.x+offset.xpiexl.y=macrocenter.y+offset.y (5)。
4.根据权利要求1所述的一种光场特征油画鉴别方法,其特征在于,所述步骤3具体过程如下:采用squeeze函数提取四维参数化矩阵L[s,t,u,v]中每一对(u,v)角度的子孔径图像,得到按从左到右视角有序排列的多个子孔径图像。
5.根据权利要求1所述的一种光场特征油画鉴别方法,其特征在于,所述步骤4具体按照以下步骤实施:步骤4.1、将中心行子孔径图像统一剪裁为分辨率大小相等的图像,得到剪裁后的中心行子孔径图像,表达式为:imcrop(image,[10,10,399,399]) (6)其中,imcrop为剪裁函数,image为每一幅中心行子孔径图像;
步骤4.2、将步骤4.1得到的剪裁后的中心行子孔径图像转换为灰度图像,表达式为:rgb2gray(image1) (7)
其中,rgb2gray为转换为灰度函数,image1为每一幅剪裁后的中心行子孔径图像;
步骤4.3、计算步骤4.2转换的灰度图像的平均亮度值,将所有灰度图像中亮度值低于灰度图像平均亮度值的子孔径图像筛除出去,再选择出最左角度和最右角度的灰度图像,其中,灰度图像的平均亮度值的表达式为:avg=mean(avg_gray(:)) (8)
式(8)中,mean为求平均函数,avg_gray为计算所有灰度图像平均灰度函数。
6.根据权利要求1所述的一种光场特征油画鉴别方法,其特征在于,所述步骤7具体按照以下步骤实施:步骤7.1、将步骤6得到的最终聚类质心根据坐标点使用plot函数连接构成多边形图像;
步骤7.2、计算步骤7.1构成的多边形图像各顶点与多边形图像左下角(0,0)坐标点的平均夹角与平均长度,并以此平均夹角与平均长度作为多边形图像相似性计算结果,当多边形图像相似性值低于设定的阈值B时判定该油画为真,反之则为假。