CN105389796B - 一种定焦、变焦镜头通光量强度不均校正方法及装置 - Google Patents

一种定焦、变焦镜头通光量强度不均校正方法及装置 Download PDF

Info

Publication number
CN105389796B
CN105389796B CN201510669831.2A CN201510669831A CN105389796B CN 105389796 B CN105389796 B CN 105389796B CN 201510669831 A CN201510669831 A CN 201510669831A CN 105389796 B CN105389796 B CN 105389796B
Authority
CN
China
Prior art keywords
msub
mrow
mtd
mtr
msup
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.)
Active
Application number
CN201510669831.2A
Other languages
English (en)
Other versions
CN105389796A (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.)
Second Research Institute of CAAC
Original Assignee
Second Research Institute of CAAC
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 Second Research Institute of CAAC filed Critical Second Research Institute of CAAC
Priority to CN201510669831.2A priority Critical patent/CN105389796B/zh
Publication of CN105389796A publication Critical patent/CN105389796A/zh
Application granted granted Critical
Publication of CN105389796B publication Critical patent/CN105389796B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20201Motion blur correction

Landscapes

  • Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
  • Image Processing (AREA)

Abstract

本发明涉及原始图像信号处理领域,尤其是涉及一种定焦、变焦镜头通光量强度不均校正方法及装置,其无需额外设备实现自动镜头亮度校正,尤其适合户外环境下使用的长焦镜头。本发明针对现有技术存在的问题,提出自动对通光量强度区域分布不均匀问题进行校正的方法及装置。本发明首先通过大量采集图像生成平均图像;然后对平均图像进行平滑曲面最小误差拟合;最后通过平滑曲面参数生成校正模板。在图像拍摄过程中,原始数据除以校正模板,再做归一化处理可以校正亮度不均匀问题。进一步的在两次自动校正方法运行完成后,可以手动设置镜头形变系数,快速校正定焦镜头通光量强度区域分布不均匀问题。

Description

