From a3d55e206dc482c3361c736778f74b44cde0e005 Mon Sep 17 00:00:00 2001 From: AndrewAtef17 <58080394+AndrewAtef17@users.noreply.github.com> Date: Fri, 6 Dec 2019 21:04:30 +0200 Subject: [PATCH] Add files via upload --- .../ImageQuantization.sln | 20 + .../ImageQuantization/ImageOperations.cs | 369 ++++++++++++++++++ .../ImageQuantization.csproj | 88 +++++ .../ImageQuantization/MainForm.Designer.cs | 300 ++++++++++++++ .../ImageQuantization/MainForm.cs | 45 +++ .../ImageQuantization/MainForm.resx | 120 ++++++ .../ImageQuantization/Program.cs | 22 ++ .../Properties/AssemblyInfo.cs | 33 ++ .../Properties/Resources.Designer.cs | 63 +++ .../Properties/Resources.resx | 117 ++++++ .../Properties/Settings.Designer.cs | 26 ++ .../Properties/Settings.settings | 7 + .../bin/Debug/ImageQuantization.exe | Bin 0 -> 19456 bytes .../bin/Debug/ImageQuantization.pdb | Bin 0 -> 36352 bytes .../ImageQuantization.MainForm.resources | Bin 0 -> 180 bytes ...uantization.Properties.Resources.resources | Bin 0 -> 180 bytes ...geQuantization.csproj.FileListAbsolute.txt | 8 + ...Quantization.csproj.GenerateResource.cache | Bin 0 -> 1015 bytes ...Quantization.csprojAssemblyReference.cache | Bin 0 -> 1724 bytes .../obj/Debug/ImageQuantization.exe | Bin 0 -> 19456 bytes .../obj/Debug/ImageQuantization.pdb | Bin 0 -> 36352 bytes 21 files changed, 1218 insertions(+) create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization.sln create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageOperations.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageQuantization.csproj create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.Designer.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.resx create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Program.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/AssemblyInfo.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.Designer.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.resx create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.Designer.cs create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.settings create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.exe create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.pdb create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.MainForm.resources create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.Properties.Resources.resources create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.FileListAbsolute.txt create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.GenerateResource.cache create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csprojAssemblyReference.cache create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.exe create mode 100644 Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.pdb diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization.sln b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization.sln new file mode 100644 index 0000000..b21ccc7 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageQuantization", "ImageQuantization\ImageQuantization.csproj", "{7CA8077F-C27A-400D-B6C9-7737665499AC}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7CA8077F-C27A-400D-B6C9-7737665499AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7CA8077F-C27A-400D-B6C9-7737665499AC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7CA8077F-C27A-400D-B6C9-7737665499AC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7CA8077F-C27A-400D-B6C9-7737665499AC}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageOperations.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageOperations.cs new file mode 100644 index 0000000..1e1cfe7 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageOperations.cs @@ -0,0 +1,369 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Drawing; +using System.Windows.Forms; +using System.Drawing.Imaging; +using System.Linq; +///Algorithms Project +///Intelligent Scissors +/// + +namespace ImageQuantization +{ + /// + /// Holds the pixel color in 3 byte values: red, green and blue + /// + public struct RGBPixel + { + public byte red, green, blue; + } + public struct RGBPixelD + { + public double red, green, blue; + } + + + /// + /// Library of static functions that deal with images + /// + public class ImageOperations + { + /// + /// Open an image and load it into 2D array of colors (size: Height x Width) + /// + /// Image file path + /// 2D array of colors + public static RGBPixel[,] OpenImage(string ImagePath) + { + Bitmap original_bm = new Bitmap(ImagePath); + int Height = original_bm.Height; + int Width = original_bm.Width; + + RGBPixel[,] Buffer = new RGBPixel[Height, Width]; + + unsafe + { + BitmapData bmd = original_bm.LockBits(new Rectangle(0, 0, Width, Height), ImageLockMode.ReadWrite, original_bm.PixelFormat); + int x, y; + int nWidth = 0; + bool Format32 = false; + bool Format24 = false; + bool Format8 = false; + + if (original_bm.PixelFormat == PixelFormat.Format24bppRgb) + { + Format24 = true; + nWidth = Width * 3; + } + else if (original_bm.PixelFormat == PixelFormat.Format32bppArgb || original_bm.PixelFormat == PixelFormat.Format32bppRgb || original_bm.PixelFormat == PixelFormat.Format32bppPArgb) + { + Format32 = true; + nWidth = Width * 4; + } + else if (original_bm.PixelFormat == PixelFormat.Format8bppIndexed) + { + Format8 = true; + nWidth = Width; + } + int nOffset = bmd.Stride - nWidth; + byte* p = (byte*)bmd.Scan0; + for (y = 0; y < Height; y++) + { + for (x = 0; x < Width; x++) + { + if (Format8) + { + Buffer[y, x].red = Buffer[y, x].green = Buffer[y, x].blue = p[0]; + p++; + } + else + { + Buffer[y, x].red = p[2]; + Buffer[y, x].green = p[1]; + Buffer[y, x].blue = p[0]; + if (Format24) p += 3; + else if (Format32) p += 4; + } + } + p += nOffset; + } + original_bm.UnlockBits(bmd); + } + MST(Buffer); + return Buffer; + } + + /// + /// Get the height of the image + /// + /// 2D array that contains the image + /// Image Height + public static int GetHeight(RGBPixel[,] ImageMatrix) + { + return ImageMatrix.GetLength(0); + } + + /// + /// Get the width of the image + /// + /// 2D array that contains the image + /// Image Width + public static int GetWidth(RGBPixel[,] ImageMatrix) + { + return ImageMatrix.GetLength(1); + } + + /// + /// Display the given image on the given PictureBox object + /// + /// 2D array that contains the image + /// PictureBox object to display the image on it + public static void DisplayImage(RGBPixel[,] ImageMatrix, PictureBox PicBox) + { + // Create Image: + //============== + int Height = ImageMatrix.GetLength(0); + int Width = ImageMatrix.GetLength(1); + + Bitmap ImageBMP = new Bitmap(Width, Height, PixelFormat.Format24bppRgb); + + unsafe + { + BitmapData bmd = ImageBMP.LockBits(new Rectangle(0, 0, Width, Height), ImageLockMode.ReadWrite, ImageBMP.PixelFormat); + int nWidth = 0; + nWidth = Width * 3; + int nOffset = bmd.Stride - nWidth; + byte* p = (byte*)bmd.Scan0; + for (int i = 0; i < Height; i++) + { + for (int j = 0; j < Width; j++) + { + p[2] = ImageMatrix[i, j].red; + p[1] = ImageMatrix[i, j].green; + p[0] = ImageMatrix[i, j].blue; + p += 3; + } + + p += nOffset; + } + ImageBMP.UnlockBits(bmd); + } + PicBox.Image = ImageBMP; + } + + + /// + /// Apply Gaussian smoothing filter to enhance the edge detection + /// + /// Colored image matrix + /// Gaussian mask size + /// Gaussian sigma + /// smoothed color image + public static RGBPixel[,] GaussianFilter1D(RGBPixel[,] ImageMatrix, int filterSize, double sigma) + { + int Height = GetHeight(ImageMatrix); + int Width = GetWidth(ImageMatrix); + + RGBPixelD[,] VerFiltered = new RGBPixelD[Height, Width]; + RGBPixel[,] Filtered = new RGBPixel[Height, Width]; + + + // Create Filter in Spatial Domain: + //================================= + //make the filter ODD size + if (filterSize % 2 == 0) filterSize++; + + double[] Filter = new double[filterSize]; + + //Compute Filter in Spatial Domain : + //================================== + double Sum1 = 0; + int HalfSize = filterSize / 2; + for (int y = -HalfSize; y <= HalfSize; y++) + { + //Filter[y+HalfSize] = (1.0 / (Math.Sqrt(2 * 22.0/7.0) * Segma)) * Math.Exp(-(double)(y*y) / (double)(2 * Segma * Segma)) ; + Filter[y + HalfSize] = Math.Exp(-(double)(y * y) / (double)(2 * sigma * sigma)); + Sum1 += Filter[y + HalfSize]; + } + for (int y = -HalfSize; y <= HalfSize; y++) + { + Filter[y + HalfSize] /= Sum1; + } + + //Filter Original Image Vertically: + //================================= + int ii, jj; + RGBPixelD Sum; + RGBPixel Item1; + RGBPixelD Item2; + + for (int j = 0; j < Width; j++) + for (int i = 0; i < Height; i++) + { + Sum.red = 0; + Sum.green = 0; + Sum.blue = 0; + for (int y = -HalfSize; y <= HalfSize; y++) + { + ii = i + y; + if (ii >= 0 && ii < Height) + { + Item1 = ImageMatrix[ii, j]; + Sum.red += Filter[y + HalfSize] * Item1.red; + Sum.green += Filter[y + HalfSize] * Item1.green; + Sum.blue += Filter[y + HalfSize] * Item1.blue; + } + } + VerFiltered[i, j] = Sum; + } + + //Filter Resulting Image Horizontally: + //=================================== + for (int i = 0; i < Height; i++) + for (int j = 0; j < Width; j++) + { + Sum.red = 0; + Sum.green = 0; + Sum.blue = 0; + for (int x = -HalfSize; x <= HalfSize; x++) + { + jj = j + x; + if (jj >= 0 && jj < Width) + { + Item2 = VerFiltered[i, jj]; + Sum.red += Filter[x + HalfSize] * Item2.red; + Sum.green += Filter[x + HalfSize] * Item2.green; + Sum.blue += Filter[x + HalfSize] * Item2.blue; + } + } + Filtered[i, j].red = (byte)Sum.red; + Filtered[i, j].green = (byte)Sum.green; + Filtered[i, j].blue = (byte)Sum.blue; + } + + return Filtered; + } + + public static Dictionary G; + + public static Dictionary, double> constructGrapgh(RGBPixel[,] imageMatrix) + { + int height = GetHeight(imageMatrix), width = GetWidth(imageMatrix); + Dictionary distinctColors = new Dictionary(); + Dictionary, double> Graph = new Dictionary, double>(); + for (int i = 0; i < height; i++) + { + for (int j = 0; j < width; j++) + { + distinctColors[imageMatrix[i, j]] = 1; + } + } + foreach (KeyValuePair i in distinctColors) + { + foreach (KeyValuePair j in distinctColors) + { + int x = j.Key.red; + if (i.Key.red == j.Key.red && i.Key.blue == j.Key.blue && i.Key.green == j.Key.green) + { + continue; + } + KeyValuePair currentNode = new KeyValuePair(i.Key, j.Key); + Graph[currentNode] = (GetEgdeWeight(i.Key, j.Key)); + + } + + } + return Graph; + } + + public static double GetEgdeWeight(RGBPixel Color1, RGBPixel Color2) + { + return Math.Sqrt((Math.Pow(Color1.blue - Color2.blue, 2)) + (Math.Pow(Color1.red - Color2.red, 2)) + (Math.Pow(Color1.green - Color2.green, 2))); + } + + public static Dictionary, double> Sorttt(RGBPixel[,] imageMatrix) + { + Dictionary, double> Graph = constructGrapgh(imageMatrix); + + Dictionary, double> Graph2 = new Dictionary, double>(); + + foreach (KeyValuePair, double> item in Graph.OrderBy(key => key.Value)) + { + Graph2[item.Key] = item.Value; + } + + return Graph2; + } + + public struct DisjointSets + { + + Dictionary parent; + Dictionary rank; + // Constructor. + public DisjointSets(Dictionary, double> aa) + { + parent = new Dictionary(); + rank = new Dictionary(); + foreach (var item in aa) + { + + KeyValuePair p = item.Key; + parent[p.Key] = p.Key; + parent[p.Value] = p.Value; + rank[p.Value] = 0; + rank[p.Key] = 0; + } + } + public RGBPixel find(RGBPixel r) + { + if (r.blue != parent[r].blue && r.red != parent[r].red && r.green != parent[r].green) + parent[r] = find(parent[r]); + return parent[r]; + } + + public void merge(RGBPixel x, RGBPixel y) + { + x = find(x); + y = find(y); + + if (rank[x] > rank[y]) + parent[y] = x; + else + parent[x] = y; + + if (rank[x] == rank[y]) + rank[y]++; + } + }; + + public static double MST(RGBPixel[,] imageMatrix) + { + + Dictionary, double> Graphh = Sorttt(imageMatrix); + + double W = 0; + DisjointSets ds = new DisjointSets(Graphh); + foreach (var item in Graphh) + { + KeyValuePair p = item.Key; + RGBPixel u = p.Value; + RGBPixel v = p.Key; + + RGBPixel set_u = ds.find(u); + RGBPixel set_v = ds.find(v); + if (set_u.blue != set_v.blue && set_u.red != set_v.red && set_u.green != set_v.green) + { + W += item.Value; + ds.merge(set_u, set_v); + } + } + + return W; + + } + + } + +} diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageQuantization.csproj b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageQuantization.csproj new file mode 100644 index 0000000..ad08101 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/ImageQuantization.csproj @@ -0,0 +1,88 @@ + + + + Debug + AnyCPU + 8.0.50727 + 2.0 + {7CA8077F-C27A-400D-B6C9-7737665499AC} + WinExe + Properties + ImageQuantization + ImageQuantization + v4.0 + + + + + 2.0 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + Form + + + MainForm.cs + + + + + + Designer + MainForm.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + \ No newline at end of file diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.Designer.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.Designer.cs new file mode 100644 index 0000000..699525b --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.Designer.cs @@ -0,0 +1,300 @@ +namespace ImageQuantization +{ + partial class MainForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.pictureBox2 = new System.Windows.Forms.PictureBox(); + this.btnOpen = new System.Windows.Forms.Button(); + this.label1 = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.btnGaussSmooth = new System.Windows.Forms.Button(); + this.label3 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.txtHeight = new System.Windows.Forms.TextBox(); + this.nudMaskSize = new System.Windows.Forms.NumericUpDown(); + this.txtWidth = new System.Windows.Forms.TextBox(); + this.label5 = new System.Windows.Forms.Label(); + this.label6 = new System.Windows.Forms.Label(); + this.txtGaussSigma = new System.Windows.Forms.TextBox(); + this.panel1 = new System.Windows.Forms.Panel(); + this.panel2 = new System.Windows.Forms.Panel(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaskSize)).BeginInit(); + this.panel1.SuspendLayout(); + this.panel2.SuspendLayout(); + this.SuspendLayout(); + // + // pictureBox1 + // + this.pictureBox1.Location = new System.Drawing.Point(4, 4); + this.pictureBox1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(427, 360); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.pictureBox1.TabIndex = 0; + this.pictureBox1.TabStop = false; + // + // pictureBox2 + // + this.pictureBox2.Location = new System.Drawing.Point(4, 4); + this.pictureBox2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.pictureBox2.Name = "pictureBox2"; + this.pictureBox2.Size = new System.Drawing.Size(412, 360); + this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.pictureBox2.TabIndex = 1; + this.pictureBox2.TabStop = false; + // + // btnOpen + // + this.btnOpen.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnOpen.Location = new System.Drawing.Point(480, 526); + this.btnOpen.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.btnOpen.Name = "btnOpen"; + this.btnOpen.Size = new System.Drawing.Size(109, 76); + this.btnOpen.TabIndex = 2; + this.btnOpen.Text = "Open Image"; + this.btnOpen.UseVisualStyleBackColor = true; + this.btnOpen.Click += new System.EventHandler(this.btnOpen_Click); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label1.Location = new System.Drawing.Point(217, 484); + this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(162, 24); + this.label1.TabIndex = 3; + this.label1.Text = "Original Image"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label2.Location = new System.Drawing.Point(807, 484); + this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(184, 24); + this.label2.TabIndex = 4; + this.label2.Text = "Smoothed Image"; + // + // btnGaussSmooth + // + this.btnGaussSmooth.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnGaussSmooth.Location = new System.Drawing.Point(628, 526); + this.btnGaussSmooth.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.btnGaussSmooth.Name = "btnGaussSmooth"; + this.btnGaussSmooth.Size = new System.Drawing.Size(109, 76); + this.btnGaussSmooth.TabIndex = 5; + this.btnGaussSmooth.Text = "Gauss Smooth"; + this.btnGaussSmooth.UseVisualStyleBackColor = true; + this.btnGaussSmooth.Click += new System.EventHandler(this.btnGaussSmooth_Click); + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label3.Location = new System.Drawing.Point(788, 529); + this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(94, 21); + this.label3.TabIndex = 7; + this.label3.Text = "Mask Size"; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label4.Location = new System.Drawing.Point(788, 577); + this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(120, 21); + this.label4.TabIndex = 9; + this.label4.Text = "Gauss Sigma"; + // + // txtHeight + // + this.txtHeight.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.txtHeight.Location = new System.Drawing.Point(375, 574); + this.txtHeight.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.txtHeight.Name = "txtHeight"; + this.txtHeight.ReadOnly = true; + this.txtHeight.Size = new System.Drawing.Size(75, 27); + this.txtHeight.TabIndex = 8; + // + // nudMaskSize + // + this.nudMaskSize.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.nudMaskSize.Increment = new decimal(new int[] { + 2, + 0, + 0, + 0}); + this.nudMaskSize.Location = new System.Drawing.Point(913, 527); + this.nudMaskSize.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.nudMaskSize.Maximum = new decimal(new int[] { + 99, + 0, + 0, + 0}); + this.nudMaskSize.Minimum = new decimal(new int[] { + 3, + 0, + 0, + 0}); + this.nudMaskSize.Name = "nudMaskSize"; + this.nudMaskSize.Size = new System.Drawing.Size(76, 27); + this.nudMaskSize.TabIndex = 10; + this.nudMaskSize.Value = new decimal(new int[] { + 3, + 0, + 0, + 0}); + // + // txtWidth + // + this.txtWidth.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.txtWidth.Location = new System.Drawing.Point(375, 527); + this.txtWidth.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.txtWidth.Name = "txtWidth"; + this.txtWidth.ReadOnly = true; + this.txtWidth.Size = new System.Drawing.Size(75, 27); + this.txtWidth.TabIndex = 11; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label5.Location = new System.Drawing.Point(301, 530); + this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(61, 21); + this.label5.TabIndex = 12; + this.label5.Text = "Width"; + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label6.Location = new System.Drawing.Point(301, 577); + this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(67, 21); + this.label6.TabIndex = 13; + this.label6.Text = "Height"; + // + // txtGaussSigma + // + this.txtGaussSigma.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.txtGaussSigma.Location = new System.Drawing.Point(913, 574); + this.txtGaussSigma.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.txtGaussSigma.Name = "txtGaussSigma"; + this.txtGaussSigma.Size = new System.Drawing.Size(75, 27); + this.txtGaussSigma.TabIndex = 14; + this.txtGaussSigma.Text = "1"; + // + // panel1 + // + this.panel1.AutoScroll = true; + this.panel1.AutoScrollMinSize = new System.Drawing.Size(1, 1); + this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; + this.panel1.Controls.Add(this.pictureBox1); + this.panel1.Location = new System.Drawing.Point(16, 15); + this.panel1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(583, 456); + this.panel1.TabIndex = 15; + // + // panel2 + // + this.panel2.AutoScroll = true; + this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; + this.panel2.Controls.Add(this.pictureBox2); + this.panel2.Location = new System.Drawing.Point(628, 15); + this.panel2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(560, 456); + this.panel2.TabIndex = 16; + // + // MainForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(1205, 615); + this.Controls.Add(this.panel2); + this.Controls.Add(this.panel1); + this.Controls.Add(this.txtGaussSigma); + this.Controls.Add(this.label6); + this.Controls.Add(this.label5); + this.Controls.Add(this.txtWidth); + this.Controls.Add(this.nudMaskSize); + this.Controls.Add(this.label4); + this.Controls.Add(this.txtHeight); + this.Controls.Add(this.label3); + this.Controls.Add(this.btnGaussSmooth); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.btnOpen); + this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); + this.Name = "MainForm"; + this.Text = "Image Quantization..."; + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.nudMaskSize)).EndInit(); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); + this.panel2.ResumeLayout(false); + this.panel2.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.PictureBox pictureBox1; + private System.Windows.Forms.PictureBox pictureBox2; + private System.Windows.Forms.Button btnOpen; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Button btnGaussSmooth; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.TextBox txtHeight; + private System.Windows.Forms.NumericUpDown nudMaskSize; + private System.Windows.Forms.TextBox txtWidth; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.TextBox txtGaussSigma; + private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.Panel panel2; + } +} + diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.cs new file mode 100644 index 0000000..c34df34 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; + +namespace ImageQuantization +{ + public partial class MainForm : Form + { + public MainForm() + { + InitializeComponent(); + } + + RGBPixel[,] ImageMatrix; + + private void btnOpen_Click(object sender, EventArgs e) + { + OpenFileDialog openFileDialog1 = new OpenFileDialog(); + if (openFileDialog1.ShowDialog() == DialogResult.OK) + { + //Open the browsed image and display it + string OpenedFilePath = openFileDialog1.FileName; + ImageMatrix = ImageOperations.OpenImage(OpenedFilePath); + ImageOperations.DisplayImage(ImageMatrix, pictureBox1); + } + txtWidth.Text = ImageOperations.GetWidth(ImageMatrix).ToString(); + txtHeight.Text = ImageOperations.GetHeight(ImageMatrix).ToString(); + } + + private void btnGaussSmooth_Click(object sender, EventArgs e) + { + double sigma = double.Parse(txtGaussSigma.Text); + int maskSize = (int)nudMaskSize.Value ; + ImageMatrix = ImageOperations.GaussianFilter1D(ImageMatrix, maskSize, sigma); + ImageOperations.DisplayImage(ImageMatrix, pictureBox2); + } + + + + } +} \ No newline at end of file diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.resx b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.resx new file mode 100644 index 0000000..d58980a --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/MainForm.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Program.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Program.cs new file mode 100644 index 0000000..daadacf --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Windows.Forms; + +namespace ImageQuantization +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + + + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new MainForm()); + } + } +} \ No newline at end of file diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/AssemblyInfo.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..343fe02 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/AssemblyInfo.cs @@ -0,0 +1,33 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("IntelligentScissors")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Home")] +[assembly: AssemblyProduct("IntelligentScissors")] +[assembly: AssemblyCopyright("Copyright © Home 2009")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("cbb49b1a-1dc1-45f2-99cc-c9e1de537251")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.Designer.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.Designer.cs new file mode 100644 index 0000000..3bf2611 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.Designer.cs @@ -0,0 +1,63 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ImageQuantization.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ImageQuantization.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + } +} diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.resx b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.Designer.cs b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.Designer.cs new file mode 100644 index 0000000..bcb019b --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ImageQuantization.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + } +} diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.settings b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.exe b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.exe new file mode 100644 index 0000000000000000000000000000000000000000..15ed89c374ccf1a45c6fba6a01b9a63581941738 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.pdb b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/bin/Debug/ImageQuantization.pdb new file mode 100644 index 0000000000000000000000000000000000000000..138e231ff6da52ac0a3296efe301624b71ce6cba GIT binary patch literal 36352 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 literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.Properties.Resources.resources b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.Properties.Resources.resources new file mode 100644 index 0000000000000000000000000000000000000000..6c05a9776bd7cbae976fdcec7e3a254e93018279 GIT binary patch literal 180 zcmX?i>is@O1_p+SK%5g?SzMBus~417oL^d$oLUTL1*ImYq!#HYR*8GxXUf^%t3Noi54ZC+|=Nl{{sjzU0bQch;FcWPxwes*e}ZIZcpqG__J onW3ezNveT`r81^vrFkWpxv4PQgHubGfR2KJ07n-P+5+SQ04Y>DD*ylh literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.FileListAbsolute.txt b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..27a453e --- /dev/null +++ b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.FileListAbsolute.txt @@ -0,0 +1,8 @@ +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\bin\Debug\ImageQuantization.exe +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\bin\Debug\ImageQuantization.pdb +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.csprojAssemblyReference.cache +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.MainForm.resources +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.Properties.Resources.resources +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.csproj.GenerateResource.cache +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.exe +C:\Users\Andrew\Desktop\Image-Color-Quantization--master\Image Quantization Startup Code\[TEMPLATE] ImageQuantization\ImageQuantization\obj\Debug\ImageQuantization.pdb diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.GenerateResource.cache b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csproj.GenerateResource.cache new file mode 100644 index 0000000000000000000000000000000000000000..bebd6800842ed988f3773cac46bb998eec6b5cda GIT binary patch literal 1015 zcma)4!D`z;5S3!dv1GfI4<(fLU`h`K8(}q=_F@8Ya2py!T8Gd>X<2JWWbs;Sc2^0?Y@1p&v6~c`HMkcip~zEuXB-VWmIP4!$L?NpE0vC z@lvfv z2@R=Ly6i73vp}Uo1Ps0z(1JYJ_(Nug*TzFLa@5WsOgeQve8KW8PUQePm zRqGAYpd+G~Dh{VwT?!7mMTG?p&BNC;&2uITFi6>Oe81hQ<2t@M>t&6C<9p}-`S|vL z9N)UW|<(IQ{a zRjSY_n5rESK{dlJE`mpxB085MqO&P{>LvB|xNp({mMVkNgS6$=jb?9arIM^T$S~z> z4bSe>B{O!exX1+XCwF>qC5$yqG)dR3uKgHE0+Rh>@Ot#C{Qc8)NkpZlM?KQN?ez#w J(W4$k`yYT67i$0j literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csprojAssemblyReference.cache b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..de1b3c20d421631c70c4d1f35d6dd22f726c2ed1 GIT binary patch literal 1724 zcmcJP+iuf95Qf)@?dDJ*oXV*na|dc^03@QK%EMajpPp(nWHL1I5iL+0CK zDreFjZ~<-W5QGeQ-0$@4j_ue^+Zv=SNd@#{NE1O>+d4=mEcBkka?EEC_a{y_=migg zPRH*#v`Y;%yIt%tTFL~XQ9=_ysvd+4vbXB?=}#&O#=uKd2-1E=<#9qM3^3|?Rf&%B zU({4U;{~Vwka`Ih8>@VpD%=5&=2U>F;s1`p&!DT1(mbRr1xZMi7)G#>v&sfvSi*F|-QiiZUkGuM9gbo}S-Z%-v+``-g|W{U(jIaV$;_~!3@7CoVq0WBP33b`f=?tpE?79p zOg5FthZ0OyM*`2mnR4s3PZOG@a#s03d8zCRx(MSbTD7nX@p#wIp|nu47QKM0izt^+ zE~9KIF_7C?chg^E@U&9dP};$U%vRW`)rkALx@Q#{>psk-DRF#BLnJ34DnU$0rBcyI zy{6&3B43w3zkm5w!wJx6G|Vgb#P+niPPg-rXc#8Okq58lK}@9xyp{(s-6HUM9>kIq cfj9CXmaPcf&VyLmBJgG&#PSz`w{l?fH?Vv02LJ#7 literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.exe b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.exe new file mode 100644 index 0000000000000000000000000000000000000000..15ed89c374ccf1a45c6fba6a01b9a63581941738 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.pdb b/Image-Color-Quantization--master/Image Quantization Startup Code/[TEMPLATE] ImageQuantization/ImageQuantization/obj/Debug/ImageQuantization.pdb new file mode 100644 index 0000000000000000000000000000000000000000..138e231ff6da52ac0a3296efe301624b71ce6cba GIT binary patch literal 36352 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