本文整理汇总了C#中MathNet.Numerics.LinearAlgebra.Double.DenseMatrix.Random方法的典型用法代码示例。如果您正苦于以下问题:C# DenseMatrix.Random方法的具体用法?C# DenseMatrix.Random怎么用?C# DenseMatrix.Random使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MathNet.Numerics.LinearAlgebra.Double.DenseMatrix
的用法示例。
在下文中一共展示了DenseMatrix.Random方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShowErrorInfer3DExactLMS
/// <summary>
/// Uses Infer3DExactLMS to infer a random world point from a number of different projections of the point.
/// It writes out the squared errors corresponding to different number of projections into a file.
/// </summary>
/// <param name="numProjections">the max number of projections to use.</param>
/// <param name="gaussianNoiseSigma">the standard deviation of the gaussian noise to be added to the projected points.</param>
public static void ShowErrorInfer3DExactLMS(int numProjections, double gaussianNoiseSigma, string fileName)
{
ContinuousUniform dist = new ContinuousUniform(0, 1);
Normal gaussianNoise = new Normal(0, gaussianNoiseSigma);
DenseMatrix worldPoint = new DenseMatrix(4,1);
worldPoint = (DenseMatrix) worldPoint.Random(4,1, dist);
ProjectedPoint[] projections = new ProjectedPoint[numProjections];
for (int i = 0; i < projections.Length; i++)
{
projections[i] = new ProjectedPoint();
projections[i].worldToImage = new DenseMatrix(3, 4);
projections[i].worldToImage = (DenseMatrix)projections[i].worldToImage.Random(3, 4, dist);
projections[i].projectedPoint = (projections[i].worldToImage * worldPoint);
projections[i].projectedPoint += (DenseMatrix)projections[i].projectedPoint.Random(3, 1, gaussianNoise);
}
File.WriteAllLines(fileName,
Enumerable.Range(2, numProjections)
.Select(i => String.Format("{0}\t{1}", i, (worldPoint - Infer3DExactLMS(projections.Take(i))).L2Norm())));
}