Ejemplo n.º 1
0
        public mFilterMask(Bitmap SourceBitmap, mFilters Filter)
        {
            BitmapType = 0;

            MaskBitmap = new Bitmap(SourceBitmap);

            MaskBitmap = new mSetFormat(MaskBitmap, mFilter.BitmapTypes.GrayScale16bpp).ModifiedBitmap;

            Effect = new MaskedFilter(Filter.Sequence[0], MaskBitmap);

            Sequence.Clear();
            Sequence.Add(Effect);
        }
Ejemplo n.º 2
0
        private void button1_Click_2(object sender, EventArgs e)
        {
            // create the filter

            Bitmap result = resultBitmap.Clone(new Rectangle(0, 0, resultBitmap.Width, resultBitmap.Height),
                                               PixelFormat.Format32bppRgb);
            Bitmap mask = resultBitmap.Clone(new Rectangle(0, 0, maskBitmap.Width, maskBitmap.Height),
                                             PixelFormat.Format32bppRgb);
            MaskedFilter maskedFilter = new MaskedFilter(new Sepia(), mask);

            // apply the filter
            maskedFilter.ApplyInPlace(result);
            pictureBox1.Image = result;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            disp1.SizeMode = PictureBoxSizeMode.StretchImage;
            disp2.SizeMode = PictureBoxSizeMode.StretchImage;
            disp3.SizeMode = PictureBoxSizeMode.StretchImage;
            System.Drawing.Image refimg  = System.Drawing.Image.FromFile("C:\\Users\\MohammadAlCheikhSale\\Desktop\\Final Hackathon\\RefImg.jpg");
            System.Drawing.Image caseimg = System.Drawing.Image.FromFile("C:\\Users\\MohammadAlCheikhSale\\Desktop\\Final Hackathon\\CaseImg.jpg");
            // create filter
            Difference filter = new Difference((Bitmap)refimg);
            // apply the filter
            Bitmap resultImage = filter.Apply((Bitmap)caseimg);

            disp1.Image = refimg;
            //ResultImage.Image = resultImage;
            disp2.Image = caseimg;
            show_result(resultImage);
            System.Threading.Thread.Sleep(5000);

            Grayscale gsfilter = new Grayscale(0.2125, 0.7154, 0.0721);
            Bitmap    gsImage  = gsfilter.Apply((Bitmap)caseimg);

            //ResultImage.Image = gsImage;

            System.Threading.Thread.Sleep(5000);

            Threshold bnFilter = new Threshold(100);
            Bitmap    bnImage  = bnFilter.Apply((Bitmap)gsImage);

            disp3.Image = bnImage;

            System.Threading.Thread.Sleep(5000);

            MaskedFilter mask     = new MaskedFilter(new Sepia(), bnImage);
            Bitmap       MasImage = mask.Apply((Bitmap)caseimg);

            disp3.Image = MasImage;

            /*HSLFiltering filter = new HSLFiltering(
             *  new IntRange(330, 30),    // hue range
             *  new Range(0, 1),    // saturation range
             *  new Range(0, 1));    // luminance range
             *
             * filter.UpdateLuminance = false;
             * filter.UpdateHue = false;
             * // apply the filter
             * filter.ApplyInPlace((Bitmap)proimg);*/

            /*Median filter = new Median();
             * // apply the filter
             * filter.ApplyInPlace((Bitmap)proimg);*/

            /*/ create grayscale filter (BT709)
             * Grayscale filter1 = new Grayscale(0.2125, 0.7154, 0.0721);
             * // apply the filter
             * Bitmap grayImage = filter1.Apply((Bitmap)proimg);
             *
             * // create filter
             * BlobsFiltering filter = new BlobsFiltering();
             * // configure filter
             * filter.CoupledSizeFiltering = true;
             * filter.MinWidth = 70;
             * filter.MinHeight = 70;
             * // apply the filter
             * filter.ApplyInPlace(grayImage);
             *
             * // create filter
             * Difference filter2 = new Difference(overlayImage);
             * // apply the filter
             * Bitmap resultImage = filter2.Apply(sourceImage);
             * procImage.Image = grayImage;*/



            /* BlobCounter bc = new BlobCounter();
             * bc.ProcessImage((Bitmap)resultImage);
             * Blob[] blobs = bc.GetObjectsInformation();
             */
        }