一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种大尺度异形面投影几何校正方法

2022-08-10 22:00:18 来源:中国专利 TAG:


1.本发明涉及图像校正技术领域,特别是涉及一种大尺度异形面投影几何校正方法。


背景技术:

2.目前,随着投影技术的应用越来越广泛,在实践中发现,经常需要将某一投影画面投影至异形投影面,此时需要对投影画面进行几何校正。当投影面为凹凸不平的异形面时,如果不对投影机图像进行几何校正,则观众观察到的投影图像不仅有常见的梯形失真,而且观察到的图像受异形投影面影响会产生严重扭曲。
3.文旅演出或展览展示经常需要在山洞这一类投影面进行投影几何校正。这一类大尺度异形投影面,表面不平,有凸起或凹陷。要想使观众在最佳视点获取平面上投影的视觉体验效果,工程上通常采用在异形投影面拉网格,并通过人工手动控制的方式,实现投影几何校正。项目施工过程繁琐,对现场施工人员技术要求高。
4.为了投影出最佳视点下无畸变的图像(即观众在最佳视点观察到的图像与投影机在理想平面投影面上投影出的图像一样),本发明在最佳视点设置相机,模拟人眼在最佳视点观察到的投影图像。投影机投射出一组编码结构光图像,相机相应对异形面上投影的结构光图像成像。对相机图像进行解码,获取投影机图像与相机图像像素之间的映射关系。由于相机与投影机分辨率不同,以及异形投影面表面吸收投影出的结构光,投影机图像像素与相机图像像素之间的映射关系会有部分缺失,因此需要对映射关系进行后处理。


技术实现要素:

5.本发明的目的是提供一种大尺度异形面投影几何校正方法,以解决上述现有技术中存在的问题。
6.为实现上述目的,本发明提供了如下方案:
7.一种大尺度异形面投影几何校正方法,包括:
8.获取原始结构光编码图像,并将所述原始结构光编码图像投射到异形面上,得到结构光投影图像;
9.拍摄所述结构光投影图像并进行解码,得到所述结构光投影图像像素和所述原始结构光编码图像像素之间的映射关系;
10.基于所述映射关系,将待投影图像进行映射处理,生成原始投影图像,对所述原始投影图像进行预畸变处理,完成对异形面投影的几何校正。
11.优选地,获取所述原始结构光编码图像包括:
12.基于时空编码的方法预设一组编码后的条纹图像,通过投影装置按顺序投射所述编码后的条纹图像,将所述编码后的条纹图像投射在不规则的投影幕上,获取所述原始结构光编码图像。
13.优选地,解码所述结构光投影图像,包括:
14.将拍摄到的所述结构光投影图像中相反的图像作差,然后将所述结构光投影图像转换为二值图像,得到所述结构光投影图像中每张图像的每个像素位置,此时,所述像素位置都有唯一对应的二进制码,将所述二进制码转换为十进制数,得到对应的投影机像素坐标。
15.优选地,基于所述投影机像素坐标,分别投影x轴和y轴的所述原始结构光编码图像并进行计算,得到所述结构光投影图像像素和所述原始结构光编码图像像素之间的映射关系:
16.(xc,yc)

