CN112419422B - 一种摄像头标定方法、装置、设备及存储介质 - Google Patents

一种摄像头标定方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112419422B
CN112419422B CN202011145136.3A CN202011145136A CN112419422B CN 112419422 B CN112419422 B CN 112419422B CN 202011145136 A CN202011145136 A CN 202011145136A CN 112419422 B CN112419422 B CN 112419422B
Authority
CN
China
Prior art keywords
code
actual
calibration
calibration plate
coding
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
CN202011145136.3A
Other languages
English (en)
Other versions
CN112419422A (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.)
Freetech Intelligent Systems Co Ltd
Original Assignee
Freetech Intelligent Systems Co Ltd
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 Freetech Intelligent Systems Co Ltd filed Critical Freetech Intelligent Systems Co Ltd
Priority to CN202011145136.3A priority Critical patent/CN112419422B/zh
Publication of CN112419422A publication Critical patent/CN112419422A/zh
Application granted granted Critical
Publication of CN112419422B publication Critical patent/CN112419422B/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
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image

Abstract

本发明公开了一种摄像头标定方法、装置、设备及存储介质,其中,方法包括:获取待处理的标定板图像;对待处理的标定板图像进行检测,得到检测出的矩形区域;基于矩形区域构建点阵坐标并编码,得到矩形区域的实际编码;判断编码库中是否存在与实际编码匹配的理论编码;若存在,获取并根据实际编码的实际位置和实际编码的理论位置计算摄像头外参的偏移角度。本发明在没有检测出全部编码图案时,仍可以高精度完成前视摄像头标定。

Description

