弧形屏校正方法、装置、计算机设备和存储介质
技术领域
本申请涉及LED屏校正技术领域,特别是涉及一种弧形屏校正方法、装置、计算机设备和存储介质。
背景技术
屏幕校正是LED显示屏生产过程中的一个重要环节,目前对LED显示屏的校正一般是通过亮色度采集工具,对LED屏幕进行数据采集,通过采集的照片对屏幕进行校正,这种方法针对常规屏进行校正可以取得较好的校正效果。
但是,对于如图1所示的弧形屏来说,采用该方法进行校正时,通过相机采集一次信息,由于未考虑单次拍照分块不在同一个平面内的情况,采用已有算法校正后会造成不同平面之间存在如图2所示的明显的亮暗线,在LED箱体过渡处存在红绿蓝配比不一致的问题,严重影响校正效果。
因此,目前的弧形屏校正方法,存在校正效果较差的问题。
发明内容
基于此,有必要针对上述弧形屏校正方法的校正效果较差的技术问题,提供一种弧形屏校正方法、装置、计算机设备和存储介质。
一种弧形屏校正方法,所述方法包括:
获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参;
根据所述第一相机外参和所述第二相机外参,得到坐标系转换矩阵;所述坐标系转换矩阵用于将所述第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到所述第一LED箱体对应的第一世界坐标系中;
根据所述坐标系转换矩阵,得到将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵;
根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏;
对所述平面屏进行屏幕校正,得到所述弧形屏对应的校正后弧形屏。
在其中一个实施例中,所述获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参,包括:
分别获取所述第一LED箱体中图像灯点的第一图像灯点坐标及对应的第一屏幕灯点坐标和相机内参,以及所述第二LED箱体中图像灯点的第二图像灯点坐标及对应的第二屏幕灯点坐标;其中,图像灯点坐标表示图像灯点在像素坐标系下的坐标;
根据所述第一图像灯点坐标、所述第一屏幕灯点坐标和所述相机内参,得到所述第一LED箱体的第一相机外参;
根据所述第二图像灯点坐标、所述第二屏幕灯点坐标和所述相机内参,得到所述第二LED箱体的第二相机外参。
在其中一个实施例中,所述根据所述第一相机外参和所述第二相机外参,得到坐标系转换矩阵,包括:
获取所述第一相机外参的逆矩阵;
获取所述第一相机外参的逆矩阵与所述第二相机外参的乘积,作为所述坐标系转换矩阵。
在其中一个实施例中,所述根据所述坐标系转换矩阵,得到所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵,包括:
获取所述弧形屏图像中所述第二LED箱体的至少三个屏幕灯点在所述第二世界坐标系中的坐标,作为屏幕灯点坐标;
根据所述坐标系转换矩阵和所述至少三个屏幕灯点坐标,获取所述第一LED箱体和所述第二LED箱体的交线方程;
基于所述交线方程中确定的交点,确定所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵。
在其中一个实施例中,所述根据所述坐标系转换矩阵和所述至少三个屏幕灯点坐标,获取所述第一LED箱体和所述第二LED箱体的交线方程,包括:
根据所述坐标系转换矩阵,得到所述至少三个屏幕灯点坐标在所述第一LED箱体所在平面中对应的至少三个灯点投影坐标;
根据所述至少三个屏幕灯点坐标,得到所述第二LED箱体的平面方程;
根据所述至少三个灯点投影坐标,得到所述第一LED箱体的平面方程;
根据所述第一LED箱体的平面方程和所述第二LED箱体的平面方程,得到所述第一LED箱体和所述第二LED箱体的交线方程。
在其中一个实施例中,所述根据所述坐标系转换矩阵,得到将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,包括:
将所述坐标系转换矩阵中的平移向量作为零向量,得到初始旋转矩阵;
获取所述初始旋转矩阵的逆矩阵,作为将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵;
根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏。
在其中一个实施例中,所述根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏,包括:
获取所述第二LED箱体的各个屏幕灯点在世界坐标系中的坐标,作为待转换屏幕灯点坐标;
计算所述第一平移变换矩阵、所述第二平移变换矩阵、所述旋转矩阵与所述待转换屏幕灯点坐标的乘积,得到所述第二LED箱体的各个屏幕灯点在所述第一LED箱体所在平面的对应坐标,将所述对应坐标的坐标点与所述第一LED箱体构成的屏幕作为所述弧形屏对应的平面屏。
一种弧形屏校正装置,所述装置包括:
相机外参获取模块,用于获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参;
转换矩阵确定模块,用于根据所述第一相机外参和所述第二相机外参,得到坐标系转换矩阵;所述坐标系转换矩阵用于将所述第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到所述第一LED箱体对应的第一世界坐标系中;
旋转矩阵确定模块,用于根据所述坐标系转换矩阵,得到将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵;
平面屏获取模块,用于根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏;
屏幕校正模块,用于对所述平面屏进行屏幕校正,得到所述弧形屏对应的校正后弧形屏。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参;
根据所述第一相机外参和所述第二相机外参,得到坐标系转换矩阵;所述坐标系转换矩阵用于将所述第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到所述第一LED箱体对应的第一世界坐标系中;
根据所述坐标系转换矩阵,得到将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵;
根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏;
对所述平面屏进行屏幕校正,得到所述弧形屏对应的校正后弧形屏。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参;
根据所述第一相机外参和所述第二相机外参,得到坐标系转换矩阵;所述坐标系转换矩阵用于将所述第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到所述第一LED箱体对应的第一世界坐标系中;
根据所述坐标系转换矩阵,得到将所述第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及所述第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵;
根据所述第一平移变换矩阵、所述第二平移变换矩阵和所述旋转矩阵,将所述第二LED箱体的屏幕灯点旋转到所述第一LED箱体所在的平面上,得到所述弧形屏对应的平面屏;
对所述平面屏进行屏幕校正,得到所述弧形屏对应的校正后弧形屏。
上述弧形屏校正方法、装置、计算机设备和存储介质,在获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参后,根据第一相机外参和第二相机外参,得到坐标系转换矩阵,根据坐标系转换矩阵,得到将第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵,进一步根据第一平移变换矩阵、第二平移变换矩阵和旋转矩阵,将第二LED箱体的屏幕灯点旋转到第一LED箱体所在的平面上,得到弧形屏对应的平面屏,最后对平面屏进行屏幕校正,得到弧形屏对应的校正后弧形屏。该方法通过计算坐标系转换矩阵、第一平移变换矩阵、第二平移变化矩阵和旋转矩阵,得到第一LED箱体和第二LED箱体对应的两个平面之间的位置关系,根据该位置关系通过旋转平移将一个LED箱体对应的平面旋转到与另一个LED箱体对应的平面上,使弧形屏图像中的两个LED箱体处于同一平面,从而实现将弧形屏校正转换为平面屏校正,再对平面屏进行校正,消除了弧形屏图像中两个平面之间的亮暗线,克服了LED箱体过渡处红蓝绿配比不一致的问题,从而提高了对弧形屏的校正效果。
附图说明
图1为一个实施例中弧形屏的示意图;
图2为现有技术中校正后的弧形屏平面示意图;
图3为一个实施例中弧形屏校正方法的流程示意图;
图4为一个实施例中弧形屏转换为平面屏的示意图;
图5为一个实施例中平移变化矩阵确定步骤的流程示意图;
图6为一个实施例中弧形屏校正装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图3所示,提供了一种弧形屏校正方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤S302,获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参。
其中,第一LED箱体和第二LED箱体为弧形屏的组成部件,参考图1,图1所示的弧形屏由第一LED箱体102和第二LED箱体104组成。
其中,相机外参可理解为相机位姿态,第一相机外参表示将第一LED箱体所在的第一世界坐标系转换至相机坐标系的转换矩阵,第二相机外参表示将第二LED箱体所在的第二世界坐标系转换至相机坐标系的转换矩阵。
具体实现中,根据相机成像原理可得到世界坐标系到像素坐标系的转换关系,可表示为:
其中,
表示相机到屏幕的距离,
表示图像灯点在像素坐标系中的坐标,
表示屏幕灯点在世界坐标系中的坐标,
表示像素坐标系每一列在图像坐标系中的宽度,
表示像素坐标系每一行在图像坐标系中的高度,相机内参(包括焦距和光学中心等)中的
表示相机焦距
在图像坐标系x轴的像素数,
表示相机焦距
在图像坐标系y轴的像素数,相机内参为已知相机参数,相机外参中的
表示3×3的旋转矩阵,
表示3×1的平移向量,
和
均具有三个自由度。
上式中,
和相机外参未知,则共有1+3+3=7个自由度。在弧形屏中的屏幕灯点被相机采集后,存在多对屏幕灯点(远大于4对),则可以求得
和相机外参E。对于图1所示的弧形屏,则可以分别求出屏幕ABED的第一相机外参(记为E1)和屏幕BCEF的第二相机外参(记为E2)。
步骤S304,根据第一相机外参和第二相机外参,得到坐标系转换矩阵;坐标系转换矩阵用于将第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到第一LED箱体对应的第一世界坐标系中。
进一步地,在一个实施例中,步骤S304具体包括:获取第一相机外参的逆矩阵;获取第一相机外参的逆矩阵与第二相机外参的乘积,作为坐标系转换矩阵。
具体实现中,对于第一相机外参E1(即将第一LED箱体所在的第一世界坐标系转换至相机坐标系的转换矩阵)和第二相机外参E2(即将第二LED箱体所在的第二世界坐标系转换至相机坐标系的转换矩阵),可求得一个矩阵Tr,使得E2 = E1*Tr,实现将第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换至第一LED箱体对应的第一世界坐标系中,将该矩阵Tr,作为坐标系转换矩阵。由于第一LED箱体和第二LED箱体位于同一张图像,则第一LED箱体和第二LED箱体的像素坐标系为同一个像素坐标系,故由关系式E2 = E1*Tr,可求得坐标系转换矩阵Tr=E1-1*E2。则在得到第一相机外参E1和第二相机外参E2后,可计算第一相机外参的逆矩阵E1-1与第二相机外参E2的乘积,得到坐标系转换矩阵。
步骤S306,根据坐标系转换矩阵,得到将第二LED箱体旋转到与第一LED箱体同一平面的旋转矩阵,以及第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵。
进一步地,在一个实施例中,根据坐标系转换矩阵得到将第二LED箱体旋转到与第一LED箱体同一平面的旋转矩阵的步骤,包括:将坐标系转换矩阵中的平移向量作为零向量,得到初始旋转矩阵;获取初始旋转矩阵的逆矩阵,作为将第二LED箱体旋转到与第一LED箱体同一平面的旋转矩阵。
具体实现中,若将坐标系转换矩阵Tr转换为4×4的矩阵
,由于仅作旋转不作平移,可将坐标系转换矩阵Tr中的平移向量T视为0,则可得到初始旋转矩阵为
。进一步地,根据上述关系式E2 = E1*Tr,可得E1= E2*Tr
-1,则可得到将第二LED箱体的屏幕灯点坐标旋转到与第一LED箱体同一平面的旋转矩阵为Tr
-1=
=
。
在得到坐标系转换矩阵后,可获取弧形屏图像中第二LED箱体的至少三个屏幕灯点在世界坐标系中的屏幕灯点坐标,根据坐标系转换矩阵将该至少三个屏幕灯点坐标投影到第一LED箱体对应的第一世界坐标系中,得到至少三个灯点投影坐标。根据至少三个屏幕灯点坐标,得到第二LED箱体的平面方程,根据至少三个灯点投影坐标,得到第一LED箱体的平面方程,联立两个LED箱体的平面方程,得到第一LED箱体和第二LED箱体的交线方程,由交线方程确定一个交点,基于该交点,确定第二LED箱体在旋转变换前的第一平移向量和旋转变换后的第二平移向量,根据第一平移向量和第二平移向量确定第二LED箱体在旋转变换前的第一平移变换矩阵和第二平移变换矩阵。
例如,若记得到的交线方程中的一个交点为(x,0,0),则可确定第二LED箱体在做旋转变换前的第一平移向量T1=
,旋转变换后的第二平移向量T2=
。参考上述第二相机外参E2=
,由于仅做平移,不做旋转,E2中的矩阵R为3×3的单位矩阵,即R=
,则可得第二LED箱体在做旋转变换前的第一平移变换矩阵为
,以及做完旋转变换后的第二平移变换矩阵为
。
步骤S308,根据第一平移变换矩阵、第二平移变换矩阵和旋转矩阵,将第二LED箱体的屏幕灯点旋转到第一LED箱体所在的平面上,得到弧形屏对应的平面屏。
具体实现中,在得到第一平移变换矩阵、第二平移变换矩阵和旋转矩阵后,获取第二LED箱体的屏幕灯点坐标,计算第一平移变换矩阵、第二平移变换矩阵和旋转矩阵和屏幕灯点坐标的乘积,得到将该屏幕灯点坐标转换到与第一LED箱体所在平面的对应坐标。该计算过程可用关系式表示为:第二平移转换矩阵×旋转矩阵×第一平移转换矩阵×屏幕灯点坐标。
若记屏幕灯点坐标为(U,V,W),则将前述第一平移变化矩阵、第二平移变换矩阵和旋转矩阵,代入上述关系式中,可得屏幕灯点坐标(U,V,W)在第一LED箱体所在平面的对应坐标为:
参考图4,为一个实施例中将弧形屏转换为平面屏的示意图,图中ABDE所包括的区域表示第一LED箱体在第一世界坐标系中的屏幕灯点坐标,BCEF所包括的区域为表示第二LED箱体在第二世界坐标系中的屏幕灯点坐标,BEGH所示的区域则表示将第二LED箱体旋转到与第一LED箱体同一平面后的屏幕灯点坐标,实现了将弧形屏ABC-DEF转换为平面屏ABG-DEH。
步骤S310,对平面屏进行屏幕校正,得到弧形屏对应的校正后弧形屏。
具体实现中,在将弧形屏转换为平面屏后,可采用常规LED屏的校正方法,如单LED箱体校正、逐点校正等方法对弧形屏对应的平面屏进行校正,得到校正后弧形屏。
可以理解的是,本申请仅是以包括两个LED箱体的弧形屏为例,对弧形屏校正方法进行说明,若弧形屏包括两个以上的LED箱体,也可以采用本申请提供的校正方法,先将弧形屏中的各个LED箱体旋转到同一平面上,得到平面屏,然后采用常规平面屏的校正方法对转换得到的平面屏进行校正,得到校正后弧形屏。
上述弧形屏校正方法中,在获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参后,根据第一相机外参和第二相机外参,得到坐标系转换矩阵,根据坐标系转换矩阵,得到将第二LED箱体旋转到与所述第一LED箱体同一平面的旋转矩阵,以及第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵,进一步根据第一平移变换矩阵、第二平移变换矩阵和旋转矩阵,将第二LED箱体的屏幕灯点旋转到第一LED箱体所在的平面上,得到弧形屏对应的平面屏,最后对平面屏进行屏幕校正,得到弧形屏对应的校正后弧形屏。该方法通过计算坐标系转换矩阵、第一平移变换矩阵、第二平移变化矩阵和旋转矩阵,得到第一LED箱体和第二LED箱体对应的两个平面之间的位置关系,根据该位置关系通过旋转平移将一个LED箱体对应的平面旋转到与另一个LED箱体对应的平面上,使弧形屏图像中的两个LED箱体处于同一平面,从而实现将弧形屏校正转换为平面屏校正,再对平面屏进行校正,消除了弧形屏图像中两个平面之间的亮暗线,克服了LED箱体过渡处红蓝绿配比不一致的问题,从而提高了对弧形屏的校正效果。此外,采用该方法无需额外的标定板进行标定,校正人员也无需采用多余的操作来标定相机,极大地简化了弧形屏的校正工作。
在一个实施例中,上述步骤S302具体包括:分别获取第一LED箱体中图像灯点的第一图像灯点坐标及对应的第一屏幕灯点坐标和相机内参,以及第二LED箱体中图像灯点的第二图像灯点坐标及对应的第二屏幕灯点坐标;其中,图像灯点坐标表示图像灯点在像素坐标系下的坐标;根据第一图像灯点坐标、第一屏幕灯点坐标和相机内参,得到第一LED箱体的第一相机外参;根据第二图像灯点坐标、第二屏幕灯点坐标和相机内参,得到第二LED箱体的第二相机外参。
其中,图像灯点表示在采集的弧形屏图像中的灯点。
其中,图像灯点坐标图像灯点在以弧形屏图像建立的像素坐标系中的坐标。
具体实现中,由于第一LED箱体和第二LED箱体不在同一平面,因此可以第一LED箱体的屏幕建立第一世界坐标系,以第二LED箱体的屏幕建立第二世界坐标系,将第一LED箱体的屏幕灯点在第一世界坐标系中的坐标作为第一屏幕灯点坐标,将第二LED箱体的屏幕灯点在第二世界坐标系中的坐标作为第二屏幕灯点坐标。由于第一LED箱体和第二LED箱体为同一摄像机拍摄的,处于同一张图像中,所以像素坐标系相同,则可以采集的弧形屏图像建立像素坐标系,将位于第一LED箱体区域的图像灯点在像素坐标系中的坐标作为第一图像灯点坐标,将位于第二LED箱体区域的图像灯点在像素坐标系中的坐标作为第二图像灯点坐标。
进一步地,在得到第一图像灯点坐标、第一屏幕灯点坐标和相机内参后,可结合步骤S302实施例中的世界坐标系到像素坐标系的转换关系式,计算得到第一LED箱体的第一相机外参。类似地,在得到第二图像灯点坐标、第二屏幕灯点坐标和相机内参后,可结合世界坐标系到像素坐标系的转换关系式,计算得到第二LED箱体的第二相机外参。
本实施例中,通过分别根据第一LED箱体的第一图像灯点坐标、第一屏幕灯点坐标和相机内参,计算第一LED箱体的第一相机外参,根据第二LED箱体的第二图像灯点坐标、第二屏幕灯点坐标和相机内参,计算第二LED箱体的第二相机外参,以便于可根据第一相机外参和第二相机外参,计算将第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到第一LED箱体对应的第一世界坐标系中的坐标系转换矩阵。
在一个实施例中,如图5所示,上述步骤S306具体包括:
步骤S502,获取弧形屏图像中第二LED箱体的至少三个屏幕灯点在第二世界坐标系中的坐标,作为屏幕灯点坐标;
步骤S504,根据坐标系转换矩阵和至少三个屏幕灯点坐标,获取第一LED箱体和第二LED箱体的交线方程;
步骤S506,基于交线方程中确定的交点,确定第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵。
进一步地,步骤S504具体包括:根据坐标系转换矩阵,得到至少三个屏幕灯点坐标在第一LED箱体所在平面中对应的至少三个灯点投影坐标;根据至少三个屏幕灯点坐标,得到第二LED箱体的平面方程;根据至少三个灯点投影坐标,得到第一LED箱体的平面方程;根据第一LED箱体的平面方程和第二LED箱体的平面方程,得到第一LED箱体和第二LED箱体的交线方程。
具体实现中,参考图1,可选用第二LED箱体对应的屏幕BCFE中的三个不共线的屏幕灯点的屏幕灯点坐标d1=[0,0,0,1]T、d2= [0,1,0,1]T和d3= [1,0,0,1]T,基于平面中的点求平面方程的方法,可根据这三个屏幕灯点坐标,求得第二LED箱体的平面方程。例如,可采用点法式的方法A(x-x0)+B(y-y0)+C(z-z0)+D=0求平面方程,将三个屏幕灯点坐标代入点法式平面方程中,得到三个关系式:
L1=(xd1-xd2)A+(yd1-yd2)B+(zd1-zd2)C+D
L2=(xd1-xd3)A+(yd1-yd3)B+(zd1-zd3)C+D
L3=(xd2-xd3)A+(yd2-yd3)B+(zd2-zd3)C+D
联立三个关系式,即可得到A、B和C三个系数的值,从而得到第二LED箱体的平面方程。
类似地,可根据上述关系式E1= E2*Tr-1,计算各个屏幕灯点坐标与坐标系转换矩阵的乘积,得到将三个屏幕灯点坐标转换到第一LED箱体对应的第一世界坐标系后的三个灯点投影坐标,根据三个灯点投影坐标得到第一LED箱体的平面方程。例如,若得到的第一LED箱体的平面方程为Ax+By+Cz+D=0,第二LED箱体的平面方程为Ex+Fy+Gz+H=0,进一步联立两个平面方程,作为第一LED箱体和第二LED箱体的交线方程。令x、y和z中的任一个变量取一个任意值,如令z=z0,则得到一个关于x和y二元一次方程组,求解该方程组,可得到变量x和y的值,记为x0和y0,由此得到第一LED箱体与第二LED箱体的一个交点为(x0,y0,z0)。
由于在世界坐标系中弧形屏在Z轴的坐标可以移动,所以Z可以任意取值,故可令第一LED箱体的平面方程中的Z=0,则交线方程中的Z也为0,再令Y=0,则可以确定交线上的一个交点(x,0,0)。进一步地,在得到交点后,即可基于该交点,确定第二LED箱体旋转变换前的第一平移变换矩阵和旋转变换后的平移变换矩阵。
本实施例中,通过第二LED箱体的至少三个屏幕灯点坐标,确定第二LED箱体的平面方程,通过第二LED箱体的至少三个屏幕灯点坐标在第一LED箱体所在平面对应的至少三个灯点投影坐标,确定第一LED箱体的平面方程,进而根据第一LED箱体的平面方程和第二LED箱体的平面方程,得到交线方程,并基于交线方程确定交点,基于该交点,确定第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵,以便于为第二LED箱体转换至第一LED箱体所在的平面提供转换条件。
在一个实施例中,上述步骤S308具体包括:获取第二LED箱体的各个屏幕灯点在世界坐标系中的坐标,作为待转换屏幕灯点坐标;计算第一平移变换矩阵、第二平移变换矩阵、旋转矩阵与待转换屏幕灯点坐标的乘积,得到第二LED箱体的各个屏幕灯点在第一LED箱体所在平面的对应坐标,将对应坐标的坐标点与第一LED箱体构成的屏幕作为弧形屏对应的平面屏。
本实施例中,通过计算第一平移变换矩阵、第二平移变换矩阵与待转换屏幕灯点坐标的乘积,得到第二LED箱体的各个待转换屏幕灯点坐标在第一LED箱体所在平面的对应坐标,由此实现了将第二LED箱体的各个待转换屏幕灯点坐标转换到第一LED箱体所在的平面上,使第一LED箱体和第二LED箱体处于同一个平面上,实现弧形屏到平面屏的转换,以便于进一步可采用常规屏的校正方法对弧形屏对应的平面屏进行校正,提高弧形屏的校正效果。
需要说明的是,上述实施例中提供的将第二LED箱体中的屏幕灯点坐标转换到第一LED箱体所在的平面上的方法,也可以应用于将第一LED箱体中的屏幕灯点坐标转换到第二LED箱体所在的平面上,还可以将第一LED箱体和第二LED箱体转换到与第一LED箱体所在平面和第二LED箱体所在平面均不同的第三个平面上,其目的是使得第一LED箱体和第二LED箱体处于同一个平面上,本申请对具体的转换方法不作具体限定。
应该理解的是,虽然图3和图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3和图5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种弧形屏校正装置,包括:相机外参获取模块602、转换矩阵确定模块604、变换矩阵确定模块606、平面屏获取模块608和屏幕校正模块610,其中:
相机外参获取模块602,用于获取弧形屏图像中第一LED箱体的第一相机外参和第二LED箱体的第二相机外参;
转换矩阵确定模块604,用于根据第一相机外参和第二相机外参,得到坐标系转换矩阵;坐标系转换矩阵用于将第二LED箱体的屏幕灯点在第二世界坐标系中的坐标转换到第一LED箱体对应的第一世界坐标系中;
变换矩阵确定模块606,用于根据坐标系转换矩阵,得到将第二LED箱体旋转到与第一LED箱体同一平面的旋转矩阵,以及第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵;
平面屏获取模块608,用于根据第一平移变换矩阵、第二平移变换矩阵和旋转矩阵,将第二LED箱体的屏幕灯点旋转到第一LED箱体所在的平面上,得到弧形屏对应的平面屏;
屏幕校正模块610,用于对平面屏进行屏幕校正,得到弧形屏对应的校正后弧形屏。
在一个实施例中,上述相机外参获取模块602,具体用于分别获取第一LED箱体中图像灯点的第一图像灯点坐标及对应的第一屏幕灯点坐标和相机内参,以及第二LED箱体中图像灯点的第二图像灯点坐标及对应的第二屏幕灯点坐标;其中,图像灯点坐标表示图像灯点在像素坐标系下的坐标;根据第一图像灯点坐标、第一屏幕灯点坐标和相机内参,得到第一LED箱体的第一相机外参;根据第二图像灯点坐标、第二屏幕灯点坐标和相机内参,得到第二LED箱体的第二相机外参。
在一个实施例中,上述转换矩阵确定模块604,具体用于获取第一相机外参的逆矩阵;获取第一相机外参的逆矩阵与第二相机外参的乘积,作为坐标系转换矩阵。
在一个实施例中,上述变换矩阵确定模块606,具体用于获取弧形屏图像中第二LED箱体的至少三个屏幕灯点在第二世界坐标系中的坐标,作为屏幕灯点坐标;根据坐标系转换矩阵和至少三个屏幕灯点坐标,获取第一LED箱体和第二LED箱体的交线方程;基于交线方程中确定的交点,确定第二LED箱体在旋转变换前的第一平移变换矩阵和旋转变换后的第二平移变换矩阵。
在一个实施例中,上述变换矩阵确定模块606,还用于根据坐标系转换矩阵,得到至少三个屏幕灯点坐标在第一LED箱体所在平面中对应的至少三个灯点投影坐标;根据至少三个屏幕灯点坐标,得到第二LED箱体的平面方程;根据至少三个灯点投影坐标,得到第一LED箱体的平面方程;根据第一LED箱体的平面方程和第二LED箱体的平面方程,得到第一LED箱体和第二LED箱体的交线方程。
在一个实施例中,上述变换矩阵确定模块606,还用于将坐标系转换矩阵中的平移向量作为零向量,得到初始旋转矩阵;获取初始旋转矩阵的逆矩阵,作为将第二LED箱体旋转到与第一LED箱体同一平面的旋转矩阵。
在一个实施例中,上述平面屏获取模块608,还用于获取第二LED箱体的各个屏幕灯点在世界坐标系中的坐标,作为待转换屏幕灯点坐标;计算第一平移变换矩阵、第二平移变换矩阵、旋转矩阵与待转换屏幕灯点坐标的乘积,得到第二LED箱体的各个屏幕灯点在第一LED箱体所在平面的对应坐标,将对应坐标的坐标点与第一LED箱体构成的屏幕作为弧形屏对应的平面屏。
需要说明的是,本申请的弧形屏校正装置与本申请的弧形屏校正方法一一对应,在上述弧形屏校正方法的实施例阐述的技术特征及其有益效果均适用于弧形屏校正装置的实施例中,具体内容可参见本申请方法实施例中的叙述,此处不再赘述,特此声明。
此外,上述弧形屏校正装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种弧形屏校正方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。