工业镜头论文 工业相机内,外参数的认识

小编 2024-11-27 行业应用 23 0

工业相机内、外参数的认识

1、相机内参数是与相机自身特性相关的参数,比如相机的焦距、像素大小等;

相机外参数是在世界坐标系中的参数,比如相机的位置、旋转方向等。

相机标定(或摄像机标定):

一句话就是世界坐标到像素坐标的映射,当然这个世界坐标是我们人为去定义的,标定就是已知标定控制点的世界坐标和像素坐标我们去解算这个映射关系,一旦这个关系解算出来了我们就可以由点的像素坐标去反推它的世界坐标,当然有了这个世界坐标,我们就可以进行测量等其他后续操作了~上述标定又被称作隐参数标定,因为它没有单独求出相机的内部参数,如相机焦虑,相机畸变系数等~一般来说如果你仅仅只是利用相机标定来进行一些比较简单的视觉测量的话,那么就没有必要单独标定出相机的内部参数了~至于相机内部参数如何解算,相关论文讲的很多~

在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数的过程就称之为相机标定(或摄像机标定)

相机标定的目的是确定相机的一些参数的值。通常,这些参数可以建立定标板确定的三维坐标系和相机图像坐标系的映射关系,换句话说,你可以用这些参数把一个三维空间中的点映射到图像空间,或者反过来。相机需要标定的参数通常分为内参和外参两部分。外参确定了相机在某个三维空间中的位置和朝向,至于内参,可以说是相机内部的参数(这好像是废话...笑),我觉得需要引入一点光学的东西来更好地解释一下。现有的相机都至少包含一个光学镜头和一个光电传感器(CCD或CMOS)。通过镜头,一个三维空间中的物体经常会被映射成一个倒立缩小的像(当然显微镜是放大的,不过常用的相机都是缩小的),被传感器感知到。

·

理想情况下,镜头的光轴(就是通过镜头中心垂直于传感器平面的直线)应该是穿过图像的正中间的,但是,实际由于安装精度的问题,总是存在误差,这种误差需要用内参来描述;

·

理想情况下,相机对x方向和y方向的尺寸的缩小比例是一样的,但实际上,镜头如果不是完美的圆,传感器上的像素如果不是完美的紧密排列的正方形,都可能会导致这两个方向的缩小比例不一致。内参中包含两个参数可以描述这两个方向的缩放比例,不仅可以将用像素数量来衡量的长度转换成三维空间中的用其它单位(比如米)来衡量的长度,也可以表示在x和y方向的尺度变换的不一致性;

·

理想情况下,镜头会将一个三维空间中的直线也映射成直线(即射影变换),但实际上,镜头无法这么完美,通过镜头映射之后,直线会变弯,所以需要相机的畸变参数来描述这种变形效果。

·

1).外参数矩阵。告诉你现实世界点(世界坐标)是怎样经过旋转和平移,然后落到另一个现实世界点(摄像机坐标)上。2).内参数矩阵。告诉你上述那个点在1的基础上,是如何继续经过摄像机的镜头、并通过针孔成像和电子转化而成为像素点的。3).畸变矩阵。告诉你为什么上面那个像素点并没有落在理论计算该落在的位置上,还tm产生了一定的偏移和变形!!!

2、摄像机内参、外参矩阵

在opencv的3D重建中(opencv中文网站中:照相机定标与三维场景重建),对摄像机的内参外参有讲解:

外参:摄像机的旋转平移属于外参,用于描述相机在静态场景下相机的运动,或者在相机固定时,运动物体的刚性运动。因此,在图像拼接或者三维重建中,就需要使用外参来求几幅图像之间的相对运动,从而将其注册到同一个坐标系下面来

内参:下面给出了内参矩阵,需要注意的是,真实的镜头还会有径向和切向畸变,而这些畸变是属于相机的内参的。 摄像机内参矩阵:

