CN115018922A - 畸变参数标定方法、电子设备和计算机可读存储介质 - Google Patents
畸变参数标定方法、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN115018922A CN115018922A CN202210513570.5A CN202210513570A CN115018922A CN 115018922 A CN115018922 A CN 115018922A CN 202210513570 A CN202210513570 A CN 202210513570A CN 115018922 A CN115018922 A CN 115018922A
- Authority
- CN
- China
- Prior art keywords
- camera
- point
- distortion
- target
- homonymous
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Abstract
本申请实施例涉及机器视觉技术领域,公开了一种畸变参数标定方法、电子设备和计算机可读存储介质,该方法包括:获取相机在不同位置处对目标平面拍摄的N个结构光图像;其中,每个结构光图像中均包含完整的预设结构光图案;根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,保留匹配相似度大于预设匹配阈值的同名点为目标同名点;根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数,本申请实施例提供的畸变参数标定方法,使用深度相机自身投射的结构光图案即可实现高效、高精度的畸变参数标定,提升了深度相机在大畸变、广角场景下深度恢复的精度和鲁棒性。
Description
技术领域
本申请实施例涉及机器视觉技术领域,特别涉及一种畸变参数标定方法、电子设备和计算机可读存储介质。
背景技术
单目结构光技术近年来在消费电子、工业测量等领域大显身手,基于单目结构光技术的深度相机精度高、集成度高、体积小、成本低廉,其已成为深度恢复、3D解算的首选方案,单目结构光深度相机的核心包括一个结构光投射器和一个相机模组,结构光投射器用于向目标场景、目标物体投射结构光图案,相机模组则用于拍摄结构光图案在目标场景、目标物体上的投影,深度相机在深度恢复时对拍摄的投影图和预先标定的参考图进行匹配计算,计算出两幅图像中同名点之间的视差,再结合基线长度、焦距和畸变等参数完成3D解算。
在深度相机的评价指标中,绝对精度至关重要,能够表征深度相机深度恢复的准确度,绝对精度与相机的参数标定关系十分密切,行业内在进行相机的参数标定时,普遍是在相机出厂时使用标定物体进行标定,由于标定物体和工装卡具的限制,标定物体无法铺满深度相机的视场,边缘区域缺少标定信息,解算出的畸变参数欠拟合,这样标定的深度相机应用在大畸变、广角的使用场景下,绝对精度会产生较大误差,从而导致深度恢复的精度较低。
发明内容
本申请实施例的目的在于提供一种畸变参数标定方法、电子设备和计算机可读存储介质,使用深度相机自身投射的结构光图案即可实现高效、高精度的畸变参数标定,提升了深度相机在大畸变、广角场景下深度恢复的精度和鲁棒性。
为解决上述技术问题,本申请的实施例提供了一种畸变参数标定方法,包括以下步骤:获取相机在不同位置处对目标平面拍摄的N个结构光图像;其中,所述N为大于1的整数,每个所述结构光图像中均包含完整的预设结构光图案;根据预设的匹配算法分别计算所述N个结构光图像中各同名点对应的匹配相似度,保留所述匹配相似度大于预设匹配阈值的同名点为目标同名点;根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数。
本申请的实施例还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的畸变参数标定方法。
本申请的实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述的畸变参数标定方法。
本申请实施例提供的畸变参数标定方法、电子设备和计算机可读存储介质,服务器获取相机在不同位置处对目标平面拍摄的N个结构光图像,每个结构光图像中均包含完整的预设结构光图案,随即根据预设的匹配算法分别计算N个结构光图像中的各同名点对应的匹配相似度,保留各同名点中对应的匹配相似度大于预设匹配阈值的同名点为目标同名点,最后根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数,考虑到行业内对深度相机进行出厂标定时,由于标定物体和工装卡具等因素的限制,定物体无法铺满深度相机的视场,这样解算出的畸变参数欠拟合、不准确,这样标定的深度相机应用在大畸变、广角的使用场景下,绝对精度误差较大,导致深度恢复精度较低,而本申请的实施例,利用深度相机自身投射出的结构光图案拍摄若干结构光图像,基于若干结构光图像中的目标同名点,再结合相机出厂时标定的内部参数、使用的畸变模型重新标定,即仅使用深度相机自身投射的结构光图案即可实现高效、高精度的畸变参数标定,从而提升了深度相机在大畸变、广角场景下深度恢复的精度和鲁棒性。
另外,所述目标同名点的数量为B个,所述相机出厂标定时使用的畸变模型包含s个畸变参数,所述s为大于1的整数,所述根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数,包括:遍历各所述目标同名点,根据当前目标同名点的坐标、所述相机出厂时标定的内部参数和所述相机出厂标定时使用的畸变模型,构建所述当前目标同名点对应的方程;其中,所述方程包含s个未知的新畸变参数,所述B、所述N和所述s满足2*N*B=N*B+B+s;联立各所述同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数,畸变模型的作用实际上就是将畸变的图像矫正成无畸变的图像,而根据相似三角形原理,如果图像没有畸变的话,同名点在各图像上的点的纵坐标应该是相同的,因此畸变矫正后的同名点的纵坐标都是相同的,构建当前目标同名点对应的方程时,畸变校正后各点的横坐标都是未知的,由于本申请的目的是重新标定畸变参数,所述方程中的新畸变参数是未知的,在有N个结构光图像,B个同名点的情况下,共可以建立2*N*B个方程,共有N*B个点的校正后的横坐标未知,B个同名点的校正后的纵坐标未知,s个新畸变参数未知,因此本申请的实施例中规定2*N*B=N*B+B+s,从而可以解出方程组的精确解,求解出的s个新畸变参数。
另外,所述目标同名点的数量为M个,所述M、所述N和所述s满足2*N*M>N*M+M+s,所述联立各所述同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数,包括:联立各所述同名点对应的方程得到超定方程组;根据各所述同名点的坐标、所述相机出厂时标定的内部参数和所述相机出厂标定时使用的畸变模型,设立所述超定方程组对应的目标函数;根据所述目标函数和预设的迭代算法,对所述超定方程组进行迭代求解,得到求解出的s个新畸变参数,为了更精准地标定新畸变参数,本申请要求M、N和s满足2*N*M>N*M+M+s的关系,即构建的方程的数量大于未知数,联立这些方程即可得到超定方程组,而针对畸变场景构建的超定方程组往往是非线性的,本申请选用迭代法来求解,从而求解出更精准、更符合相机的真实情况的s个新畸变参数。
另外,所述根据预设的匹配算法分别计算所述N个结构光图像中各同名点对应的匹配相似度,保留所述匹配相似度大于预设匹配阈值的同名点为目标同名点,包括:在所述N个结构光图像中随机选取一个结构光图像作为基准图像;遍历各所述同名点,将当前同名点在所述基准图像上的点作为基准点,并将所述当前同名点在其他N-1个结构光图像中的点作为待匹配点;根据预设的匹配算法分别计算所述基准点与各所述待匹配点之间的匹配相似度;保留所述基准点与各所述待匹配点之间的匹配相似度均大于预设匹配阈值的同名点为目标同名点,考虑到当N的取值很大,即获取到的结构光图像很多时,计算同名点在N个结构光图像中两两之间的匹配相似度的计算量很大,比如N为10时,每个同名点都需要匹配计算45次,而本申请先在N个结构光图像中随机选定一张基准图像,计算其他图像与基准图像之间的匹配相似度即可,当N为10时,每个同名点只需要匹配计算9次,节约了计算资源,从而提升了畸变参数重新标定的效率。
另外,在所述重新标定所述相机的畸变参数,得到所述相机的新畸变参数之后,还包括:根据各所述目标同名点、所述畸变模型和所述新畸变参数,重新标定所述相机的内部参数,得到所述相机的新内部参数;其中,所述相机的新内部参数包括所述相机的新焦距和所述相机的新主点位置坐标,服务器重新标定相机的畸变参数后,可以固定这些科学准确且符合实际情况的新畸变参数,根据各目标同名点,重新标定相机的内部参数,得到相机的新内部参数,新内部参数更加适合大畸变、广角的场景。
另外,所述目标同名点的数量为Q个,所述相机出厂标定时使用的畸变模型包含s个畸变参数,所述s为大于1的整数,所述根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数,包括:遍历各所述目标同名点,根据当前目标同名点的坐标和所述相机出厂标定时使用的畸变模型,构建所述当前目标同名点对应的方程;其中,所述方程包含s个未知的新畸变参数和p个未知的相机的内部参数,所述Q、所述N和所述s满足2*N*Q=N*Q+Q+s+p;联立各所述目标同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数和求解出的p个新内部参数,本申请的实施例可以同时将相机的内部参数作为未知量,在重新标定时不仅重新标定相机的畸变参数,还同时重新标定相机的内部参数,未知量总共有N*Q+Q+s+p个,因此需保证方程组中的方程数量2*M*N=N*Q+Q+s+p。
另外,在所述获取相机在不同位置处对目标平面拍摄的N个结构光图像之前,还包括:检测所述相机的基线方向是否为x轴方向;若所述相机的基线方向不是x轴方向,则将所述相机的坐标系旋转为基线方向为x轴,且垂直于基线方向为y轴,本申请的技术方案需要保证相机的基线方向为x轴方向,在整个过程开始时先检测相机的基线方向是否为x轴方向,如果不是则及时对相机的坐标系进行旋转,保证畸变参数标定能够顺利进行。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
图1是本申请的一个实施例的畸变参数标定方法的流程图一;
图2是本申请的一个实施例中,根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,保留匹配相似度大于预设匹配阈值的同名点为目标同名点的流程图;
图3是本申请的一个实施例中,服务器根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数的流程图;
图4是根据本申请的一个实施例中提供的一种单目结构光相机的成像原理示意图;
图5是根据本申请的一个实施例中提供的一种畸变图像的示意图;
图6是根据本申请的一个实施例中,联立各目标同名点对应的方程得到方程组,求解方程组,得到求解出的s个新畸变参数的流程图;
图7是根据本申请的另一个实施例的畸变参数标定方法的流程图二;
图8是根据本申请的另一个实施例的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本申请的一个实施例涉及一种畸变参数标定方法,应用于电子设备,其中,电子设备可以为终端或服务器,本实施例以及以下各个实施例中电子设备以服务器为例进行说明,下面对本实施例的畸变参数标定方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
本实施例的畸变参数标定方法的具体流程可以如图1所示,包括:
步骤101,获取相机在不同位置处对目标平面拍摄的N个结构光图像。
具体而言,本申请的目的是对相机的畸变参数进行重新标定,即深度相机在出厂时已经基于预设的标定物体使用行业内普遍使用的标定方法完成了初步标定,比如使用棋盘格作为标定物用张正友标定法进行标定,相机在出厂时已经标定了内部参数和畸变参数,本实施例以及以下各个实施例中,将相机在出厂时标定的内部参数称为出厂内部参数,将相机在出厂时标定的畸变参数称为出厂畸变参数。
在具体实现中,服务器在对相机进行畸变参数重新标定时,需要先获取相机在不同位置处对目标平面拍摄的N个结构光图像,也就是在不同位置处通过相机对目标平面拍摄N个结构光图像,N为大于1的整数,服务器获取到的每一个结构光图像中均包含完整的预设结构光图案,即目标平面可以包络全画幅,其中,目标平面、不同位置、以及预设结构光图案均可以由本领域的技术人员根据实际需要进行设置。
在一个例子中,目标平面的反射率需要大于预设的反射率阈值,并且目标平面是漫反射的平面,即需要保证目标平面具有良好的反射率。
在一个例子中,相机处于预设的工作距离以内,通过不断变换相机的拍摄角度和相机与目标平面之间的距离的方式,来实现相机处于不同位置处对目标平面进行拍摄。
步骤102,根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,保留匹配相似度大于预设匹配阈值的同名点为目标同名点。
在具体实现中,服务器在获取到相机在不同位置处对目标平面拍摄的N个结构光图像后,可以在这N个结构光图像中找到所有同名点,同名点即预设结构光图案中的某一个点在不同结构光图像中对应的投影点,服务器在确定全部同名点后,可以根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,分别判断各同名点对应的匹配相似度是否大于预设匹配阈值,对应的匹配相似度大的同名点质量更好,对应的数据更加真实、准确,因此服务器保留对应的匹配相似度大于预设匹配阈值的同名点为目标同名点,丢弃对应的匹配相似度小于或等于预设匹配阈值的同名点,其中,预设的匹配算法可以由本领域的技术人员根据实际需要进行选择。
在一个例子中,预设的匹配算法可以为基于窗口的匹配算法,比如零均值归一化互相关匹配算法(zero-normalized-correlation-cost,简称:ZNCC)、绝对差之和匹配算法(Sum of absolute differences,简称:SAD)等。
在另一个例子中,预设的匹配算法可以为基于特征描述的同名点匹配算法,比如加速健壮特征匹配算法(Speed up robust features,简称:Surf)、尺度不变特征变换匹配算法(Scale invariant feature transformation,简称:SIFT)、以及定向快速旋转匹配算法(Oriented Fast and Rotated Brief,简称:ORB)等。
在一个例子中,N=2,即服务器获取到两个结构光图像,对于每一个同名点来说,都包括一个在第一个结构光图像中的第一像素点和在第二个结构光图像中的第二像素点,同名点对应的匹配相似度即第一像素点与第二像素点之间的匹配相似度。
步骤103,根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数。
具体而言,服务器在确定出目标同名点之后,可以根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数。
在一个例子中,服务器可以根据相机出厂标定时使用的畸变模型确定相机对应的畸变参数的个数,服务器获取各目标同名点的坐标,将各目标同名点的坐标输入至相机出厂标定时使用的畸变模型中,畸变模型中的畸变参数为出厂畸变参数,服务器根据预设的代价函数对畸变模型进行进一步训练,不断更新畸变模型的畸变参数,直到畸变模型收敛,服务器将畸变模型收敛时的畸变参数保存下来,即得到了相机的新畸变参数。
本实施例,服务器获取相机在不同位置处对目标平面拍摄的N个结构光图像,每个结构光图像中均包含完整的预设结构光图案,随即根据预设的匹配算法分别计算N个结构光图像中的各同名点对应的匹配相似度,保留各同名点中对应的匹配相似度大于预设匹配阈值的同名点为目标同名点,最后根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数,考虑到行业内对深度相机进行出厂标定时,由于标定物体和工装卡具等因素的限制,定物体无法铺满深度相机的视场,这样解算出的畸变参数欠拟合、不准确,这样标定的深度相机应用在大畸变、广角的使用场景下,绝对精度误差较大,导致深度恢复精度较低,而本申请的实施例,利用深度相机自身投射出的结构光图案拍摄若干结构光图像,基于若干结构光图像中的目标同名点,再结合相机出厂时标定的内部参数、使用的畸变模型重新标定,即仅使用深度相机自身投射的结构光图案即可实现高效、高精度的畸变参数标定,从而提升了深度相机在大畸变、广角场景下深度恢复的精度和鲁棒性。
在一个实施例中,服务器根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,保留匹配相似度大于预设匹配阈值的同名点为目标同名点,可以通过如图2所示的各步骤实现,具体包括:
步骤201,在N个结构光图像中随机选取一个结构光图像作为基准图像。
步骤202,遍历各同名点,将当前同名点在基准图像上的点作为基准点,并将当前同名点在其他N-1个结构光图像中的点作为待匹配点。
步骤203,根据预设的匹配算法分别计算基准点与各待匹配点之间的匹配相似度。
步骤204,保留基准点与各待匹配点之间的匹配相似度均大于预设匹配阈值的同名点为目标同名点。
在具体实现中,当N的取值很大,即获取到的结构光图像很多时,服务器计算同名点在N个结构光图像中两两之间的匹配相似度的计算量很大,比如N为10时,同名点在这10个结构光图像中对应有10个像素点,这10个像素点两两之间计算匹配相似度的话,每个同名点都需要匹配计算9+8+7+6+5+4+3+2+1=45次,浪费了过多的计算资源,因此本实施例先在N个结构光图像中随机选定一张作为基准图像,遍历各同名点,将当前同名点在基准图像上的点作为基准点,并将当前同名点在其他N-1个结构光图像中的点作为待匹配点,服务器只根据预设的匹配算法分别计算基准点与各待匹配点之间的匹配相似度,并判断基准点与各待匹配点之间的匹配相似度是否均大于预设匹配阈值,服务器保留基准点与各待匹配点之间的匹配相似度均大于预设匹配阈值的同名点为目标同名点,基于这种方案,当N为10时,每个同名点只需要匹配计算9次,节约了计算资源,从而提升了畸变参数重新标定的效率。
在一个实施例中,服务器在获取相机在不同位置处对目标平面拍摄的N个结构光图像之前,可以检测所述相机的基线方向是否为x轴方向,若相机的基线方向是x轴方向,则可以直接获取相机在不同位置处对目标平面拍摄的N个结构光图像;若相机的基线方向不是x轴方向,则服务器先将相机的坐标系旋转为基线方向为x轴,且垂直于基线方向为y轴,再获取相机在不同位置处对目标平面拍摄的N个结构光图像,保证畸变参数标定能够顺利进行。
在一个实施例中,目标同名点的数量为B个,相机出厂标定时使用的畸变模型包含s个畸变参数,s为大于1的整数,服务器根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数,可以通过如图3所示的各步骤实现,具体包括:
步骤301,遍历各目标同名点,根据当前目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,构建当前目标同名点对应的方程。
基于单目结构光深度相机的成像原理可知,目标同名点在各结构光图像中对应的点在相机坐标系中应该都处于一条直线上,这条直线与基线平行,如图3所示,点P和点Q即同名点在位置1对应的结构光图像和位置2对应的结构光图像中对应的点在相机坐标系中的位置,二者的纵坐标相同、横坐标不同,在大畸变、广角场景下,点P和点Q的实际位置都会发生畸变,如图4所示,点P和点Q在畸变图像中二者所在的直线不与基线平行,即纵坐标不同,畸变模型的作用实际上就是将畸变的图像矫正成无畸变的图像,虽然在畸变图像中点P与点Q的纵坐标不同,但在畸变矫正后的图像中,点P和点Q的纵坐标必然是相同的,即畸变矫正后的同名点在各图像上的点的纵坐标都是相同的。
本实施例中服务器对相机进行重标定时,可以只标定畸变参数,不标定内部参数,仍然使用相机的出厂内部参数即可,出厂内部参数为已知量,服务器遍历各目标同名点,根据当前目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,构建当前目标同名点对应的方程,方程中的未知量包含s个未知的新畸变参数,畸变矫正后的各点(各目标同名点在各矫正后的结构光图像中对应的点)的横坐标,以及B个同名点矫正后的纵坐标,未知量共N*B+B+s个,而对于B个目标同名点来说,服务器可以建立2*N*B个方程,只要B、N和s之间满足2*N*B=N*B+B+s,即可计算出方程的精确解。
在一个例子中,服务器根据当前目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,构建当前目标同名点对应的方程,可以通过以下公式实现:
Xdij=Gx[h,K|(Xij,Yj)]
Ydij=Gy[h,K|(Xij,Yj)]
式中,Xdij为第j个目标同名点在第i个结构光图像中的横坐标,Ydij为第j个目标同名点在第i个结构光图像中的纵坐标,Gx(·)为畸变模型在x轴方向上的表达式,Gy(·)为畸变模型在y轴方向上的表达式,h用于表征s个未知的新畸变参数,K用于表征相机出厂时标定的内部参数,Xij为第j个目标同名点在第i个矫正后的结构光图像中的横坐标,Yj为第j个目标同名点的矫正后的纵坐标。
在另一个例子中,相机出厂标定时使用的畸变模型包含2个畸变参数,即h1和h2,服务器根据当前目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,构建当前目标同名点对应的方程,可以通过以下公式实现:
式中,Xdij为第j个目标同名点在第i个结构光图像中的横坐标,Ydij为第j个目标同名点在第i个结构光图像中的纵坐标,h1为第一个新畸变参数,h2为第二个新畸变参数,(Cx,Cy)为相机出厂时标定的出厂主点位置的坐标,(Fx,Fy)为相机出厂时标定的出厂焦距,Xij为第j个目标同名点在第i个矫正后的结构光图像中的横坐标,Yj为第j个目标同名点的矫正后的纵坐标。
步骤302,联立各目标同名点对应的方程得到方程组,求解方程组,得到求解出的s个新畸变参数。
在具体实现中,服务器针对各目标同名点总计建立了2*N*B个方程,服务器联立这2*N*B个方程得到方程组,求解该方程组,即可得到求解出的s个新畸变参数。
本实施例,考虑到畸变模型的作用实际上就是将畸变的图像矫正成无畸变的图像,而根据相似三角形原理,如果图像没有畸变的话,同名点的纵坐标应该是相同的,因此畸变矫正后的同名点在各图像上的点的纵坐标都是相同的,构建当前目标同名点对应的方程时,畸变校正后各点的横坐标都是未知的,由于本申请的目的是重新标定畸变参数,所述方程中的新畸变参数是未知的,在有N个结构光图像,B个同名点的情况下,共可以建立2*N*B个方程,共有N*B个点的校正后的横坐标未知,B个同名点校正后的纵坐标未知,s个新畸变参数未知,因此本申请的实施例中规定2*N*B=N*B+B+s,从而可以解出方程组的精确解,求解出的s个新畸变参数。
在一个实施例中,目标同名点的数量为M个,相机出厂标定时使用的畸变模型包含s个畸变参数,s为大于1的整数,M、N和s满足2*N*M>N*M+M+s,服务器联立各目标同名点对应的方程得到方程组,求解方程组,得到求解出的s个新畸变参数,可以通过如图6所示的各步骤实现,具体包括:
步骤401,联立各目标同名点对应的方程得到超定方程组。
在具体实现中,服务器建立的方程往往是非线性的,联立的方程组自然也是非线性的方程组,更适合用最小二乘法、迭代法等方法求解,因此本实施例要求M、N和s之间满足2*N*M>N*M+M+s的关系,使得方程的数量大于未知量的数量,联立这些方程即可得到超定方程组。
步骤402,根据各目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,设立超定方程组对应的目标函数。
步骤403,根据目标函数和预设的迭代算法,对超定方程组进行迭代求解,得到求解出的s个新畸变参数。
具体而言,本申请的实施例选用迭代法求解超定方程组,服务器首先根据各目标同名点的坐标、相机出厂时标定的内部参数和相机出厂标定时使用的畸变模型,设立超定方程组对应的目标函数,再根据目标函数和预设的迭代算法,对超定方程组进行迭代求解,得到求解出的s个新畸变参数,这样求解出的s个新畸变参数更加准确。
在一个例子中,服务器设立的超定方程组对应的目标函数可以通过以下公式表示:
式中,Xdij为第j个目标同名点在第i个结构光图像中的横坐标,Ydij为第j个目标同名点在第i个结构光图像中的纵坐标,Gx(·)为畸变模型在x轴方向上的表达式,Gy(·)为畸变模型在y轴方向上的表达式,h用于表征s个未知的新畸变参数,K用于表征相机出厂时标定的内部参数,Xij为第j个目标同名点在第i个矫正后的结构光图像中的横坐标,Yj为第j个目标同名点的矫正后的纵坐标。
在另一个例子中,相机出厂标定时使用的畸变模型包含2个畸变参数,即h1和h2,服务器设立的超定方程组对应的目标函数可以通过以下公式表示:
式中,Xdij为第j个目标同名点在第i个结构光图像中的横坐标,Ydij为第j个目标同名点在第i个结构光图像中的纵坐标,h1为第一个新畸变参数,h2为第二个新畸变参数,(Cx,Cy)为相机出厂时标定的出厂主点位置的坐标,(Fx,Fy)为相机出厂时标定的出厂焦距,Xij为第j个目标同名点在第i个矫正后的结构光图像中的横坐标,Yj为第j个目标同名点的矫正后的纵坐标。
本实施例,为了更精准地标定新畸变参数,要求M、N和s之间满足2*N*M>N*M+M+s的关系,即构建的方程的数量大于未知数,联立这些方程即可得到超定方程组,而针对畸变场景构建的超定方程组往往是非线性的,本申请选用迭代法来求解,从而求解出更精准、更符合相机的真实情况的s个新畸变参数。
本申请的一个实施例涉及一种畸变参数标定方法,下面对本实施例的畸变参数标定方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须,本实施例的畸变参数标定方法的具体流程可以如图7所示,包括:
步骤501,获取相机在不同位置处对目标平面拍摄的N个结构光图像。
步骤502,根据预设的匹配算法分别计算N个结构光图像中各同名点对应的匹配相似度,保留匹配相似度大于预设匹配阈值的同名点为目标同名点。
步骤503,根据各目标同名点和相机出厂标定时使用的畸变模型,重新标定相机的畸变参数,得到相机的新畸变参数。
其中,步骤501至步骤503与步骤101至步骤103大致相同,此处不再赘述。
步骤504,根据各目标同名点、相机出厂标定时使用的畸变模型和得到的新畸变参数,重新标定相机的内部参数,得到相机的新内部参数。
在具体实现中,服务器在重新标定相机的畸变参数,得到相机的新畸变参数后,可以固定新畸变参数,根据各目标同名点、相机出厂标定时使用的畸变模型和得到的新畸变参数,重新标定相机的内部参数,得到相机的新内部参数,其中,相机的新内部参数包括相机的新焦距和相机的新主点位置坐标。
在一个例子中,畸变参数已重新标定完成,得到的新畸变参数是准确的、可靠的,服务器将所有新畸变参数做为已知量,将相机的内部参数作为未知量,在相机总共有p个内部参数的情况下,服务器只需要选择V个目标同名点,保证2*N*V≥N*V+V+p,服务器根据各这V个目标同名点的坐标、相机对应的畸变模型和所有新畸变参数,再次构建各目标同名点对应的方程,联立这2*N*V个方程得到方程组或超定方程组,对方程组或超定方程组求解,从而得到p个新内部参数。
本实施例,服务器重新标定相机的畸变参数后,可以固定这些科学准确且符合实际情况的新畸变参数,根据各目标同名点,重新标定相机的内部参数,得到相机的新内部参数,新内部参数更加适合大畸变、广角的场景。
在一个实施例中,目标同名点的数量为Q个,相机出厂标定时使用的畸变模型包含s个畸变参数,s为大于1的整数,相机对应的内部参数为p个,p为大于1的整数,服务器可以同时重新标定相机的内部参数和畸变参数,即将相机的内部参数和畸变参数都视为未知量,服务器遍历各目标同名点,根据当前目标同名点的坐标和相机出厂标定时使用的畸变模型,构建当前目标同名点对应的方程,方程包含s个未知的新畸变参数和p个未知的相机的内部参数,Q、N、s和p之间满足2*N*Q=N*Q+Q+s+p的关系,保证方程的数量等于未知量的数量,服务器联立这个2*N*Q个方程得到方程组,对该方程组求精确解,即可求解出s个新畸变参数和p个新内部参数。
在一个例子中,Q、N、s和p之间满足2*N*Q>N*Q+Q+s+p的关系,这样方程的数量大于未知量的数量,服务器联立这2*N*Q各方程可以得到超定方程组,服务器可以利用迭代算法对超定方程组迭代求解,从而得到求解出的s个新畸变参数和求解出的p个新内部参数。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本申请另一个实施例涉及一种电子设备,如图8所示,包括:至少一个处理器601;以及,与所述至少一个处理器601通信连接的存储器602;其中,所述存储器602存储有可被所述至少一个处理器601执行的指令,所述指令被所述至少一个处理器601执行,以使所述至少一个处理器601能够执行上述各实施例中的畸变参数标定方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本申请另一个实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,简称:ROM)、随机存取存储器(Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本申请的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (10)
1.一种畸变参数标定方法,其特征在于,包括:
获取相机在不同位置处对目标平面拍摄的N个结构光图像;其中,所述N为大于1的整数,每个所述结构光图像中均包含完整的预设结构光图案;
根据预设的匹配算法分别计算所述N个结构光图像中各同名点对应的匹配相似度,保留所述匹配相似度大于预设匹配阈值的同名点为目标同名点;
根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数。
2.根据权利要求1所述的畸变参数标定方法,其特征在于,所述根据预设的匹配算法分别计算所述N个结构光图像中各同名点对应的匹配相似度,保留所述匹配相似度大于预设匹配阈值的同名点为目标同名点,包括:
在所述N个结构光图像中随机选取一个结构光图像作为基准图像;
遍历各所述同名点,将当前同名点在所述基准图像上的点作为基准点,并将所述当前同名点在其他N-1个结构光图像中的点作为待匹配点;
根据预设的匹配算法分别计算所述基准点与各所述待匹配点之间的匹配相似度;
保留所述基准点与各所述待匹配点之间的匹配相似度均大于预设匹配阈值的同名点为目标同名点。
3.根据权利要求1所述的畸变参数标定方法,其特征在于,在所述获取相机在不同位置处对目标平面拍摄的N个结构光图像之前,还包括:
检测所述相机的基线方向是否为x轴方向;
若所述相机的基线方向不是x轴方向,则将所述相机的坐标系旋转为基线方向为x轴,且垂直于基线方向为y轴。
4.根据权利要求1至权利要求3中任一项所述的畸变参数标定方法,其特征在于,所述目标同名点的数量为B个,所述相机出厂标定时使用的畸变模型包含s个畸变参数,所述s为大于1的整数,所述根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数,包括:
遍历各所述目标同名点,根据当前目标同名点的坐标、所述相机出厂时标定的内部参数和所述相机出厂标定时使用的畸变模型,构建所述当前目标同名点对应的方程;其中,所述方程包含s个未知的新畸变参数,所述B、所述N和所述s满足2*N*B=N*B+B+s;
联立各所述目标同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数。
5.根据权利要求4所述的畸变参数标定方法,其特征在于,通过以下公式,根据当前目标同名点的坐标、所述相机出厂时标定的内部参数和所述相机出厂标定时使用的畸变模型,构建所述当前目标同名点对应的方程:
Xdij=Gx[h,K|(Xij,Yj)]
Ydij=Gy[h,K|(Xij,Yj)]
其中,Xdij为第j个目标同名点在第i个结构光图像中的横坐标,Ydij为第j个目标同名点在第i个结构光图像中的纵坐标,Gx(·)为所述畸变模型在x轴方向上的表达式,Gy(·)为所述畸变模型在y轴方向上的表达式,h用于表征所述s个未知的新畸变参数,K用于表征所述相机出厂时标定的内部参数,Xij为第j个目标同名点在第i个矫正后的结构光图像中的横坐标,Yj为第j个目标同名点的矫正后的纵坐标。
6.根据权利要求4所述的畸变参数标定方法,其特征在于,所述目标同名点的数量为M个,所述M、所述N和所述s满足2*N*M>N*M+M+s,所述联立各所述目标同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数,包括:
联立各所述目标同名点对应的方程得到超定方程组;
根据各所述目标同名点的坐标、所述相机出厂时标定的内部参数和所述相机出厂标定时使用的畸变模型,设立所述超定方程组对应的目标函数;
根据所述目标函数和预设的迭代算法,对所述超定方程组进行迭代求解,得到求解出的s个新畸变参数。
7.根据权利要求1至权利要求3中任一项所述的畸变参数标定方法,其特征在于,在所述重新标定所述相机的畸变参数,得到所述相机的新畸变参数之后,还包括:
根据各所述目标同名点、所述畸变模型和所述新畸变参数,重新标定所述相机的内部参数,得到所述相机的新内部参数;其中,所述相机的新内部参数包括所述相机的新焦距和所述相机的新主点位置坐标。
8.根据权利要求1至权利要求3中任一项所述的畸变参数标定方法,其特征在于,所述目标同名点的数量为Q个,所述相机出厂标定时使用的畸变模型包含s个畸变参数,所述s为大于1的整数,所述根据各所述目标同名点和所述相机出厂标定时使用的畸变模型,重新标定所述相机的畸变参数,得到所述相机的新畸变参数,包括:
遍历各所述目标同名点,根据当前目标同名点的坐标和所述相机出厂标定时使用的畸变模型,构建所述当前目标同名点对应的方程;其中,所述方程包含s个未知的新畸变参数和p个未知的相机的内部参数,所述Q、所述N、所述s和所述p满足2*N*Q=N*Q+Q+s+p;
联立各所述目标同名点对应的方程得到方程组,求解所述方程组,得到求解出的s个新畸变参数和求解出的p个新内部参数。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至8中任一所述的畸变参数标定方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的畸变参数标定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210513570.5A CN115018922A (zh) | 2022-05-11 | 2022-05-11 | 畸变参数标定方法、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210513570.5A CN115018922A (zh) | 2022-05-11 | 2022-05-11 | 畸变参数标定方法、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115018922A true CN115018922A (zh) | 2022-09-06 |
Family
ID=83068891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210513570.5A Pending CN115018922A (zh) | 2022-05-11 | 2022-05-11 | 畸变参数标定方法、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115018922A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117111046A (zh) * | 2023-10-25 | 2023-11-24 | 深圳市安思疆科技有限公司 | 畸变矫正方法、系统、设备及计算机可读存储介质 |
-
2022
- 2022-05-11 CN CN202210513570.5A patent/CN115018922A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117111046A (zh) * | 2023-10-25 | 2023-11-24 | 深圳市安思疆科技有限公司 | 畸变矫正方法、系统、设备及计算机可读存储介质 |
CN117111046B (zh) * | 2023-10-25 | 2024-01-12 | 深圳市安思疆科技有限公司 | 畸变矫正方法、系统、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107633536B (zh) | 一种基于二维平面模板的相机标定方法及系统 | |
CN111210468B (zh) | 一种图像深度信息获取方法及装置 | |
CN108510551B (zh) | 一种远距离大视场条件下相机参数的标定方法及系统 | |
US20150279016A1 (en) | Image processing method and apparatus for calibrating depth of depth sensor | |
CN109727278B (zh) | 一种机载LiDAR点云数据与航空影像的自动配准方法 | |
CN112991453A (zh) | 双目相机标定参数的校验方法、装置及电子设备 | |
CN111862180A (zh) | 一种相机组位姿获取方法、装置、存储介质及电子设备 | |
CN111524194A (zh) | 一种激光雷达和双目视觉相互融合的定位方法及终端 | |
CN111123242A (zh) | 一种基于激光雷达和相机的联合标定方法及计算机可读存储介质 | |
CN111538029A (zh) | 一种视觉与雷达融合的测量方法及终端 | |
CN112288826A (zh) | 双目相机的标定方法、装置及终端 | |
CN114299156A (zh) | 无重叠区域下多相机的标定与坐标统一方法 | |
CN113822920B (zh) | 结构光相机获取深度信息的方法、电子设备及存储介质 | |
CN115018922A (zh) | 畸变参数标定方法、电子设备和计算机可读存储介质 | |
Chatterjee et al. | A nonlinear Gauss–Seidel algorithm for noncoplanar and coplanar camera calibration with convergence analysis | |
CN111383264B (zh) | 一种定位方法、装置、终端及计算机存储介质 | |
CN117197245A (zh) | 一种位姿修复方法及装置 | |
CN112819900B (zh) | 一种智能立体摄影内方位、相对定向和畸变系数标定方法 | |
Tagoe et al. | Determination of the Interior Orientation Parameters of a Non-metric Digital Camera for Terrestrial Photogrammetric Applications | |
CN110232715B (zh) | 一种多深度相机自校准的方法、装置及系统 | |
CN107741220B (zh) | 影像处理方法、装置及电子设备 | |
CN109840894B (zh) | 视差图精修方法、装置及存储介质 | |
CN109919998B (zh) | 卫星姿态确定方法、装置和终端设备 | |
CN112305524A (zh) | 测距方法、测距系统和计算机可读存储介质 | |
CN111311690A (zh) | 一种深度相机的标定方法、装置、终端及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |