点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

文章导读

本文我们从泊车场景的感知需求出发探讨一些算法之外的东西,内容有些琐碎,聊点泊车感知的图像形式,感知层面的行泊一体化,相机选型中要注意哪些参数等。

1

前情回顾

上一篇我们聊了自动泊车功能中车位线识别的一些数据及算法,但是从数据的角度来说很多时候算法工程师需要用相机模组采集真实场景的图像而不是直接购买第三方或者下载开源数据集做训练。那么从数据源头出发我们需要根据算法的输入形式和感知的需求提出技术指标,筛选Sensor和镜头模组甚至进行定制化业务。

2

泊车感知的输入形式?

在目前L2~L4的方案中,摄像头作为核心传感器通常部署在车辆周围一周,甚至能有10多个摄像头配合感知周围环境。不同位置的摄像头用处也不同,前视+周视相机往往用于行车感知;鱼眼相机往往用于360环视和泊车感知;车内相机往往用于驾驶员监控。

扯得有点远了,回到主题我们说的是做泊车选用的摄像头问题。较为常规的做法是使用四颗鱼眼相机环视拼接然后在鸟瞰图上做停车位检测,障碍物检测等多任务:如下图所示:

鸟瞰图的输入形式保留了地面线条的几何特征,有利于车位线的检测。但是从上图中可以看出基于鸟瞰图的检测存在两个问题:

  • 感知的范围局限在车身周围15米以内;

  • 有高度的物体投影到鸟瞰图后形状扭曲;

另一种做法是使用每颗鱼眼相机输出的原始视图独立做感知,当然我们可以拿未做畸变校正的数据作为输入,也可以使用畸变校正后的数据作为输入。如下图所示:

通过原始视图可以看出车辆,树木等障碍物仍然保持物体较真实的特征,并且从图像中能够看到较远处的物体;但是地面的车位线,车道线等标志在鱼眼相机中无法维持直线等几何形态,给检测增加了一定难度。

从上面两种图像的输入形式对比出发,基于拼接的鸟瞰图适合做车位线检测,基于原始视图适合做障碍物检测,所以大多数做泊车感知时偏向于拆分成两个网络分别处理不同的任务。这种类似于松耦合的方案,两个不同的任务放在不同的网络中独立运算,然后将输出的感知结果进行过滤合并。

3

如何减少传感器的数量

由于传感器类型的不同,行车的感知和泊车的感知一般是分开来做的。但是从传感器简化的角度,行泊一体化将是未来趋势,那么势必就要考虑鱼眼和周视相机是否能统一的问题。

假如把周视广角相机和环视鱼眼相机合二为一了,接下来就是这些问题了:

  • 需要几颗摄像头,安装在什么位置?

  • 需要多大的视场角覆盖车身周围的环境?

  • 需要多大的分辨率用于检测远中近的物体?

  • 高分辨率的数据ISP能否处理,算法压力如何?

    ........

从硬件的角度可以定制传感器既具有鱼眼的超大FOV,又具有周视相机相对较高的PPD,能够兼顾80米甚至更远的障碍物。好奇的小伙伴肯定会问,焦距和视场角不是相互制约的吗?如下图所示:焦距越小,视场角越大。

但是挡不住模组厂商定制化业务的强大,只要有需求就有市场,有不少厂商把前视的多目摄像头整合在一个模组中用于感知。

从算法的角度需要考虑把周视相机做的的物体检测等功能和环视拼接后做的车位线检测等功能合并,这就回到上一小节提到的感知算法的图像输入形式了。功能上来说肯定是怎么做精度高就怎么来,分开多个网络各司其职完成任务,但是如果能统一输入形式,用一个模型多任务的处理所有任务,既简化了图像链路流程,又复用了一部分特征提取环节,小编觉得将是一个趋势,推荐都在原始视图上做感知功能,因为如果将一个障碍物检测的任务放在鸟瞰图上进行,那么越远处的立体物体扭曲就会越大。如图所示,在方圆5米内的车辆已然变形,何况60米处的障碍物。

4

影响摄像头性能的参数有哪些?

算法工程师需要根据功能需求提供技术要求给供应商选择合适的Sensor及镜头模组。那么有几个最常见的参数我们必须的了解:

分辨率:谈到摄像头,我们说的最多的就是分辨率是多少!通俗点说分辨率就是图像的大小,一般会用图像水平方向的像素点数 × 图像垂直方向的像素点数计算。比如业界说的标清的分辨率就是1280×720,也叫720P;高清的分辨率就是1920×1080,也叫1080P。

所以图像的分辨率越高,包含的像素越多,画面看起来就越清晰。描述分辨率的单位有以下几种:

  • dpi(点每英寸)

  • lpi(线每英寸)

  • ppi(像素每英寸)

  • ppd(像素每度)

其中ppd是算法工程师接触较多的一个指标,指视场角中的平均每 1° 夹角内填充的像素点的数量。如下图所示(图片来自于网络):

人眼观察周围环境时水平FOV是210°,垂直FOV是100°,当我们看手机时一般距离30~40cm,假设1°里面占据60个像素时,人眼是无法分辨像素颗粒度的。所以在VR等消费电子行业比较流行的说法是将60ppd的图像称为视网膜分辨率。

那么像素颗粒度是什么感觉?看看下图体会一下:

帧率:这是另一个常用的参数指标,一般指摄像头在某种色彩空间中最大分辨率下能够支持的最高视频捕获能力。

对于人眼来说,一般运动场景下能到达15fps的帧率已经是连续运动的效果了;但是对于感知算法在高速场景下还是需要摄像机满足30fps及以上的帧率。

相机的各个参数之间都有其关联性,比如上面说的ppd就和分辨率及视场角密切相关。那么帧率与分辨率和视场角有没有什么关系呢?

为了提高帧率,首先我们会考虑是否可以缩小视场角,如若不行,是否可以减少分辨率。在很多镜头的datasheet中会出现pixel binning mode。分辨率的下采样模式其实有两种:

  • Binning Mode

  • Skipping Mode

Binning Mode是将相邻的相同颜色单位电荷相加后输出一个信号。采用这种电荷合并的方式可以提供暗处对光感应的灵敏度。如下图所示(将四个相同颜色的B合并成Bs,其他雷同):

Skipping Mode是删除相邻的行列,起到隔行列抽样的效果。如下图所示:

动态范围:指图像最亮和最暗部分的相对比值。当在强光源照射下的高亮度区域及阴影、逆光等相对亮度较低的区域在图像中同时存在时,摄像机输出的图像会出现明亮区域因曝光过度成为白色,而黑暗区域因曝光不足成为黑色,严重影响图像质量。如果Sensor内的HDR达到一定的DB后,即可缓解此类情况。如下图所示:

还有好多比较重要的参数就不一一列举了,比如MTF:即调制传递函数,用于描述镜头的性能。

Distortion:物体通过光学系统后实际像高与理想像高的差值,离光轴越远的点畸变越大。

RI:即相对照度,用于描述光学系统成像面均衡性。

SNR:即信噪比,用于描述成像的抗干扰能力。

感光部件:CCD或者CMOS两种;

滤光片类型:RGGB、RCCB、RCCC等

这两个参数在之前的一篇文章里小编简单介绍过。

5

镜头的定制原则

首先考虑一下人是如何观察周围事物的,人的视力分为中心视力和周边视力:

  • 中心视力较为敏锐,在中央处非常小的区域内,集中了绝大多数的视锥细胞,负责颜色和细节的感知,只有在这一小块区域,人们才能真正看清楚东西的细节和色彩,但需要较亮的光线下才起作用;

  • 周边视力相对不敏锐,主要是视杆细胞,负责探知微弱光线,暗视下起主要作用。

在AI领域,摄像头一直被作为眼睛观察周围事物,所以从仿生学角度,也应该对镜头做相应定制化设计。当然有的同学会说,既然是物理元器件就可以人工堆性能,保持视场角不变的情况下,不断增加图像分辨率是否就可以了?

那么就存在分辨率过高,会导致图像文件太大、传输慢、耗流量、网速低的时候显示不出来等等问题,高分辨率可能会大大降低传输和运算速度,而这将是一个比“提高几乎看不出来的区别的细节”更严重的问题。

镜头的定制原则可以参考ADAS行业前视多目相机的目的,通常配一个HFOV~30°的长焦远视摄像头,一个中距离HFOV~52°主摄像头,一个近距离HFOV~120°的短焦广角摄像头。如果定制一款摄像头将不同角度内分布不同的数量的像素点是否可以将上述三目摄像机统一呢!根据需求测试测试PPD吧!

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