其中,fx,fy为焦距,一般情况下,二者相等,x0、y0为主点坐标(相对于成像平面),s为坐标轴倾斜参数,理想情况下为0

摄像机外参矩阵:包括旋转矩阵和平移矩阵 旋转矩阵和平移矩阵共同描述了如何把点从世界坐标系转换到摄像机坐标系

旋转矩阵:描述了世界坐标系的坐标轴相对于摄像机坐标轴的方向 平移矩阵:描述了在摄像机坐标系下,空间原点的位置

例:

<leftCameraMatrix type_id="opencv-matrix"> <rows>3</rows><cols>3</cols><dt>d</dt> <data> 7.3582167224957209e+002 0. 1.5950000000000000e+002

0. 7.3582167224957209e+002 1.1950000000000000e+002

0. 0. 1.

</data></leftCameraMatrix>

二、 一些疑问

Q1:标定时棋盘格的大小如何设定,对最后结果有没有影响?

A:当然有。在标定时,需要指定一个棋盘方格的长度,这个长度(一般以毫米为单位,如果需要更精确可以设为0.1毫米量级)与实际长度相同,标定得出的结果才能用于实际距离测量。一般如果尺寸设定准确的话,通过立体标定得出的Translation的向量的第一个分量Tx的绝对值就是左右摄像头的中心距。一般可以用这个来验证立体标定的准确度。比如我设定的棋盘格大小为270 (27mm)???,最终得出的Tx大小就是602.8 (60.28mm),相当精确。

Q2:通过立体标定得出的Tx符号为什么是负的?

A:这个其实我也不是很清楚。个人的解释是,立体标定得出的T向量指向是从右摄像头指向左摄像头(也就是Tx为负),而在OpenCV坐标系中,坐标的原点是在左摄像头的。因此,用作校准的时候,要把这个向量的三个分量符号都要换一下,最后求出的距离才会是正的。

但是这里还有一个问题,就是Learning OpenCV中Q的表达式,第四行第三列元素是-1/Tx,而在具体实践中,求出来的实际值是1/Tx。这里我和maxwellsdemon讨论下来的结果是,估计书上Q表达式里的这个负号就是为了抵消T向量的反方向所设的,但在实际写OpenCV代码的过程中,那位朋友却没有把这个负号加进去。(一家之言,求更详细的解释)

Q3:cvFindStereoCorrespondenceBM的输出结果好像不是以像素点为单位的视差?

A:在OpenCV2.0中,BM函数得出的结果是以16位符号数的形式的存储的,出于精度需要,所有的视差在输出时都扩大了16倍(2^4)。其具体代码表示如下:

dptr[y*dstep] = (short)(((ndisp - mind - 1 + mindisp)*256 + (d != 0 ? (p-n)*128/d : 0) + 15) >> 4);

可以看到,原始视差在左移8位(256)并且加上一个修正值之后又右移了4位,最终的结果就是左移4位

因此,在实际求距离时,cvReprojectTo3D出来的X/W,Y/W,Z/W都要乘以16 (也就是W除以16),才能得到正确的三维坐标信息

Q4:利用双摄像头进行测距的时候世界坐标的原点究竟在哪里?

A:世界坐标系的原点是左摄像头凸透镜的光心。

说起这个,就不得不提到针孔模型。如图3所示,针孔模型是凸透镜成像的一种简化模型。当物距足够远时(远大于两倍焦距),凸透镜成像可以看作是在焦距处的小孔成像。

图3. 针孔模型

在实际计算过程中,为了计算方便,我们将像平面翻转平移到针孔前,从而得到一种数学上更为简单的等价形式(方便相似三角形的计算),如图4所示。

图4. 针孔模型的数学等价形式

因此,对应图2就可以知道,世界坐标系原点就是左摄像头针孔模型的针孔,也就是左摄像头凸透镜的光心

Q5:f和d的单位是像素,那这个像素到底表示什么,它与毫米之间又是怎样换算的?

