Coursera Robotics系列课心得

时间:2024-09-14 12:05:38

Robotics Perception

Professor Kostas and Jianbo Shi

week 1: camera model

凸透镜成像原理:凸透镜焦点与焦距是固定的,这是物理性质。物距u、像距v、焦距f的关系为1/f=1/u+1/v

perspective drawing

bi-perspectograph construction changing

1. change the distance from the objects: OS

2. change the focal length: 两平行线之间的距离

Vanishing points: 消灭点,所有消灭点的连线为horizon,辅助线为horizon lines

物理世界中平行线映射至图像坐标系中,产生的交点为消灭点

Vanishing points are intersection points of parallel lines.

Dolly Zoom

拉长物体离相机的距离,同时增大相机焦距

Perspective Transformation

world - camera - image

Coursera Robotics系列课心得

special cases:

homography: 从3D世界平面(如Z=0)到2D图像平面,则K[R|t]可简约为单应性矩阵

only rotation: 纯旋转,t=0,此时齐次坐标最后的1不起作用。

Compute Intrinsics from Vanishing Points

Coursera Robotics系列课心得

Assignment

虽然coursera的编程作业一向风格是只写函数内容即可,但其MATLAB接口的含金量相当高,值得学习。

亮点有使用fill函数着色,使用project(本质上为3D-2D矩阵映射)

最后的问题求二元一次方程得到f和pos的公式。

Week 2: Projective Transformation

Vanishing points -- camera orientation

利用消灭点估计旋转矩阵:消灭点的向量

4个点估计projective transformation的application: Virtual Billboard

p'~Ap 为lambda*p'=Ap

Horizon:与projection plane的法向量正交,同时由image plane的vanishing point产生。

Coursera Robotics系列课心得

要想清楚vanishing point的定义。

Cross Ratios and Single View Metrology

cross ratio 交比、重比

Assignment

四对匹配点可求一个单应矩阵的理论推导如下:

Coursera Robotics系列课心得

原因:https://www.coursera.org/learn/robotics-perception/discussions/weeks/2/threads/lO9fEJ9kEeagbRJODex4yg

MATLAB计算SVD的矩阵中,V按列存储,而我们是按行定义。

inpolygon函数选择一个二维平面范围中多边形顶点内包含的所有点

meshgrid生成一个二维平面范围内的所有点坐标(遍历神器)

Week 3: Pose Estimation

Features
Scale Invariant:尺度不变性

DoG: Difference of Gaussian, calculated by multiple Laplace of Gaussian. 计算高斯核函数差

Laplacian Scale Space, depiction of high contrast value.如何生成?

Rotation Invariant:旋转不变性

Compute Image Gradient 计算图像梯度

descriptor: histogram of gradient orientation

Singular Value Decomposition

例子:Mondrian色块图案

Coursera Robotics系列课心得

Least Square Estimation

Coursera Robotics系列课心得

Coursera Robotics系列课心得

RANSAC

Coursera Robotics系列课心得

Pose Estimation

Coursera Robotics系列课心得

Coursera Robotics系列课心得

Coursera Robotics系列课心得

Week 4: Multi-View Geometry

https://en.wikipedia.org/wiki/Essential_matrix

It turns out, however, that only one of the four classes of solutions can be realized in practice. Given a pair of corresponding image coordinates, three of the solutions will always produce a 3D point which lies behind at least one of the two cameras and therefore cannot be seen. Only one of the four classes will consistently produce 3D points which are in front of both cameras. This must then be the correct solution. Still, however, it has an undetermined positive scaling related to the translation component.

估计到的结果只有1个是可行解。