(x
p
,y
p
)
17.其中,(xc,yc)为相机图像像素坐标,(x
p
,y
p
)为投影图像像素坐标。
18.优选地,将所述待投影图片进行映射处理,包括:
19.在所述待投影图片上选取期望投影位置的顶点,根据所述期望投影位置的顶点和所述待投影图片的顶点,计算两幅图片之间的单应矩阵,基于所述单应矩阵通过计算将所述待投影图片的像素值转换到相机视角,通过所述结构光投影图像像素和所述原始结构光编码图像像素之间的映射关系,得到所述原始投影图像。
20.优选地,基于所述单应矩阵通过计算将所述待投影图片的像素值转换到相机视角的方法为:
[0021][0022]
其中,xc、yc为相机坐标,h为单应矩阵,xo、yo为待投影图片坐标。
[0023]
优选地,对所述原始投影图像进行预畸变处理,包括:
[0024]
基于单应矩阵公式对所述待投影图片转换到相机坐标系下,再利用所述映射关系,逐像素寻找相机像素对应的投影像素,同时,将所述相机像素下对应的待投影图片像素的rgb信息赋予到所述投影像素中,映射完成后,得到预畸变后的投影图像。
[0025]
本发明的有益效果为:
[0026]
(1)本发明采用投影机投影编码结构光,相机捕获投影面结构光成像的方式,自动获取投影机图像几何校正映射关系;
[0027]
(2)本发明在部署投影机系统时,自动化程度高,施工效率高,对施工人员技术要求低,投影误差小。
附图说明
[0028]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0029]
图1为本发明实施例的一种大尺度异形面投影几何校正方法流程图;
[0030]
图2为本发明实施例的投影面、投影机和相机摆放位置示意图;
[0031]
图3为本发明实施例的格雷码编码示例图;
[0032]
图4为本发明实施例的投影机投射的格雷码图像;
[0033]
图5为本发明实施例的投影机投射的格雷码图像投射到异形面后相机成像示例图;
[0034]
图6为本发明实施例的格雷码解码示意图;
[0035]
图7为本发明实施例的选取顶点的示意图;
[0036]
图8为本发明实施例的投影机像素映射与待投影原图的映射关系示意图;
[0037]
图9为本发明实施例的预畸变后的图像;
[0038]
图10为本发明实施例的预畸变后投影最佳视点下的图像;
[0039]
图11为本发明实施例的无预畸变投影图像;
[0040]
图12为本发明实施例的双线性插值示意图。
具体实施方式
[0041]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0042]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0043]
如附图1,一种大尺度异形面投影几何校正方法,,包括:
[0044]
获取原始结构光编码图像,并将所述原始结构光编码图像投射到投影面上,得到结构光投影图像;
[0045]
在最佳视点位置放置相机,在本实施例中最佳视点由演艺主创单位决定。对投影机摆放位置无特殊要求。投影面、投影机、照相机的位置一旦确定后,不再改变。完成本方法所述过程后,撤掉照相机。当投影面或投影机位置发生变动,必须重新按照本发明的步骤进行几何校正。投影面、投影机、照相机摆放位置如图2所示。图2中的投影面模拟石头洞窟内壁,表面凹凸不平。
[0046]
拍摄所述结构光投影图像并进行解码,得到所述结构光投影图像像素和所述原始结构光编码图像像素之间的映射关系;
[0047]
投影机投射出一组编码结构光图像,相机相应对异形面上投影的结构光图像成像。对相机图像进行解码,获取投影机图像与相机图像之间的映射关系,即结构光投影图像像素和原始结构光编码图像像素之间的映射关系。
[0048]
结构光编码、解码就是软件预先生成一组编码后的条纹图像,投影机按顺序投射这组图像,这组图像投射在不规则投影面上,摄像机获取投射在异形面上的条纹图像。软件解码相机拍摄的这一组图像,便可以得出投影机像素和摄像机像素坐标之间的映射关系。
[0049]
目前结构光编码的方法很多,主要可以分为时空编码、空间编码和直接编码三大类。基于时空的编码方法是最常用的结构光编码方法,通过连续投射一组图案到被测物体表面,相机图像某个像素点的码字就是这一个投射序列中该像素点的亮度值。这种编码方法可以实现很高的测量精度。时空编码的方法主要有二值编码、格雷码、相移编码等方法。
[0050]
在本实施例中选择时空编码方法中的格雷码进行计算。格雷码作为一种稳定性高、抗反光效果好的码字被广泛使用。格雷码是对二值编码进行逻辑运算生成的,n位二进
制数与格雷码的转换公式如下:
[0051][0052]
g(i)=b(i) i=n-1
[0053]
其中,g为格雷码,b为二进制码。
[0054]
使用此公式逐位计算,得到二进制对应的格雷码,如表1所示,其中所有行对应的同一位格雷码构成一幅图像。表中四位格雷码分别为第3、2、1、0位,构成四组24=16位的图像,其中第3位构成0000000011111111,第2位构成0000111111110000,第1位构成0011110000111100,第0位构成0110011001100110。表1为四位二进制码与格雷码对应关系。
[0055]
表1
[0056][0057][0058]
二值编码相邻的两个码字有多位不一样,而格雷码的相邻两个码值进行转换时,只有一位会变化,这样当由一个状态到下一个状态时就会大大减少逻辑混淆,格雷码编码示例如图3所示。
[0059]
本实施例中以格雷码编码、解码为例。假设投影机分辨率为1920x1200,由于2
11
>1920>1200>2
10
,故行方向和列方向各需要11位格雷码,由于像素数量与格雷码编码结果并不完全对应,即不是2的幂次,所以取格雷码编码的中间1920或1200位与像素一一对应。
为保证解码过程更加稳健,避免由于散射光而被照亮的点引起的误差,每一位码字对应的图像取反再多投影一次,因此一共需要44张格雷码图像进行投影,如图4所示。
[0060]
相机拍摄对应每幅格雷码图像投影的结果,并保存用于后续解码,如图5。
[0061]
将相机拍摄得到的格雷码图像中相反的图像做差,然后转换为二值图像,即只包含0和1的图像。相应的,n位格雷码转换为二进制码的公式如下:
[0062]
b(i)=g(i) i=n-1
[0063][0064]
其中,b为二进制码,g为格雷码,使用此公式逐位计算,得到格雷码对应的二进制码。每张图片的每个像素位置(xc,yc)都有0或1两个值,一张图代表一位,此时每个像素位置便有了唯一对应的二进制码,其对应的十进制数即为对应的投影机像素坐标(x
p
,y
p
)。如图6中某像素对应的格雷码值为1100(假设投影为16像素),按照解码公式解码为1000,即十进制8,则此坐标对应投影机横坐标8。
[0065]
按照格雷码编码规则将其转换回普通二进制码,进而转换到十进制,即此像素在投影机中的坐标位置,分别投影x轴和y轴的格雷码图片并计算,得到投影机像素与相机像素的映射关系如下。
[0066]
(xc,yc)

