• 0
  • 0
分享
  • 详解ADAS传感器(相机)标定数据采集方法——软件测试圈
  • 曼倩诙谐 2023-07-28 15:03:41 字数 1622 阅读 1510 收藏 0

  1. 基本原理

  相机外参标定,通过拍摄多角度棋盘格标定相机外参。 

  2. 外参标定板设计

  标定板分为垂直标定板和水平标定板,由于地面的水平标定板不容易被检测到,本文采用垂直标定板进行相机标定。 

  在标定过程中标定板需要和车身坐标成正交状态,也就是标定板垂直边需要和地平面垂直、水平边需要和水平面垂直,且与车身中轴线保持水平状态,这里推荐设计标定板支架,利用支架调整标定板位置,具体的标定板设计如下图所示,标定板通过底部支架保证上下边缘与地平面水平。

1-1.png

标定板与支架示意图

  3. 垂直标定板摆放 

  垂直标定板的摆放如下图所示,这里需要注意,标定板在标定相机时需要和自身朝向的车身中轴线保持垂直。标定板可以在保证垂直的条件下前后左右进行移动以便于相机拍摄到较为清晰完整的标定板图像。 

1-2.png

标定板摆放示意图

  为了便于固定标定板和车身的位置,我们首先需要确认车身处于水平面上,车辆所在地的地面不能有不平或者较明显的斜坡,在水平场景上我们采取以下步骤在地面上画出车身坐标系,具体操作如下:

  A 为了画出前后水平线,这里分别找到车辆前后对称点,如下图A红色点。

  B 通过铅锤在地面画下标记,分别连接前后两个点得到平行于车前后保险杠的两条线,如下图B红色线

  C 由于前后的点是对称的,此时可以通过两个点得到车身的中轴线和前后水平线的交点(就是前后对称点的中点),如下图C蓝色点,蓝色点相连接就是车身中轴线。

  D 分别从前后水平线的中点向左右延长相等的距离(比如延长1.5m),获取两侧的对称点,如下图D黄色点,黄色点和车身垂直轴距离相等。

1-3.png

  E 之后用水平激光仪画在延长对称点出垂直于前后水平线上的点,如图E 左侧图中浅蓝色线。 

  F 这里可以看作从车上前方向车身后方通过激光直角尺画垂直线,查看垂直线和后方水平线的交点,如图F所示,下方线上黄色的点是通过下方水平线延长得到的点,下方紫色的点是依据前方线和点通过直角尺画垂直线与后水平线的交点,我们需要保证这两个点之间的差值小于4cm,才能保证车身外侧的边框符合车身坐标系。 

1-4.png

  通过以上操作我们就得到了车身相关的外接长方形,只需要保证标定板和地面上的线平行就可以保证标定板和车身坐标系水平,又由于标定板通过支架保证了其与地面的水平关系,因此标定板可以正交与车身坐标系。

  4. 标定板外参图像拍摄 

  将标定板按照车身坐标系摆放后即可拍摄相对的外参图像,外参图像拍摄要求相如下:

  1) 标定板光照要均匀,防止标定板上存在阴影或者光斑反射对算法识别标定板 造成影响; 

  2) 由于相机存在畸变且安装存在一定的角度,当标定板存在一定角度朝向相机 时标定板棋盘格会有较大的形变,在识别算法中无法识别,所以要保证拍摄的标定板图像畸变不能太大,即拍摄过程中相机光轴和标定板法线夹角不能太大; 

  3) 每张拍摄的标定板图片要拍摄到完整的标定板;

  4) 标定板的多张图片加起来的范围需要尽可能覆盖相机的视野; 

  5) 标定板需要尽可能平展,不能有明显褶皱;   

  6) 黑白方格为方形,大小一致,方格尺寸不限,可在图像中清晰分辨即可,建 议30mm左右; 

  7) 棋盘格标定需要拍摄多张棋盘格图片,通常为20-30张; 

  具体拍摄效果如下图,下图中上面两幅图符合要求,下面两幅图左边的有一 定反光,右边的有阴影,会影响标定效果。 

1-5.png

  5. 标定图像后处理

  上述过程采集的图像作为输入给到感知组进行内外参算法,最后经过域控对摄像头图片进行拼接&对齐标定文件,流程如下图所示:

