Transformation between the same rotation expressed in different coordinate systems
$begingroup$
EDIT
Lets assume my transformation does the following mapping:
begin{align*}
x = -y \
y = -x \
z = -z
end{align*}
Which produces this transformation matrix $R_t$:
$$
begin{pmatrix}
0 & -1 & 0 \ -1 & 0 & 0 \ 0 & 0 & -1
end{pmatrix}
$$
A rotation around the $x$-axis, $R_{x}$ in one coordinate system should equal a rotation around the negative $y$-axis, $R_{-y}$, in the other coordinate system. Why is this relation not satisfied?
$I = R_x^{-1}*R_t*R_{-y}$
I'm a bit confused, so bear with me if I don't make total sense. I have two sets of rotations, $R_{1,k}$ and $R_{2,k}$, $k =1,dots,N$ expressed in different coordinate systems. I want to find the transformation, $R_t$ between these coordinate systems, such that
$I = R_{2,k}^{-1} * R_t * R_{1,k}$
If $R_{1,k}$ represents the same rotation as $R_{2,k}$. I'm doing an optimization approach, using the above function as a cost function. I'm not getting the results I expecting. I know for a fact that $R_1$ and $R_2$ represent the same rotations and that the transformation between the coordinate systems is constant. Even then, I receive different $R_t$ depending on how $R_1$ and $R_2$ looks.
What is it Im doing wrong? Is it even possible to find such a transformation?
Help is greatly appreciated!
transformation rotations
$endgroup$
add a comment |
$begingroup$
EDIT
Lets assume my transformation does the following mapping:
begin{align*}
x = -y \
y = -x \
z = -z
end{align*}
Which produces this transformation matrix $R_t$:
$$
begin{pmatrix}
0 & -1 & 0 \ -1 & 0 & 0 \ 0 & 0 & -1
end{pmatrix}
$$
A rotation around the $x$-axis, $R_{x}$ in one coordinate system should equal a rotation around the negative $y$-axis, $R_{-y}$, in the other coordinate system. Why is this relation not satisfied?
$I = R_x^{-1}*R_t*R_{-y}$
I'm a bit confused, so bear with me if I don't make total sense. I have two sets of rotations, $R_{1,k}$ and $R_{2,k}$, $k =1,dots,N$ expressed in different coordinate systems. I want to find the transformation, $R_t$ between these coordinate systems, such that
$I = R_{2,k}^{-1} * R_t * R_{1,k}$
If $R_{1,k}$ represents the same rotation as $R_{2,k}$. I'm doing an optimization approach, using the above function as a cost function. I'm not getting the results I expecting. I know for a fact that $R_1$ and $R_2$ represent the same rotations and that the transformation between the coordinate systems is constant. Even then, I receive different $R_t$ depending on how $R_1$ and $R_2$ looks.
What is it Im doing wrong? Is it even possible to find such a transformation?
Help is greatly appreciated!
transformation rotations
$endgroup$
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08
add a comment |
$begingroup$
EDIT
Lets assume my transformation does the following mapping:
begin{align*}
x = -y \
y = -x \
z = -z
end{align*}
Which produces this transformation matrix $R_t$:
$$
begin{pmatrix}
0 & -1 & 0 \ -1 & 0 & 0 \ 0 & 0 & -1
end{pmatrix}
$$
A rotation around the $x$-axis, $R_{x}$ in one coordinate system should equal a rotation around the negative $y$-axis, $R_{-y}$, in the other coordinate system. Why is this relation not satisfied?
$I = R_x^{-1}*R_t*R_{-y}$
I'm a bit confused, so bear with me if I don't make total sense. I have two sets of rotations, $R_{1,k}$ and $R_{2,k}$, $k =1,dots,N$ expressed in different coordinate systems. I want to find the transformation, $R_t$ between these coordinate systems, such that
$I = R_{2,k}^{-1} * R_t * R_{1,k}$
If $R_{1,k}$ represents the same rotation as $R_{2,k}$. I'm doing an optimization approach, using the above function as a cost function. I'm not getting the results I expecting. I know for a fact that $R_1$ and $R_2$ represent the same rotations and that the transformation between the coordinate systems is constant. Even then, I receive different $R_t$ depending on how $R_1$ and $R_2$ looks.
What is it Im doing wrong? Is it even possible to find such a transformation?
Help is greatly appreciated!
transformation rotations
$endgroup$
EDIT
Lets assume my transformation does the following mapping:
begin{align*}
x = -y \
y = -x \
z = -z
end{align*}
Which produces this transformation matrix $R_t$:
$$
begin{pmatrix}
0 & -1 & 0 \ -1 & 0 & 0 \ 0 & 0 & -1
end{pmatrix}
$$
A rotation around the $x$-axis, $R_{x}$ in one coordinate system should equal a rotation around the negative $y$-axis, $R_{-y}$, in the other coordinate system. Why is this relation not satisfied?
$I = R_x^{-1}*R_t*R_{-y}$
I'm a bit confused, so bear with me if I don't make total sense. I have two sets of rotations, $R_{1,k}$ and $R_{2,k}$, $k =1,dots,N$ expressed in different coordinate systems. I want to find the transformation, $R_t$ between these coordinate systems, such that
$I = R_{2,k}^{-1} * R_t * R_{1,k}$
If $R_{1,k}$ represents the same rotation as $R_{2,k}$. I'm doing an optimization approach, using the above function as a cost function. I'm not getting the results I expecting. I know for a fact that $R_1$ and $R_2$ represent the same rotations and that the transformation between the coordinate systems is constant. Even then, I receive different $R_t$ depending on how $R_1$ and $R_2$ looks.
What is it Im doing wrong? Is it even possible to find such a transformation?
Help is greatly appreciated!
transformation rotations
transformation rotations
edited Dec 20 '18 at 14:21
Adam Higgins
611113
611113
asked Jul 10 '13 at 12:47
EricEric
63
63
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08
add a comment |
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
Solving the equation $I = R_{2,k}^{-1} * R_t * R_{1,k}$ for $R_t$, you would conclude that $R_{2,k}*R_{1,k}^{-1} = R_t$.
$endgroup$
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
add a comment |
$begingroup$
When we say a rotation around the x-axis in one system is the same as a rotation around the negative y-axis in the other system, what this really means is that you can transform your coordinates from the first system to the second, do your rotation around the negative y-axis, and then transform the result back to the first system, and what you end up with (the result of applying three transformation matrices) is the same thing you could have gotten by just rotating around the x-axis in the original coordinates.
In other words,
$$ R_x = R_t^{-1} R_{-y}, R_t. $$
Equivalently,
$$ I = R_x^{-1} R_t^{-1} R_{-y}, R_t. $$
In your particular case, since $R_t^{-1} = R_t$, you could just as well write
$$ I = R_x^{-1} R_t, R_{-y}, R_t^{-1}. $$
That is why $R_x^{-1} R_t, R_{-y}$ is not coming out equal to the identity matrix. You need another factor of $R_t$.
Finding $R_t$ via this equation is more difficult than it would be if $R_t$ appeared only once. You might be better off looking for the axis of rotation of each of your known rotations, and compute a matrix that transforms three of these axes in the first coordinate system (not all in the same plane) to the corresponding rotation axes in the other system.
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "69"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f440435%2ftransformation-between-the-same-rotation-expressed-in-different-coordinate-syste%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Solving the equation $I = R_{2,k}^{-1} * R_t * R_{1,k}$ for $R_t$, you would conclude that $R_{2,k}*R_{1,k}^{-1} = R_t$.
$endgroup$
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
add a comment |
$begingroup$
Solving the equation $I = R_{2,k}^{-1} * R_t * R_{1,k}$ for $R_t$, you would conclude that $R_{2,k}*R_{1,k}^{-1} = R_t$.
$endgroup$
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
add a comment |
$begingroup$
Solving the equation $I = R_{2,k}^{-1} * R_t * R_{1,k}$ for $R_t$, you would conclude that $R_{2,k}*R_{1,k}^{-1} = R_t$.
$endgroup$
Solving the equation $I = R_{2,k}^{-1} * R_t * R_{1,k}$ for $R_t$, you would conclude that $R_{2,k}*R_{1,k}^{-1} = R_t$.
answered Jul 10 '13 at 13:23
rschwiebrschwieb
107k12102250
107k12102250
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
add a comment |
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
The problem is, I get different $R_t$ for different $k$, even though the transformation should be the same between each pair of matrices.
$endgroup$
– Eric
Jul 10 '13 at 14:10
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
@Eric I believe you! But how will your equation hold unless they all agree? It looks like there is something you may be assuming or missing that is causing this problem.
$endgroup$
– rschwieb
Jul 10 '13 at 15:37
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
$begingroup$
Yeah, I guess I'm the problem! I've edited my original post with an example. Maybe you'll be able to see where my assumptions are not correct. Thank you!
$endgroup$
– Eric
Jul 10 '13 at 17:13
add a comment |
$begingroup$
When we say a rotation around the x-axis in one system is the same as a rotation around the negative y-axis in the other system, what this really means is that you can transform your coordinates from the first system to the second, do your rotation around the negative y-axis, and then transform the result back to the first system, and what you end up with (the result of applying three transformation matrices) is the same thing you could have gotten by just rotating around the x-axis in the original coordinates.
In other words,
$$ R_x = R_t^{-1} R_{-y}, R_t. $$
Equivalently,
$$ I = R_x^{-1} R_t^{-1} R_{-y}, R_t. $$
In your particular case, since $R_t^{-1} = R_t$, you could just as well write
$$ I = R_x^{-1} R_t, R_{-y}, R_t^{-1}. $$
That is why $R_x^{-1} R_t, R_{-y}$ is not coming out equal to the identity matrix. You need another factor of $R_t$.
Finding $R_t$ via this equation is more difficult than it would be if $R_t$ appeared only once. You might be better off looking for the axis of rotation of each of your known rotations, and compute a matrix that transforms three of these axes in the first coordinate system (not all in the same plane) to the corresponding rotation axes in the other system.
$endgroup$
add a comment |
$begingroup$
When we say a rotation around the x-axis in one system is the same as a rotation around the negative y-axis in the other system, what this really means is that you can transform your coordinates from the first system to the second, do your rotation around the negative y-axis, and then transform the result back to the first system, and what you end up with (the result of applying three transformation matrices) is the same thing you could have gotten by just rotating around the x-axis in the original coordinates.
In other words,
$$ R_x = R_t^{-1} R_{-y}, R_t. $$
Equivalently,
$$ I = R_x^{-1} R_t^{-1} R_{-y}, R_t. $$
In your particular case, since $R_t^{-1} = R_t$, you could just as well write
$$ I = R_x^{-1} R_t, R_{-y}, R_t^{-1}. $$
That is why $R_x^{-1} R_t, R_{-y}$ is not coming out equal to the identity matrix. You need another factor of $R_t$.
Finding $R_t$ via this equation is more difficult than it would be if $R_t$ appeared only once. You might be better off looking for the axis of rotation of each of your known rotations, and compute a matrix that transforms three of these axes in the first coordinate system (not all in the same plane) to the corresponding rotation axes in the other system.
$endgroup$
add a comment |
$begingroup$
When we say a rotation around the x-axis in one system is the same as a rotation around the negative y-axis in the other system, what this really means is that you can transform your coordinates from the first system to the second, do your rotation around the negative y-axis, and then transform the result back to the first system, and what you end up with (the result of applying three transformation matrices) is the same thing you could have gotten by just rotating around the x-axis in the original coordinates.
In other words,
$$ R_x = R_t^{-1} R_{-y}, R_t. $$
Equivalently,
$$ I = R_x^{-1} R_t^{-1} R_{-y}, R_t. $$
In your particular case, since $R_t^{-1} = R_t$, you could just as well write
$$ I = R_x^{-1} R_t, R_{-y}, R_t^{-1}. $$
That is why $R_x^{-1} R_t, R_{-y}$ is not coming out equal to the identity matrix. You need another factor of $R_t$.
Finding $R_t$ via this equation is more difficult than it would be if $R_t$ appeared only once. You might be better off looking for the axis of rotation of each of your known rotations, and compute a matrix that transforms three of these axes in the first coordinate system (not all in the same plane) to the corresponding rotation axes in the other system.
$endgroup$
When we say a rotation around the x-axis in one system is the same as a rotation around the negative y-axis in the other system, what this really means is that you can transform your coordinates from the first system to the second, do your rotation around the negative y-axis, and then transform the result back to the first system, and what you end up with (the result of applying three transformation matrices) is the same thing you could have gotten by just rotating around the x-axis in the original coordinates.
In other words,
$$ R_x = R_t^{-1} R_{-y}, R_t. $$
Equivalently,
$$ I = R_x^{-1} R_t^{-1} R_{-y}, R_t. $$
In your particular case, since $R_t^{-1} = R_t$, you could just as well write
$$ I = R_x^{-1} R_t, R_{-y}, R_t^{-1}. $$
That is why $R_x^{-1} R_t, R_{-y}$ is not coming out equal to the identity matrix. You need another factor of $R_t$.
Finding $R_t$ via this equation is more difficult than it would be if $R_t$ appeared only once. You might be better off looking for the axis of rotation of each of your known rotations, and compute a matrix that transforms three of these axes in the first coordinate system (not all in the same plane) to the corresponding rotation axes in the other system.
answered Mar 31 '14 at 1:31
David KDavid K
54.5k343120
54.5k343120
add a comment |
add a comment |
Thanks for contributing an answer to Mathematics Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f440435%2ftransformation-between-the-same-rotation-expressed-in-different-coordinate-syste%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
$begingroup$
I guess you really mean "I have one set of rotations expressed in two different coordinate systems."? That's what the context seems like. I guess it would also make sense as "two sets of matrices representing one set of rotations in two different coordinates."
$endgroup$
– rschwieb
Jul 10 '13 at 13:17
$begingroup$
Yes,thats a much better explanation, thank you!
$endgroup$
– Eric
Jul 10 '13 at 14:08