Transformation between the same rotation expressed in different coordinate systems












1












$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!










share|cite|improve this question











$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
















1












$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!










share|cite|improve this question











$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














1












1








1





$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!










share|cite|improve this question











$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






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








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


















  • $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










2 Answers
2






active

oldest

votes


















0












$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$.






share|cite|improve this answer









$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



















0












$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.






share|cite|improve this answer









$endgroup$













    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
    });


    }
    });














    draft saved

    draft discarded


















    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









    0












    $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$.






    share|cite|improve this answer









    $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
















    0












    $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$.






    share|cite|improve this answer









    $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














    0












    0








    0





    $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$.






    share|cite|improve this answer









    $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$.







    share|cite|improve this answer












    share|cite|improve this answer



    share|cite|improve this answer










    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


















    • $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











    0












    $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.






    share|cite|improve this answer









    $endgroup$


















      0












      $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.






      share|cite|improve this answer









      $endgroup$
















        0












        0








        0





        $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.






        share|cite|improve this answer









        $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.







        share|cite|improve this answer












        share|cite|improve this answer



        share|cite|improve this answer










        answered Mar 31 '14 at 1:31









        David KDavid K

        54.5k343120




        54.5k343120






























            draft saved

            draft discarded




















































            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.




            draft saved


            draft discarded














            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





















































            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







            Popular posts from this blog

            Quarter-circle Tiles

            build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

            Mont Emei