1-6.png

  6. 总结

  以上介绍的就是相机标定的一种基本方法,那么什么样的场景需要做相机的标定呢?总结来说,一切涉及到图像坐标转换的应用都需要做相机标定,例如汽车360度环视系统、3D目标检测等。

1-7.png

1-8.png


作者:狼图腾    

来源:http://www.51testing.com/html/39/n-7796539.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 利用空闲之余,写了第一个接口自动化测试demo, 通过读取execl中的接口测试用例,接口自动执行。(这里跟很多网上的接口自动化有点不同的是:无需再写代码,只需要从execl中增加用例,就可执行)。这是execl的模板:这个模板可以很好的管理项目的各个模块,看起来也是简洁,也是颇为喜欢的~~主要就是写了这几个类,完成了接口自动化的第一步:在尝试写这个demo时,最大的问题困扰的我是:每个请求的参数方式(请求参数和body参数)不一致,个数不一致。怎样能用简洁的方式实现? 最终解决的办法就是:在execl中增加参数类型判断:paramType, 如果是params,封装一个将json格式的字符串...
            0 1 2845
            分享
          •   软件测试在职业发展上,可以概括分为“管理”和“技术”两大类。另外,软件测试还可以在质量领域发展。  1. 软件测试在管理上的发展  软件测试管理是大家比较熟悉的软件测试职业发展路线之一,比较流行的职位包括测试组长、测试经理、测试代表、测试主管、测试总监、测试部长等。不同的公司中相同职位的工作范围可能略有不同,按照管理级别的高低,大致又可分为以下三级。  · 初级软件测试管理者:测试组长  一般由有两年左右工作经验的测试工程师担当。可能会管理会管理2~5名软件测试工程师。一般来说,测试组长不会负责整个产品,只是负责其中一个或多个特性。  测试组长并不是完全的管理者。从事的管理工作大多仅集中在...
            0 0 793
            分享
          • 今年 1 月 28 日,中国国家航天局对地观测与数据中心主任赵坚在新闻发布会上表示,“羲和号”卫星目前已经取得了一系列技术和科学实验成果,中国国家航天局将于今年择机发布。据央视新闻今日报道,其记者从国家航天局获悉,我国首颗太阳探测科学技术试验卫星“羲和号”成果今日正式发布,共创下 5 个国际首次。“羲和号”国际首次实现了超高指向精度、超高稳定度卫星平台技术在轨性能验证及工程应用。具体来说,“羲和号”通过大带宽、高精度磁浮作动器,实现了相机指向精度 10-4° 的超高指向精度、稳定度 10-5°/s 量级的超高稳定度。同时,“羲和号”完成了国际首次太阳空间 Hα 成像光谱仪在轨应用,并成功实现了...
            0 0 836
            分享
          • 我爬取了8483条测试工程师招聘需求,竟发现……软件测试要做些什么?软件测试需要掌握什么技能?软件测试有发展前景吗?……针对以上问题,谭叔写过文章介绍,也做过线上分享,你可以翻翻之前推送的文章。但我总觉得还差个东西——软件测试的职业环境。就我个人来说,我每隔一段时间(或半年、或一年)便会审视、总结软件测试职业,给自己的未来一个交代。最近,借金三银四招聘旺季的契机,我爬取了某招聘网站8483条测试工程师的用人需求,通过分析这些数据,跟大家讲一讲软件测试的职业环境。具体请看:数据爬取、数据清洗、数据分析数据爬取我不喜欢重复造轮子,在分析之前,我依旧在网上浏览,却发现并无多少博主通过分析招聘需求来研...
            14 14 3273
            分享
          • 软件测试是软件生存周期中必不可少的环节,软件的典型生存周期可以用下图来形容:软件测试的目的是尽可能早的发现软件缺陷并确保其得以修复,因此软件测试是提高软件质量的重要手段,大量的经验实践证明,软件测试越早参与到软件开发过程中,开发出来的软件质量相对越高,时间和物力也越经济。根据软件工程的基本理论,多模块程序的测试共包括以下4个层次:各阶段测试的具体内容会在以后章节具体介绍,下面介绍一下软件测试的经典技术。软件测试的经典技术分为黑盒测试和白盒测试技术。其中黑盒测试技术忽略程序内部结构,看不到程序的代码细节,只针对程序的功能进行测试,黑盒测试的方法有:具体方法会在以后章节中具体介绍,敬请期待。说完黑...
            11 11 2768
            分享
      • 51testing软件测试圈微信