一种摄像头标定方法、装置、设备及存储介质
技术领域
本发明涉及车辆驾驶辅助技术领域,具体涉及一种摄像头标定方法、装置、设备及存储介质。
背景技术
标定板(Calibration Target)在机器视觉、图像测量、摄影测量、三维重建等应用中,可用于校正镜头畸变。ADAS前视摄像头标定通常使用制作精度较高的标定板获取相机外参(航向角yaw、俯仰角pitch、翻滚角roll),结合特定的标定板检测算法和标定算法进行相机外参计算。标定板通常使用圆形标定板、方形标定板等。
现在比较成熟的ADAS前视摄像头标定算法为位置相关算法,即利用标定图案的物理位置关系及在相机成像下的位置关系来计算相机外参。该方法要求采集到完整的标定图像并检测出全部标定图案,如果只采集到部分标定图案或标定图案被遮挡,则外参标定失败,需要重新标定。
现有成熟的标定方案容易受到标定环境的影响,当标定板上灯光强度分布不均时,会导致标定算法不能精准的分割出标定图案,进而引入标定误差,更严重的会直接导致标定失败。
目前现有车辆下线进行车载相机标定时,通常采用很多圆形或方形的标定板,此方法对标定板精度要求较高且有一个圆形或方形图案被物体遮挡或有阴影时,都会影响标定的精度,严重时会造成车辆下线不合格。
现有的前视摄像头标定算法都要求检测出全部的标定图案(圆形或方形),如果有部分标定图案没有检测到,则此次标定就会失败。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明第一方面提出一种摄像头标定方法,包括:
获取待处理的标定板图像;所述标定板图像包括呈M行N列排布的标定单元图像,所述标定单元图像包括对编码信息进行编码后得到的编码图案,所述编码信息包括所述编码图案所在区域的ID;其中,M、N均为正整数;
对所述待处理的标定板图像进行检测,得到检测出的矩形区域;
基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码;
判断编码库中是否存在与所述实际编码匹配的理论编码;其中,所述实际编码与与之匹配的所述理论编码的汉明距离小于第一预设阈值;
当编码库中存在与所述实际编码匹配的所述理论编码时,获取并根据所述实际编码的实际位置和所述实际编码的理论位置计算摄像头外参的偏移角度;其中,所述摄像头外参包括航向角、俯仰角和翻滚角,所述实际编码的理论位置是假设所述摄像头外参的偏移角度都为零计算得到的。
进一步地,所述标定单元图像还包括第一填充区域和第二填充区域;
所述编码图案的每个顶点均与一个所述第一填充区域的角点唯一对应地连接;所述第二填充区域被构造为将所述编码图案与所述第一填充区域分开的连续或不连续区域;
所述第一填充区域的填充色与所述编码图案的前景色相同;所述第二填充区域的填充色与所述编码图案的背景色相同。
进一步地,所述编码图案包括二维码。
进一步地,所述对所述待处理的标定板图像进行检测,得到检测出的矩形区域,包括:
对所述待处理的标定板图像进行边缘检测,得到边缘检测结果;
基于所述边缘检测结果进行矩形区域检测,得到所述矩形区域。
进一步地,所述判断编码库中是否存在与所述实际编码匹配的理论编码之后,还包括:当编码库中不存在与所述实际编码匹配的所述理论编码时,舍弃所述实际编码对应的所述矩形区域;
和/或,
所述判断编码库中是否存在与所述实际编码匹配的理论编码之后,还包括:当编码库中存在与所述实际编码匹配的所述理论编码时,确定所述实际编码的ID为与之匹配的所述理论编码的ID;在所述实际编码对应的所述矩形区域被遮挡或有阴影时,输出所述实际编码的ID。
进一步地,所述基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码,还包括:
基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的第一编码;
对所述第一编码进行旋转操作,得到所述矩形区域的实际编码;所述实际编码包括所述第一编码以及第二编码、第三编码和第四编码中的一个或多个;其中,所述第一编码与所述第二编码的夹角为90°,所述第一编码与所述第三编码的夹角为180°,所述第一编码与所述第四编码的夹角为270°。
进一步地,所述编码信息还包括标定板信息;所述基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码之后,还包括:
解析所述实际编码以得到所述标定板信息;
获取输入的标定板参数;
根据所述标定板信息对所述标定板参数进行比对校验;
在校验结果不一致时,输出不匹配提示信息。
进一步地,所述基于所述矩形区域构建点阵坐标并编码之前,还包括:
获取所述矩形区域对应的所述编码图案的几何参数,所述几何参数包括角点、边长、周长和面积中的一个或多个;
将所述编码图案的几何参数与标准编码图案的几何参数进行比较;
在所述编码图案的几何参数与所述标准编码图案的几何参数的误差超出第二预设阈值时,删除所述编码图案。
进一步地,所述待处理的标定板图像为预处理后的标定板图像;所述获取待处理的标定板图像,包括:
获取原始的标定板图像;
对所述摄像头拍摄的标定板图像进行灰度化处理,得到标定板图像的灰度图;
对所述标定板图像的灰度图进行二值化处理,得到标定板图像的二值化图像;所述标定板图像的二值化图像即为所述预处理后的标定板图像。
进一步地,所述编码图案的前景色为黑色,所述编码图案的背景色为白色;或者,所述编码图案的前景色为白色,所述编码图案的背景色为黑色。
进一步地,所述标定图案铺满所述标定面。
本发明第二方面提出一种摄像头标定装置,包括:
图像获取模块,用于获取待处理的标定板图像;所述标定板图像包括呈M行N列排布的标定单元图像,所述标定单元图像包括编码图案,所述编码图案存储有所述编码图案所在区域的ID;其中,M、N均为正整数;
图像检测模块,用于对所述待处理的标定板图像进行检测,得到检测出的矩形区域;
编码模块,用于基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码;
判断模块,用于判断编码库中是否存在与所述实际编码匹配的理论编码;其中,所述实际编码与与之匹配的所述理论编码的汉明距离小于第一预设阈值;
外参计算模块,用于当编码库中存在与所述实际编码匹配的所述理论编码时,获取并根据所述实际编码的实际位置和所述实际编码的理论位置计算摄像头外参的偏移角度;其中,所述摄像头外参包括航向角、俯仰角和翻滚角,所述实际编码的理论位置是假设所述摄像头外参的偏移角度都为零计算得到的。
本发明第三方面提出一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现本发明第二方面提出的所述的摄像头标定方法。
本发明第四方面提出一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现本发明第二方面提出的所述的摄像头标定方法。
实施本发明具有以下有益效果:
1、本发明实施例中检测出的编码图案包括所在区域的ID,每个编码图案的ID唯一,可以定位出该编码图案的实际位置信息,因此,在没有检测出全部编码图案时,仍可以高精度完成前视摄像头标定,鲁棒性高。
2、本发明实施例中可以检测出标定板每个区域的编码图案ID,当标定板上的编码图案被遮挡或者光照分布不均匀(有阴影)时,可以准确检测出哪行那列的编码图案被遮挡,以提醒工作人员。
3、本发明实施例中标定板的每个编码图案的尺寸都是相同的,检测编码图案时可以准确检测编码图案的四个角点、边长、周长及面积,当标定板上的灯光强度分布不均时,标定板检测算法可以把不能准确分割出来的编码图案进行补偿或删除,避免引入标定误差。
4、本发明实施例可以将标定板信息写在编码图案中,当检测出编码图案时,可以通过解析出的标定板信息来校验输入的标定板参数的准确性,来避免人员的误输入造成的误差。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1(a)是本发明实施例提供的车辆坐标系的示意图;
图1(b)是本发明实施例提供的车辆坐标系的示意图;
图2是本发明实施例提供的一种待处理的标定板图像;
图3是本发明实施例提供的摄像头标定方法的流程图;
图4是本发明实施例提供的一种标定单元图像;
图5(a)是本发明实施例提供的待处理的标定板图像;
图5(b)是本发明实施例提供的边缘检测结果示意图;
图5(c)是本发明实施例提供的矩形区域检测结果示意图;
图5(d)是本发明实施例提供点阵编码结果示意图;
图5(e)是本发明实施例提供点阵解码示意图;
图6是本发明实施例提供的一种标定单元图像;
图7是本发明实施例提供的一种标定单元图像;
图8是本发明实施例提供的一种标定单元图像;
图9是本发明实施例提供的基于标定板检测出的二维码ID示意图;
图10是本发明实施例提供的航向角偏移角度的计算示意图;
图11是本发明实施例提供的计算航向角偏移角度的流程图;
图12是本发明实施例提供的俯仰角偏移角度的计算示意图;
图13是本发明实施例提供的计算俯仰角偏移角度的流程图;
图14是本发明实施例提供的摄像头标定装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
ADAS前视摄像头标定是一种获取相机外参(航向角yaw、俯仰角pitch、翻滚角roll)的方法,此方法通常使用制作精度较高的标定板,结合特定的标定板检测算法和标定算法进行相机外参计算,并将摄像头外参固化到车辆ECU中。其中,摄像头外参包括航向角、俯仰角、翻滚角。
ADAS前视摄像头标定过程中主要涉及图像坐标系、相机坐标系及车辆坐标系等。这里的图像坐标系是指以图像左上方为原点的坐标系;相机坐标系是指以原点为摄像头的光心,x轴、y轴与图像的X、Y轴平行,垂直于图形平面的z轴为相机光轴的坐标系;图1(a)和图1(b)是本发明实施例提供的车辆坐标系的示意图,请参照图1(a)和图1(b),车辆坐标系是指以车辆后轴中心对应的路面为中心,x轴指向车辆正前方,y轴指向车辆左侧,z轴垂直向上的坐标系。
实施例
图2是本发明实施例提供的一种待处理的标定板图像,请参照图2,标定板图像包括呈M行N列排布的标定单元图像。其中,M、N均为正整数。
图3是本发明实施例提供的摄像头标定方法的流程图,具体的如图3所示,本发明实施例提出的一种摄像头标定方法,包括如下步骤:
S101:获取待处理的标定板图像;
图4是本发明实施例提供的一种标定单元图像,图5(a)是本发明实施例提供的原始的编码图案图像,请参照图4和5(a),标定单元图像包括对编码信息进行编码后得到的编码图案,编码信息包括编码图案所在区域的ID。
优选地,标定单元图像还包括第一填充区域和第二填充区域;
编码图案的每个顶点均与一个第一填充区域的角点唯一对应地连接;第二填充区域被构造为将编码图案与第一填充区域分开的连续或不连续区域;第一填充区域的填充色与编码图案的前景色相同;第二填充区域的填充色与编码图案的背景色相同,采用上述结构能够对标定单元图像中的编码图案与第一填充区域的连接点形成水平和纵向的梯度约束。
优选地,编码图案的前景色为黑色,编码图案的背景色为白色;可替代地,编码图案的前景色为白色,编码图案的背景色为黑色。
在一个实施例中,第二填充区域被构造为将编码图案与第一填充区域分开的不连续区域,请继续参照图4,图4示出的标定单元图像中编码图案由6*6的汉明码生成,编码图案是边长为12cm的正方形,编码图案的前景色为黑色,背景色为白色。第一填充区域是长度为12cm、宽度为3cm的黑色长方形。第二填充区域包括长度为12cm的白色正方向和长度为12cm、宽度为3cm的白色长方形。
图6、图7和图8均为本发明实施例提供的一种标定单元图像,请参照图6、图7和图8,在一个实施例中,第二填充区域被构造为将编码图案与第一填充区域分开的连续区域。
请继续参照图6,在一个示例中,标定面的编码图案由6*6的汉明码生成,编码图案是边长为12cm的正方形,编码图案的前景色为黑色,背景色为白色。第一填充区域是长度为6cm、宽度为3cm的黑色长方形。第二填充区域具体为长度为24cm的白色长方形与第一填充区域、编码图案两者的差集,其中,第一填充区域和编码区域均位于该白色长方形内部(即图6中示出的除第一填充区域和编码图案之外的白色区域)。
请继续参照图7,第一填充区域的形状还可以是花瓣状。
请继续参照图8,第一填充区域的形状还可以是三角形。
需要指出的是,上述第一填充区域、第二填充区域的形状、尺寸仅用于举例说明,不应视为对本发明实施例的限制,上述第一填充区域、第二填充区域包括但不限于上述举例说明的形状,其他符合上述编码图案、第一填充区域、第二填充区域三者之间的约束条件的形状也在本发明实施例的保护范围之内。
在一个实施例中,待处理的标定板图像可以是原始的标定板图像,例如车载前视摄像头拍摄的标定板图像。
在一个实施例中,待处理的标定板图像为预处理后的标定板图像;获取待处理的标定板图像,包括如下步骤:
获取原始的标定板图像;
对摄像头拍摄的标定板图像进行灰度化处理,得到标定板图像的灰度图;
对标定板图像的灰度图进行二值化处理,得到标定板图像的二值化图像;将标定板图像的二值化图像作为预处理后的标定板图像。
优选地,步骤S101还包括如下步骤:
利用图像分割模型提取原始的标定板图像/预处理后的标定板图像中的待标定区域;
基于待标定区域的分割结果,利用主成分分析法,可以计算出待标定区域的旋转角度,基于该旋转角度可将待标定区域旋转为正位。
为了便于提取待标定图案,可以将标定图案铺满标定面,这样检测到的标定面的边缘就是标定图案的边缘。
S102:对待处理的标定板图像进行检测,得到检测出的矩形区域;其中,步骤S102包括如下步骤:
对待处理的标定板图像进行边缘检测,得到边缘检测结果。
图5(b)是本发明实施例提供的边缘检测结果示意图,请参照图5(b),对待处理的标定板图像进行边缘检测,得到的边缘检测结果包括标定板图像的外轮廓线;其中,进行边缘检测采用的方法可以是Canny算子方法;
基于边缘检测结果进行矩形区域检测,得到矩形区域。
图5(c)是本发明实施例提供的矩形区域检测结果示意图,请参照图5(c),基于边缘检测结果进行矩形区域检测,得到检测出的矩形区域为图5(c)中白色矩形区域。
详细地,进行矩形区域检测具体包括如下步骤:利用多边形凸包寻找算法计算每一个多边形本身的凸包,并求凸包及其多边形的面积,将两个面积进行比较,当多边形面积比凸包大时将该多边形排除,这样可以有效的排除非凸多边形。对于满足条件的多边形,使用道格拉斯-普克算法(Douglas-Peucker)进行四边形逼近。
S103:基于矩形区域构建点阵坐标并编码,得到矩形区域的实际编码;
图5(d)是本发明实施例提供点阵编码结果示意图,请参照图5(d),基于矩形区域构建点阵坐标并编码包括如下步骤:在确定的四边形中明确点阵坐标,在灰度图像中提取点阵的最外围一圈的像素的平均值Value1,再提取点阵次外围一圈的像素的平均值Value2,Value1和Value2有明显的阈值分界线,确定阈值为Value1与Value2的均值,重新遍历整个点阵所有点坐标的像素值高于阈值的部分编码为0,低于阈值的部分编码为1。从第一行开始进行编码,直至整个点阵被编码完成,将编码排列起来会得到一串二进制码,每个四边形都能得到一串二进制码,该码表示该状态下二维码的编码,错误的四边形往往会生成错误的编码,错误编码无法在阈值范围内匹配到相应的ID,故可以轻松的排除错误编码的四边形,即环境噪声。
在一个实施例中,二维码存储有标定板信息;步骤S103之后还包括如下步骤:
解析实际编码以得到标定板信息;
获取输入的标定板参数;
根据标定板信息对标定板参数进行比对校验;
在校验结果不一致时,输出不匹配提示信息。
在一个实施例中,步骤S103之前还包括如下步骤:
获取矩形区域对应的编码图案的几何参数,几何参数包括角点、边长、周长和面积中的一个或多个;
将编码图案的几何参数与标准编码图案的几何参数进行比较;
在编码图案的几何参数与标准编码图案的几何参数的误差超出第二预设阈值时,删除编码图案。
S104:判断编码库中是否存在与实际编码匹配的理论编码;其中,实际编码与与之匹配的理论编码的汉明距离小于第一预设阈值;
由于基于矩形区域点阵坐标得到的编码会存在旋转情况,所以将得到的编码进行三次90°旋转共得到四个方向上的编码,再逐一与编码库进行比较,求解编码之间的汉明距离(Hamming Distance)。
汉明距离是表示两个二进制编码之间的相似程度的一种距离,是两个长二进制串之间位数不相同的个数。在信息论中,两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的个数。换句话说,它就是将一个字符串变换成另外一个字符串所需要替换的字符个数。例如:
1011101与1001001之间的汉明距离是2。
2143896与2233796之间的汉明距离是3。
"toned"与"roses"之间的汉明距离是3。
当编码与已知库里的某一编码的汉明距离小于给定的阈值时,就确定该编码的ID为与之匹配的编码库里的ID,并记录下该汉明距离。
图9是本发明实施例提供的基于标定板检测出的二维码ID示意图,图9示出了通过标定板检测算法对标定板进行检测得到的二维码ID的一个示例。
S105:当编码库中存在与实际编码匹配的理论编码时,获取并根据实际编码的实际位置和实际编码的理论位置计算摄像头外参的偏移角度;
其中,摄像头外参包括航向角、俯仰角和翻滚角,实际编码的理论位置是假设摄像头外参的偏移角度都为零计算得到的。
S106:当编码库中不存在与实际编码匹配的理论编码时,则确定该实际编码有误,舍弃实际编码对应的矩形区域/四边形。
在一个实施例中,S104之后还包括如下步骤:
当编码库中存在与实际编码匹配的理论编码时,确定实际编码的ID为与之匹配的理论编码的ID;
在实际编码对应的矩形区域被遮挡或有阴影时,输出实际编码的ID。图5(e)是本发明实施例提供点阵解码示意图,该图所示出的实际编码的ID为#0。
在一个实施例中,S104之后还包括如下步骤:当编码库中不存在与实际编码匹配的理论编码时,舍弃实际编码对应的矩形区域。
图10是本发明实施例提供的航向角偏移角度的计算示意图,图11是本发明实施例提供的计算航向角偏移角度的流程图,请参照图10和图11,根据实际编码的实际位置和实际编码的理论位置计算摄像头的航向角yaw的偏移角度包括如下步骤:
S201:根据左侧二维码的位置数据计算航向角yaw的角度;
在编码图案为二维码时,图中S为标定板长度大小的一半,d为摄像头到标定板的距离,offset为摄像头横向偏移量,I为最左侧二维码,r为最右侧二维码,α为最左侧二维码角度的实际值,α+β为最左侧二维码角度的理论值,β为所求的摄像头的航向角yaw的角度。
最左侧二维码在相机坐标系下的理论位置(yaw角度为零)为:CamXtheoretical=-Δx/d;
最左侧二维码在相机坐标系下为负值,所以对理论值加上负号:Δx=S-offset.
当航向角yaw角非常小时(通常,所有角度都会非常小),可以得到以下近似方程:
tan(α+β)=tan(α)+tan(β)=Δx/d
tan(α)=-CamX_Left
tan(β)=β
其中,CamX_Left为相机坐标系下最左侧二维码的实际值,将所检测到的所有二维码的均值作为CamX_Left值,例如,图1中在标定板最左侧有5个二维码,那么这5个二维码的均值就是CamX_Left值。
基于上述方程,可以得到航向角yaw角度:
yawleft=CamX_Leff-CamXtheoretical
S202:根据右侧二维码的位置数据计算航向角yaw的角度;
我们可以计算出最右侧二维码在相机坐标系下的理论位置(航向角yaw角度为零):
CamXtheoretical=Δx/d
Δx=S+offset
当航向角yaw角非常小时,我们可以得到以下近似方程:
tan(α-β)=tan(α)-tan(β)=Δx/d
tan(α)=CamX_Right
CamX_Right为相机坐标系下最右侧二维码的实际值。在标定板最右侧有5个二维码,将所检测到的所有二维码的均值作为CamX_Right值。
基于上述方程,可以得到航向角yaw角度:
yawright=CamX_Right-CamXtheoretical
S203:对左侧及右侧二维码计算的航向角yaw角度进行平均得到最终航向角yaw角度:
yaw=(yawleft+yawright)/2
图12是本发明实施例提供的俯仰角偏移角度的计算示意图,图13是本发明实施例提供的计算俯仰角偏移角度的流程图,请参照图12和图13,根据实际编码的实际位置和实际编码的理论位置计算摄像头的俯仰角pitch的偏移角度包括如下步骤:
S301:根据上侧二维码的位置数据计算俯仰角pitch角度;
图中S为标定板宽度大小的一半,d为摄像头到标定板的距离,offset为摄像头到标定板中心的距离,t为最上侧二维码,b为最下侧二维码,α为最上侧二维码角度的实际值,α+γ为最上侧二维码角度的理论值,γ为所求的俯仰角pitch角度。
我们可以计算出最上侧二维码在相机坐标系下的理论位置(俯仰角pitch角度为零):
CamYtheoretical=-Δy/d
最上侧二维码在相机坐标系下为负值,所以对理论值加上负号。
Δy=S-offset
当俯仰角pitch角非常小时(通常,所有角度都会非常小),我们可以得到以下近似方程:
tan(∝+γ)=tan(∝)+tan(γ)=Δy/d
tan(α)=-CamY_Top
tan(γ)=γ
CamY_Top为相机坐标系下最上侧二维码的实际值,在标定板最上侧有6个二维码,我们通常将所检测到的所有二维码的均值作为CamY_Top值。
基于上述方程,我们可以得到俯仰角pitch角度:
pitchtop=-(CamY_Top-CamYtheoretical)
S302:根据下侧二维码的位置数据计算俯仰角pitch角度;
可以计算出最下侧二维码在相机坐标系下的理论位置(俯仰角pitch角度为零):
CamYtheoretical=Δy/d
Δy=S+offset
当俯仰角pitch角非常小时,可以得到以下近似方程:
tan(∝-γ)=tan(∝)-tan(γ)=Δy/d
tan(α)=CamY_Bottom
CamY_Bottom为相机坐标系下最下侧二维码的实际值。请继续参照图2,在标定板最下侧有6个二维码,将所检测到的所有二维码的均值作为CamY_Bottom值。
基于上述方程,可以得到俯仰角pitch角度:
pitchbottom=-(CamYBottom-CamYtheoretical)
S303:对上侧及下侧二维码计算的俯仰角ptich进行平均得到最终俯仰角pitch角度:
pitch=(pitchtop+pitchbottom)/2
根据实际编码的实际位置和实际编码的理论位置计算摄像头的翻滚角roll的偏移角度包括如下步骤:
当翻滚角roll角度非常小时,可以得到以下近似方程:
tan(δ)=ΔY/X
ΔY=CamYLeft-CamYRight
δ为所求的翻滚角roll角度,CamYLeft及CamYRight为最左侧二维码和最右侧二维码在相机坐标系下的实际位置。请继续参照图1,在标定板有5行二维码时,将5行二维码的平均值作为最终ΔY值。
基于上述方程,可以得到翻滚角roll角度:roll=ΔY/ΔX。
需要说明的是,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。
图14是本发明实施例提供的摄像头标定装置的结构框图,请参照图14,本发明实施例还提出一种基于上述的摄像头标定板的摄像头标定装置,包括如下模块:
图像获取模块401,用于获取待处理的标定板图像;标定板图像包括呈M行N列排布的标定单元图像,标定单元图像包括对编码信息进行编码后得到的编码图案,编码信息包括编码图案所在区域的ID;其中,M、N均为正整数;
图像检测模块402,用于对待处理的标定板图像进行检测,得到检测出的矩形区域;
编码模块403,用于基于矩形区域构建点阵坐标并编码,得到矩形区域的实际编码;
判断模块404,用于判断编码库中是否存在与实际编码匹配的理论编码;其中,实际编码与与之匹配的理论编码的汉明距离小于第一预设阈值;
外参计算模块405,用于当编码库中存在与实际编码匹配的理论编码时,获取并根据实际编码的实际位置和实际编码的理论位置计算摄像头外参的偏移角度;其中,摄像头外参包括航向角、俯仰角和翻滚角,实际编码的理论位置是假设摄像头外参的偏移角度都为零计算得到的。
具体地,标定单元图像还包括第一填充区域和第二填充区域;
编码图案的每个顶点均与一个第一填充区域的角点唯一对应地连接;第二填充区域被构造为将编码图案与第一填充区域分开的连续或不连续区域;
第一填充区域的填充色与编码图案的前景色相同;第二填充区域的填充色与编码图案的背景色相同。
具体地,编码图案包括二维码。
具体地,图像检测模块402包括如下模块:
边缘检测模块,用于对待处理的标定板图像进行边缘检测,得到边缘检测结果;
矩形区域检测模块,用于基于边缘检测结果进行矩形区域检测,得到矩形区域。
可选地,该摄像头标定装置还包括筛选模块,用于当编码库中不存在与实际编码匹配的理论编码时,舍弃实际编码对应的矩形区域;
可选地,该摄像头标定装置还包括如下模块:
赋值模块,用于当编码库中存在与实际编码匹配的理论编码时,确定实际编码的ID为与之匹配的理论编码的ID;
遮挡反馈模块,用于在实际编码对应的矩形区域被遮挡或有阴影时,输出实际编码的ID。
优选地,编码模块403还包括如下模块:
初始编码模块,用于基于矩形区域构建点阵坐标并编码,得到矩形区域的第一编码;
编码调整模块,用于对第一编码进行旋转操作,得到矩形区域的实际编码;实际编码包括第一编码以及第二编码、第三编码和第四编码中的一个或多个;其中,第一编码与第二编码的夹角为90°,第一编码与第三编码的夹角为180°,第一编码与第四编码的夹角为270°。
可选地,编码信息还包括标定板信息;该摄像头标定装置还包括如下模块:
解码模块,用于得到矩形区域的实际编码之后,对实际编码进行解码以得到标定板信息;
参数获取模块,用于获取输入的标定板参数;
校验模块,用于根据标定板信息对标定板参数进行比对校验;
提示模块,用于在校验结果不一致时,输出不匹配提示信息。
优选地,该摄像头标定装置还包括如下模块:
几何参数获取模块,用于在基于矩形区域构建点阵坐标并编码之前,获取矩形区域对应的编码图案的几何参数,几何参数包括角点、边长、周长和面积中的一个或多个;
几何参数比较模块,用于将编码图案的几何参数与标准编码图案的几何参数进行比较;
环境噪声过滤模块,用于在编码图案的几何参数与标准编码图案的几何参数的误差超出第二预设阈值时,删除编码图案。
可选地,待处理的标定板图像为预处理后的标定板图像;图像获取模块401包括如下模块:
图像获取模块,用于获取原始的标定板图像;
图像灰度化模块,用于对摄像头拍摄的标定板图像进行灰度化处理,得到标定板图像的灰度图;
图像二值化模块,用于对标定板图像的灰度图进行二值化处理,得到标定板图像的二值化图像;标定板图像的二值化图像即为预处理后的标定板图像。
本发明的实施例还提供了一种设备,设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如方法实施例中的摄像头标定方法。
本发明的实施例还提供了一种存储介质,所述存储介质可设置于服务器之中以保存用于实现方法实施例中的摄像头标定方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的摄像头标定方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
由上述本发明提供的摄像头标定板、标定方法、装置、设备或存储介质的实施例可见,本发明实施例中在没有检测出全部标定图案时,仍可以高精度完成前视摄像头标定,鲁棒性高;当标定板上的标定图案被遮挡或者光照分布不均匀(有阴影)时,可以准确检测出哪些区域的编码图案被遮挡,以提醒工作人员;当标定板上的灯光强度分布不均时,标定板检测算法可以把不能准确分割出来的编码图案进行补偿或删除,避免引入标定误差;还可以将标定板信息写在编码图案中,当检测出编码图案时,可以通过解析出的标定板信息来校验输入的标定板参数的准确性,来避免人员的误输入造成的误差。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种摄像头标定方法,其特征在于,包括:
获取待处理的标定板图像;所述标定板图像包括呈M行N列排布的标定单元图像,所述标定单元图像包括对编码信息进行编码后得到的编码图案,所述编码信息包括所述编码图案所在区域的ID,所述编码图案的所述ID唯一;其中,M、N均为正整数;
对所述待处理的标定板图像进行检测,得到检测出的矩形区域;
基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码;
判断编码库中是否存在与所述实际编码匹配的理论编码;其中,所述实际编码与与之匹配的所述理论编码的汉明距离小于第一预设阈值;
若存在,确定所述实际编码的所述ID为与之匹配的所述理论编码的所述ID;获取并根据所述实际编码的实际位置和所述实际编码的理论位置计算摄像头外参的偏移角度;其中,所述摄像头外参包括航向角、俯仰角和翻滚角,所述实际编码的理论位置是假设所述摄像头外参的偏移角度都为零计算得到的。
2.根据权利要求1所述的摄像头标定方法,其特征在于,所述标定单元图像还包括第一填充区域和第二填充区域;
所述编码图案的每个顶点均与一个所述第一填充区域的角点唯一对应地连接;所述第二填充区域被构造为将所述编码图案与所述第一填充区域分开的连续或不连续区域;
所述第一填充区域的填充色与所述编码图案的前景色相同;所述第二填充区域的填充色与所述编码图案的背景色相同。
3.根据权利要求1所述的摄像头标定方法,其特征在于,所述编码图案包括二维码。
4.根据权利要求1所述的摄像头标定方法,其特征在于,所述对所述待处理的标定板图像进行检测,得到检测出的矩形区域,包括:
对所述待处理的标定板图像进行边缘检测,得到边缘检测结果;
基于所述边缘检测结果进行矩形区域检测,得到所述矩形区域。
5.根据权利要求1所述的摄像头标定方法,其特征在于,
所述判断编码库中是否存在与所述实际编码匹配的理论编码之后,还包括:当编码库中不存在与所述实际编码匹配的所述理论编码时,舍弃所述实际编码对应的所述矩形区域;
和/或,
所述判断编码库中是否存在与所述实际编码匹配的理论编码之后,还包括:当编码库中存在与所述实际编码匹配的所述理论编码,并且所述实际编码对应的所述矩形区域被遮挡或有阴影时,输出所述实际编码的ID。
6.根据权利要求1所述的摄像头标定方法,其特征在于,所述基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码,还包括:
基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的第一编码;
对所述第一编码进行旋转操作,得到所述矩形区域的实际编码;所述实际编码包括所述第一编码以及第二编码、第三编码和第四编码中的一个或多个;其中,所述第一编码与所述第二编码的夹角为90°,所述第一编码与所述第三编码的夹角为180°,所述第一编码与所述第四编码的夹角为270°。
7.根据权利要求1所述的摄像头标定方法,其特征在于,所述编码信息还包括标定板信息;所述基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码之后,还包括:
对所述实际编码进行解码以得到所述标定板信息;
获取输入的标定板参数;
根据所述标定板信息对所述标定板参数进行比对校验;
在校验结果不一致时,输出不匹配提示信息。
8.根据权利要求1所述的摄像头标定方法,其特征在于,所述基于所述矩形区域构建点阵坐标并编码之前,还包括:
获取所述矩形区域对应的所述编码图案的几何参数,所述几何参数包括角点、边长、周长和面积中的一个或多个;
将所述编码图案的几何参数与标准编码图案的几何参数进行比较;
在所述编码图案的几何参数与所述标准编码图案的几何参数的误差超出第二预设阈值时,删除所述编码图案。
9.根据权利要求1所述的摄像头标定方法,其特征在于,所述待处理的标定板图像为预处理后的标定板图像;所述获取待处理的标定板图像,包括:
获取原始的标定板图像;
对所述摄像头拍摄的标定板图像进行灰度化处理,得到标定板图像的灰度图;
对所述标定板图像的灰度图进行二值化处理,得到标定板图像的二值化图像;所述标定板图像的二值化图像即为所述预处理后的标定板图像。
10.一种摄像头标定装置,其特征在于,包括:
图像获取模块,用于获取待处理的标定板图像;所述标定板图像包括呈M行N列排布的标定单元图像,所述标定单元图像包括对编码信息进行编码后得到的编码图案,所述编码信息包括所述编码图案所在区域的ID,所述编码图案的所述ID唯一;其中,M、N均为正整数;
图像检测模块,用于对所述待处理的标定板图像进行检测,得到检测出的矩形区域;
编码模块,用于基于所述矩形区域构建点阵坐标并编码,得到所述矩形区域的实际编码;
判断模块,用于判断编码库中是否存在与所述实际编码匹配的理论编码;其中,所述实际编码与与之匹配的所述理论编码的汉明距离小于第一预设阈值;
外参计算模块,用于当编码库中存在与所述实际编码匹配的所述理论编码时,确定所述实际编码的所述ID为与之匹配的所述理论编码的所述ID;获取并根据所述实际编码的实际位置和所述实际编码的理论位置计算摄像头外参的偏移角度;其中,所述摄像头外参包括航向角、俯仰角和翻滚角,所述实际编码的理论位置是假设所述摄像头外参的偏移角度都为零计算得到的。
11.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-9任一项所述的摄像头标定方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1-9任一项所述的摄像头标定方法。
CN202011145136.3A 2020-10-23 2020-10-23 一种摄像头标定方法、装置、设备及存储介质 Active CN112419422B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011145136.3A CN112419422B (zh) 2020-10-23 2020-10-23 一种摄像头标定方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011145136.3A CN112419422B (zh) 2020-10-23 2020-10-23 一种摄像头标定方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112419422A CN112419422A (zh) 2021-02-26
CN112419422B true CN112419422B (zh) 2024-03-15

