Matlab 相机视角控制

2 篇文章 1 订阅
订阅专栏

视角参数示意图

The line of sight starts at the center of the plot box and points toward the camera.


视线方向

  • 定义:从plot box的中心到相机中心的方向向量.

  • 角度范围:

    • Az方位角: (-180°,180°], 官网没提,可以经过matlab实测确认.
    • EI仰角: [-90°,90°],与官网一致.

    根据示意图和matlab官网说明,可以看出Az的从[0,-1,0]为起始轴逆时针转动Az角度后再逆时针转动EI角度就可以得到视线方向.

Note: 这里定义的视线方向只适用于plot2和3等matlab传统axes, 实际在matlab近年提供的三维点云处理模块中,视线方向根据Target和camera position来定义, 可以自行验证

在Matlab点云处理中的相机视角控制参数

  1. View : 使用[Az, EI]来描述, 可用于控制整体的视角,不适合细节控制;

个人建议: 在点云处理中,不建议用View来控制相机的视线方向, 一旦进行更加复杂的视角变换后,matlab计算的View参数其实是有问题的. 可以验证只有在box center和target point重合的时候,计算才是对的. 使用view()函数控制视角之后可以看到,matlab会把box center与target point 重合.

  1. Projection: 分为正交投影orthographic和透视投影perspective两种投影方式.

个人理解:如果要根据相机轨迹和姿态来重现观测过程, 建议使用perspective会更好看一点; 如果是要绘制相机观测的整个过程, 还是建议orthographic. 这是我画的示意图, 左边是正交投影,中间是透视投影,右边是图片. [红色和绿色为相机,绿色为当前相机]

  1. CameraPosition: 在世界坐标系中的相机位置[x y z],可以参考最前面的示意图.
  2. CameraTarget: 在世界坐标系中的目标点位置[x y z],可以参考最前面的示意图.

Note:可以从示意图可以看出,CameraTarget 与 CameraPosition构成的向量为光轴方向. 因此可以通过这个向量来控制相机坐标系的深度轴向,一般为z轴. 值得注意的是, CameraTarget的三维点只需要设置在深度轴的正向方向. 我自己写了个一个光轴转换target位置的代码,仅供参考:

>optical_axis=[0;0;1];  %一般取为z轴,也可以换成其他轴, 相机坐标系
>focal_length=10000;  %理论上取(1,)的范围都会让target保持在深度轴正向上,但是取10000在matlab上显示更稳定而且好看一点
>target=focal_length*R(:,:,observe_id)'*optical_axis+t(:,observe_id);%利用x=R(X-t)来进行逆转换 
  1. CameraUpVector: 相机朝向上的方向向量[x y z],可以参考最前面的示意图.

Note:
1.相机的姿态要确定需要确定两根轴, 使用CameraTarget可以固定深度轴, 因此还需要CameraUpVector来固定另一个轴, 实际上就是确定相机坐标系的y或者x轴.
2.CameraUpVector的转换可以参考Target的转换代码部分,几乎一样.相机坐标系下一般取[0;-1;1]. 下图是我画的示意图.
在这里插入图片描述

  1. ViewAngle: 相机的FOV, [0,180)的范围

Note: 通过这个参数可以对3D点云进行类似放大缩小的功能, 官网说不会影响透视畸变的程度.

相机视角控制工具

这部分matlab官网写的很好了,蛮详细的,可以直接参考官网说明.

ps:第一次写blog文章,如果大家感兴趣,后面有时间发一些我自己的SLAM和多视图几何的总结