一种定焦、变焦镜头通光量强度不均校正方法及装置
技术领域
本发明涉及原始图像信号处理领域,尤其是涉及一种定焦、变焦镜头通光量强度不均校正方法及装置。
背景技术
镜头,尤其是长焦镜头,由于其光学物理特性和镜片组的设计局限可能会出现成像中间区域亮边缘区域暗的亮度不均匀问题。特别是在户外环境下使用的长焦镜头,无法保证在理想环境下工作。受温度影响镜头热胀冷缩,通光量强度不均匀的程度也会随之变化。
现有一些技术在相机出厂前对镜头进行校正,并将校正数据存储在相机中。但是这要求相机与镜头固定配对。一旦配对关系改变,相机记录的校正数据将不再适用新镜头,需要专业的设备和方法对镜头进行重新校正。除此以外,即便镜头在出厂前进行过亮度不均匀校正,也难以保证镜头在所有工作环境下(尤其是温差大的环境下)不会出现亮度不均匀的问题。
发明内容
本发明所要解决的技术问题是:针对定焦镜头自身缺陷或者由于镜头形变引起的成像亮度不均匀问题,本发明提出一种自动对通光量强度区域分布不均匀问题进行校正的方法及装置。其能适应定焦镜头,进一步的在两次自动校正方法运行完成后,可以手动设置镜头形变系数G,快速校正定焦镜头通光量强度区域分布不均匀问题,进一步的,通过选取焦距样本点计算变焦镜头的平滑曲面参数从而到达变焦镜头通光量强度分布不均匀问题进行校正。
本发明采用的技术方案如下:
一种定焦镜头通光量强度不均校正的方法,其特征在于包括:
步骤1:采集大量图像生成平均图像IA
步骤2:对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C;
步骤3:通过平滑曲面参数c生成校正模板IT
步骤4:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I'=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I'像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正。
IR=s1I'+s2
其中s2=-s1min(I')。
进一步的,所述步骤1具体包括:
步骤11:以视频或者连续快速拍照的方式采集图像,图像数据应尽量保持原始性,不做数据处理;同时保持相机转动使拍摄的照片不重复;在采集100到1000张图像后,将所有图像转化为灰度图像,然后计算平均图像IA
步骤12:将IA用Sobel边缘检测算子计算边缘强度,即分别使用对IA做卷积运算,如果生成的结果中所有像素的值均小于T1,则完成平均图像生成,否则执行步骤13;T1为20到50之间;
步骤13:再采集100到500张图像后,重新计算包含原有图像和新采集图像的所有图像的灰度转化平均图像IA,然后重新执行步骤12。
进一步的,所述步骤2具体包括:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素对应的像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算计算平滑曲面参数C;
步骤22:根据二阶多项式,构造矩阵X和V;
计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵;
步骤23:根据加权二阶多项式,构造矩阵X和V
其中w是对每一个采样点设定的权重值,角标为采样点序号,一般图片中心样本的的权重值较大,图像边缘样本点的权重值偏小;计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵;
进一步的,所述步骤2具体包括:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算计算平滑曲面参数C;
步骤22:根据二维高斯,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
计算C'=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC'-V)T(XC'-V);在c7的所有取值中选取err最小的一组C'和c7共同构造C,
步骤23:根据加权二维高斯,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
其中w是对每一个采样点设定的权重值,角标为采样点序号,一般图片中心样本的权重值较大,图像边缘样本点的权重值偏小;计算C'=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC'-V)T(XC'-V);在c7的所有取值中选取err最小的一组C‘和c7共同构造C;
进一步的,所述步骤3具体包括
步骤31:在二阶多项式曲面及加权二阶多项式曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:z=c1x2+c2xy+c3y2+c4x+c5y+c6
步骤32:在二维高斯曲面及加权二维高斯曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:z=exp(c1x2+c2xy+c3y2+c4x+c5y+c6)+c7
进一步的,在执行N2次所述步骤1和步骤2得到多组曲面参数之后,不再执行步骤1及步骤2,在此基础上使用步骤24能够快速得到近似的曲面参数适应镜头形变,具体包括:
步骤241:当得到曲面参数为Cj={c1_j,c2_j,c3_j,c4_j,c5_j,c6_j}的二阶多项式曲面参数或者加权二阶多项式曲面参数,则执行步骤242;当得到参数为Cj={c1_j,c2_j,c3_j,c4_j,c5_j,c6_j,c7_j}的二维高斯曲面参数或者加权二维高斯曲面参数,则执行步骤245;其中Cj表示第j次自动校正操作结果,1≤j≤N2
步骤242:对所有的c1_j,1≤j≤N2,提取最近两次自动校正算法结果c1_N2-1和c1_N2,令k1=c1_N2-c1_N2-1,执行步骤243;
步骤243:对c2_j,c3_j,c4_j,c5_j,c6_j,重复步骤242,计算k2,k3,k4,k5,k6,执行步骤244;
步骤244:设置镜头形变参数G,则新的二阶多项式曲面参数Cnew={c1_new,c2_new,c3_new,c4_new,c5_new,c6_new}为
c1_new=c1_N2+k1G
c2_new=c2_N2+k2G
c3_new=c3_N2+k3G
c4_new=c4_N2+k4G
c5_new=c5_N2+k5G
c6_new=c6_N2+k6G;
其中G的范围是任意正数;
步骤245:对所有的c1_j,1≤j≤N2,提取最近两次自动校正算法结果c1_N2-1和c1_N2,令k1=c1_N2-c1_N2-1,执行步骤246;
步骤246:对c2_j,c3_j,c4_j,c5_j,c6_j,c7_j,重复步骤245,计算k2,k3,k4,k5,k6,k7,执行步骤247;
步骤247:设置镜头形变参数G,则新的二阶多项式曲面参数Cnew={c1_new,c2_new,c3_new,c4_new,c5_new,c6_new,c7_new}为
c1_new=c1_N2+k1G
c2_new=c2_N2+k2G
c3_new=c3_N2+k3G
c4_new=c4_N2+k4G
c5_new=c5_N2+k5G
c6_new=c6_N2+k6G
c7_new=c7_N2+k7G。
进一步的,所述步骤23或者步骤24之后,还可以使用步骤25进一步提高平滑曲面拟合精度,具体包括:
步骤251:二阶多项式曲面参数、加权二阶多项式曲面参数、二维高斯曲面参数或者加权二维高斯曲面参数中增加两个参数{c8,c9};则二阶多项式曲面参数和加权二阶多项式曲面参数是{c1,c2,c3,c4,c5,c6,c8,c9}8个参数,二维高斯曲面和加权二维高斯曲面参数是{c1,c2,c3,c4,c5,c6,c7,c8,c9}9个参数;所述参数{c8,c9}的计算过程为:
步骤252:令c8取值从5到min(W/2,H/2),W和H分别为图像的宽度和高度,二阶多项式曲面参数和二维高斯曲面参数中构造矩阵Y为:
加权二阶多项式曲面参数和加权二维高斯曲面参数中构造矩阵Y为:
步骤253:令c9为XC-V与Y之间误差的平均值
c9=mean(XC-V-Y)
步骤254:计算误差err,二阶多项式曲面及加权二阶多项式曲面为:
err=(XC-Y-V-c9)T(XC-Y-V-c9)
二维高斯曲面及加权二维高斯曲面为
err=(XC-V')T(XC-V')
V'=ln(exp(V)-Y-c9)
在c8的所有取值中选取误差err最小的一组{c8,c9}。
一种变焦镜头通光量强度不均校正方法校正方法,在多次应用所述定焦镜头校正方法基础上,组合校正结构实现变焦镜头全焦距段的校正,具体包括:
步骤121:在焦距F范围内从最小到最大每隔一定间距取一个焦距样本点,间距设定在20mm到200mm之间;
步骤122:在每个焦距样本点上执行所述步骤1到步骤2的定焦镜头自动校正方法,并分别记录平滑曲面参数;
步骤123:对焦距值F=fb,且fb不是焦距样本点,取不超过fb的最大焦距样本点fa,该样本点测得平滑曲面参数记为Ca;不小于fb的最小焦距样本点fc,该样本点测得平滑曲面参数记为Cc;则在F=fb焦距值的平滑曲面参数为:
步骤124:步骤通过平滑曲面参数c生成校正模板IT
步骤:125:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I'=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I'像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素IR进行校正,
IR=s1I'+s2
其中s2=-s1min(I')。
一种定焦镜头通光量强度不均校正的装置包括:
平均图像生成装置,用于采集大量图像,并生成平均图像IA
平滑误差曲面参数计算装置,用于对平均图像IA进行平滑曲面最小误差拟合,计算平滑曲面参数C;
校正模板装置,用于通过平滑曲面参数c,生成校正模板IT
图像像素校正装置,用于在计算出校正模板IT后,每次拍照生成图像I,对I执行
I'=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I'像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正。
IR=s1I'+s2
其中s2=-s1min(I')。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、提出了一种解决因镜头形变导致生成图像亮度不均匀问题的方法,可以无需额外设备实现自动镜头亮度校正;
2、该方法通过计算样本点的焦距值作为阈值得到样本点的平滑曲面参数使得变焦镜头也可调整。
3、在完成两次自动校正后,可是手动设置镜头形变参数,快速得到校正参数,尤其适合户外环境下使用的长焦镜头。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任何附加权利要求、摘要)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本专利相关说明:
1、F镜头焦距
2、G镜头形变系数
3、C平滑曲面参数组(二阶多项式曲面是{c1,c2,c3,c4,c5,c6}6个参数,二维高斯曲面是{c1,c2,c3,c4,c5,c6,c7}7个参数)
4、I单次拍摄图像,IA平均图像,IT校正模板,IR亮度不均校正修复后图像具体方式:
一、定焦镜头自动校正方法:
步骤1:采集大量图像生成平均图像IA
步骤2:对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C;
步骤3:通过平滑曲面参数生成校正模板IT
步骤4:在计算出校正模板后IT,每次拍照生成图像I,对I执行
I'=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I'素数值的分布归一化处理至0到255区间
IR=s1I'+s2
其中s2=-s1min(I'),可以实现对图像亮度不均问题的快速校正。
进一步的,步骤1具体为:
步骤1.1:以视频或者连续快速拍照的方式采集图像,图像数据应尽量保持原始性,不做数据处理;同时保持相机转动使拍摄的照片不重复;在采集100到1000张图像后,将所有图像转化为灰度图像,然后计算平均图像IA
步骤1.2:将IA用Sobel边缘检测算子计算边缘强度,即分别使用对IA做卷积运算,如果生成的结果中所有像素的值均小于T1,则完成平均图像生成,否则执行步骤1.3;T1的取值一般在20到50之间;
步骤1.3:再采集100到500张图像后,重新计算所有图像的灰度转化平均图像IA,然后重新执行步骤1.2。
进一步的,步骤2具体为:
步骤2.1:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择2.2、2.3、2.4、或者2.5中的一个对亚采样的平均图像进行最小误差拟合,计算计算平滑曲面参数C;
步骤2.2(二阶多项式曲面):构造矩阵X和V
计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵。
步骤2.3(二维高斯曲面):让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
计算C'=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC'-V)T(XC'-V);在c7的所有取值中选取err最小的一组C‘和c7共同构造C
步骤2.4(加权二阶多项式曲面):构造矩阵X和V
其中w是对每一个采样点设定的权重值,角标为采样点序号,一般图片中心样本的的权重值较大,图像边缘样本点的权重值偏小;计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵。
步骤2.5(加权二维高斯曲面):让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
其中w是对每一个采样点设定的权重值,角标为采样点序号,一般图片中心样本的的权重值较大,图像边缘样本点的权重值偏小;计算C'=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC'-V)T(XC'-V);在c7的所有取值中选取err最小的一组C‘和c7共同构造C
进一步的,步骤3按照选取的平滑曲面模型的区别,分别具体为
步骤3.1(二阶多项式曲面及加权二阶多项式曲面):对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为
z=c1x2+c2xy+c3y2+c4x+c5y+c6
步骤3.2(二维高斯曲面及加权二维高斯曲面):对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为
z=exp(c1x2+c2xy+c3y2+c4x+c5y+c6)+c7
二、变焦镜头的自动校正方法
步骤A:在焦距F范围内从最小到最大每隔一定间距取一个焦距样本点,间距一般设定在20mm到200mm之间,小焦距的间隔可以取大一些,大焦距的间隔可以取小一些,比如焦距50mm到500mm的镜头取的焦距样本点可以是F=50mm、200mm、300mm、400mm、450mm、500mm;
步骤B:在每个焦距样本点上执行定焦镜头自动校正方法,并分别记录平滑曲面参数;
步骤C:对焦距值F=fb,且fb不是焦距样本点,取不超过fb的最大焦距样本点fa,该样本点测得平滑曲面参数记为Ca;不小于fb的最小焦距样本点fc,该样本点测得平滑曲面参数记为Cc;则在F=fb焦距值的平滑曲面参数为:
三、手动设置镜头形变系数G进行快速校正的方法:
对于某焦距值F,自动校正算法已经执行过N2(N2≥2)次,分别测得的二阶多项式曲面参数为Cj={c1_j,c2_j,c3_j,c4_j,c5_j,c6_j}(1≤j≤N2),角标中的前一个数字表示第几个参数(共6个),角标中的第二个参数表示第几次自动校正操作结果。当镜头发生形变引发通光量强度不均已经不能使用之前的校正参数进行修正时,可以设置镜头形变参数G快速校正新的通光量强度不均问题。新的平滑曲面参数CN2+1={c1_N2+1,c2_N2+1,c3_N2+1,c4_N2+1,c5_N2+1,c6_N2+1}计算方法为
步骤a:对所有的c1_j,1≤j≤N2,提取最近两次自动校正算法结果c1_N2-1和c1_N2,令k1=c1_N2-c1_N2-1
步骤b:对c2_j,c3_j,c4_j,c5_j,c6_j,使用与步骤a一样的方法,计算k2,k3,k4,k5,k6
步骤c:设置镜头形变参数G,则新的二阶多项式曲面参数Cnew={c1_new,c2_new,c3_new,c4_new,c5_new,c6_new}为
c1_new=c1_N2+k1G
c2_new=c2_N2+k2G
c3_new=c3_N2+k3G
c4_new=c4_N2+k4G
c5_new=c5_N2+k5G
c6_new=c6_N2+k6G
二维高斯曲面参数计算方法与二阶多项式曲面参数相同。
四、更高精度校正
平均图像与平滑曲面之间存在较小误差,为进一步提高校正精度,可以在平滑曲面参数中增加两个参数{c8,c9},二阶多项式曲面是{c1,c2,c3,c4,c5,c6,c8,c9}8个参数,二维高斯曲面是{c1,c2,c3,c4,c5,c6,c7,c8,c9}9个参数。这两个参数的计算在原计算方法的基础上增加一步为:
令c8取值从5到min(W/2,H/2),W和H分别为图像的宽度和高度,分别构造矩阵Y,非加权曲面为:
加权曲面为:
令c9为XC-V与Y之间误差的平均值
c9=mean(XC-V-Y)
计算误差err,二阶多项式曲面及加权二阶多项式曲面为
err=(XC-Y-V-c9)T(XC-Y-V-c9)
二维高斯曲面及加权二维高斯曲面为
err=(XC-V')T(XC-V')
V'=ln(exp(V)-Y-c9)
在c8的所有取值中选取err最小的一组{c8,c9}。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

Claims (10)

1.一种定焦镜头通光量强度不均校正的方法,其特征在于包括:
步骤1:采集大量图像生成平均图像IA
步骤2:对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C;
步骤3:通过平滑曲面参数C生成校正模板IT;即当平滑曲面是二阶多项式曲面或加权二阶多项式曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:
z=c1x2+c2xy+c3y2+c4x+c5y+c6
步骤4:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
所述步骤2具体包括:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素对应的像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
步骤22:根据二阶多项式曲面,构造矩阵X和V;
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>v</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵;
步骤23:根据加权二阶多项式曲面,构造矩阵X和V
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点权重值偏大,图像边缘样本点的权重值相对于图像中心样本点权重值偏小;计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵。
2.一种定焦镜头通光量强度不均校正的方法,其特征在于包括:
步骤1:采集大量图像生成平均图像IA
步骤2:对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C;
步骤3:通过平滑曲面参数C生成校正模板IT;即当平滑曲面是二维高斯曲面或加权二维高斯曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:z=exp(c1x2+c2xy+c3y2+c4x+c5y+c6)+c7
步骤4:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
所述步骤2具体包括:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
步骤22:根据二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V:
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C′=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C,
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>
步骤23:根据加权二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
<mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow>
<mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点的权重值偏大,图像边缘样本点的权重值相对于图像中心样本的权重值偏小;计算C′=(XTX)-1XTV,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C;
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>.</mo> </mrow>
3.根据权利要求1或2所述的一种定焦镜头通光量强度不均校正的方法,其特征在于所述步骤1具体包括:
步骤11:以视频或者连续快速拍照的方式采集图像,图像数据不做数据处理;同时保持相机转动使拍摄的照片不重复;在采集100到1000张图像后,将所有图像转化为灰度图像,然后计算平均图像IA
步骤12:将IA用Sobel边缘检测算子计算边缘强度,即分别使用对IA做卷积运算,如果生成的结果中所有像素的值均小于T1,则完成平均图像生成,否则执行步骤13;T1为20到50之间;
步骤13:再采集100到500张图像后,重新计算包含原有图像和新采集图像的所有图像的灰度,再计算平均图像IA,然后重新执行步骤12。
4.根据权利要求1或2所述的一种定焦镜头通光量强度不均校正的方法,其特征在于在执行N2次所述步骤1和步骤2得到多组曲面参数之后,不再执行步骤1及步骤2,在此基础上使用步骤24得到曲面参数,具体包括:
步骤241:当得到曲面参数为Cj={c1_j,c2_j,c3_j,c4_j,c5_j,c6_j}的二阶多项式曲面参数或者加权二阶多项式曲面参数,则执行步骤242;当得到参数为Cj={c1_j,c2_j,c3_j,c4_j,c5_j,c6_j,c7_j}的二维高斯曲面参数或者加权二维高斯曲面参数,则执行步骤245;其中Cj表示第j次自动校正操作结果,1≤j≤N2;
步骤242:对所有的c1_j,1≤j≤N2,提取最近两次自动校正算法结果c1_N2-1和c1_N2,令k1=c1_N2-c1_N2-1,执行步骤243;
步骤243:对c2_j,c3_j,c4_j,c5_j,c6_j,重复步骤242,计算k2,k3,k4,k5,k6,执行步骤244;
步骤244:设置镜头形变参数G,则新的二阶多项式曲面参数Cnew={c1_new,c2_new,c3_new,c4_new,c5_new,c6_new}为
c1_new=c1_N2+k1G
c2_new=c2_N2+k2G
c3_new=c3_N2+k3G
c4_new=c4_N2+k4G
c5_new=c5_N2+k5G
c6_new=c6_N2+k6G;
其中G的范围是任意正数;
步骤245:对所有的c1_j,1≤j≤N2,提取最近两次自动校正算法结果c1_N2-1和c1_N2,令k1=c1_N2-c1_N2-1,执行步骤246;
步骤246:对c2_j,c3_j,c4_j,c5_j,c6_j,c7_j,重复步骤245,计算k2,k3,k4,k5,k6,k7,执行步骤247;
步骤247:设置镜头形变参数G,则新的二阶多项式曲面参数Cnew={c1_new,c2_new,c3_new,c4_new,c5_new,c6_new,c7_new}为
c1_new=c1_N2+k1G
c2_new=c2_N2+k2G
c3_new=c3_N2+k3G
c4_new=c4_N2+k4G
c5_new=c5_N2+k5G
c6_new=c6_N2+k6G
c7_new=c7_N2+k7G。
5.根据权利要求1所述的一种定焦镜头通光量强度不均校正的方法,其特征在于所述步骤22或者步骤23之后,还包括步骤25,具体包括:
当平滑曲面是二阶多项式或加权二阶多项式时,二阶多项式曲面参数或加权二阶多项式曲面参数是{c1,c2,c3,c4,c5,c6,c8,c9}8个参数;参数{c8,c9}的计算过程为:
步骤251:令c8取值从5到min(W/2,H/2),W和H分别为图像的宽度和高度,二阶多项式曲面参数:
<mrow> <mi>Y</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>
加权二阶多项式曲面参数:
<mrow> <mi>Y</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>
步骤252:令c9为XC-V与Y之间误差的平均值
c9=mean(XC-V-Y)
步骤253:计算二阶多项式曲面或加权二阶多项式曲面的误差err:
err=(XC-Y-V-c9)T(XC-Y-V-c9);
在c8的所有取值中选取误差err最小的一组{c8,c9}。
6.根据权利要求2所述的一种定焦镜头通光量强度不均校正的方法,其特征在于所述步骤22或者步骤23之后,还包括步骤25,具体包括:
当平滑曲面是二维高斯曲面或加权二维高斯曲面,则二维高斯曲面或加权二维高斯曲面参数是{c1,c2,c3,c4,c5,c6,c7,c8,c99个参数;参数{c8,c9}的计算过程为:
步骤251:令c8取值从5到min(W/2,H/2),W和H分别为图像的宽度和高度,二维高斯曲面参数中构造矩阵Y为:
<mrow> <mi>Y</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>
加权二维高斯曲面参数中构造矩阵Y为:
<mrow> <mi>Y</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <mfrac> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> <mrow> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>4</mn> </msup> </mrow> </mfrac> <mi>exp</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>-</mo> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> <mo>-</mo> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> <mrow> <mn>2</mn> <msup> <msub> <mi>c</mi> <mn>8</mn> </msub> <mn>2</mn> </msup> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>
步骤252:令c9为XC-V与Y之间误差的平均值:
c9=mean(XC-V-Y)
步骤253:计算二维高斯曲面或加权二维高斯曲面为的误差err:
err=(XC-V′)T(XC-V′)
其中,V′=ln(exp(V)-Y-c9);
在c8的所有取值中选取误差err最小的一组{c8,c9}。
7.一种变焦镜头通光量强度不均校正方法,其特征在于包括:
步骤121:在焦距F范围内从最小到最大每隔一定间距取一个焦距样本点,间距设定在20mm到200mm之间;
步骤122:对每个焦距样本点采集大量图像生成平均图像IA,对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C,并分别记录平滑曲面参数;
步骤123:对焦距值F=fb,且fb不是焦距样本点,取不超过fb的最大焦距样本点fa,该样本点测得平滑曲面参数记为Ca;不小于fb的最小焦距样本点fc,该样本点测得平滑曲面参数记为CC;则在F=fb焦距值的平滑曲面参数为:
<mrow> <msub> <mi>C</mi> <mi>b</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>b</mi> </msub> </mrow> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> </mfrac> <msub> <mi>C</mi> <mi>a</mi> </msub> <mo>+</mo> <mfrac> <mrow> <msub> <mi>f</mi> <mi>b</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> </mfrac> <msub> <mi>C</mi> <mi>c</mi> </msub> <mo>;</mo> </mrow>
步骤124:通过平滑曲面参数C生成校正模板IT
步骤125:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
步骤122中对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C具体过程是:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素对应的像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
步骤22:根据二阶多项式曲面,构造矩阵X和V;
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>v</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵;
步骤23:根据加权二阶多项式曲面,构造矩阵X和V
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点权重值偏大,图像边缘样本点的权重值相对于图像中心样本点权重值偏小;计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵。
8.一种变焦镜头通光量强度不均校正方法,其特征在于包括:
步骤121:在焦距F范围内从最小到最大每隔一定间距取一个焦距样本点,间距设定在20mm到200mm之间;
步骤122:对每个焦距样本点采集大量图像生成平均图像IA,对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C,并分别记录平滑曲面参数;
步骤123:对焦距值F=fb,且fb不是焦距样本点,取不超过fb的最大焦距样本点fa,该样本点测得平滑曲面参数记为Ca;不小于fb的最小焦距样本点fc,该样本点测得平滑曲面参数记为Cc;则在F=fb焦距值的平滑曲面参数为:
<mrow> <msub> <mi>C</mi> <mi>b</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>b</mi> </msub> </mrow> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> </mfrac> <msub> <mi>C</mi> <mi>a</mi> </msub> <mo>+</mo> <mfrac> <mrow> <msub> <mi>f</mi> <mi>b</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> <mrow> <msub> <mi>f</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>f</mi> <mi>a</mi> </msub> </mrow> </mfrac> <msub> <mi>C</mi> <mi>c</mi> </msub> <mo>;</mo> </mrow>
步骤124:通过平滑曲面参数C生成校正模板IT
步骤125:在计算出校正模板IT后,每次拍照生成图像I,对I执行
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
步骤122中对平均图像进行平滑曲面最小误差拟合,计算平滑曲面参数C具体过程是:
步骤21:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择步骤22或者步骤23对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
步骤22:根据二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V:
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C′=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C,
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>
步骤23:根据加权二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
<mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow>
<mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点的权重值偏大,图像边缘样本点的权重值相对于图像中心样本的权重值偏小;计算C′=(XTX)-1XTV,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C;
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>.</mo> </mrow>
9.一种定焦镜头通光量强度不均校正的装置,其特征在于包括:
平均图像生成装置,用于采集大量图像,并生成平均图像IA
平滑误差曲面参数计算装置,用于对平均图像IA进行平滑曲面最小误差拟合,计算平滑曲面参数C;
校正模板装置,用于通过平滑曲面参数C,生成校正模板IT;即当平滑曲面是二阶多项式曲面或加权二阶多项式曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:z=c1x2+c2xy+c3y2+c4x+c5y+c6
图像像素校正装置,用于在计算出校正模板IT后,每次拍照生成图像I,对I执行
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至O到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
其中,平滑误差曲面参数计算装置具体包括:
亚采样模块:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素对应的像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择二阶多项式曲面构造模块或者加权二阶多项式曲面构造模块对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
二阶多项式曲面构造模块:根据二阶多项式曲面,构造矩阵X和V;
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>v</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵;
加权二阶多项式曲面构造模块:根据加权二阶多项式曲面,构造矩阵X和V
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>v</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点权重值偏大,图像边缘样本点的权重值相对于图像中心样本点权重值偏小;计算C=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵。
10.一种定焦镜头通光量强度不均校正的装置,其特征在于包括:
平均图像生成装置,用于采集大量图像,并生成平均图像IA
平滑误差曲面参数计算装置,用于对平均图像IA进行平滑曲面最小误差拟合,计算平滑曲面参数C;
校正模板装置,用于通过平滑曲面参数C,生成校正模板IT;即当平滑曲面是二维高斯曲面或加权二维高斯曲面时,对IT中的每一个像素,令其行数为x,列数为y,则该像素的值z为:z=exp(c1x2+c2xy+c3y2+c4x+c5y+c6)+c7
图像像素校正装置,用于在计算出校正模板IT后,每次拍照生成图像I,对I执行:
I′=I./IT
其中./为点除运算,即让对应行数和列数的像素做除法;然后将I′像素数值的分布归一化处理至0到255区间,对图像亮度不均的像素进行校正,生成IR
IR=s1I′+s2
其中s2=-s1min(I′);
平滑误差曲面参数计算装置具体包括:
亚采样模块:对平均图像IA的所有行列按照5到100等像素间隔进行亚采样,样本记为{x1,y1,v1;x2,y2,v2;...;xN1,yN1,vN1},其中(x,y)为像素坐标,v为像素灰度值,角标为采样点序号,N1为亚采样样本点个数;然后选择二维高斯曲面构造模块或者加权二维高斯曲面构造模块对亚采样的平均图像进行最小误差拟合,计算平滑曲面参数C;
二维高斯曲面构造模块:根据二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V:
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>1</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mn>2</mn> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> <mtd> <mo>...</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> <mtd> <mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>
计算C′=(XTX)-1XTV,其中矩阵右上角的T表示转置,右上角的-1表示求逆矩阵,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C,
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>
加权二维高斯曲面构造模块:根据加权二维高斯曲面,让c7的取值从0到IA中的最小值min(IA),对每一个取值构造X和V
<mrow> <mi>X</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>1</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>1</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mn>2</mn> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>x</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <msub> <mi>y</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msup> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mn>2</mn> </msup> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>x</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <msub> <mi>y</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </mrow> </mtd> <mtd> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> </mtd> </mtr> </mtable> </mfenced> </mrow>
<mrow> <mi>V</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>1</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mn>2</mn> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>...</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msqrt> <msub> <mi>w</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> </msqrt> <mi>ln</mi> <mrow> <mo>(</mo> <msub> <mi>v</mi> <mrow> <mi>N</mi> <mn>1</mn> </mrow> </msub> <mo>-</mo> <msub> <mi>c</mi> <mn>7</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>
其中w是对每一个采样点设定的权重值,角标为采样点序号,图像中心样本的权重值相对于图像边缘样本点的权重值偏大,图像边缘样本点的权重值相对于图像中心样本的权重值偏小;计算C′=(XTX)-1XTV,然后计算err=(XC′-V)T(XC′-V);在c7的所有取值中选取err最小的一组C′和c7共同构造C;
<mrow> <mi>C</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>c</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>4</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>5</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>6</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>c</mi> <mn>7</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>.</mo> </mrow>
CN201510669831.2A 2015-10-13 2015-10-13 一种定焦、变焦镜头通光量强度不均校正方法及装置 Active CN105389796B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510669831.2A CN105389796B (zh) 2015-10-13 2015-10-13 一种定焦、变焦镜头通光量强度不均校正方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510669831.2A CN105389796B (zh) 2015-10-13 2015-10-13 一种定焦、变焦镜头通光量强度不均校正方法及装置

Publications (2)

Publication Number Publication Date
CN105389796A CN105389796A (zh) 2016-03-09
CN105389796B true CN105389796B (zh) 2018-01-23

Family

ID=55422046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510669831.2A Active CN105389796B (zh) 2015-10-13 2015-10-13 一种定焦、变焦镜头通光量强度不均校正方法及装置

Country Status (1)

Country Link
CN (1) CN105389796B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113724171A (zh) * 2021-09-14 2021-11-30 浙江大华技术股份有限公司 图像的校正方法、装置、存储介质及电子装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1873389A (zh) * 2005-06-03 2006-12-06 展讯通信(上海)有限公司 一种应用在数码相机上标定镜头光学中心的方法
US7599550B1 (en) * 2003-11-21 2009-10-06 Arecont Vision Llc Method for accurate real-time compensation for changing illumination spectra in digital video cameras
CN103377474A (zh) * 2012-04-27 2013-10-30 比亚迪股份有限公司 镜头阴影校正系数确定方法、镜头阴影校正方法及装置
CN104702855A (zh) * 2015-03-31 2015-06-10 中科院微电子研究所昆山分所 一种镜头成像亮度的调整方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7599550B1 (en) * 2003-11-21 2009-10-06 Arecont Vision Llc Method for accurate real-time compensation for changing illumination spectra in digital video cameras
CN1873389A (zh) * 2005-06-03 2006-12-06 展讯通信(上海)有限公司 一种应用在数码相机上标定镜头光学中心的方法
CN103377474A (zh) * 2012-04-27 2013-10-30 比亚迪股份有限公司 镜头阴影校正系数确定方法、镜头阴影校正方法及装置
CN104702855A (zh) * 2015-03-31 2015-06-10 中科院微电子研究所昆山分所 一种镜头成像亮度的调整方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
自适应Retinex算法在高动态光照环境下的应用;鄢丹青等;《计算机应用》;20131231;第33卷(第S2期);第166-167、202页 *

Also Published As

Publication number Publication date
CN105389796A (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
US8848094B2 (en) Optimal blur matching selection for depth estimation
CN106896622B (zh) 基于多距离自动对焦的校正方法
US20110150447A1 (en) Autofocus with confidence measure
KR101076027B1 (ko) Dircm 용 적외선 카메라의 영상 기반 오프셋 보정 장치 및 방법
US20130182152A1 (en) Camera autofocus adaptive blur matching model fitting
CN103327245B (zh) 一种红外成像系统的自动对焦方法
JP7057397B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラム、および、記憶媒体
WO2022037633A1 (zh) 双目摄像头的标定及图像矫正方法、装置、存储介质、终端、智能设备
JP5887465B2 (ja) 撮像装置、撮像装置駆動方法、撮像装置制御プログラム
JP6443095B2 (ja) 赤外線応力測定方法および赤外線応力測定装置
CN108510549B (zh) 虚拟现实设备的畸变参数测量方法及其装置、测量系统
RU2015126537A (ru) Устройство для съемки изображений и способ управления устройством для съемки изображений
CN106197673A (zh) 一种自适应宽温度范围非均匀校正方法及系统
TWI638149B (zh) 輝度測定方法、輝度測定裝置及使用前述方法與裝置之畫質調整技術
TW201109811A (en) Fast-focus method of digital camera
WO2013094273A1 (ja) 画像処理装置、撮像装置、顕微鏡システム、画像処理方法、及び画像処理プログラム
CN102521797A (zh) 扫描型红外成像系统的场景非均匀校正方法
CN107492080B (zh) 免定标便捷的单目镜头图像径向畸变矫正方法
CN106855435B (zh) 长波线阵红外相机星上非均匀性实时校正方法
JP6700986B2 (ja) 画像処理装置、撮像装置、画像処理方法、及びプログラム
CN105389796B (zh) 一种定焦、变焦镜头通光量强度不均校正方法及装置
JP2016126592A5 (zh)
JP2019095480A5 (zh)
US8634001B2 (en) Image processing apparatus, image processing program, image processing method, and image-pickup apparatus
CN105704406B (zh) 一种图像处理中坏点去除的方法

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