I have a series of point clouds of the same location. I would like to align each of my point clouds (B and C) to the point cloud that has the best ground control (point cloud A), so that I can make accurate comparisons between them. I have used the ICP alignment, and saved a translation matrix that will get my other point clouds to align with A.
However, when I bring A, B, and C in together, I am constantly only able to accurately apply one of the transformation matrices. For example, I'll bring in A (truth), and then bring in B, and apply the transformation matrix for B (which aligns perfectly). Then when I bring in C, and apply the transformation matrix for C, it transforms the matrix to the completely wrong location (appears to have correct rotation and scale). If I try them in the opposite order (for example, bringing in C first, then B), the first cloud that I apply the transformation to always is transformed perfectly, and the second one is always moved to the wrong location. The transformation matrices are the same, but will only work if it is the first point cloud transformed.
How can I resolve this? My guess is that it has something to do with the rotation center (that gets shifted or something after one translation), but I can't figure out how to identify that.
Thanks!
Multiple transformation matrix
Re: Multiple transformation matrix
Not sure to understand. How many different matrices have you? Only one or 3?
If you only have 1: I doubt it can work. You need one matrix per cloud (unless the B, C and D clouds are all at the same place).
Otherwise, if you have multiple matrices: when you apply each transformation, do you apply it on the cloud only, or on the group containing the clouds?
If you only have 1: I doubt it can work. You need one matrix per cloud (unless the B, C and D clouds are all at the same place).
Otherwise, if you have multiple matrices: when you apply each transformation, do you apply it on the cloud only, or on the group containing the clouds?
Daniel, CloudCompare admin
Re: Multiple transformation matrix
Hi Daniel,
I have a separate matrix for each point cloud that needs to be transformed. (I separately ran the ICP fine alignment to get the matrix with each of B, C, and D with A). When I apply the transformations, I believe I am just applying it to each cloud individually (I click on the cloud in the DB Tree, then apply transformation control-T, then bring in its translation matrix).
I thought that this could be related to the rotation center changing, but I've recorded what the rotation center is for each of the transformations through the camera settings, and then reapplied the same rotation center when I go to apply that matrix.
I have a separate matrix for each point cloud that needs to be transformed. (I separately ran the ICP fine alignment to get the matrix with each of B, C, and D with A). When I apply the transformations, I believe I am just applying it to each cloud individually (I click on the cloud in the DB Tree, then apply transformation control-T, then bring in its translation matrix).
I thought that this could be related to the rotation center changing, but I've recorded what the rotation center is for each of the transformations through the camera settings, and then reapplied the same rotation center when I go to apply that matrix.
Re: Multiple transformation matrix
Okay. So you applied the ICP registration to all 3 clouds (B, C and D). And are you trying to apply the transformation again? (because the ICP tool already applied it).
I'm a little bit confused... Maybe it would be easier if you send me the data and let me try it on my side?
I'm a little bit confused... Maybe it would be easier if you send me the data and let me try it on my side?
Daniel, CloudCompare admin