I used to calculate the transition matrix eigen matrix P, P=Av inverse * Bv, so arbitrary coordinate b=P * a; But inspection found that the Av and Bv3 points can convert each other, but other points out for outliers, more urgent, to teach, because code temporarily not convenient to upload, have to solve this problem, please leave your contact way, because of the problem is urgent, can negotiate payment, thank you very much,
CodePudding user response:
https://blog.csdn.net/u012501459/article/details/41719939CodePudding user response:
Online there should be a corresponding algorithm, want oneself to codeCodePudding user response:
Bv=Av * XAv three point coordinates, A matrix
Bv three point coordinate matrix B
X is matrix
CodePudding user response:
OPENCV who use function to solve, numerical methods run, anyway had a matrix multiplicationCodePudding user response:
Premise: three points collinear, respectively pt1 and pt2, pt3(1) it must be used three coordinate system: A, B, three points to determine the coordinate system of C
Coordinate system origin, (2) for pt1 C pt1 and pt2 to determine the unit vector to C X axis coordinate system, pt1 and pt3 determine unit vector as coordinates Y C, according to the C coordinates X, Y Z axis is determined, according to the X, Z axis fixed Y orthogonal coordinate system, so that we can get C coordinate system origin and XYZ axis respectively in A, B coordinates description
(3) according to the second point, C coordinate system can be constructed to A coordinate transformation matrix and C to B transformation matrix, the matrix inversion can get such A to coordinate transformation matrix of C
(4) by A third point, A to C coordinate transformation matrix and transformation matrix C to B all know, the two coordinate transformation matrix and matrix operations have A to B respectively to A coordinate system midpoint do it in the B matrix operations described in (coordinates)
Describe clearly?
CodePudding user response:
Your three points in the first two coordinates the coordinates of the column Av and Bv is 3 row 1 column, then you should write the transition of the rectangular multiplication: P * Av=Bv (Av * P=Bv is wrong, because the matrix of 3 * 1 and 3 * 3 matrix multiplication), so that your P have 9 unknowns, but only three equations, so your P matrix is not the only, you should find more point (at least three points) in the corresponding care to get only two coordinate system transition matrix P, calculate the transition matrix so you can know the other A coordinate system in other point coordinates in the coordinate system B, in addition to reversible matrix determinant of value is not zero, you calculate the inverse is wrong, Av for Av 3 * 1 of the column, it is not reversible,,CodePudding user response:
Signed in 800 years agoCodePudding user response:
https://blog.csdn.net/u012501459/article/details/41719939CodePudding user response:
Your three points in the first two coordinates the coordinates of the column Av and Bv is 3 row 1 column, then you should write the transition of the rectangular multiplication: P * Av=Bv (Av * P=Bv is wrong, because the matrix of 3 * 1 and 3 * 3 matrix multiplication), so that your P have 9 unknowns, but only three equations, so your P matrix is not the only, you should find more point (at least three points) in the corresponding care to get only two coordinate system transition matrix P, calculate the transition matrix so you can know the other A coordinate system in other point coordinates in the coordinate system B, in addition to reversible matrix determinant of value is not zero, you calculate the inverse is wrong, Av for Av 3 * 1 of the column, it is not reversible,,CodePudding user response:
Study together,, thank you god!CodePudding user response:
Good,,,CodePudding user response:
Top, I am a novice, want to see moreCodePudding user response:
Tip, and to learnCodePudding user response:
So to understand