Family

ID=74840148

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011145136.3A Active CN112419422B (zh) 2020-10-23 2020-10-23 一种摄像头标定方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112419422B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113870357B (zh) * 2021-09-15 2022-08-30 福瑞泰克智能系统有限公司 摄像头外参标定方法、装置、感知设备和存储介质
CN113838145B (zh) * 2021-09-24 2024-04-30 重庆长安汽车股份有限公司 一种车载相机外参自动标定方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014130854A1 (en) * 2013-02-21 2014-08-28 Regents Of The Univesity Of Minnesota Extrinsic parameter calibration of a vision-aided inertial navigation system
CN104217429A (zh) * 2014-08-25 2014-12-17 太仓中科信息技术研究院 一种摄像机标定板的设计与检测方法
CN105894067A (zh) * 2016-02-06 2016-08-24 深圳市天朗时代科技有限公司 一种点阵二维码的编码和识读方法
CN109484399A (zh) * 2018-09-28 2019-03-19 福瑞泰克智能系统有限公司 一种车辆驾驶辅助装置及方法
CN109584356A (zh) * 2018-11-23 2019-04-05 东南大学 一种M-array图像自适应局部窗口解码的多视重构方法
CN110766758A (zh) * 2019-09-12 2020-02-07 浙江大华技术股份有限公司 标定方法、装置、系统及存储装置
CN111627075A (zh) * 2020-05-22 2020-09-04 上海黑眸智能科技有限责任公司 基于aruco码的摄像头外参标定方法、系统、终端及介质
CN111709999A (zh) * 2020-05-13 2020-09-25 深圳奥比中光科技有限公司 标定板、相机标定方法、装置、电子设备及相机系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014130854A1 (en) * 2013-02-21 2014-08-28 Regents Of The Univesity Of Minnesota Extrinsic parameter calibration of a vision-aided inertial navigation system
CN104217429A (zh) * 2014-08-25 2014-12-17 太仓中科信息技术研究院 一种摄像机标定板的设计与检测方法
CN105894067A (zh) * 2016-02-06 2016-08-24 深圳市天朗时代科技有限公司 一种点阵二维码的编码和识读方法
CN109484399A (zh) * 2018-09-28 2019-03-19 福瑞泰克智能系统有限公司 一种车辆驾驶辅助装置及方法
CN109584356A (zh) * 2018-11-23 2019-04-05 东南大学 一种M-array图像自适应局部窗口解码的多视重构方法
CN110766758A (zh) * 2019-09-12 2020-02-07 浙江大华技术股份有限公司 标定方法、装置、系统及存储装置
CN111709999A (zh) * 2020-05-13 2020-09-25 深圳奥比中光科技有限公司 标定板、相机标定方法、装置、电子设备及相机系统
CN111627075A (zh) * 2020-05-22 2020-09-04 上海黑眸智能科技有限责任公司 基于aruco码的摄像头外参标定方法、系统、终端及介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Novel Method for Estimating Pitch and Yaw of Rotating Projectiles Based on Dynamic Constraints;Liangliang An等;《Sensors》;1-21 *
单目视觉人工路标辅助INS的组合导航定位方法;李传立等;《传感技术学报》;68-73 *
基于ORB算法的双目视觉目标定位研究;王欢;杜鸿;;无线互联科技(05);104-106 *

