基于单个摄像机的投影仪红外触控和自动对焦方法转让专利

申请号 : CN201710331722.9

文献号 : CN106911921B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王华彬丁一军万秀文倪晶悦潘斌斌胡梦岚陆梦馨

申请人 : 安徽大学

摘要 :

本发明公开了一种基于单个摄像机的投影仪红外触控和自动对焦方法,摄像机对准投影画面,能够同时捕获红外光线和可见光线,并具有曝光可调功能。如果进行红外触控,则把摄像机曝光值调至最低,红外笔接触到幕布时发出红外光线,摄像机拍摄到投影画面,计算红外笔尖的位置,并进行坐标校正,从而获取红外笔尖坐标,并向投影仪系统发出控制指令;如果进行自动对焦,则把摄像机曝光值调至正常,驱动调焦马达运转,同时计算投影画面清晰度值,当清晰度值达到最大时,自动对焦完成。基于单个摄像机同时实现了投影仪的红外触控和自动对焦功能,其中红外触控功能不需要使用专用的红外摄像机,实现了红外笔尖坐标值计算和坐标校正;自动对焦时,设置摄像机为正常曝光,抓拍投影画面并计算其清晰度值,实现快速对焦功能。

权利要求 :

1.一种基于单个摄像机的投影仪红外触控和自动对焦方法,其特征在于包括以下步骤:

步骤1:摄像机对准投影画面,选择进行红外触控或自动对焦;

步骤2:选择红外触控时,将摄像机曝光值调至最低,用红外笔触控幕布,红外笔尖发出红外光线;摄像机拍摄投影画面区域,所拍摄的画面中包含投影仪画面和红外触控笔尖发出的红外光线,且红外触控笔尖的亮度值高于投影画面的亮度值;根据拍摄画面中红外笔尖的位置计算红外笔尖在摄像机坐标系中的坐标值;在投影画面和摄像机画面存在角度偏差时,对红外笔尖的坐标值进行坐标校正,转换成投影仪坐标系;根据计算的投影仪坐标值,向投影仪系统发出控制指令,实现交互功能;

步骤3:选择自动对焦时,将摄像机曝光值调整为默认曝光值或自动曝光模式,投影出对焦图片,驱动对焦电机运行一周,同时每隔40毫秒拍摄一幅投影画面,并计算每幅画面的清晰度值,然后统计其最大值Qmax;再次驱动电机每隔40毫秒步进运行,每次步进结束,实时拍摄投影画面,计算其清晰度值Q,然后与最大值Qmax进行比较,如果接近该值,则判定当前画面已经清晰,对焦成功,停止对焦电机运行;

所述步骤2中计算红外笔尖在摄像机坐标系中的坐标值采用以下步骤:步骤2.1:将所拍摄的投影画面区域进行高斯平滑滤波处理,滤波窗大小为3*3;

步骤2.2:统计图像中所有像素值的灰度直方图,寻找灰度直方图中灰度的最大值Gmax,设置分割阈值Gs=0.7*Gmax,并基于此阈值对图像进行二值化处理,对图像中红外光块进行分割;

步骤2.3:统计图像中红外光块的总数以及每个红外光块的像素数、长度、宽度、中心坐标信息;

步骤2.4:对统计的红外光块进行真实性分析,判断红外笔尖所对应的红外光块,将光块横坐标和纵坐标的中心点作为红外笔尖的坐标;

所述步骤2.4对于红外光块真实性判断采用以下步骤:

(1)如果红外光块的个数大于5时,不进行红外光块识别,重新进行步骤2红外触控;

(2)如果红外光块的个数小于等于5时,删除所包含的像素点在30~300之外并且光块长宽比大于2的红外光块,在剩余的合理红外光块中选择最大的作为红外笔尖光块;

所述步骤2中对红外笔尖的坐标值进行坐标校正、转换成投影仪坐标系采用以下步骤:对摄像机拍摄的投影仪画面进行仿射变换,所述仿射变换为平移变换、旋转变换、缩放变换或上述三个变换的组合,按照公式1获得变换后的坐标:其中x,y是变换前坐标,u,v是变换后坐标,a11,a12,a13,a21,a22,a23为变换系数;所述变换系数采用以下步骤获得:(1)在投影画面屏幕四角分别选取四个点,其在摄像机坐标系的坐标分别为A(x1,y1)、B(x2,y2)、C(x3,y3)、D(x4,y4);在投影机坐标系中的坐标分别为A(X1,Y1)、B(X2,Y2)、C(X3,Y3)、D(X4,Y4);

