Пример #1
0
        private ImageSource RenderBitmap(Bitmap bitmap, List <RenderLine> rl_list, Tuple <List <ConnectedComponent>, double, double>[,] cc_tuple_list)
        {
            foreach (var rl in rl_list)
            {
                DrawLine(bitmap, rl);
            }

            //Create un
            for (int i = 0; i < cc_tuple_list.GetLength(0); i++)
            {
                for (int j = 0; j < cc_tuple_list.GetLength(1); j++)
                {
                    double offsetX = cc_tuple_list[i, j].Item2;
                    double offsetY = cc_tuple_list[i, j].Item3;
                    foreach (var cc in cc_tuple_list[i, j].Item1)
                    {
                        DrawComponent(bitmap, cc, offsetX, offsetY);
                    }
                }
            }

            ModelRendererBitmapSource renderer = new ModelRendererBitmapSource(bitmap);

            renderer.Render();
            return(renderer.RenderedImage);
        }
Пример #2
0
        private ImageSource RenderBitmap(Bitmap bitmap)
        {
            ModelRendererBitmapSource renderer = new ModelRendererBitmapSource(bitmap);

            renderer.Render();
            return(renderer.RenderedImage);
        }
Пример #3
0
        private ImageSource RenderBitmap(Bitmap bitmap, List <RenderLine> rl_list)
        {
            foreach (var rl in rl_list)
            {
                DrawLine(bitmap, rl);
            }

            ModelRendererBitmapSource renderer = new ModelRendererBitmapSource(bitmap);

            renderer.Render();
            return(renderer.RenderedImage);
        }
Пример #4
0
        public ModelToken(IModelApplication application, string filePathImage, string filePathJson)
        {
            _application   = application;
            _filePathImage = filePathImage;
            _filePathJson  = filePathJson;
            _bitmapSource  = new Bitmap(filePathImage);

            if ((_bitmapSource.PixelFormat == System.Drawing.Imaging.PixelFormat.Format8bppIndexed) ||
                (_bitmapSource.PixelFormat == System.Drawing.Imaging.PixelFormat.Format32bppArgb))
            {
                _bitmapSource = ToolsConvolution.ConvertTo24(_bitmapSource);
            }

            Bitmap bitmapTemp = new Grayscale(1, 0, 0).Apply(_bitmapSource);

            bitmapTemp = new Erosion().Apply(bitmapTemp);
            bitmapTemp = new Threshold(160).Apply(bitmapTemp);
            bitmapTemp = new Invert().Apply(bitmapTemp);

            _kernel    = ToolsConvolution.BitMapToDoubleArray(bitmapTemp, 0.5);
            _threshold = new ModelValueDouble(application.EventTokenChanged, 0);
            _weigth    = new ModelValueDouble(application.EventTokenChanged, 0);


            ModelRendererBitmapSource renderer = new ModelRendererBitmapSource(_bitmapSource);

            renderer.Render();
            Image = renderer.RenderedImage;



            ModelRendererBitmapSource rendererProcessed = new ModelRendererBitmapSource(bitmapTemp);

            rendererProcessed.Render();
            ImageProcessed = rendererProcessed.RenderedImage;

            if (File.Exists(filePathJson))
            {
                Load();
            }
            else
            {
                this._threshold = new ModelValueDouble(_application.EventTokenChanged, 0.8);
                this._weigth    = new ModelValueDouble(_application.EventTokenChanged, 1.0);
                this._label     = filePathImage.Split('_')[1];
                Save();
            }
        }
Пример #5
0
        private ImageSource RenderBitmap(Bitmap bitmap, List <RenderLine> rl_list, List <ConnectedComponent> cc_list)
        {
            foreach (var rl in rl_list)
            {
                DrawLine(bitmap, rl);
            }

            foreach (var cc in cc_list)
            {
                DrawComponent(bitmap, cc);
            }

            ModelRendererBitmapSource renderer = new ModelRendererBitmapSource(bitmap);

            renderer.Render();
            return(renderer.RenderedImage);
        }