From: ombz on 26 Apr 2010 11:00 Hi all. I'd like to rotate a 2D-Gaussian bump. I.e. parametrize the 2D Gaussian distribution with the rotation angle phi. I first thought I could simply apply a rotation matrix on the covariance matrix. But my MATLAB output tells me that I'm wrong. How do I make it correctly? Thanks for your help Andreas
From: Jerry Avins on 26 Apr 2010 11:14 On 4/26/2010 10:51 AM, ombz wrote: > Hi all. > I'd like to rotate a 2D-Gaussian bump. I.e. parametrize the 2D Gaussian > distribution with the rotation angle phi. I first thought I could simply > apply a rotation matrix on the covariance matrix. But my MATLAB output > tells me that I'm wrong. How do I make it correctly? > Thanks for your help Doesn't a 2D Gaussian have rotational symmetry? It is interesting and instructive to perform axis rotation on the equation of a circle. Jerry -- "I view the progress of science as ... the slow erosion of the tendency to dichotomize." --Barbara Smuts, U. Mich. �����������������������������������������������������������������������
From: Clay on 26 Apr 2010 11:16 On Apr 26, 11:00 am, "ombz" <andreas.weiskopf(a)n_o_s_p_a_m.gmail.com> wrote: > Hi all. > I'd like to rotate a 2D-Gaussian bump. I.e. parametrize the 2D Gaussian > distribution with the rotation angle phi. I first thought I could simply > apply a rotation matrix on the covariance matrix. But my MATLAB output > tells me that I'm wrong. How do I make it correctly? > Thanks for your help > Andreas Hello Andreas, Since the 2D gaussian has rotational symmetry, why do you want to rotate it? If you are saying you have a 2D object that you want to rotate in 3D, then write up the rotation equations and mathematically apply them to the gaussian. You may even use Euler angles for this. Let us know what you really need. IHTH, Clay
From: ombz on 26 Apr 2010 11:43 I didn't actually mean the symmetric "gaussian", sorry. I mean a 2D multivariate normal distribution with covariance matrix Cov = [sigma_x^2 0 0 sigma_y^2] where sigma_x != sigma_y, i.e. no rotational symmetry. I was applying a rotation matrix R = [ cos(phi) -sin(phi); sin(phi) cos(phi) ]. But it did not rotate it. The complete cov. matrix from 2D multivariate distribution follows Cov = [sigma_x^2 rho*sigma_x*sigma_y; rho*sigma_x*sigma_y; sigma_y^2] Where rho is the correlation coefficient. Maybe all I'd have to do is parametrize rho = rho(phi) = phi/pi if phi in [-pi,pi]? Yeah, I'll test this ASAP... >On Apr 26, 11:00=A0am, "ombz" <andreas.weiskopf(a)n_o_s_p_a_m.gmail.com> >wrote: >> Hi all. >> I'd like to rotate a 2D-Gaussian bump. I.e. parametrize the 2D Gaussian >> distribution with the rotation angle phi. I first thought I could simply >> apply a rotation matrix on the covariance matrix. But my MATLAB output >> tells me that I'm wrong. How do I make it correctly? >> Thanks for your help >> Andreas > >Hello Andreas, > > >Since the 2D gaussian has rotational symmetry, why do you want to >rotate it? If you are saying you have a 2D object that you want to >rotate in 3D, then write up the rotation equations and mathematically >apply them to the gaussian. You may even use Euler angles for this. >Let us know what you really need. > >IHTH, >Clay >
From: ombz on 26 Apr 2010 11:47
I didn't actually mean the symmetric "gaussian", sorry. I mean a 2D multivariate normal distribution with covariance matrix Cov = [sigma_x^2 0 0 sigma_y^2] where sigma_x != sigma_y, i.e. no rotational symmetry. I was applying a rotation matrix R = [ cos(phi) -sin(phi); sin(phi) cos(phi) ]. But it did not rotate it. The complete cov. matrix from 2D multivariate distribution follows Cov = [sigma_x^2 rho*sigma_x*sigma_y; rho*sigma_x*sigma_y; sigma_y^2] Where rho is the correlation coefficient. Maybe all I'd have to do is parametrize rho = rho(phi) = phi/pi if phi in [-pi,pi]? Yeah, I'll test this ASAP... >On Apr 26, 11:00=A0am, "ombz" <andreas.weiskopf(a)n_o_s_p_a_m.gmail.com> >wrote: >> Hi all. >> I'd like to rotate a 2D-Gaussian bump. I.e. parametrize the 2D Gaussian >> distribution with the rotation angle phi. I first thought I could simply >> apply a rotation matrix on the covariance matrix. But my MATLAB output >> tells me that I'm wrong. How do I make it correctly? >> Thanks for your help >> Andreas > >Hello Andreas, > > >Since the 2D gaussian has rotational symmetry, why do you want to >rotate it? If you are saying you have a 2D object that you want to >rotate in 3D, then write up the rotation equations and mathematically >apply them to the gaussian. You may even use Euler angles for this. >Let us know what you really need. > >IHTH, >Clay > |