Also Published As

Publication number Publication date
CN112419422A (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
CN112419422B (zh) 一种摄像头标定方法、装置、设备及存储介质
CN107993263B (zh) 环视系统自动标定方法、汽车、标定装置及存储介质
CN110580481B (zh) 一种基于epi的光场图像关键位置检测方法
CN109341626B (zh) 直线度计算方法、截面最大直径与最小直径之差计算方法
US9224198B2 (en) Analysis of the digital image of the surface of a tyre and processing of non-measurement points
CN110956169A (zh) 一种车牌识别方法、装置及电子设备
CN113129430B (zh) 基于双目结构光的水下三维重建方法
CN114419085A (zh) 建筑物轮廓线自动提取方法、装置、终端设备及存储介质
CN111507901A (zh) 基于航带gps及尺度不变约束的航拍图像拼接定位方法
CN112669280B (zh) 一种基于lsd算法的无人机倾斜航拍直角像控点目标检测方法
CN111047640A (zh) 容量瓶容积的校准方法、装置、终端设备及存储介质
CN111311497B (zh) 一种条形码图像角度校正方法和装置
CN110599588A (zh) 三维流场内粒子重构方法及装置、电子设备及存储介质
Wijenayake et al. Dual pseudorandom array technique for error correction and hole filling of color structured-light three-dimensional scanning
CN114612412A (zh) 三维点云数据的处理方法及其用途、电子设备、存储介质
IL184993A (en) Method for extracting edge in photogrammetry with subpixel accuracy
CN110223356A (zh) 一种基于能量生长的单目相机全自动标定方法
CN115546016B (zh) Pcb的2d和3d图像的采集和处理方法及相关装置
CN116958218A (zh) 一种基于标定板角点对齐的点云与图像配准方法及设备
CN116125489A (zh) 一种室内物体三维检测方法、计算机设备及存储介质
Wijenayake et al. Combination of color and binary pattern codification for an error correcting M-array technique
CN110619677B (zh) 三维流场内粒子重构方法及装置、电子设备及存储介质
CN114998496A (zh) 一种基于场景航拍图及稀疏点云的正射影像快速生成方法
CN110033506B (zh) 基于结构光的综采工作面三维重建系统和重建方法
CN113706631A (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
GR01 Patent grant
GR01 Patent grant