(2)将A、B、C在两个坐标系中的坐标值带入公式2构造线性方程组,可计算变换系数a′11,a′12,a′13,a′21,a′22,a′23:(3)将B、C、D在两个坐标系中的坐标值带入公式3构造线性方程组,可计算变换系数a″11,a″12,a″13,a″21,a″22,a″23:(4)取a′11,a′12,a′13,a′21,a′22,a′23和a″11,a1″2,a″13,a″21,a″22,a″23平均值得到变换系数a11,a12,a13,a21,a22,a23;

所述步骤3中拍摄画面的清晰度值采用以下步骤计算:

(1)根据像素点I(x,y)的纹理变化值G(x,y)区分拍摄投影画面中的不同区域进行处理,G(x,y)采用式4计算:

像素点的纹理变化值G(x,y)大于500时,认为是图像的边缘点,不做处理;如果100<G(x,y)<500,认为是非边缘区域,按照公式5进行高斯滤波,并和原值进行加权融合;如果G(x,y)小于100,认为是平坦区域,也不做处理;

其中R(x,y)=100/G(x,y);

(2)计算投影画面边缘变化值Qtotal(x,y),Qtotal(x,y)采用式6计算:Qtotal=(Q02+Q452+Q902+Q1352)/255                     (6)其中Q0,Q45,Q90,Q135是像素点I(x,y)在0度,45度,90度和135度四个方向变化差值,采用式7计算:其中p1,p2,p3,p4,p5,p6,p7,p8,p9为像素点I(x,y)3*3邻域9个像素点的值,采用式8计算:(3)判断并删除拍摄的投影画面中的伪边缘点,获得新边缘变化值Qnew(x,y),如果该点是伪边缘点,则Qnew(x,y)=0,否则Qnew(x,y)=Qtotal(x,y);

(4)对新边缘变化值Qnew(x,y)进行求和,并做归一化处理,得到清晰度计算公式9:其中,M、N分别为所拍摄画面的横边像素和竖边像素;

所述伪边缘点的判断采用以下步骤:

(1)计算拍摄的投影画面中去除平坦区域的边缘图像B(x,y),见式10:其中边缘分割阈值T=(T1+T2)/2,T1和T2计算方法为:将所有像素点边缘变化值Qtotal(x,y)的均值设置为边缘分割初始阈值T0,基于T0将边缘变化值图像分为两部分,即:边缘变化值Qtotal(x,y)大于T0的所有像素点以及小于T0的所有像素点,分别计算这两部分像素点的边缘变化值的均值可得到T1和T2;

(2)对边缘图像B(x,y)每个边缘点周围3*3邻域中除去自身之外的8个像素点进行遍历,统计其中值不为0的边缘点的个数,若边缘点数大于2则为真实边缘点,否则判断该点为伪边缘点;

所述步骤3中清晰度值Q为最大值Qmax的96%以上时,判定对焦成功。

说明书 :

基于单个摄像机的投影仪红外触控和自动对焦方法

技术领域

[0001] 本发明属于投影显示领域,特别涉及一种基于单个摄像机的投影仪红外触控和自动对焦方法。

背景技术

[0002] 传统的投影仪作为常见的显示设备可以把计算机的显示画面投射到幕布或其它屏幕上。近年来,出现了含有操作系统的智能投影仪,能投射出所含系统的画面。但是其存在两个问题:第一,投影画面仅是显示而已,不能实现触控和交互操作;第二,投影仪和屏幕的距离变化,会影响图像聚焦,此时需要手动调节焦距,实现屏幕清晰成像。
[0003] 申请号为CN201310536249.X的发明专利公开了“一种便携式交互式投影设备及其投影方法”,包括红外笔、便携设备、投影仪和投影屏幕;通过红外笔直接在投影屏幕上操作,即可同步改变通过投影仪投影到投影屏幕上的便携设备上的内容,从而实现交互式投影的功能。
[0004] 申请号为CN201610850872.6的发明专利公开了“一种投影仪开机自动对焦的控制方法及装置”,通过对开机时预设图像的清晰度和预存的图像清晰度进行比较的方式,实现了一种自动对焦方法。
[0005] 二者分别实现了红外笔触摸投影和自动对焦功能,其中前者使用红外摄像机实现对红外笔光点的捕获和定位;后者使用可见光相机实现了投影画面清晰度计算,并驱动电机实现自动对焦功能。

发明内容

[0006] 本发明的目的是在现有技术的基础上进行改进,提供一种基于单个摄像机的投影仪红外触控和自动对焦方法。
[0007] 为了实现上述目的,本发明采用以下技术方案:一种基于单个摄像机的投影仪红外触控和自动对焦方法,包括以下步骤:
[0008] 步骤1:摄像机对准投影画面,选择进行红外触控或自动对焦;
[0009] 步骤2:选择红外触控时,将摄像机曝光值调至最低,用红外笔触控幕布,红外笔尖发出红外光线;摄像机拍摄投影画面区域,所拍摄的画面中包含投影仪画面和红外触控笔尖发出的红外光线,且红外触控笔尖的亮度值高于投影画面的亮度值;根据拍摄画面中红外笔尖的位置计算红外笔尖在摄像机坐标系中的坐标值;在投影画面和摄像机画面存在角度偏差时,对红外笔尖的坐标值进行坐标校正,转换成投影仪坐标系;根据计算的投影仪坐标值,向投影仪系统发出控制指令,实现交互功能;
[0010] 步骤3:选择自动对焦时,将摄像机曝光值调整为默认曝光值或自动曝光模式,投影出对焦图片,驱动对焦电机运行一周,同时每隔40毫秒拍摄一幅投影画面,并计算每幅画面的清晰度值,然后统计其最大值Qmax;再次驱动电机每隔40毫秒步进运行,每次步进结束,实时拍摄投影画面,计算其清晰度值Q,然后与最大值Qmax进行比较,如果接近该值,则判定当前画面已经清晰,对焦成功,停止对焦电机运行。
[0011] 进一步的,步骤2中计算红外笔尖在摄像机坐标系中的坐标值采用以下步骤:
[0012] 步骤2.1:将所拍摄的投影画面区域进行高斯平滑滤波处理,滤波窗大小为3*3;
[0013] 步骤2.2:统计图像中所有像素值的灰度直方图,寻找灰度直方图中灰度的最大值Gmax,设置分割阈值Gs=0.7*Gmax,并基于此阈值对图像进行二值化处理,对图像中红外光块进行分割;
[0014] 步骤2.3:统计图像中红外光块的总数以及每个红外光块的像素数、长度、宽度、中心坐标信息;
[0015] 步骤2.4:对统计的红外光块进行真实性分析,判断红外笔尖所对应的红外光块,将光块横坐标和纵坐标的中心点作为红外笔尖的坐标。
[0016] 进一步的,步骤2.4对于红外光块真实性判断采用以下步骤:
[0017] (1)如果红外光块的个数大于5时,不进行红外光块识别,重新进行步骤2红外触控;
[0018] (2)如果红外光块的个数小于等于5时,删除所包含的像素点在30~300之外并且光块长宽比大于2的红外光块,在剩余的合理红外光块中选择最大的作为红外笔尖光块。
[0019] 进一步的,步骤2中对红外笔尖的坐标值进行坐标校正、转换成投影仪坐标系采用以下步骤:对摄像机拍摄的投影仪画面进行仿射变换,所述仿射变换为平移变换、旋转变换、缩放变换或上述的复合变换,按照公式1获得变换后的坐标:
[0020]
[0021] 其中x,y是变换前坐标,u,v是变换后坐标,a11,a12,a13,a21,a22,a23为变换系数。
[0022] 进一步的,变换系数采用以下步骤获得:
[0023] (1)在投影画面屏幕四角分别选取四个点,其在摄像机坐标系的坐标分别为A(x1,y1)、B(x2,y2)、C(x3,y3)、D(x4,y4);在投影机坐标系中的坐标分别为A(X1,Y1)、B(X2,Y2)、C(X3,Y3)、D(X4,Y4);
[0024] (2)将A、B、C在两个坐标系中的坐标值带入公式2构造线性方程组,可计算变换系数a′11,a′12,a′13,a′21,a′22,a′23:
[0025]
[0026] (3)将B、C、D在两个坐标系中的坐标值带入公式3构造线性方程组,可计算变换系数a″11,a″12,a″13,a″21,a″22,a″23:
[0027]
[0028] (4)取a′11,a′12,a′13,a′21,a′22,a′23和a″11,a″12,a″13,a″21,a″22,a″23平均值得到变换系数a11,a12,a13,a21,a22,a23。
[0029] 进一步的,步骤3中拍摄画面的清晰度值的采用以下步骤计算:
[0030] (1)根据像素点I(x,y)的纹理变化值G(x,y)区分拍摄投影画面中的不同区域进行处理,G(x,y)采用式4计算:
[0031]
[0032] 像素点的纹理变化值G(x,y)大于500时,认为是图像的边缘点,不做处理;如果100<G(x,y)<500,认为是非边缘区域,按照公式5进行高斯滤波,并和原值进行加权融合;如果G(x,y)小于100,认为是平坦区域,也不做处理;
[0033]
[0034] 其中R(x,y)=100/G(x,y);
[0035] (2)计算投影画面边缘变化值Qtotal(x,y),Qtotal(x,y)采用式6计算:
[0036] Qtotal=(Q02+Q452+Q902+Q1352)/255  (6)
[0037] 其中Q0,Q45,Q90,Q135是像素点I(x,y)在0度,45度,90度和135度四个方向变化差值,采用式7计算:
[0038]
[0039] 其中p1,p2,p3,p4,p5,p6,p7,p8,p9为像素点I(x,y)邻域9个像素点的值,采用式8计算:
[0040]
[0041] (3)判断并删除拍摄的投影画面中的伪边缘点,获得新边缘变化值Qnew(x,y),如果该点是伪边缘点,则Qnew(x,y)=0,否则Qnew(x,y)=Qtotal(x,y);
[0042] (4)对新边缘变化值Qnew(x,y)进行求和,并做归一化处理,得到清晰度计算公式9:
[0043]
[0044] 其中,M、N分别为所拍摄画面的横边像素和竖边像素。
[0045] 进一步的,伪边缘点的判断采用以下步骤:
[0046] (1)计算拍摄的投影画面中的平坦区域的边缘图像B(x,y),见式10:
[0047]
[0048] 其中边缘分割阈值T=(T1+T2)/2,T1和T2计算方法为:将所有像素点边缘变化值Qtotal(x,y)的均值设置为边缘分割初始阈值T0,基于T0将边缘变化值图像分为两部分,即:边缘变化值Qtotal(x,y)大于T0的所有像素点以及小于T0的所有像素点,分别计算这两部分像素点的边缘变化值的均值可得到T1和T2;
[0049] (2)对边缘图像B(x,y)每个边缘点周围3*3邻域中除去自身之外的8个像素点进行遍历,统计其中值不为0的边缘点的个数,若边缘点数大于2则为真实边缘点,否则判断该点为伪边缘点。
[0050] 进一步的,步骤3中清晰度值Q为最大值Qmax的96%以上时,判定对焦成功。
[0051] 本发明基于单个摄像机,同时实现了红外触摸投影和自动对焦功能,原理如下:摄像机对准投影画面,能够同时捕获红外光线和可见光线,并具有曝光可调功能。如果进行红外触控,则把摄像机曝光值调至最低,红外笔接触到幕布时发出红外光线,摄像机拍摄到投影画面,计算红外笔尖的位置,并进行坐标校正,从而获取红外笔尖坐标,并向投影仪系统发出控制指令;如果进行自动对焦,则把摄像机曝光值调至正常,驱动调焦马达运转,同时计算投影画面清晰度值,当清晰度值达到最大时,自动对焦完成。
[0052] 本发明的有益效果为:基于单个摄像机同时实现了投影仪的红外触控和自动对焦功能,其中红外触控功能不需要使用专用的红外摄像机,通过降低普通摄像机曝光值减弱所拍摄投影仪画面的反射光线,从而凸显红外笔光线,实现了红外笔尖坐标值计算和坐标校正;自动对焦时,设置摄像机为正常曝光,抓拍投影画面并计算其清晰度值,实现快速对焦功能。

