Example #1
0
        private void SVD_OfPointCloud_Double(PointCloud pointsSource, bool normalsCovariance)
        {
            //calculate correlation matrix

            //SVD.Eigenvalues_Helper(C);
            //Matrix3d C = PointCloud.CovarianceMatrix_Double(pointsSource, normalsCovariance);

            Matrix3d C = PointCloud.CovarianceMatrix3d(pointsSource, normalsCovariance);

            SVD.Eigenvalues_Helper(C);


            EV = new Vector3(Convert.ToSingle(SVD.EV.X), Convert.ToSingle(SVD.EV.Y), Convert.ToSingle(SVD.EV.Z));
            VT = SVD.VT.ToMatrix3();
            U  = SVD.U.ToMatrix3();
        }