社区
图形处理/算法
帖子详情
已知图像的畸变系数,如何求得图像中某一点的坐标对应的真实的没有畸变的坐标?
徐丶昌隆
2015-06-11 10:53:39
如题!
例:
fc = [504.23423 494.95124];
cc = [370.80744 303.13556];
alpha_c = 0.00620;
k = [-0.42077 0.26125 0.00232 0.00058 -0.08754];
此系数由Toolbox_calib得到。
...全文
566
3
打赏
收藏
已知图像的畸变系数,如何求得图像中某一点的坐标对应的真实的没有畸变的坐标?
如题! 例: fc = [504.23423 494.95124]; cc = [370.80744 303.13556]; alpha_c = 0.00620; k = [-0.42077 0.26125 0.00232 0.00058 -0.08754]; 此系数由Toolbox_calib得到。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
我也不知道我在做什么
2019-02-20
打赏
举报
回复
如果你已知该畸变坐标对应的三维点的话,可以直接进行理想的小孔投影得到未畸变图像坐标
徐丶昌隆
2015-06-11
打赏
举报
回复
自己先顶一个
zhoujk
2015-06-11
打赏
举报
回复
不同的畸变需要不同的公式和参数,找到这些内容以后,把方程解开,写成函数即可
matlab2.rar_imresize function_lena_site:www.pudn.com_
畸变
矫正_离散点插值
对“2.1.bmp”
图像
操作,将其放大至原来大小的1.5倍,采用双线性插值方法放大。 对“2.1.bmp”绕
图像
中
心逆时针旋转20度,采用双线性插值方法。此题目不要使用imresize和imrotate函数,自己写程序完成。 2.对
畸变
图像
进行矫正:”2.2.bmp”为
畸变
后的
图像
,
已知
畸变
后
图像
上的四个点(118,88)(90,140)(139,168)(168,116)
对应
畸变
前的点分别为为(98,98)(98,158)(158,158)(158,68),用
对应
点约束法求
畸变
前的
图像
。(题目
中
的
坐标
为行-列
坐标
;涉及到的插值用双线性插值法) 3.利用离散余弦变换函数(dct2和idct2)对“lena.bmp”做压缩,观察压缩效果。
相机标定 matlab
matlab 相机标定代码 摄像机标定(Camera calibration)简单来说是从世界
坐标
系换到
图像
坐标
系的过程,也就是求最终的投影矩阵的过程。 [1]基本的
坐标
系: 世界
坐标
系; 相机
坐标
系; 成像平面
坐标
系; 像素
坐标
系 [2]一般来说,标定的过程分为两个部分: 第一步是从世界
坐标
系转为相机
坐标
系,这一步是三维点到三维点的转换,包括R,t(相机外参,确定了相机在某个三维空间
中
的位置和朝向)等参数; 第二部是从相机
坐标
系转为成像平面
坐标
系(像素
坐标
系),这一步是三维点到二维点的转换,包括K(相机内参,是对相机物理特性的近似)等参数; 投影矩阵 : P=K [ R | t ] 是一个3×4矩阵,混合了内参和外参而成。 P=K[Rt] 二.基本知识介绍及 1、摄像机模型 Pinhole Camera模型如下图所示: 摄像机模型与标定 - 小企鹅 - 企鹅的博客 是一个小孔成像的模型,其
中
: [1]O点表示camera centre,即相机的
中
心点,也是相机
坐标
系的
中
心点; [2]z轴表示principal axis,即相机的主轴; [3]q点所在的平面表示image plane,即相机的像平面,也就是图片
坐标
系所在的二维平面; [4]O1点表示principal point,即主点,主轴与像平面相交的点; [5]O点到O1点的距离,也就是右边图
中
的f,即相机的焦距; [6]像平面上的x和y
坐标
轴是与相机
坐标
系上的X和Y
坐标
轴互相平行的; [7]相机
坐标
系是以X,Y,Z(大写)三个轴组成的且原点在O点,度量值为米(m); [8]像平面
坐标
系是以x,y(小写)两个轴组成的且原点在O1点,度量值为米(m); [9]像素
坐标
系一般指图片相对
坐标
系,在这里可以认为和像平面
坐标
系在一个平面上,不过原点是在图片的角上,而且度量值为像素的个数(pixel); 2、相机
坐标
系→成像平面
坐标
系 [1]以O点为原点建立摄像机
坐标
系。点Q(X,Y,Z)为摄像机
坐标
系空间
中
的
一点
,该点被光线投影到
图像
平面上的q(x,y,f)点。
图像
平面与光轴z轴垂直,和投影
中
心距离为f (f是相机的焦距)。按照三角比例关系可以得出: x/f = X/Z y/f = Y/Z ,即 x = fX/Z y = fY/Z 以
图像
平面的左上角或左下角为原点建立
坐标
系。假设像平面
坐标
系原点位于
图像
左下角,水平向右为u轴,垂直向上为v轴,均以像素为单位。 以
图像
平面与光轴的交点O1 为原点建立
坐标
系,水平向右为x轴,垂直向上为y轴。原点O1一般位于
图像
中
心处,O1在以像素为单位的
图像
坐标
系
中
的
坐标
为(u0, v0)。 像平面
坐标
系和像素
坐标
系虽然在同一个平面上,但是原点并不是同一个。 摄像机模型与标定 - 小企鹅 - 企鹅的博客 设每个像素的物理尺寸大小为 dx * dy (mm) ( 由于单个像素点投影在
图像
平面上是矩形而不是正方形,因此可能dx != dy),
图像
平面上某点在成像平面
坐标
系
中
的
坐标
为(x, y),在像素
坐标
系
中
的
坐标
为(u, v),则二者满足如下关系:[即(x, y)→(u, v)] u = x / dx + u0 v = y / dy + v0 用齐次
坐标
与矩阵形式表示为: 摄像机模型与标定 - 小企鹅 - 企鹅的博客 将等式两边都乘以点Q(X,Y,Z)
坐标
中
的Z可得: 摄像机模型与标定 - 小企鹅 - 企鹅的博客 将摄像机
坐标
系
中
的(1)式代入上式可得: 则右边第一个矩阵和第二个矩阵的乘积亦为摄像机的内参数矩阵(单位为像素),相乘后可得: (2) 和(1)式相比,此内参数矩阵
中
f/dx, f/dy, cx/dx+u0, cy/dy+v0 的单位均为像素。令内参数矩阵为K,则上式可写成: 摄像机模型与标定 - 小企鹅 - 企鹅的博客 (3) 三.相机内参K(与棋盘所在空间的3D几何相关) 在计算机视觉
中
,摄像机内参数矩阵 其
中
f 为摄像机的焦距,单位一般是mm;dx,dy 为像元尺寸;u0,v0 为
图像
中
心。 fx = f/dx, fy = f/dy,分别称为x轴和y轴上的归一化焦距. 为更好的理解,举个实例: 现以NiKon D700相机为例进行求解其内参数矩阵: 就算大家身边
没有
这款相机也无所谓,可以在网上百度一下,很方便的就知道其一些参数—— 焦距 f = 35mm 最高分辨率:4256×2832 传感器尺寸:36.0×23.9 mm 根据以上定义可以有: u0= 4256/2 = 2128 v0= 2832/2 = 1416 dx = 36.0/4256 dy = 23.9/2832 fx = f/dx = 4137.8 fy = f/dy = 4147.3 分辨率可以从显示分辨率与
图像
分辨率两个方向来分类。 [1]显示分辨率(屏幕分辨率)是屏幕
图像
的精密度,是指显示器所能显示的像素有多少。由于屏幕上的点、线和面都是由像素组成的, 显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也越多,所以分辨率是个非常重要的性能指标之一。 可以把整个
图像
想象成是一个大型的棋盘,而分辨率的表示方式就是所有经线和纬线交叉点的数目。 显示分辨率一定的情况下,显示屏越小
图像
越清晰,反之,显示屏大小固定时,显示分辨率越高
图像
越清晰。 [2]
图像
分辨率则是单位英寸
中
所包含的像素点数,其定义更趋近于分辨率本身的定义。 四.
畸变
参数(与点集如何
畸变
的2D几何相关。) 采用理想针孔模型,由于通过针孔的光线少,摄像机曝光太慢,在实际使用
中
均采用透镜,可以使
图像
生成迅速,但代价是引入了
畸变
。 有两种
畸变
对投影
图像
影响较大: 径向
畸变
和切向
畸变
。 1、径向
畸变
对某些透镜,光线在远离透镜
中
心的地方比靠近
中
心的地方更加弯曲,产生“筒形”或“鱼眼”现象,称为径向
畸变
。 一般来讲,成像仪
中
心的径向
畸变
为0,越向边缘移动,
畸变
越严重。不过径向
畸变
可以通过下面的泰勒级数展开式来校正: xcorrected = x(1+k1r2+k2r4+k3r6) ycorrected = y(1+k1r2+k2r4+k3r6) 这里(x, y)是
畸变
点在成像仪上的原始位置,r为该点距离成像仪
中
心的距离,(xcorrected ,ycorrected )是校正后的新位置。 对于一般的摄像机校正,通常使用泰勒级数
中
的前两项k1和k2就够了;对
畸变
很大的摄像机,比如鱼眼透镜,可以使用第三径向
畸变
项k3 2、切向
畸变
当成像仪被粘贴在摄像机的时候,会存在一定的误差,使得
图像
平面和透镜不完全平行,从而产生切向
畸变
。也就是说,如果一个矩形被投影到成像仪上时, 可能会变成一个梯形。切向
畸变
可以通过如下公式来校正: xcorrected = x + [ 2p1y + p2 (r2 + 2x2) ] ycorrected = y + [ 2p2x + p1 (r2 + 2y2) ] 这里(x, y)是
畸变
点在成像仪上的原始位置,r为该点距离成像仪
中
心的距离,(xcorrected ,ycorrected )是校正后的新位置。 五.摄像机的外参数 旋转向量(大小为1×3的矢量或旋转矩阵3×3)和平移向量(tx,ty,tz)。 旋转向量:旋转向量是旋转矩阵紧凑的变现形式,旋转向量为1×3的行矢量。 r就是旋转向量,旋转向量的方向是旋转轴 ,旋转向量的模为围绕旋转轴旋转的角度。 通过上面的公式,我们就可以求解出旋转矩阵R。同样的
已知
旋转矩阵,我们也可以通过下面的公式求解得到旋转向量: 。
数码相机定位问题研究
基于双目CCD立体测量系统标定技术被广泛用于交通监管
中
,该技术的核心是摄影测量。本文利用MATLAB对圆的边界提取,再用最小二乘法拟合椭圆曲线,并借助摄影测量基本公式建立二维模型
求得
靶标圆心像
坐标
。并对该模型作 检验,再利用针孔模型分别
求得
两部相机像平面
对应
于物平面的旋转向量 和平移向量 ,进而确定两相机的相对位置。 首先,我们假设:
已知
四点的物平面
坐标
和像平面
坐标
,借助摄影测量基本公式建立二维模型
求得
物平面与像平面的
对应
关系,但有 ... 八个未知数待定(将在第二问
中
给予求解)。 其次,我们根据A、B、C、D、E五个圆形靶标的成像情况利用MATLAB软件提取其边缘阈值。在此基础上利用最小二乘法拟合椭圆
求得
其
中
心
坐标
。在不考虑
畸变
影响的前提下,该
中
心
坐标
即为圆心的像
坐标
。任取A、B、C、D、E
中
四点代入模型一
中
,即可
求得
物平面和像平面的
对应
关系。 再次,我们在第三问
中
分别以A、B、C为研究对象求出其在模型一的条件下的圆心像
坐标
。利用 检验,比较拟合椭圆
中
心
坐标
与模型一
求得
结果的差异,在置信度 情况下,这三组结果无显著差异,从而检验了模型的精度及稳定性。 最后利用线性相机模型(针孔模型)确定世界
坐标
系和计算机数字
图像
坐标
的
对应
关系,从而分别
求得
两部摄像机的旋转矩阵 和平移向量 ,从而我们可以
求得
两相机相机
坐标
系间的关系:
二维目标视觉测量的双平行平面标定
针对平面目标的单目视觉测量问题,研究了基于双平面模型的相机标定的方法,该方法以多项式形式表达标定板平面
坐标
和
图像
坐标
的
对应
关系,多项式
系数
隐式包含了相机参数和
畸变
系数
,并通过最小二乘法进行估计。研究了利用多项式表达两平面
对应
关系时可能造成的暗区问题,提出利用
图像
坐标
平移解决该问题的方法。考虑到标定板的厚度,将标定板分别放置在两个与被测平面平行、高度不同的位置,并标定出两个标定板平面与像平面间的关系,在
已知
被测平面与两个标定平面间距离的条件下,利用透视投影原理计算被测目标的实际尺寸。实验结果验证了该方法的有效性。
论文研究-小波混沌神经网络模拟退火参数研究.pdf
共面摄像机标定就是采用平面式模板来确定摄像机内外参数的过程,在此过程
中
图像
像素和二维特征点是
已知
的。对于共面标定提出了一种简单及有效的方法去标定摄像机参数。即使用帧缓存
中
的计算机阵列
图像
直接来标定参数。首先采用预标定的方法标定出
图像
中
心位置,然后根据帧存
图像
坐标
和世界
坐标
之间的
对应
关系使用正交矩阵的约束条件来求解,在此算法
中
假设尺度因子为1,并且不考虑透镜
畸变
。所提出的算法用数字仿真
图像
及
真实
的
图像
检验。结果显示,所提出的算法具有较好的精度,是一种简单有效的标定方法。
图形处理/算法
19,469
社区成员
50,697
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章