附图说明

[0053] 图1是本发明单个摄像机的投影仪红外触控和自动对焦方法的总流程图。
[0054] 图2是红外触控方法的具体流程图。
[0055] 图3是摄像机坐标和投影仪坐标校正示意图。
[0056] 图4是实施例自动对焦图片
[0057] 图5是自动对焦方法的具体流程图。

具体实施方式

[0058] 下面结合附图和具体实施例对本发明做进一步的说明。
[0059] 单个摄像机的投影仪红外触控和自动对焦方法的总流程图见图1,摄像机对准投影画面,选择红外触控时,红外触控方法的具体流程图见图2。
[0060] 步骤1:首先摄像机曝光值调至最低;由于投影画面的亮度值较高,摄像机正常曝光时,所拍摄的投影画面和红外笔头的LED光线融合在一起,无法区分出红外笔头的位置,因此,需要把摄像机的曝光值调至最低,滤除摄像机拍摄的大部分投影光线,此时摄像机所拍摄的投影区域灰度值显著降低,而红外笔尖LED的光线较强可以凸显出来,能够识别其坐标位置。
[0061] 步骤2:红外笔触控幕布,此时笔尖发出红外光线,红外笔尖LED的波长为850nm;
[0062] 步骤3:摄像机拍摄投影画面区域,此时所拍摄的画面中既包含投影仪画面也包含红外触控笔尖发出的红外光线,且红外触控笔尖的亮度值明显高于投影画面的亮度值;
[0063] 步骤4:计算红外笔尖摄像机坐标值;如步骤3中所述,摄像机拍摄的画面中同时包含投影仪画面和红外笔尖,此步骤计算红外笔尖在摄像机坐标系中的坐标值;
[0064] 步骤5:步骤4中计算的红外笔尖的坐标值是相对于摄像机坐标系的,由于投影仪坐标系和摄像机坐标系有差异,因此需进行坐标校正,转换成投影仪坐标系;
[0065] 步骤6:根据步骤5中计算的投影仪坐标值,向投影仪系统发出控制指令,实现交互功能。
[0066] 其中步骤4红外笔尖坐标计算,以及步骤5坐标校正两个算法,需进一步阐述。
[0067] 红外笔尖坐标计算方法:
[0068] 红外笔头触控到屏幕时,发出红外光线,此时需要计算其在摄像机画面中的坐标,包含以下三个步骤:滤波去噪,红外光块提取以及红外光块真实性判断。所拍摄画面的像素大小为320*240。
[0069] 步骤1:滤波去噪
[0070] 摄像机所拍摄画面中含有一些噪声,如果直接进行二值化,可能产生多个噪声红外光块,因此需要进行滤波处理。本发明的方法是进行高斯平滑滤波处理,滤波窗大小为3*3。
[0071] 步骤2:图像分割
[0072] 由于红外笔尖的亮度值明显大于投影画面的亮度值,因此,可以使用二值化方法对步骤1滤波去噪后的图像进行分割。由于红外光笔和摄像机的距离不固定,其亮度值也存在较大变化,因此无法用唯一的阈值进行二值化处理。本发明设计了一种自动寻找红外光块最优分割阈值的方法,具体为:
[0073] 首先,统计图像中所有像素值的灰度直方图,其中灰度值较大的像素可能是红外笔尖区域;
[0074] 其次,寻找灰度直方图中灰度的最大值Gmax;
[0075] 最后,经过大量实验表明,红外光块点的像素值总是大于灰度直方图中最高灰度值的0.7倍,故设置分割阈值.Gs=0.7*Gmax,并基于此阈值对图像进行二值化处理。
[0076] 步骤3:红外光块标记
[0077] 经过步骤2的处理后,图像中可能存在多个红外光块,但是仅有一块是红外光笔对应的位置,需要进行标记和分析,此步骤中统计图像中红外光块的总数以及每个红外光块的像素数,长度,宽度,中心坐标等信息。
[0078] 步骤4:红外光块真实性判断
[0079] 由于红外笔尖发出的光线有显著特点,因此其对应的红外光块也有显著特征,需要对步骤3中的红外光块进行分析,判断真实的笔尖对应的红外光块,具体为:
[0080] 1)如果红外光块的个数大于5,此时一般是手或红外笔挡住投影仪造成干扰性亮点,此时不需进行红外光块识别;
[0081] 2)如果红外光块个数小于等于5,则遍历所有光块,进行真实性判断:
[0082] 由于红外笔尖光点的大小有一定范围,经过多次实验验证,红外光块所包含的像素点的个数总是在30至300个之间,因此如果光块所包含的像素点数超出这个范围,则认为不是红外笔尖光点,删除此块;
[0083] 由于红外笔尖光点一般是圆形,因此如果光块的长宽比大于2,则认为不是红外笔尖光点,删除此块;
[0084] 在剩余的合理红外光块中,选择最大的光块作为真实的红外笔尖光块,把光块横坐标和纵坐标的中心点作为红外笔尖的坐标。
[0085] 投影画面坐标校正方法:
[0086] 由于摄像机拍摄的画面要大于投影仪投影画面,因此摄像机拍摄画面中红外光块的坐标并不是投影仪中对应的坐标,需要进行坐标校正。图3为摄像机坐标和投影仪坐标校正示意图。
[0087] 首先,投影仪坐标系与摄像机坐标系存在一定的角度偏差;
[0088] 其次,由于投影仪画面包含在摄像机画面中,因此其坐标原点存在差异,即存在平移变换;
[0089] 最后,摄像机拍摄的投影仪画面只是摄像画面的一部分,因此存在缩放变换,所以可以用平移,旋转和缩放复合变换来表示仿射变换。
[0090] 仿射变换定义如公式(1):
[0091]
[0092] 其中,x,y是变换前坐标,u,v是变换后坐标,为了实现仿射变换,需要求解六个变换系数a11,a12,a13,a21,a22,a23。因此需要至少三对点,构建6个线程方程进行系数求解。
[0093] 具体步骤为:
[0094] 步骤1:利用投影仪画面屏幕边缘上的A、B、C三点作为标记点求解坐标变换系数a11,a12,a13,a21,a22,a23,这3个点在摄像机坐标系中的坐标值,以及在投影仪坐标系中的坐标值分别为:
[0095]
[0096] 步骤2:将这三对坐标值带入到公式(3)中构造线性方程组即可求得坐标变化系数,线性方程组如下:
[0097]
[0098] 求解线性方程组得到坐标变换系数a11,a12,a13,a21,a22,a23:
[0099]
[0100]
[0101]
[0102]
[0103] a13=X1-a11x1-a12y1
[0104] a23=X1-a21x1-a22y1
[0105] 步骤3:为了提高坐标变换系数的准确性,再次利用投影仪画面屏幕边缘上的B、C、D三点作为标记点,重复步骤1和步骤2,再次求解坐标变换系数a′11,a′12,a′13,a′21,a′22,a′23。把两次求解的系数取平均值得到最终的坐标变换系数。
[0106] 步骤4:给出摄像机坐标系中的任一点坐标,基于上述步骤求解的变换系数,可以利用公式(1)求解出对应的投影仪坐标系中的坐标值,从而实现基于此坐标值的触控操作功能。
[0107] 选择自动对焦功能时,自动对焦方法的具体流程图见图5。
[0108] 投影仪焦距调整由电机驱动,电机运转一周的时间为1.5秒,实现投影画面由模糊到清晰再到模糊的整个过程。自动对焦功能的原理为:驱动电机旋转的过程中,投射出对焦图片,摄像机拍摄包含对焦图片的投影画面,通过计算清晰度值进行自动对焦,对焦图片如图4,自动对焦步骤如图5。
[0109] 步骤1:自动对焦时,需要拍摄到清晰的投影画面,因此需要把摄像机曝光值调整为正常状态,即默认曝光值或自动曝光模式。
[0110] 步骤2:为了准确的计算出投影画面的清晰度,需要投影出对焦图片,该图片的特点是:包含较多的边缘纹理,有利于计算其清晰度值。
[0111] 步骤3:驱动对焦电机运行一周,同时每隔40毫秒拍摄一幅投影画面,并计算每幅画面的清晰度值,然后统计其最大值Qmax;
[0112] 步骤4:再次驱动电机每隔40毫秒步进运行,每次步进结束,实时拍摄投影画面,计算其清晰度值Q,然后与步骤3中的最大值Qmax进行比较,如果接近该值,则认为当前画面已经清晰,对焦成功,停止对焦电机运行。经过实验分析,当前画面清晰度值Q达到步骤3中最大值Qmax的96%时,认为对焦成功。
[0113] 清晰度值计算:
[0114] 自动对焦方法中,关键的步骤是清晰度值计算,其原理为:图像越清晰,其包含的边缘信息越多。正确对焦的情况下,图像的边缘最清晰,所包含的边缘信息最多;随着离焦程度的增加,其边缘会变得越来越平滑,所包含边缘信息越少。因此,可以通过检测其边缘信息的含量来确定图像的清晰度。
[0115] 图像的边缘可以通过梯度算法来提取。然而,由于图像中的平坦区域参与梯度计算以及图像中噪声在梯度计算中产生的孤立伪边缘都会对清晰度检测函数的精度产生一些影响,从而导致调焦的灵敏度降低。平坦区域可以通过设置阈值来检测,由图像边缘分割原理可知,孤立伪边缘可以用其八邻域的边缘点个数来判断。因此,在常见梯度算法清晰度检测函数的基础上,加上对于梯度图像中平坦区域和由噪声产生的孤立伪边缘的检测,消除其对清晰度计算的影响。
[0116] 此外,由于投影仪投影画面的频率和摄像机的采样频率不可能完全一致,因此摄像机拍摄的投影画面会有抖动现象,需要进行去抖动处理,从而提高清晰度值的稳定性。
[0117] 综上分析,本发明清晰度检测算法包含以下步骤,摄像机拍摄的投影画面的大小为320*240像素。
[0118] 步骤1:边缘保持滤波。定义像素点纹理变化值G(x,y)如下:
[0119]
[0120] 如果100<G(x,y)<500,R(x,y)=100/G(x,y),
[0121] 否则R(x,y)=1,R(x,y)为融合权值。
[0122]
[0123] 分析如下:像素点的纹理变化值G(x,y)大于500时,认为是图像的边缘点,此时画面抖动对其影响较小,因此该点的值不变,实现了边缘保持能力;如果G(x,y)小于500,认为是非边缘区域,此时画面抖动对其影响较大,按照公式(6)进行高斯滤波,并和原值进行加权融合;如果G(x,y)小于100,认为是平坦区域,此时基本无抖动,也不做处理。
[0124] 步骤2:计算投影画面边缘变化值
[0125] 像素点和其邻域像素的差值可以作为该点边缘变化值,方法为:将待检测图像I分别与0度,45度,90度和135度4个方向的方向模板进行卷积运算,可以得到不同方向的灰度差,定义p1,p2,p3,p4,p5,p6,p7,p8,p9为像素点I(x,y)邻域9个像素点的值,如下:
[0126]
[0127] 则像素点I(x,y)四个方向变化差值Q0,Q45,Q90,Q135定义为:
[0128]
[0129] 此时,Q0,Q45,Q90,Q135的值可能是负数,对其进行平方处理,同时可以提高变化差值,定义像素点边缘变化值Qtotal(x,y)如下:
[0130] Qtotal=(Q02+Q452+Q902+Q1352)/255  (9)
[0131] 摄像机拍摄的投影画面不可避免的会包含部分孤立的噪声点,其边缘变化值较大,对清晰度值产生较大影响,容易导致对焦不准确,因此需要对其进行判断和删除,方法如下:
[0132] 首先,定义边缘分割初始阈值T0为所有像素点边缘变化值Qtotal(x,y)的均值,基于T0将边缘变化值图像分为两部分,即:边缘变化值Qtotal(x,y)大于T0的所有像素点以及小于T0的所有像素点,分别计算这两部分像素点的边缘变化值的均值可得到T1和T2;最终的边缘分割阈值T=(T1+T2)/2。基于边缘分割阈值T对边缘变化值图像Qtotal(x,y)进行分割,如公式(10),像素点边缘变化值Qtotal(x,y)大于T的为边缘,其值不变;像素点边缘变化值小于T的为非边缘,赋值为0,得到去除平坦区域的边缘图像B(x,y)。
[0133]
[0134] 其次,对边缘图像B(x,y)每个边缘点进行八邻域的遍历,统计其中值不为0的边缘点的个数,若边缘点数大于2则为真实边缘点,否则判断该点为伪边缘点。
[0135] 最后,得到最终用于清晰度计算的边缘变化值Qnew(x,y):
[0136] 如果该点是伪边缘,则Qnew(x,y)=0,否则Qnew(x,y)=B(x,y)。由于B(x,y)是去除了平滑区域的边缘图像,因此,此步骤获得的Qnew(x,y),即去除了伪边缘点,也去除了非边缘区域的干扰。
[0137] 步骤4:计算清晰度值。
[0138] 对步骤3中计算的所有像素点的边缘变化值Qnew(x,y)进行求和,并做归一化处理,得到清晰度计算公式如式11,其中,M、N分别为所拍摄画面的横边像素和竖边像素,本发明中M、N分别是320和240。
[0139]
[0140] 以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式的限制。凡是依据本发明的技术和方法实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明的技术和方法方案的范围内。