예제 #1
0
        private void SaveAllSettings()
        {
            //設定の保存をするぞい
            //バイナリも含んでいるので、バイナリシリアル化
            string fileName;

            using (var diag = new fm.SaveFileDialog())
            {
                diag.Filter = "全てのファイル|*";
                var result = diag.ShowDialog();
                if (result == fm.DialogResult.OK)
                {
                    fileName = diag.FileName;
                }
                else
                {
                    return;
                }
            }

            var obj = new SettingsForSave(PictureDatas)
            {
                SeparatingValue     = this.SeparatingValue,
                IsShowingBinaryPict = this.IsShowingBinaryPict,
                UsingOtsuMethod     = this.UsingOtsuMethod,
                Memo            = this.Memo,
                StepSizes       = this.StepSize,
                UsingMedianBlur = this.UsingMedianBlur
            };

            obj.Save(fileName);
        }
예제 #2
0
        private void SaveAreaInformation()
        {
            StringBuilder strb = new StringBuilder();

            strb.AppendFormat("{0},{1},{2},{3},{4}\n",
                              "filename",
                              "x",
                              "y",
                              "width",
                              "height");

            foreach (var pict in PictureDatas)
            {
                string fileName = pict.FileName;

                foreach (var calcArea in pict.CalcAreas)
                {
                    strb.AppendFormat("{0},{1},{2},{3},{4}\n",
                                      fileName,
                                      calcArea.X,
                                      calcArea.Y,
                                      calcArea.Width,
                                      calcArea.Height);
                }
            }



            string saveFileName;

            using (var diag = new fm.SaveFileDialog())
            {
                diag.Filter = "CSVファイル|*.csv";
                var result = diag.ShowDialog();
                if (result == fm.DialogResult.OK)
                {
                    saveFileName = diag.FileName;
                }
                else
                {
                    return;
                }
            }

            var stw = new StreamWriter(saveFileName);

            stw.Write(strb.ToString());
            stw.Close();
        }
예제 #3
0
        private void CalcHLAC()
        {
            string fileName;

            using (var diag = new fm.SaveFileDialog())
            {
                diag.Filter = "CSVファイル|*.csv";
                var result = diag.ShowDialog();
                if (result == fm.DialogResult.OK)
                {
                    fileName = diag.FileName;
                }
                else
                {
                    return;
                }
            }


            StringBuilder strBuilder = new StringBuilder();

            foreach (var obj in PictureDatas)
            {
                foreach (var rect in obj.CalcAreas)
                {
                    RectAndFeature features;
                    features = HLACCalculator.GetFeatures(obj.GetBinaryMat(), rect, StepSize);
                    strBuilder.AppendLine(string.Join(",", features.Features));
                }
            }

            StreamWriter stw = new StreamWriter(fileName);

            stw.Write(strBuilder.ToString());
            stw.Close();
        }