什么是其次坐标是什么意思

点击:2250 &&&&&&&&&&&下载:16
评分:10 分
扫描二维码手机看视频
视频介绍来源:
名称:东南大学-机器人技术 64讲.主讲:王兴松!
机器人(Robot)是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。它的任务是协助或取代人类工作的工作,例如生产业、建筑业,或是危险的工作。现在在工业方面,机器人技术应该非常火。就业的前景还是很不错的。
1.机器人技术 绪论
-机器人学的发展
-机器人的特点、结构与分类
-机器人学与人工智能
2.机器人技术数学基础
-位置和姿态的表示
-齐次坐标变换
-物体的变换及逆变换
-通用旋转变换
3.机器人运动学
-机器人运动方程的表示
-机械手运动方程的求解
-PUMA560机器人运动方程
-机器人的雅可比公式
4.机器人动力学
-机器人刚体动力学
-机械手动力学方程
-机械手动力学方程实例
-机器人的动态特性
-机械手的稳态负荷
5.机器人的感觉
-传感器的种类
-触觉信息的获取
-视觉信息的获取
-距离信息的获悉
6.机器人的控制
-机器人的基本控制原则
-机械人的位置控制
-机械人的柔顺控制
-机器人的分解运动控制
-机器人控制的模糊算法
7.机器人规划
-机器人规划的作用与任务
-积木世界的机器人规划
-STRIPS规划系统
-具有学习能力的规划系统
-基于专家系统的机器人规划
-太空构件装配顺序分层规划系统
-机器人轨迹规划
8.机器人编程
-机器人编程要求与语言类型
-机器人语言系统结构和基本功能
-常用的机器人编程语言
-机器人的离线编程
9.机器人应用
-应用工业机器人必须考虑的因素
-机器人的应用领域
-工业机器人应用举例
-机器人的雅可比公式
与48讲《机器人原理及应用》的区别:
1、更偏重于理论及运算
2、难度偏深,适合有一定基础的爱好者学习,也可用作专业课备考的参考资料
用户名:zywplc
评论时间:日
终于找到了!
用户名:kevinsunlh
评论时间:日
谢谢,看了不错。
用户名:kevinsunlh
评论时间:日
很好,谢谢分享
名称:东南大学-机器人技术 64讲.主讲:王兴松!
机器人(Robot)是自动执行工作的机器装置
名称:东南大学-机器人技术 64讲.主讲:王兴松!
机器人(Robot)是自动执行工作的机器装置
名称:东南大学-机器人技术 64讲.主讲:王兴松!
机器人(Robot)是自动执行工作的机器装置
名称:东南大学-机器人技术 64讲.主讲:王兴松!
机器人(Robot)是自动执行工作的机器装置
京公网安备:
电视节目制作证:(京)字第1101号第三方登录:四元数,齐次坐标
最简单的想法是:在有点和向量混合的情况下,给定一个(x, y,
z),我们不知道这个是向量还是点,所以引入齐次坐标(所谓齐次坐标就是用N+1表示N维量),最后一维用1就是点,0就是向量。
在&&Focus on 3D
models&&中,四元数主要是用来做rotation的。用四元数在此书中说有三点好处:
a, 能解决Gimbal L
b, 能平滑的进行插值;
c,处理旋转比矩阵需要的空间小(旋转还可以用矩阵来表示,需要9个slot);
注意:四元数只有在是unit length的时候才能表示旋转。
在3D中我们常用4x4的矩阵,来配合3维空间的点的缩放、旋转、平移运算。因此是3维运算,但是用了4x4,所以我们称之为Homogeneous
Matrix,更精确的说是Homogeneous Transformation Matrix。
有网友总结的齐次坐标的如下,个人觉得很容易理解,为防止链接失效,原文拷贝如下(下划线所示):
原文地址:
“4D向量是由3D坐标(x,y,z)和齐次坐标w组成,写作(x,y,z,w)。
在3D世界中为什么需要3D的齐次坐标呢?简单地说明一下,在一维空间中的一条线段上取一点x,然后我们想转移x的位置,那我们应该是x'=x+k,但我们能使用一维的矩阵来表示这变换吗?不能,因为此时一维的矩阵只能让x点伸缩。但如果变成了一维的齐次空间[k
1]就很容易地做到。同样地,在二维空间中,某一图形如果不使用二维的齐次坐标,则只能旋转和伸缩,确不能平移。
&&&&&因此,我们在3D坐标中使用齐次坐标,是为了物体在矩阵变换中,除了伸缩旋转,还能够平移,如下运算:
既然了解了使用齐次坐标的意义,我们下一步就要了解一下齐次坐标w是什么意义。设w=1,此时相当于我们把3D的坐标平移搬去了w=1的平面上,4D空间的点投影到w=1平面上,齐次坐标映射的3D坐标是(x/w,y/w,z/w),也就是(x,y,z)。(x,y,z)在齐次空间中有无数多个点与之对应。所有点的形式是(kx,ky,kz,k),其轨迹是通过齐次空间原点的“直线”(其实每个点相当于3D的坐标世界)。
当w=0时,有很大的意义,可解释为无穷远的“点”,其意义是描述方向。这也是平移变换的开关,当w=0时,
此时不能平移变换了。这个现象是非常有用的,因为有些向量代表“位置”,应当平移,而有些向量代表“方向”,如表面的法向量,不应该平移。从几何意义上说,能将第一类数据当作"点",第二类数据当作"向量"。可以通过设置w的值来控制向量的意义。”
3D中有很多地方都会提到四元数(Quaternion),其实是一个4D形式的向量。在《DirectX
9.0 3D游戏开发必成基础》(清华大学出版社),第一部分的“基本变换”一节中,有这么提到
“前面我们提到讲某一点的坐标或某一向量的各分量放入一个1x4的行向量v中。但是我们所关心的点和向量都是3D的!为什么我们要使用1x4的行向量?为了使向量-矩阵乘积有意义,我们必须将3D的点或向量扩展为4D行向量,因为一个1x3的行向量和一个4x4矩阵是无法定义乘法运算的。”
接下来的一段这么说,
“那么我们应该如何使用第4个分量(用w表示)?将点放入一个1x4的行向量时,我们将w分量设为1。这能够保证点的平移变换正确进行。因为向量不含位置信息,所以没有对向量定义平移变换,任何企图对向量实施平移变换的运算只能产生一个毫无意义的向量。为了防止对向量进行平移变换,当我们将1x3向量置入1x4行向量时,将w分量置为0。”
上面的一段说明了最后一个分量什么时候该用0。
后面更有这么一段文字说明,很有启发性,
“当我们将点(x,y,z)写作(x,y,z,1)的形式时,从技术角度,我们实际上在4D空间中用一个4D平面(w=1)来描述3D空间。(注意:4D空间中的平面是3D的,就像3D中的平面式一个2D空间一样)。所以,当我们将w设为某个值时,我们便偏离了平面w=1。为了重新映射回该平面(对于我们熟悉的3D空间),我们只需将齐次向量的每个分量除以w。”
对于上面的4D到3D的所谓映射,正是齐次坐标的功力所在。
在&&Character Animation With
Direct3D&&中,
P117对四元数的解释相当的容易理解和实用
In the example of rotating a-radians around Axis A (x, y,
z), the quaternion for
this would be:
cox(a/2),&x&sin(a/2),&y&sin(a/2),&z*sin(a/2)
所谓齐次坐标表示法就是用n+1维向量表示一个n维向量。
这个概念是射影几何需要解决问题的时候引出来的,在射影学里,如下定义:
为了能用代数方法来处理射影(或扩大)空间的几何问题,需要引进齐次坐标(有时还引进射影坐标)。
仍从欧氏(或仿射)平面开始。设在平面上已经建立了以O为原点的直角(或仿射)坐标系,(x,y)为一点p&的坐标。令则比值x0:x1:x2完全确定p&的位置,(x0,x1,x2)就叫做p的齐次(笛氏)坐标。原点的齐次坐标显然可以写成(1,0,0)。设p不是原点O,则x1,x2不同时等于零;再令x1,x2固定,而令x0向0接近,则p点沿一条经过O而斜率为x2:x1的直线l向远方移动。设表示扩大直线l上的无穷远点,则可以认为,当x0趋于O&时,p趋于。因此,可以把(0,x1,x2)作为的,特殊地,(0,1,0)和(0,0,1)依次是x轴和y&轴上无穷远点的齐次坐标。这样,每一组不同时为零的三个数x0,x1,x2&都是扩大平面上一点的齐次坐标,而若ρ&为不等于零的数,则(ρx0,ρx1,ρx2)和(x0,x1,x2)代表同一点,下面引进记号(x)=(x0,x1,x2),ρ(x)=(ρx0,ρx1,ρx2)。
设&(u1,u2不都是0)是欧氏(或仿射)平面上一条直线的。在用齐次坐标时,它可以写成
这也就是扩大直线的齐次方程,这直线上的无穷远点是(0,u2,-u1)。扩大平面上的无穷远直线方程显然可以写成x0=0。这样,每一个齐次线性方程都代表扩大平面上一条直线。由于比值u0:u1:u2完全确定直线,(u)=(u0,u1,u2)就叫做(齐次)线坐标。为了区别两种齐次坐标,上面引进的(x)=(x0,x1,x2)就叫做(齐次)点坐标。方程(1)叫做点(x)和线(u)的关联条件或接合(即(x)在(u)上,或(u)经过(x))条件。
当不区别无穷远元素和非无穷远元素,使扩大平面成为射影平面时,(x)和(u)就依次成为射影平面上的齐次点坐标和线坐标,它们都可以看作射影坐标的特款。与此类似,可以得到扩大或射影直线上的点坐标(x)=(x0,x1)以及扩大或射影空间的点坐标(x)=(x0,x1,x2,x3)和面坐标(u)=(u0,u1,u2,u3)。在扩大或射影空间中,点(x)和面(u)的关联条件是&下面,除非特别指明,所讨论的空间,就是三维射影空间,所讨论的点、线、面都是射影空间里的点,射影直线和射影平面。在射影空间,指定一个平面x0=0作为无穷远面,就得到扩大空间(见)。
对于最后一个量取1或者取0的含义,有文字描述如下(参考资料3中摘录):
也说明了我们在3D中用4D运算的时候,对点的变换需要用w=1,得到的点才是仿射空间中的坐标。
参考资料:
为防止2的链接丢失,原文复制如下(这幅图片非常好,说明了仿射/射影几何的研究对象):
Homogeneous Coordinates
Problem: Two parallel lines can intercept.
Railroad gets narrower and meets at horizon.
In Euclidean space (geometry), two parallel lines on the same plane
cannot intercept, or cannot meet each other forever. It is a common
sense that everyone is familiar with.&
However, it is not true any more in projective space, for example,
the train railroad on the side picture becomes narrower while it
moves far away from eyes. Finally, the two parallel rails meet at
the horizon, which is a point at infinity.&
Euclidean space (or Cartesian space) describe our 2D/3D geometry so
well, but they are not sufficient to handle the projective space
(Actually, Euclidean geometry is a subset of projective geometry).
The Cartesian coordinates of a 2D point can be expressed
What if this point goes far away to infinity? The point at infinity
would be (∞,∞), and it becomes meaningless in Euclidean space. The
parallel lines should meet at infinity in projective space, but
cannot do in Euclidean space. Mathematicians have discoverd a way
to solve this issue.
Solution: Homogeneous Coordinates
Homogeneous coordinates, introduced by August Ferdinand M&bius,
make calculations of graphics and geometry possible in projective
space. Homogeneous coordinates are a way of representing
N-dimensional coordinates with N+1 numbers.&
To make 2D Homogeneous coordinates, we simply add an additional
variable,&w, into existing coordinates.
Therefore, a point in Cartesian
coordinates,&(X,
Y)&becomes&(x, y, w)&in
Homogeneous coordinates. And&X&and&Y&in
Cartesian are re-expressed with&x,
y&and&w&in Homogeneous
For instance, a point in Cartesian (1, 2) becomes (1, 2, 1) in
Homogeneous. If a point, (1, 2), moves toward infinity, it becomes
(∞,∞) in Cartesian coordinates. And it becomes (1, 2, 0) in
Homogeneous coordinates, because of (1/0, 2/0) = (∞,∞). Notice that
we can express the point at infinity without using "∞".
Why is it called "homogeneous"?
As mentioned before, in order to convert from Homogeneous
coordinates&(x,
y, w)&to Cartesian coordinates, we simply
divide&x&and&y&by&w;&
Converting Homogeneous to Cartesian, we can find an important fact.
Let's see t&
As you can see, the points (1, 2, 3), (2, 4, 6) and (4, 8, 12)
correspond to the same Euclidean point (1/3, 2/3). And any scalar
product, (1a, 2a, 3a) is the same point as (1/3, 2/3) in Euclidean
space. Therefore, these points
are&"homogeneous"&because
they represent the same point in Euclidean space (or Cartesian
space). In other words, Homogeneous coordinates are scale
invariant.
Proof: Two parallel lines can intercept.
Consider the following linear system in Euclidean
And we know that there is no solution for above equations because
then two lines are identical (overlapped).
Let's rewrite the equations for projective space by
replacing&x&and&y&to&x/w,
y/w&respectively.&
Now, we have a solution,&(x, y,
0)&since&(C - D)w = 0, ∴ w = 0. Therefore, two
parallel lines meet at&(x, y, 0), which is the point at
infinity.&
Homogeneous coordinates are very useful and fundamental concept in
computer graphics, such as projecting a 3D scene onto a 2D
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。trackbacks-0
float3 vScreenPos = In.ClipPos.
vScreenPos /= In.ClipPos.w;
vScreenPos.xy += 1.f;
vScreenPos.xy *= 0.5f;
vScreenPos.y = 1.f - vScreenPos.y;
这个是shader里从vertex最后那个pos 里取 uv的算法
pos是指经过了 world view proj的变换得到的 齐次坐标(x,y,z,w)
我之前 一直不明白 为什么 要xy/w
后来 我认为是这样的 &齐次坐标系 是为了 将&P&=M1 *P+M2 &(点P P' 变换矩阵M1 M2)
这种变换 统一到 一个矩阵里表示 就加了一维 使其 把变换统一到 相乘
进行 world view 变换时 w那里一直是一所以可以把 xyz1-&xyz想成空间中的点 &做各种变换
&&但是 proj之后 w就不是1了 & 好像 world view 时M2的系数是1 proj时 M2的系数不是1了(这里表述不严谨 大体是这个意思)
&& 这样 就不能再把 点*Matrix的点当成 空间中对应位置的点 来想象 位置了 这步 就只是个计算 所以最后 要把w除去 &以把P&单独 提出来
/w只是计算中的一步 没有几何意义
理解起来 参见 齐次方程 x+y=0 & & & & & & &(A)
&& & & & & & & 非齐次方程 x + y =b & &(B)
B的解=A的通解+特解
为什么 &x=xh/h &y=yh/h!!
因为这里说的这些 & 符合在这样的 才能使 多项式成为齐次
再次感慨下 中文搜的东西 基本都雷同 技术资料只能找英文的!!!!!
One of the many purposes of using homogeneous coordinates is to capture the concept of infinity. In the Euclidean coordinate system, infinity is something that does not exist. Mathematicians have discovered that many geometric concepts and computations can be greatly simplified if the concept of infinity is used. This will become very clear when we move to curves and surfaces design. Without the use of homogeneous coordinates system, it would be difficult to design certain classes of very useful curves and surfaces in computer graphics and computer-aided design.
Let us consider two real numbers,&a&and&w, and compute the value of&a/w. Let us hold the value of&a&fixed and vary the value of&w. As&w&getting smaller, the value ofa/w&is getting larger. If&w&approaches zero,&a/w&approaches to infinity! Thus, to capture the concept of infinity, we use two numbers&a&and&w&to represent a value&v,v=a/w. If&w&is not zero, the value is exactly&a/w. Otherwise, we identify the infinite value with (a,0). Therefore, the concept of infinity can be represented with a number pair like (a,&w) or as a quotient&a/w.
Let us apply this to the&xy-coordinate plane. If we replace&x&and&y&with&x/w&and&y/w, a function&f(x,y)=0 becomes&f(x/w,y/w)=0. If function&f(x,y) = 0 is a polynomial, multiplying it with&wn&will clear all denominators, where&n&is the degree of the polynomial.
For example, suppose we have a line&Ax + By + C&= 0. Replacing&x&and&y&with&x/w&and&y/w&yields&A(x/w) + B(y/w) + C&= 0. Multiplying by&w&changes it to
Ax + By + Cw&= 0.
Let the given equation be a second degree polynomial&Ax2&+ 2Bxy + Cy2&+ 2Dx + 2Ey + F&= 0. After replacing&x&and&y&with&x/w&and&y/w&and multiplying the result with&w2, we have
Ax2&+ 2Bxy + Cy2&+ 2Dxw + 2Eyw + Fw2&= 0
If you look at these two polynomials carefully, you will see that the degrees of all terms are equal. In the case of a line, terms&x,&y&and&w&are of degree one, while in the second degree polynomial, all terms (i.e.,&x2,&xy,&y2,&xw,&yw&and&w2) are of degree two.
Given a polynomial of degree&n, after introducing&w, all terms are of degree&n. Consequently, these polynomials are called&homogeneous&polynomials and the coordinates (x,y,w) the&homogeneous coordinates.
Given a degree&n&polynomial in a homogeneous coordinate system, dividing the polynomial with&wn&and replacing&x/w,&y/w&with&x&and&y, respectively, will convert the polynomial back to a conventional one. For example, if the given degree 3 homogeneous polynomial is the following:
x3&+ 3xy2&- 5y2w&+ 10w3&= 0
the result is
x3&+ 3xy2&- 5y2&+ 10 = 0
This works for three-dimension as well. One can replace a point (x,&y,&z) with (x/w,&y/w,&z/w) and multiply the result by&w&raised to certain power. The resulting polynomial is a homogeneous one. Converting a degree&n&homogeneous polynomial in&x,&y,&z&and&w&back to the conventional form is exactly identical to the two-variable case.
An Important Notes
Given a point (x,y,w) in homogeneous coordinates, what is its corresponding point in the&xy-plane? From what we discussed for converting a homogeneous polynomial back to its conventional form, you might easily guess that the answer must be (x/w,y/w). This is correct. Thus, a point (3,4,5) in homogeneous coordinates converts to point (3/5,4/5)=(0.6,0.8) in the&xy-plane. Similarly, a point (x,y,z,w) in homogeneous coordinates converts to a point (x/w,y/w,z/w) in space.
Conversely, what is the homogeneous coordinates of a point (x,y) in the&xy-plane? It is simply (x,y,1)! That is, let the&w&component be 1. In fact, this is only part of the story, because the answer is&not&unique. The homogeneous coordinates of a point (x,y) in the&xy-plane is (xw,&yw,&w) for any non-zero&w. Why is this true? Because (xw,&yw,&w) is converted back to (x,y). As a result, the following is important for you to memorize:
Converting from a homogeneous coordinates to a conventional one is&unique; but, converting a conventional coordinates to a homogeneous one is&not.
For example, a point (4,2,3) in space is convert to (4w, 2w, 3w,&w) for any non-zero&w.
The Dimensionality of Homogeneous Coordinates
You perhaps have discovered that homogeneous coordinates need 3 and 4 components to represent a point in the&xy-plane and a point in space, respectively. Therefore, a point in space (resp., the&xy-plane) in homogeneous coordinates actually has&four&(resp.,&third) components. Adding a fourth (resp., third) component whose value is 1 to the coordinates of a point in space (resp., the&xy-plane) converts it to its corresponding homogeneous coordinates.
Ideal Points or Points at Infinity
As mentioned at the very beginning of this page, homogeneous coordinates can easily capture the concept of infinity. Let a point (x,y) be fixed and converted to a homogeneous coordinate by multiplying with 1/w, (x/w,y/w,1/w). Let the value of&w&approach to zero, then (x/w,y/w) moves farther and farther away in the direction of (x,y). When&w&becomes zero, (x/w,y/w) moves to infinity. Therefore, we would say, the homogeneous coordinate (x,y,0) is the&ideal point&or&point at infinity&in the direction of (x,y).
Let us take a look at an example. Let (3,5) be a point in the&xy-plane. Consider (3/w,5/w). If&w&is not zero, this point lies on the line&y&= (5/3)&x. Or, if you like the vector form, (3/w,5/w) is a point on the line&O&+ (1/w)d, where the base point&O&is the coordinate origin and&d&is the direction vector &3,5&. Therefore, as&wapproaches zero, the point moves to infinity on the line. This is why we say (x,y,0) is the ideal point or the point at infinity&in the direction of (x,y).
The story is the same for points in space, where (x,y,z,0) is the ideal point or point at infinity in the direction of (x,y,z).
The concept of homogeneous coordinates and points at infinity in certain direction will become very important when we discuss representations of curves and surface.
Given a homogeneous coordinate (x,y,w) of a point in the&xy-plane, let us consider (x,y,w) to be a point in space whose coordinate values are&x,&y&and&w&for the&x-,y- and&w- axes, respectively. The line joining this point and the coordinate origin intersects the plane&w&= 1 at a point (x/w,&y/w, 1). Please verify this fact yourself. The following figure illustrates this concept.
This transformation treats a two-dimensional homogeneous point as a point in three-dimensional space and projects (from the coordinate origin) this three-dimensional point to the plane&w=1. Therefore, as a homogeneous point moves on a curve defined by homogeneous polynomial&f(x,y,w)=0, its corresponding point moves in three-dimensional space, which, in turn, is projected to the plane&w=1. Of course, (x/w,y/w) moves on a curve in plane&w=1.
The above figure also shows clearly that while the conversion from the conventional Euclidean coordinates to homogeneous coordinates is unique, the opposite direction&
阅读(...) 评论()齐次坐标系是怎么定义的?_百度作业帮
拍照搜题,秒出答案
齐次坐标系是怎么定义的?
齐次坐标系是怎么定义的?
所谓齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示. 实数.显然一个向量的齐次表示是不唯一的,齐次坐标的h取不同的值都表示的是同一个点,比如齐次坐标[8,4,2]、[4,2,1]表示的都是二维点[2,1].那么引进齐次坐标有什么必要,它有什么优点呢?它提供了用矩阵运算把二维、三维甚至高维空间中的一个点集从一个坐标系变换到另一个坐标系的有效方法.它可以表示无穷远的点.n+1维的齐次坐标中如果h=0,实际上就表示了n维空间的一个无穷远点.对于齐次坐标[a,b,h],保持a,b不变,
点沿直线 ax+by=0 逐渐走向无穷远处的过程.

我要回帖

更多关于 坐标是什么意思 的文章

 

随机推荐