public void AlignPCAToOriginAxes() { this.pointCloudSource = new PointCloud(pathUnitTests + "\\KinectFace_1_15000.obj"); pointCloudResult = PCA.RotateToOriginAxes(pointCloudSource); //-----------Show in Window if (UIMode) { Show4PointCloudsInWindow(true); //ShowResultsInWindow_Cube(true); } expectedResultCloud.AddVector(new Vector3(1, 0, 0)); expectedResultCloud.AddVector(new Vector3(0, 1, 0)); expectedResultCloud.AddVector(new Vector3(0, 0, 1)); //----------------check Result double executionTime = Performance_Stop("Execution Time"); Assert.IsTrue(executionTime < 0.4);//on i7 6700 (3.4 GHz, 8 cores) Assert.IsTrue(PointCloud.CheckCloudAbs(expectedResultCloud, pointCloudResult.PCAAxesNormalized, this.threshold)); }
public void ShowAxes_AlignedToOriginAxes() { pointCloudSource = new PointCloud(pathUnitTests + "\\KinectFace_1_15000.obj"); //PointCloud.ResizeVerticesTo1(pointCloudSource); pca.PCA_OfPointCloud(pointCloudSource); this.pointCloudResult = PCA.RotateToOriginAxes(pointCloudSource); //-----------Show in Window if (UIMode) { this.ShowPointCloud(pointCloudSource); } //----------------check Result expectedResultCloud.AddVector(new Vector3(1, 0, 0)); expectedResultCloud.AddVector(new Vector3(0, 1, 0)); expectedResultCloud.AddVector(new Vector3(0, 0, 1)); double executionTime = Performance_Stop("Execution Time");//on i3_2121 (3.3 GHz) Assert.IsTrue(executionTime < 0.3); Assert.IsTrue(PointCloud.CheckCloudAbs(expectedResultCloud, pointCloudResult.PCAAxesNormalized, this.threshold)); }
public void AlignPCAToOriginAxes_SecondCloud() { this.pointCloudSource = new PointCloud(pathUnitTests + "\\KinectFace_2_15000.obj"); pointCloudResult = PCA.RotateToOriginAxes(pointCloudSource); //-----------Show in Window if (UIMode) { Show4PointCloudsInWindow(true); //ShowResultsInWindow_Cube(true); } expectedResultCloud.AddVector(new Vector3(1, 0, 0)); expectedResultCloud.AddVector(new Vector3(0, 1, 0)); expectedResultCloud.AddVector(new Vector3(0, 0, 1)); //----------------check Result double executionTime = Performance_Stop("Execution Time");//on i3_2121 (3.3 GHz) //bool condition = true; Assert.LessOrEqual(executionTime, 0.25); Assert.IsTrue(PointCloud.CheckCloudAbs(expectedResultCloud, pointCloudResult.PCAAxesNormalized, this.threshold)); }
public void AlignPCAToOriginAxes() { CreateRectangle(); PointCloud.RotateDegrees(pointCloudSource, 0, 0, -45); pointCloudTarget = null; pointCloudResult = PCA.RotateToOriginAxes(pointCloudSource); //-----------Show in Window if (UIMode) { //Show4PointCloudsInWindow(true); ShowResultsInWindow_Cube(true); } expectedResultCloud.AddVector(new Vector3(1, 0, 0)); expectedResultCloud.AddVector(new Vector3(0, 1, 0)); expectedResultCloud.AddVector(new Vector3(0, 0, 0)); //----------------check Result Assert.IsTrue(PointCloud.CheckCloudAbs(expectedResultCloud, pointCloudResult.PCAAxesNormalized, this.threshold)); //----------------check Result }