当前位置:网站首页>【TA-霜狼_may-《百人计划》】1.2.3 MVP矩阵运算
【TA-霜狼_may-《百人计划》】1.2.3 MVP矩阵运算
2022-07-01 03:24:00 【zczplus】
【TA-霜狼_may-《百人计划》】1.2.2 矩阵计算
1.2.3 MVP矩阵计算
1.2.3.1 学习目的
- 将3D物体转化到2D平面
- 为各个空间的运用做准备
1.2.3.2 MVP矩阵的定义
MVP矩阵分别是:
- Model 模型
- View 观察
- Projection 投影
五个坐标:
顶点坐标起始于局部空间(Local Space),这里称为局部坐标(Local Coordinate),它再之后会变为世界坐标(World Coordinate),观察坐标(View Coordinate),裁剪坐标(Clip Coordinate),并最终以屏幕坐标(Screen Coordinate)的形式结束。
1.2.3.3 M:模型空间到世界空间
模型空间以自身为原点,世界空间有独立于模型本身的原点。
从模型空间变换到世界空间分为三个步骤(顺序不能变换):
- 缩放
- 旋转
- 平移
对应的依次进行矩阵变换得出变换矩阵。
M矩阵的表示(这里的旋转只包含了围绕y轴的旋转,是否需要添加有关其他轴的呢?):
1.2.3.4 V: 世界空间到视觉空间
视觉空间:以摄像机为中心的空间坐标系。
从世界空间变换到摄像机空间
↓
平移整个观察空间,使得摄像机原点和师姐坐标原点重合,并使得坐标轴重合
↓
摄像机在世界空间中是先旋转,再平移的
↓
为了让摄像机与世界坐标重合,采用逆变换
变换过程:
- 对世界空间平移
- 对世界空间进行旋转
- z分量取反(左手坐标系的缘故)
按照上述方法依次进行矩阵变换得出变换矩阵
V矩阵的矩阵表示:
1.2.3.5 P: 视觉空间到裁剪空间
注意:
- 不是真正的投影,为投影做准备
- 目的:判断顶点是否在课件范围内
- P矩阵:对x, y, z分量进行缩放,用w分量做范围值。如果x,y,z都在范围内,那么该点在裁剪空间内。
有两种投影方式: - 透视投影
- 正交投影
1.2.3.6 P:透视投影
P矩阵的矩阵表示:
透视投影各个参数的意义如下图:

利用上述P矩阵,得到的变换后的视锥体坐标如图:
由此可得,如果一个顶点在视锥体之内,那么它变换后的坐标必须满足:x,y,z均在-w到w的范围内。
1.2.3.7 P:正交投影
正交投影的相关示意图及其参数解释:
正交投影P矩阵的矩阵表示:
总结
模型空间、世界空间、视野空间的区别:
- 模型空间以模型自身为中心,坐标轴原点为坐标原点,通过缩放、旋转、平移**(Model矩阵)**将模型坐标(Model Coordinate)变换到世界坐标(World Coordinate)
- 世界空间是以整个场景作为中心,通过平移和旋转**(View 矩阵)**,以及z分量的取反将世界坐标(World Coordinate)转换到观察坐标(View Coordinate)
- 视野空间以摄像机作为原点中心,通过投影矩阵**(Projection 矩阵)**可将观察坐标(View Coordinate)转换到裁剪坐标(Clip Coordinate)
边栏推荐
- 208. implement trie (prefix tree)
- Binary tree god level traversal: Morris traversal
- Test function in pychram
- [daily training] 1175 Prime permutation
- Sort linked list (merge sort)
- Bilinear upsampling and f.upsample in pytorch_ bilinear
- 165. compare version numbers
- 168. Excel表列名称
- Jeecgboot output log, how to use @slf4j
- Cygwin的下载和安装配置
猜你喜欢

后台系统页面左边菜单按钮和右边内容的处理,后台系统页面出现双滚动

Sort linked list (merge sort)
![[小样本分割]论文解读Prior Guided Feature Enrichment Network for Few-Shot Segmentation](/img/b3/887d3fb64acbf3702814d32e2e6414.png)
[小样本分割]论文解读Prior Guided Feature Enrichment Network for Few-Shot Segmentation

5、【WebGIS实战】软件操作篇——服务发布及权限管理

The combination of applet container technology and IOT

Cookie&Session

衡量两个向量相似度的方法:余弦相似度、pytorch 求余弦相似度:torch.nn.CosineSimilarity(dim=1, eps=1e-08)

Idea plug-in backup table

IPv4 and IPv6, LAN and WAN, gateway, public IP and private IP, IP address, subnet mask, network segment, network number, host number, network address, host address, and IP segment / number - what does

pytorch nn. AdaptiveAvgPool2d(1)
随机推荐
[TA frost wolf \u may - "hundred people plan"] 2.1 color space
Leetcode: offer 59 - I. maximum value of sliding window
The combination of applet container technology and IOT
[深度学习]激活函数(Sigmoid等)、前向传播、反向传播和梯度优化;optimizer.zero_grad(), loss.backward(), optimizer.step()的作用及原理
[TA frost wolf _may - "hundred people plan"] 1.4 introduction to PC mobile phone graphics API
8. string conversion integer (ATOI)
ECMAScript 6.0
Thread data sharing and security -threadlocal
Future of NTF and trends in 2022
[small sample segmentation] interpretation of the paper: prior guided feature enrichment network for fee shot segmentation
Database DDL (data definition language) knowledge points
后台系统页面左边菜单按钮和右边内容的处理,后台系统页面出现双滚动
Promql select time series
The method to measure the similarity of two vectors: cosine similarity, pytorch calculate cosine similarity: torch nn. CosineSimilarity(dim=1, eps=1e-08)
[TA frost wolf \u may- hundred people plan] 1.3 secret of texture
SEM of C language_ Tvariable type
衡量两个向量相似度的方法:余弦相似度、pytorch 求余弦相似度:torch.nn.CosineSimilarity(dim=1, eps=1e-08)
【TA-霜狼_may-《百人计划》】1.4 PC手机图形API介绍
pytorch nn.AdaptiveAvgPool2d(1)
165. compare version numbers