一文详解泊车感知的摄像头需求相关推荐

  1. 一文详解激光雷达感知方案

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 文章导读 本文对不同类型激光雷达的数据进行分析,并且针对机械式激光雷达和混合固态激光雷达视场角不同,在 ...

  2. 一文详解自动驾驶的动态驾驶任务(DDT) | 自动驾驶系列

    文章版权所有,未经授权请勿转载或使用 本系列上篇文章<一文详解自动驾驶的运行设计域(ODD)>解读了什么是自动驾驶ODD,本篇文章依据SAE J3016详细解读自动驾驶DDT.DDT fa ...

  3. 一文详解自动驾驶的运行设计域(ODD)| 自动驾驶系列 1

    一文详解自动驾驶的运行设计域(ODD)| \n 自动驾驶系列 2021年4月30日,SAE发布了第四版J3016<驾驶自动化分级>,这是即2014年1月16日.2016年9月30日.201 ...

  4. 一文详解JavaBean 看这篇就够了

    一文详解JavaBean 看这篇就够了 JavaBean的历史渊源 JavaBean的定义(通俗版) JavaBean应用 < jsp:useBean > < jsp:getProp ...

  5. 【卷积神经网络结构专题】一文详解AlexNet(附代码实现)

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]本文是卷积神经网络结构系列专题第二篇文章,前面我们已经介绍了第一个真正意义 ...

  6. 一文详解 YOLO 2 与 YOLO 9000 目标检测系统

    一文详解 YOLO 2 与 YOLO 9000 目标检测系统 from 雷锋网 雷锋网 AI 科技评论按:YOLO 是 Joseph Redmon 和 Ali Farhadi 等人于 2015 年提出 ...

  7. 一文详解决策树算法模型

    AI有道 一个有情怀的公众号 上文我们主要介绍了Adaptive Boosting.AdaBoost演算法通过调整每笔资料的权重,得到不同的hypotheses,然后将不同的hypothesis乘以不 ...

  8. 「软件项目管理」一文详解软件配置管理计划

    一文详解软件配置管理计划 前言 一.配置管理概述 1. 配置管理(SCM)定义 2. 软件配置项目(SCI) 3. 基线 4. 软件配置控制委员会(SCCB) 二.软件配置管理过程 1. 管理过程 2 ...

  9. 「软件项目管理」一文详解软件项目质量计划

    一文详解软件项目质量计划

最新文章

  1. go环境变量配置 (GOROOT和GOPATH)
  2. Enterprise Library: Data Access Application Block配置文件分析篇
  3. [USACO1.2]回文平方数 Palindromic Squares
  4. 使用K-S检验一个数列是否服从正态分布、两个数列是否服从相同的分布(转载+自己笔记)
  5. 优化技巧与理论(part1)
  6. iOS中XML解析汇总
  7. Linux服务器ftp+httpd部署
  8. webpack+vue实现项目
  9. 【OS学习笔记】三十六 保护模式十:通过中断发起任务切换----中断任务
  10. wordpress如何设置文章置顶以及区分置顶文章与普通文章
  11. 信息学奥赛一本通(1223:An Easy Problem)
  12. 媒体控件的播放暂停继续与停止 winform
  13. c语言设置bufsiz大小,c语言缓冲区有关问题及c++中的this指针
  14. 7 个不容错过的 VS Code 扩展
  15. 15.导入网表及status介绍[原创]
  16. vs C# 强制结束进程
  17. PWM如何控制直流电机
  18. ArcGIS使用模型构建器批量剪裁影像
  19. oracle英文日期转换为中文,excel中文日期与英文日期如何转换
  20. exchange创建邮箱组_在 Exchange 2016 中创建用户邮箱

热门文章

  1. 海贼王经典语录(转)
  2. 解决百度云主机(BCH)wordpress程序伪静态和后台打开404问题(创客互联)
  3. 王杰高中计算机老师,王杰 - 师资概况 - 南方科技大学
  4. 618有哪些数码产品值得入手?盘点值得入的数码好物推荐
  5. 提升STEAM教师能力素养提升路径
  6. uniapp 开发安卓App实现高德地图路线规划导航
  7. ajax:php数组数据类型
  8. 硬件基础知识---(8)如何选取 电容
  9. MLAT-Autoencoders---下篇-关键代码及结果展示(1)
  10. 机器学习为什么重要_机器学习:它是如何工作的; 更重要的是,为什么它起作用?...