Matlab设置相机视线
m0_52339560的博客
02-02 1457
介绍了如何设置相机视线。解决了在使用matlab绘制三维像时,像显示为二维的问题。
matlab控制观察视角,MATLAB中的视角处理
weixin_39619270的博客
03-20 2582
view命令用来控制三维形的观察点和视角,它的使用格式如下:调用格式 说明view(az,el) 给三维空间形设置观察点的方位角az与仰角elview([az,el]) 同上...
相机成像原理及matlab仿真程序
08-27
相机成像原理及matlab仿真程序,本文详细介绍其原理、并根据其原理进行matlab仿真。
MATLAB - 绘视角调整
罗伯特祥的博客
05-15 8527
解决方案: 首先调整视到一个满意的位置,记录左下角的Az、EI值 程序中设置view(Az,EI)即可
SLAM相机位姿求解(李群李代数)
A_cainiao_A
07-12 1万+
前言slam中一个关键问题之一就是求解相机的位姿,人们找了很多以相机位姿为变量的误差函数,比如光度误差,重投影误差,3D几何误差等等,希望使得误差最小,进而求得比较准确的相机位姿。举一个重投影例子: T∗=min12∑i=0n||ui−1siKTPi||2(1) T^* = min \frac{1}{2} \sum_{i=0}^n || u_i - \frac{1}{s_i}KTP_i||^2 \
当前相机坐标到世界坐标系的平移向量估计方法
Christo的博客
12-20 1231
1,推导过程 假设XcX_cXc​为相机坐标系,XwX_wXw​为世界坐标系。 则有 Xc=RXw+tX_c = RX_w + tXc​=RXw​+t 两边同乘R−1R^{-1}R−1,消去RRR,则有 Xw=R−1Xc−R−1tX_w = R^{-1}X_c - R^{-1}tXw​=R−1Xc​−R−1t 因为求光心坐标,光心坐标相对于相机坐标为原点,所以Xc=0X_c = 0Xc​=0,故 Xw=−R−1tX_w = - R^{-1}tXw​=−R−1t 又因为RRR为正交矩阵,RT=R−1R^T
TOOLBOX_calib.zip_matlab单目标定_单目相机标定_多相机_多相机标定_相机标定
07-15
Matlab工具箱提供的多目标定功能能够处理更复杂的几何关系,确保不同视角下的像数据可以准确匹配。 工具箱中可能包含以下核心部分: 1. **标定板生成**:提供用于打印或制作标定板的模板,通常为棋盘格或圆点...
matlab版本相机标定库
05-02
在这个“matlab版本相机标定库”中,我们能够找到专门用于相机标定的工具箱——TOOLBOX_calib。 1. **相机模型** 相机标定的目标是建立一个数学模型来描述相机如何将三维世界转换为二维像。相机模型通常基于针孔...
基于matlab相机标定,Tsai 算法
04-17
本篇将详细讲解如何在MATLAB环境中实现基于Tsai算法的相机标定过程。 首先,我们需要理解Tsai算法的基本原理。该算法基于共线性方程,即一个三维点在不同视角下的投影应该位于同一像直线(光轴)上。Tsai的模型...
MATLAB相机待标定
08-25
总的来说,MATLAB相机标定流程是一个系统性的过程,涉及像处理、几何变换和优化算法等多个方面。这些待标定的像提供了进行标定所需的多样视角数据,通过MATLAB强大的功能,我们可以有效地完成相机标定任务,从而...
线性代数保研面试总结
Mikesuper_blog的博客
09-13 1719
线性代数 第一讲 行列式 1.二阶行列式结果是以两个向量为邻边的平行四边形。 2.三阶行列式是以三向量相邻的平行六面体的体积。 3.n阶行列式 Dn=∣a11a12...a1na21a22...a2na31......a3n............an1an2...ann∣D_n=\begin{vmatrix} \mathbf{a_{11}}& \mathbf{a_{12}}& \mathbf{...}& \mathbf{a_{1n}}\\ \mathbf{a_{21}}&amp
关于solvePNP的一点思考之二通过solvePnP求解相机位置
lircsszz的博客
04-18 4598
        在调用solvePnP函数之后会得到旋转向量rvec和平移向量tvec。确定相机位置就需要用到这两个向量。在介绍相机位置计算方法之前需要对solvePnP做简要介绍。与solvePnP函数有关的坐标系有三个,分别是世界坐标系(物体坐标系)、相机坐标系(以相机光心为原点的坐标系)、像素坐标系(像坐标系)。solvePnP就是利用物体在像素坐标系的坐标和在世界坐标系的坐标的对应关系来...