A:这个问题也与针孔模型相关。在针孔模型中,光线穿过针孔(也就是凸透镜中心)在焦距处上成像,因此,图3的像平面就是摄像头的CCD传感器的表面。每个CCD传感器都有一定的尺寸,也有一定的分辨率,这个就确定了毫米与像素点之间的转换关系。举个例子,CCD的尺寸是8mm X 6mm,分辨率是640X480,那么毫米与像素点之间的转换关系就是80pixel/mm。

在实际运用中,我们在数学上将这个像平面等效到小孔前(图4),这样就相当于将在透镜中心点之前假设了一块虚拟的CCD传感器。

Q6:为什么cvStereoRectify求出的Q矩阵cx, cy, f都与原来的不同?

A:这个在前文有提到过。在实际测量中,由于摄像头摆放的关系,左右摄像头的f, cx, cy都是不相同的。而为了使左右视图达到完全平行对准的理想形式从而达到数学上运算的方便,立体 校准所做的工作事实上就是在左右像重合区域最大的情况下,让两个摄像头光轴的前向平行,并且让左右摄像头的f, cx, cy相同。因此,Q矩阵中的值与两个instrinsic矩阵的值不一样就可以理解了。

技巧篇 机器视觉中如何为工业相机选择合适的镜头?

线阵相机

线阵CCD工业相机主要应用于工业、医疗、科研与安全领域的图像处理。在机器视觉领域中,线阵工业相机是一类特殊的视觉传感器。与面阵工业相机相比,它的传感器只有一行感光元素,因此使高扫描频率和高分辨率成为可能。

线阵工业相机的典型应用领域是检测连续的材料,例如金属、塑料、纸和纤维等。被检测的物体通常匀速运动 , 利用一台或多台工业相机对其逐行连续扫描 , 以达到对其整个表面均匀检测。可以对其图像一行一行进行处理 , 或者对由多行组成的面阵图像进行处理。另外线阵工业相机非常适合测量场合,这要归功于传感器的高分辨率 , 它可以准确测量到微米。

线阵工业相机,机顾名思义是呈“线”状的。 虽然也是二维图像,但极长,几K的长度,而宽度却只有几个像素的而已。

一般上只在两种情况下使用这种相机:

一、被测视野为细长的带状,多用于滚筒上检测的问题。

二、需要极大的视野或极高的精度。

若需要极大的视野或极高的精度的情况下,需要用激发装置多次激发相机,进行多次拍照,再将所拍下的多幅“条”形图像,合并成一张巨大的图。因此,用线阵型工业相机,必须用可以支持线阵型工业相机的采集卡。

线阵型工业相机价格贵,而且在大的视野或高的精度检测情况下,其检测速度也慢--一般工业相机的图像是 400K~1M,而合并后的图像有几个M这么大,速度自然就慢了。

面阵相机

工业相机像素是指这个工业相机总共有多少个感光晶片,通常用万个为单位表示,以矩阵排列,例如3百万像素、2百万像素、百万像素、40万像素。百万像素工业相机的像素矩阵为W*H=1000*1000。

工业相机分辨率,指一个像素表示实际物体的大小,um*um表示。数值越小,分辨率越高。

FOV是指工业相机实际拍摄的面积,以毫米×毫米表示。FOV是由像素多少和分辨率决定的。相同的相机,分辨率越大,它的FOV就越小。例如1K*1K的相机,分辨率为20um,则他的FOV=1K*20 ×1k*20=20mm ×20mm,如果用30um的分辨率,FOV=1K*30×1k*30=30mm×30mm。

在图像中,表现图像细节不是由像素多少决定的,而是由分辨率决定的。 分辨率是由选择的镜头焦距决定的,同一种相机,选用不同焦距的镜头,分辨率就不同。如果采用20um分辨率,对于1mm*0.5mm的零件,它总共占用像素1/0.02 ×0.5/0.02=50×25个像素,如果采用30um的分辨率,表示同一个元件,则有1/0.03×0.5/0.03=33×17个像素,显然20um的分辨率表现图像细节方面好过30um的分辨率。