(x
p
,y
p
)
[0067]
其中(xc,yc)为相机图像像素坐标,(x
p
,y
p
)为投影机图像像素坐标。
[0068]
基于所述映射关系,将待投影图片进行映射处理,生成原始投影图像,对所述原始投影图像进行预畸变处理,完成对异形面投影的几何校正;
[0069]
在相机图像上用鼠标点击选取期望投影位置的四个顶点,如图7所示,根据选取的四个点和待投影原图的四个顶点,求两幅图之间的单应矩阵,单应矩阵h是一个3*3的矩阵,一般令右下角元素h
33
=1来归一化,所以单应矩阵有8个自由度,8个方程即4个对应点便可计算出单应矩阵h。
[0070]
根据所求的单应矩阵和下面的公式将待投影原图每一个像素值转换到相机视角,即
[0071][0072]
其中xc、yc为相机坐标,h为单应矩阵,xo、yo为待投影原图坐标。转换关系如图8所示。
[0073]
此时建立起了投影机像素映射与待投影原图的映射关系,便可以对投影机像素逐像素的赋值实现对待投影原图的预畸变。
[0074]
先按照单应矩阵公式将待投影的原图转换到相机坐标下,再利用前面所求的映射关系(xc,yc)

(x
p
,y
p
)逐像素的寻找相机像素对应的投影机像素,同时将相机像素(xc,yc)下对应的待投影原图像素(xo,yo)下的rgb信息赋给投影机像素(x
p
,y
p
),待映射完成,投影机便可得到一张预畸变后的图像,如图9,此图像在相机视角下无畸变,如图10所示,无预畸变的投影如图11。
[0075]
由于异形面表面凹凸不平,并且颜色不均匀,投影机投射出的结构光容易被异形面表面黑色部分吸收不发生反射,因此在这些地方会丢失格雷码的解码结果。按照上述映
射关系对图像进行预畸变,则此图像预畸变后会出现空洞。
[0076]
对预畸变后的图像采用双线性插值法进行补全,双线性插值就是两个方向的线性插值,假如图像在点p=(x
p0
,y
p0
)对应的像素值f(p),假设已知其在q
11
=(x
p1
,y
p1
)、q
12
=(x
p1
,y
p2
),q
21
=(x
p2
,y
p1
)以及q
22
=(x
p2
,y
p2
)四个点的值分别为f(q
11
)、f(q
12
)、f(q
21
)、f(q
22
),如图12所示。点p是图像像素值缺失的点,也就是需要双线性插值获取值的像素点。q11,q12,q21,q22指空间位置上紧邻点p的4个图像点像素,这4个图像点的像素灰度值是已知的。f(q11),f(q11),f(q11),f(q11)是这4个像素的灰度值,对于彩色图像,是像素的rgb值。
[0077]
以上所述的实施例仅是对本发明优选方式进行的描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献