【计算机形2】实验1: 从[世界坐标系]到[相机坐标系]到[透视投影变化]及[隐藏面消除]的计算
Sengo的博客
02-27 1358
前言:本文记录计算机形2的第一个实验,如何从世界坐标系投影到2D平面上并做隐藏面消除。由于我看的材料(课件及资料)很多都是英文的,因此可能导致英文名词写成中文翻译得不对。从世界坐标系到相机坐标系:这里引用我在GW上这门课的教授James K. Hahn的课件。把世界坐标系转成相机坐标系(如1),就是把世界坐标系的点一个个转换成以相机(观察点)为原点的坐标系中所在的点。换句话说就是,在世界坐标系...
OpenGL学习脚印: 视变换(view transformation)
热门推荐
王定桥的专栏
06-03 2万+
写在前面 OpenGL中的坐标处理过程包括模型变换、视变换、投影变换、视口变换等内容,这个主题的内容有些多,因此分节学习,主题将分为5节内容来学习。上一节模型变换,本节学习模型变换的下一阶段——视变换。到目前位置,主要在2D下编写程序,学习了视变换后,我们可以看到3D应用的效果了。本节示例程序均可在我的github下载。通过本节可以了解到 视变换的概念 索引绘制立方体 LookAt矩阵的推导(对
OpenGl L6摄像机
lee2813的博客
10-19 167
一.摄像机 要定义一个摄像机,我们需要它在世界空间中的位置、观察的方向、一个指向它右测的向量以及一个指向它上方的向量。也就是创建了一个三个单位轴相互垂直的、以摄像机的位置为原点的坐标系。 摄像机位置 获取摄像机位置很简单。摄像机位置简单来说就是世界空间中一个指向摄像机位置的向量。 glm::vec3 cameraPos = glm::vec3(0.0f, 0.0f, 3.0f); 不要忘记正z轴是从屏幕指向你的,如果我们希望摄像机向后移动,我们就沿着z轴的正方向移动。 摄像机方向 下一个需要的
相机标定
weixin_44196785的博客
03-21 1127
像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。无论是在像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性。本实训主要介绍张正友相机标定方法,实训通过知识讲解与具体实践相结合的方式,帮助理解该相机标定法的基本原理与操作。 第1关:坐标变换及角点检测 import cv2 import numpy as np def ta
Mars3D开发基础学习:相机Camera及视角控制
木遥的专栏
12-30 4347
Camera相机控制了三维场景的视。有很多方法可以操作Camera,如旋转(rotate)、缩放(zoom)、平移(pan)和飞到目的地(flyTo)。同时也有鼠标和触摸事件用来处理与Camrea的交互,还有API来以编程方式操作摄像机
OpenGL(九) 摄像机
无提丶的博客
09-11 1102
摄像机 前面的教程中我们讨论了观察矩阵以及如何使用观察矩阵移动场景(我们向后移动了一点)。OpenGL本身没有摄像机(Camera)的概念,但我们可以通过把场景中的所有物体往相反方向移动的方式来模拟出摄像机,产生一种我们在移动的感觉,而不是场景在移动。 摄像机/观察空间 当我们讨论摄像机/观察空间(Camera/View Space)的时候,是在讨论以摄像机视角作为场景原点时场景中所有的顶点坐标...
qt3DScene选择对象功能的实现
danxibaoxxx的博客
06-09 1360
用C++实现的qt3DScene选点功能,QPickEvent.localIntersection #include "mainwindow.h" #include "ui_mainwindow.h" #include <QMouseEvent> #include <QTimer> #include <QCamera> #include <QCuboidMesh> #include <QCylinderMesh> #include &...
MATLAB相机标定系统实现与SIFT融合算法研究
“编程语言-基于MATLAB相机标定系统研究与实现.pdf” 本文主要探讨了基于MATLAB相机标定系统的研究与实现,涉及到计算机视觉相机标定、像处理和像匹配等多个重要领域。在计算机视觉中,相机标定是获取真实...
写文章

热门文章

  • Matlab 相机视角控制 2180
  • OpenMVG-GlobalSfM入门开发 1194
  • [阿Q精品原创]Matlab代码效率篇之原理分析及加速方案--持续更新 764

分类专栏

  • matlab视觉 2篇
  • matlab加速 1篇
  • matlab 1篇
  • openMVG_开发笔记 1篇
  • GlobalSfM开发 1篇
  • 三维视觉计算 1篇

最新评论

  • Matlab 相机视角控制

    weixin_62747082: 相机拍出来的图片尺寸固定吗,还是可以设置。

  • OpenMVG-GlobalSfM入门开发

    艾尔普兰: 博主你好,我这两天也在写BAL转sfm_data的脚本,有问题想要请教一下。 我自己用了几个数据集,BA前的RMSE是60+像素,我查看了DBACC论文的实验部分,几个数据的初始误差都是个位数,请问博主计算的时候初始RMSE是多少? 还有一个问题是关于view和intrinsic的w和h,BAL是没有给出的,我稍微看了openMVG的代码,好像没有影响,但是代码看不全我也没办法完全确定,如果博主了解的话也麻烦回答一下。 谢谢!

大家在看

  • FreeRtos同步互斥与通信 359
  • MySQL练手题--周内每天销售情况(困难) 396
  • 基于Bagging的共享单车租赁预测研究(数据可换)(Python代码实现) 274
  • 【SCI复现】电力系统储能调峰、调频模型研究(Matlab代码实现) 134
  • 记一次ctf题解(rsa简单部分) 411

最新文章

  • [阿Q精品原创]Matlab代码效率篇之原理分析及加速方案--持续更新
  • OpenMVG-GlobalSfM入门开发
2021年2篇
2020年1篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SIPANGYIYOU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

天下网标王网站链接太长影响优化吗seo优化英文网站网站url如何优化网站做优化需要ftp吗南京 seo网站内部优化应城网站排名优化开发优化网站方法每饲云速捷出众福田区网站关键词优化快速关键词优化网站沈阳网站排名优化泰州公司网站优化网站整站优化人家是怎么做的网站所有标签优化东莞网站优化费用青浦网站优化哪里有广州网站seo优化排名甘肃网站排名优化公司商丘网站自然优化找哪家网站系统优化怎么写安全的网站优化推广合作企业网站优化苏州网站优化代理崇明区网站优化案例郁南网站seo优化公司前山镇网站seo优化律师网站优化公司报价湖北网站长尾关键词优化泊头网站优化报价汕头网站seo优化人员淮安网站关键词优化公司口碑好香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化