既然像素的多少不决定图像的分辨率(清晰度),那么大像素工业相机有何好处呢?

答案只有一个:减少拍摄次数,提高测试速度。

1个是1百万像素,另1个是3百万像素,清晰度相同(分辨率均为20um),第1个相机的FOV是20mm×20mm=400平方mm,第二个相机的FOV是1200平方mm,拍摄同一个PCB,假设第1个相机要拍摄30个图像,第2个相机则只需拍摄10个图像就可以了。

对于面阵CCD来说,应用面较广,如面积、形状、尺寸、位置,甚至温度等的测量。 面阵CCD的优点是可以获取二维图像信息,测量图像直观。缺点是像元总数多,而每行的像元数一般较线阵少,帧幅率受到限制,而线阵CCD的优点是一维像元数可以做得很多,而总像元数角较面阵CCD工业相机少,而且像元尺寸比较灵活,帧幅数高,特别适用于一维动态目标的测量。

以线阵CCD在线测量线径为例,就在不少论文中有所介绍,但在涉及到图像处理时都是基于理想的条件下,而从实际工程应用的角度来讲,线阵CCD图像处理算法还是相当复杂的。

由于生产技术的制约,单个面阵CCD的面积很难达到一般工业测量对视场的需求。线阵CCD 的优点是分辨力高,价格低廉,如TCD1501C型线阵CCD,光敏像元数目为5 000,像元尺寸为7 μm×7 μm×7 μm(相邻像元中心距)该线阵CCD一维成像长度35 mm,可满足大多数测量视场的要求,但要用线阵CCD获取二维图像,必须配以扫描运动,而且为了能确定图像每一像素点在被测件上的对应位置,还必须配以光栅等器件以记录线阵CCD每一扫描行的坐标。

一般看来,这两方面的要求导致用线阵CCD获取图像有以下不足: 图像获取时间长,测量效率低;由于扫描运动及相应的位置反馈环节的存在,增加了系统复杂性和成本;图像精度可能受扫描运动精度的影响而降低,最终影响测量精度。

面阵相机和镜头选型

已知:被检测物体大小为A*B,要求能够分辨小于C,工作距为D 解答:

1、计算短边对应的像素数 E = B/C,相机长边和短边的像素数都要大于E;

2、像元尺寸 = 物体短边尺寸B / 所选相机的短边像素数;

3、放大倍率 = 所选相机芯片短边尺寸 / 相机短边的视野范围;

4、可分辨的物体精度 = 像元尺寸 / 放大倍率 (判断是否小于C);

5、物镜的焦距 = 工作距离 / (1+1 / 放大倍率) 单位:mm;

6、像面的分辨率要大于 1 / (2*0.1*放大倍率) 单位:lpmm ;

以上只针对镜头的主要参数进行计算选择,其他如畸变、景深环境等,可根据实际要求进行选择。

*针对速度和曝光时间的影响,物体是否有拖影

已知:确定每次检测的范围为80mm*60mm,200万像素 CCD 相机(1600*1200),相机或物体的运动速度为12m/min = 200mm/s 。

曝光时间计算:

1、曝光时间 < 长边视野范围 / (长边像素值 * 产品运动速度)

2、曝光时间 < 80 mm / 250 mm/s;

3. 曝光时间 < 0.00025s ;

总结:故曝光时间要小于 0.00025s ,图像才不会产生拖影。

线阵相机的选型

1、线阵相机的选择取决于传感器尺寸和线速度

2、确定传感器尺寸. (瑕疵或目标物最少有3 或 4 个像素)

3、例如: FOV = 12”, 最小检测尺寸= 0.005”(FOV/检测尺寸) x (最少像素个数)

12/.005 x 3 = 7200 pixels (8K 相机 或 2个4K相机)

