public void ProcessImageTest()
{
double[,] diag = Matrix.Magic(5);
Bitmap input;
new MatrixToImage().Convert(diag, out input);
// Create a new Gabor filter
RobinsonEdgeDetector filter = new RobinsonEdgeDetector();
// Apply the filter
Bitmap output = filter.Apply(input);
double[,] actual;
new ImageToMatrix().Convert(output, out actual);
string str = actual.ToString(CSharpMatrixFormatProvider.InvariantCulture);
double[,] expected =
{
{ 0.945098039215686, 1, 0.976470588235294, 0.984313725490196, 0.964705882352941 },
{ 0.996078431372549, 0.164705882352941, 0.0705882352941176, 0.247058823529412, 0.972549019607843 },
{ 0.980392156862745, 0.0509803921568627, 0.227450980392157, 0.0509803921568627, 0.937254901960784 },
{ 0.980392156862745, 0.247058823529412, 0.0705882352941176, 0.164705882352941, 0.988235294117647 },
{ 0.96078431372549, 0.980392156862745, 0.945098039215686, 0.988235294117647, 0.968627450980392 }
};
Assert.IsTrue(expected.IsEqual(actual, 1e-6));
}
}