1. Introduction
This is a response to Mr. Sebahattin Bektas [
1] who rejected certain allegations made in the article “Helmert Transformation Problem. From Euler Angles Method to Quaternion Algebra” [
2].
The original article was not intended to misinform or complicate the mathematical background and theory of the Helmert transformation problem. The main purpose was to compare the methods of determining the transform parameters using either Euler angles or quaternions. It is important to note that when the article was published (2020), the literature on dual quaternions was limited, so the research and comparison of methods were based on what was available at the time. The literature used was primarily by Kenwright, B. in 2012; Jia, Y.B. in 2013; Zeng, H. et al. in 2018 and Jitka, P. in 2011; [
3,
4,
5,
6].
Below are clear explanations of the comments received. The whole reply is organized according to Bektas’s three concerns:
The number of unknown parameters.
The reliability of both data and the results.
The differences between the methods used.
2. Helmert Transformation Problem and Unknown Parameters
As mentioned in the original paper (page 3—paragraph 2.1), the Helmert transformation problem is one of the most well-known transformation methods between two systems in the world [
2]. More specifically, for two systems (P) and (P′), and for each point
and
, respectively, the following relation holds [
2]:
where
the shift vector (translation parameters); λ: the scale factor; and
is the rotation matrix through axis xyz (rotation parameters).
When using the Euler angles, there are seven unknown parameters: three angles, three translations and one scale factor. On the contrary, when using the quaternion method to calculate the rotation matrix, quaternions are used. The matrix is calculated by the following Equation (2):
where I
3 is the 3 × 3 identity matrix and
is a quaternion and matrix
As a result, there are eight unknown parameters: the quaternion q for the rotation matrix, three translations and one scale factor [
2].
When using dual quaternion algebra, dual quaternions are used to calculate the transformation problem. The translation and rotation properties for the unit dual quaternion are defined as
and
, with r being the unit quaternion that represents the rotation and
the quaternion that represents the translation. In this case, the rotation matrix uses Equation (2) for quaternion
and matrices
and
for greater convenience [
2].
So, the final transformation relation arises where the required quaternions r and d are present:
The two additional constraints for unity (
and orthogonality (
) that Prof. Bektas mentioned were already used when the Helmert transformation model using dual quaternions was presented, according to Zeng, H. et al. [
5]. So, in this research, the final equation, mentioned above, is used.
In the original article, there were nine unknown parameters presented: four for each quaternion and one for the scale factor. According to the received comment, there must be eight unknown parameters, four for each quaternion with the scale factor included in the quaternions (
), which is also correct [
7,
8]. However, there are some studies that calculate the scale factor independently of the rotation angles and translation [
5].
In the article “Helmert Transformation Problem. From Euler Angles Method to Quaternion Algebra”, the scale factor is calculated in the adjustment model, using observation equations:
For the least squares method, partial derivatives are calculated using the equations in
Appendix A. Additionally, the starting value for the scale factor is calculated from the distances between the known points.
3. Reliability of Data and Results
The purpose of this article is not to keep anything hidden regarding the data or results. Both of them are real and were already sent to the journal along with the mathematical model. Some of the equations used are also presented in this reply, and all of them are attached in
Appendix A. Additionally, the original data from the microcosm, macrocosm and intermediate distances are also presented in
Appendix B.
4. Differences between Euler Angles and Quaternion Methods
Since ancient times, mathematicians have used Euler angles and quaternions to calculate rotation matrices in 3D space. According to the received comment, these two methods can lead to the same results when it comes to the Helmert transformation problem. However, this is impossible in the reverse problem, as there are significant differences in the calculation of rotation angles, which are transferred to the transformation problem. All these differences are presented here in detail.
4.1. Differences in Rotation Matrices
The rotation angles around the x, y, z axis are called Euler angles, and they are measured clockwise, using the right-hand rule [
9], The sequence of Euler angles and the order of the axes in which the rotation takes place significantly determine the final result, as there are 27 different combinations. One of the most well-known combinations is the “
xyz” sequence, where a rotation is made first around the
x-axis, then around
y and finally around
z. As a result, the 3D rotation matrix is the multiplication of the rotation matrices of each axis and presented in the following Equation (8):
On the other hand, quaternions can be interpreted as a convenient mathematical notation for representing the orientations and rotations of objects in three dimensions.
The most important difference between Euler angles and quaternions is the problem of singularities, which appears when calculating rotation angles using rotation matrices. This problem arises because a set of Euler angles can lead to the loss of one degree of freedom. In contrast, quaternions provide a more compact and efficient representation of rotations and are not susceptible to this problem [
6,
10,
11].
For a single quaternion (
=
) and for each vector
, the quaternion rotation operator is defined and presented in the following Equation (9):
and is equivalent to the geometric rotation of the vector by an angle 2
θ, with the axis of rotation in the direction of
u.
Additionally, the rotation of a 3D vector
around a specific axis and according to Equation (9) has the following result:
where
represents the axis around which the vector is rotated. Based on this axis, the following equations are created per case:
In order to generalize this relation to all three axes, the vector
is as follows:
and the rotation matrix using quaternions is as follows:
For example, given a rotation matrix R in Equation (16), the angles α, β and γ per axis can be calculated.
According to the elements of the matrix [
12] and Equation (8), possible values for rotation angles are calculated:
The possible values for β are and .
The corresponding values of α are and .
The values for γ are and .
As a result, the solutions are and , but there is always one sequence of rotations that results in the same orientation of an object. It is found that even if the rotations are different, the rotation matrices are the same. On the other hand, the same orientation can be represented by two quaternions, only if or .
4.2. Differences in Helmert Transformation Problem
When calculating the Helmert transformation problem, and trying to calculate the unknown transformation parameters, the results in each method (Euler angles, quaternion, dual quaternion) can also be different.
Even if the Least Square Calculating Method is the same, as are the starting values used, the observation equations are different in each method, so the results can be different.
More specifically, the observation equations used in the Euler angle method are as follows:
The values
a,
b and
c are calculated instead of angles according to the following equation.
and the observation equations used in the quaternion method are as follows:
and the observation equations used in the dual quaternion method are presented in Equations (4)–(7). For the matrix of coefficients of the parameters of interest, the partial derivatives are calculated using the equations in
Appendix A.
As a result, each matrix is different in any case, because they estimate different values, so the results cannot be the same, even if they were derived from the Helmert similarity transformation. The only constraints are between the quaternion’s elements, but in each case, λ is used for the scale factor, and non-unit quaternions are used for the rotations.
5. Results
The differences between Euler angles and quaternions also affect their practical applications. Euler angles are often used in simple applications where computational efficiency is not critical, such as in some classical mechanics problems and in the initial stages of learning about rotations. Quaternions, however, are widely used in aerospace engineering, robotics, computer graphics and other fields where the robust and efficient computation of 3D rotations is essential.
To sum up, the main differences between Euler angles and quaternion methods in the Helmert transformation problem include the following:
Euler angles are subject to ambiguity, while quaternions are not.
Quaternions provide a more efficient and compact representation of rotations.
The practical applications of each method differ significantly, with quaternions being preferred in fields requiring robust 3D rotation computations.
6. Conclusions
The primary purpose of the original paper [
2] was to compare the different calculation methods in the Helmert transformation problem, using the existing references. This uses a huge mathematical background which is not analyzed in detail, in order to have space for the statistical analysis and the results. In this reply, there are further details about the equations used.
For dual quaternions, the references were limited, so we worked with some of them. The scale factor can be calculated in two different ways, but both can lead to scientifically correct results.
All the results were statistically tested and examined in detail. The code used was also examined line by line; it is all real and was already sent to the journal. There was no intention of keeping the code or the data hidden.
Finally, each method can lead to different results because the least square method uses different equations and matrices for the Euler, quaternion and dual quaternion methodology. Quaternions were created to solve calculation problems in Euler angles so that they could lead to better results.
So, this response aims to clarify the points raised by Mr. Sebahattin Bektas and to highlight the differences between Euler angles and quaternion methods in solving the Helmert transformation problem. Both methods have their own merits and specific applications, but it is crucial to understand their differences and the contexts in which each method is best suited. Our research was conducted based on the available literature at the time, and we welcome a further discussion and exploration of these methods in future studies.
Author Contributions
Conceptualization, George Pantazis and Stefania Ioannidou; methodology, George Pantazis and Stefania Ioannidou; software, Stefania Ioannidou; validation, George Pantazis and Stefania Ioannidou; formal analysis, Stefania Ioannidou; investigation, George Pantazis and Stefania Ioannidou; resources, data curation, Stefania Ioannidou; writing—original draft preparation, Stefania Ioannidou; writing—review and editing, George Pantazis and Stefania Ioannidou; visualization, Stefania Ioannidou; supervision, George Pantazis; project administration, George Pantazis. All authors have read and agreed to the published version of the manuscript.
Funding
This research received no external funding.
Data Availability Statement
Conflicts of Interest
The authors declare no conflicts of interest.
Appendix A
In this appendix, partial derivative equations, for each method, are presented.
Appendix A.1. Partial Derivatives for Euler Angle Method
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
Appendix A.2. Partial Derivatives for Quaternion Method
| | | |
| | | |
| | | |
| |
| |
| | | |
| | | |
| | | |
| |
| |
| | | |
| | | |
| | | |
| | | |
| |
Appendix A.3. Partial Derivatives for Dual Quaternion Method
| | | | | | | |
| | | | | | | |
| | | |
| | | |
| | | |
| | | |
|
| | | |
| | | |
| | | |
| | | |
|
| | | |
| | | |
| | | |
| | | |
|
Appendix B
The original data from the microcosm are as follows.
0.1433 | 0.1549 | 0.1046 | 0.3962 | 0.2650 | 0.1563 |
0.2547 | 0.2535 | 0.3143 | 0.3550 | 0.0935 | 0.2247 |
0.0948 | 0.3750 | 0.2066 | 0.5735 | 0.2063 | 0.2763 |
0.2133 | 0.4563 | 0.0735 | 0.6244 | 0.0586 | 0.3962 |
0.3649 | 0.4249 | 0.3568 | 0.5123 | 0.4736 | 0.1266 |
The original data from the macrocosm are as follows.
99.633 | 70.475 | 62.586 | 250.325 | 45.704 | 110.655 |
110.555 | 160.690 | 45.725 | 345.628 | 30.606 | 201.322 |
170.653 | 120.793 | 98.893 | 360.428 | 106.925 | 104.251 |
220.444 | 185.625 | 179.676 | 432.338 | 158.654 | 125.173 |
299.547 | 179.586 | 155.493 | 470.776 | 52.214 | 32.954 |
The original data from intermediate distances are as follows.
9.636 | 3.722 | 1.426 | 58.252 | 8.101 | 3.511 |
11.325 | 8.573 | 5.493 | 51.793 | 2.911 | 4.417 |
35.646 | 9.457 | 9.635 | 89.465 | 9.287 | 8.475 |
38.953 | 5.933 | 10.725 | 78.327 | 5.254 | 6.325 |
26.724 | 2.467 | 2.041 | 75.958 | 1.526 | 1.166 |
References
- Bektaş, S. Comment on Ioannidou, S.; Pantazis, G. Helmert Transformation Problem. From Euler Angles Method to Quaternion Algebra. ISPRS Int. J. Geo-Inf. 2020, 9, 494. ISPRS Int. J. Geo-Inf. 2024, 13, 359. [Google Scholar] [CrossRef]
- Ioannidou, S.; Pantazis, G. Helmert Transformation Problem. From Euler Angles Method to Quaternion Algebra. ISPRS Int. J. Geo-Inf. 2020, 9, 494. [Google Scholar] [CrossRef]
- Kenwright, B. A beginners guide to dual-quaternions: What they are, how they work, and how to use them for 3D character hierarchies. In Proceedings of the 20th WSCG International Conference on Computer Graphics, Visualization and Computer Vision 2012, Plzen, Czech Republic, 25–28 June 2012; pp. 1–13. [Google Scholar]
- Jia, Y.B. Dual Quaternions; Iowa State University: Ames, IA, USA, 2013. [Google Scholar]
- Zeng, H.; Frang, X.; Chang, G.; Yang, R. A dual quaternion algorithm of the Helmert transformation problem. Earth Planets Space 2018, 70, 26. [Google Scholar] [CrossRef]
- Jitka, P. Application of dual quaternions algorithm for geodetic datum transformation. J. Appl. Math. 2011, 4, 225–236. [Google Scholar]
- Bektas, S. A new algorithm for 3D similarity transformation with dual quaternion. Arab. J. Geosci. 2022, 15, 1273. [Google Scholar] [CrossRef]
- Wang, Y.; Yunjia, W.; Kan, W.; Huachao, Y.; Hua, Z. A dual quaternion-based, closed-form pairwise registration algorithm for point clouds. ISPRS J. Photogramm. Remote Sens. 2014, 94, 63–69. [Google Scholar] [CrossRef]
- Güunaşti, G. Quaternions Algebra, Their Applications in Rotations and Beyond Quaternions; School of Computer Science, Physics and Mathematics, Faculty of Science and Engineering, Linnaeus University: Växjö, Sweden, 2016. [Google Scholar]
- Perumal, L. Quaternion and Its Application in Rotation Using Sets of Regions. Int. J. Eng. Technol. Innov. 2011, 1, 35–52. [Google Scholar]
- Kuipers, J. Quaternions and Rotation Sequences; Department of Mathematics, Calvin College: Grand Rapids, MI, USA; Coral Press: Sofia, Bulgaria, 2000. [Google Scholar]
- Slabaugh, G.G. Computing Euler Angles from a Rotation Matrix, Technical Report City University, London, Retrieved on August. Available online: https://eecs.qmul.ac.uk/~gslabaugh/publications/euler.pdf (accessed on 20 June 2024).
| Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Published by MDPI on behalf of the International Society for Photogrammetry and Remote Sensing. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).