New answers tagged

0

I don't know if your confusion is with applying the transform to the points or applying it to the pose. So I'll just show you both. The easiest way is to store your points and transform in the homogenous form. For 2D the transform is a matrix(3x3) that looks like $$T=\begin{bmatrix} cos(\theta) & -sin(\theta) & t_x\\ sin(\theta) & cos(\theta) &...


0

ICP does not require that the number of points match. It can automatically take care of different sized inputs due to using the closest pair. An example of this can be found here, but in 2D. In the PyICP-SLAM example you give you should notice that they randomly downsample the pointcloud to a fixed number(default 5000). That is how they are able to assert ...


0

ICP requires 'reference' lidar/map points which I do not have. Can I use points at t = x as a reference to update the points at t = x + 1? Reference just refers to a reference frame. Which can be just the previous frame, or one obtained earlier. So yes you can match t=x and t=x+1. That is how LIDAR odometry works. I do not get same amount of lidar contour ...


1

Assuming frame $0$ is the 'absolute frame', if we let $^j P_i$ be the $i^{th}$ position/orientation expressed in the $j^{th}$ coordinate frame, then what you're asking for is the sequence $$\{(^0P_i)_{i=1 ... N}\},$$ correct? Using your sequence of measurements $\{(x_i, y_i, \theta_i)_{i=1 ... N}\}$, it's straightforward to compute the $i^{th}$ 2-D ...


1

Each step can be represented by its transformation matrix, $$ \begin{bmatrix} \cos{\theta'_{i}} & -\sin{\theta'_{i}} & x'_{i}\\ \sin{\theta'_{i}} & \phantom{-}\cos{\theta'_{i}} & y'_{i} \\ 0 & 0 & 1 \end{bmatrix}. $$ The world position at each step $i$ is the rightward-propagating product of the transforms up to that point, $$ \...


Top 50 recent answers are included