Esempio n. 1
0
        string csvフォーマットを取得(IplImage src, CvSize size,string type)
        {
            string info = "";
            double 平均, 分散;

            平均 = src.Avg().Val0;
            double sum = 0, max = 0, min = 255;
            for (int x = 0; x < size.Width; x++)
                for (int y = 0; y < size.Height; y++)
                {
                    //CvScalar cs = Cv.Get2D(src, y, x);
                    double val = Cv.Get2D(src, y, x).Val0;
                    sum += Math.Pow(val - 平均, 2);
                    if (val > max) max = val;
                    if (val < min) min = val;
                }
            分散 = sum / (size.Width * size.Height);
            info = 平均.ToString("f")+","+分散.ToString("f")+","+max.ToString("f")+","+min.ToString("f")+","+type;

            return info;
        }
Esempio n. 2
0
        private string 画像情報を取得(IplImage src,CvSize size)
        {
            string info="";
            double 平均, 分散;

            平均 = src.Avg().Val0;
            double sum = 0,max=0,min=255;
            for (int x = 0; x < size.Width; x++)
                for (int y = 0; y < size.Height; y++)
                {
                    CvScalar cs = Cv.Get2D(src, y, x);
                    double val = Cv.Get2D(src, y, x).Val0;
                    sum += Math.Pow(val - 平均, 2);
                    if (val > max) max = val;
                    if (val < min) min = val;
                }
            分散 = sum / (size.Width * size.Height);
            info =     "平均="+平均.ToString("f") + "\n"
                     + "分散="+分散.ToString("f") + "\n"
                     + "最大="+max.ToString("f")  + "\n"
                     + "最小="+min.ToString("f");

            return info;
        }
Esempio n. 3
0
        private void OnClick_検査対象(object sender, EventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog()
            {
                Multiselect = false,  // 複数選択の可否
                Filter =  // フィルタ
                "画像ファイル|*.bmp;*.gif;*.jpg;*.png|全てのファイル|*.*",
            };
            //ダイアログを表示
            DialogResult result = dialog.ShowDialog();
            if (result == DialogResult.OK)
            {
                // ファイル名をタイトルバーに設定
                this.Text = dialog.SafeFileName;
                if (検査対象 != null) 検査対象.Dispose();
                if (背景 != null) 背景.Dispose();

                検査対象 = Cv.LoadImage(dialog.FileName, LoadMode.GrayScale);
                背景 = 検査対象.Clone();

                if (マスク画像 != null && 検査対象 != null)
                {
                    合成画像 = 検査対象.Clone();
                    合成画像 = 画像合成(検査対象,マスク画像);
                    背景 = 合成画像;

                }
                //評価画面.Instance.Show();
                pictureBoxIpl1.ImageIpl = 背景;

                System.Diagnostics.Debug.WriteLine("検査対象画像の平均=" + 検査対象.Avg().Val0.ToString("f"));
            }
        }