4、为了确定相机的线速率,需要图像像素尺寸和产品速度

5、例如: FOV = 12”, 速度 20”/秒, 8k 相机图像像素尺寸= FOV/ 传感器尺寸

12/8192 = 0.001465”,需要的最低线速度: 20/0.001465 = 13,654

6、可以使用Piranha2 8k 18khz 相机 (或 2 Spyder3 4k 18khz 相机)

矩视智能机器视觉低代码平台是一个面向机器视觉应用的云端协同开发平台,始终秉承0成本、0代码、0门槛、0硬件的产品理念。

平台以人工智能技术为核心,在机器视觉应用开发环节,为开发者提供图像采集、图像标注、算法开发、算法封装和应用集成的一站式完整工具链。覆盖字符识别、缺陷检测、尺寸测量、目标定位 等上百项通用功能,致力于成为全球用户量最多,落地场景最广泛的机器视觉低代码平台。

更多功能正在开发中,最新信息会第一时间在官方公众号“矩视智能” 进行公布,欢迎大家关注

相关问答

犹他大学研发的超薄 镜头 有何优势?

尽管制造商一直在努力使智能手机更薄、更轻,但它们受到手机相机镜头的限制。然而现在,研究人员已经开发出一种平面透镜,其厚度是传统模型的千分之一,而重量却...

刘强东在美涉性侵女大学生一事,真相可能是什么?

真像是什么?大彪来给你分析分析。1.某国某政治力量惯用的奸商伎俩。大家联想一下最近的贸易战和某国某政治力量的出尔反尔的一副尖嘴猴腮的奸商样子,放眼全世...

翟天临 论文 造假事件你怎么看?会不会对他以后的演绎事业造成不可挽回的影响?

对于翟天临事件我的心情特别矛盾。一方面觉得学术不端的论文都能毕业,对于我们这些扒了几层皮,掉了无数头发才毕业的博士来说太不公平了!况且还有那么多考上博...

【物理小 论文 ;人眼为什么能看到物体800字左右】作业帮

[回答]在人类眼球的最外面,是一层无色透明的角膜,如同照相机的镜头。由于它经常受到泪水的冲洗,因此总显得水汪汪的,一尘不染。眼球的中央有个小圆孔叫瞳...

又见吸毒,娱乐圈的压力真的有这么大吗?

公众人物,压力肯定比一般人大,但是释放压力的方式却选的有点极端了,这完全是在碰触法律的底线。笑果文化的脱口秀演员卡姆涉嫌吸毒和容留他人吸毒被拒,面对...

在浴室搓澡遇到什么尴尬搞笑的事吗?

每年冬天的时候都要去几次澡堂子洗澡,但次数不多,因为自己健身,有时候健身完了就直接冲冲,但还是要去几次澡堂子搓澡,有次搓背我觉得特别的尴尬,我是没笑出...我...

《感染列岛》这部电影怎么样?

其实是不懂为什么这片子的评分这么低的。相比较流感的夸张以及大场面,感染列岛其实有点类似于纪录片的写实。不过在相似病毒传染病类的电影里都是可看的。不...

请问做旅游视频,文章,或图文要注意什么?也可以提出其他建议?

我就是旅游领域创作者,视频图文问答都已经做过了,目前已经入了门儿步入正轨,进过很多坑,也走过很多弯路,但是也积累了大量的宝贵的经验。针对你的问题,我将...一...

你们读过最甜的小说是什么?

简介记者:如果把傅总比喻成宠物,甄小姐觉得是什么?甄宝:德牧,外表高冷酷帅,其实温柔又忠诚。记者:傅总呢,你心中的甄小姐是?傅明时:德牧太太。简...--情节...

影视作品分析怎么写,只要模块就行?

背景...例如对张艺谋电影的分析要紧扣住时代背景,但也不必要都从思想意义角度分析,如巩俐在张艺谋电影中的形象塑造,张艺谋电影中的男性形象等,都是可以开掘...