Commit 72afd0b3 authored by Théophile BORNON's avatar Théophile BORNON

Conv filter ok

parent 7984ce1e
...@@ -327,7 +327,7 @@ namespace S04_Projet ...@@ -327,7 +327,7 @@ namespace S04_Projet
PixelArr[x, y] = new Pixel(r, g, b); PixelArr[x, y] = new Pixel(r, g, b);
} }
return new MyImage(opt, PixelArr); return new MyImage(options, PixelArr);
} }
else if (filter.GetLength(0) != filter.GetLength(1)) else if (filter.GetLength(0) != filter.GetLength(1))
{ {
...@@ -364,15 +364,14 @@ namespace S04_Projet ...@@ -364,15 +364,14 @@ namespace S04_Projet
public static byte ConvolutionalResult(int[,] matrix, int[,] conv, int size, double factor) public static byte ConvolutionalResult(int[,] matrix, int[,] conv, int size, double factor)
{ {
int r = 0; int r = 0;;
for (int i = 0; i < size * size; i++) for (int x = 0; x < size; x++)
{ for (int y = 0; y < size; y++)
int x = i % size; r += matrix[x, y] * conv[x, y];
int y = i / size;
r += matrix[x, y] * conv[(size - 1) - x, (size - 1) - y];
}
r = (int)Math.Round(r * factor); r = (int)Math.Round(r * factor);
return (byte)r; if (r > 255) return 255;
else if (r < 0) return 0;
else return (byte)r;
} }
private static int EndianToInt(byte[] arr, int from, int to) private static int EndianToInt(byte[] arr, int from, int to)
......
...@@ -54,13 +54,13 @@ namespace S04_Projet ...@@ -54,13 +54,13 @@ namespace S04_Projet
{ 0, -1, 0 } { 0, -1, 0 }
}; };
MyImage imgg = new MyImage("img/ex.bmp"); MyImage imgg = new MyImage("img/coco.bmp");
//imgg.ApplyConvFilter(identityFilter, 1).Save("id.bmp"); imgg.ApplyConvFilter(identityFilter, 1).Save("id.bmp");
imgg.ApplyConvFilter(edgeDetect1Filter, 1).Save("edge1.bmp"); imgg.ApplyConvFilter(edgeDetect1Filter, 1).Save("edge1.bmp");
//imgg.ApplyConvFilter(edgeDetect2Filter, 1).Save("edge2.bmp"); imgg.ApplyConvFilter(edgeDetect2Filter, 1).Save("edge2.bmp");
imgg.ApplyConvFilter(edgeDetect3Filter, 1).Save("edge3.bmp"); imgg.ApplyConvFilter(edgeDetect3Filter, 1).Save("edge3.bmp");
//imgg.ApplyConvFilter(sharpenFilter, 1).Save("sharpen.bmp"); imgg.ApplyConvFilter(sharpenFilter, 1).Save("sharpen.bmp");
//imgg.ApplyConvFilter(boxBlurFilter, (double)1/9).Save("blur.bmp"); imgg.ApplyConvFilter(boxBlurFilter, (double)1/9).Save("blur.bmp");
Console.ForegroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("#############################################################"); Console.WriteLine("#############################################################");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment