Example #1
0
        private void ProcessImage()
        {
            switch (currentStep)
            {
            case 0:
                this.Text  = "GrayValue";
                this.image = new Image(InputImage);
                break;

            case 1:
                this.Text = "Smoothing";
                image.Apply(Operation.Operations.Smoothing);
                break;

            case 2:
                this.Text = "Edges + subtraction";
                Image temp = new Image(image.GetPixels(), image.Size);
                image.Apply(Operation.Operations.Edges);

                //image = Addition.Apply(image, temp);
                image = new Image(image.GetPixels(), image.Size);

                image = Minval.Apply(image, temp);
                break;

            case 3:
                    << << << < HEAD
                    this.Text = "Opening";
                image.Apply(Operation.Operations.Opening);
                break;

            case 4:
                this.Text = "Closing";
                image.Apply(Operation.Operations.Closing);
                break;

            case 5:
                this.Text = "Colouring";
                ObjectDetection od = new ObjectDetection(image);
                od.Apply();
                ObjectFiltering of = new ObjectFiltering(od.objects);
                of.Apply();
                image         = new Coloring(of.coffeeMugObjectList).ConstructNewImage(image.Size);
                == == ==      =
                    this.Text = "Negative Threshold";
                image.Apply(Operation.Operations.NegativeThreshold);