Example #1
0
 private void GenerateListFromSnapshot(SceneCalibrationSnapshot snapshot)
 {
     Data = new List <Tuple <string, Bitmap> >()
     {
         new Tuple <string, Bitmap>(nameof(snapshot.BinarizationImage), snapshot.BinarizationImage),
         new Tuple <string, Bitmap>(nameof(snapshot.CannyImage), snapshot.CannyImage),
         new Tuple <string, Bitmap>(nameof(snapshot.GrayImage), snapshot.GrayImage),
         new Tuple <string, Bitmap>(nameof(snapshot.MaskedColorImage), snapshot.MaskedColorImage)
     };
 }
Example #2
0
        public CalibrationSnapshotForm(MainGameForm mainForm, SceneCalibrationSnapshot snapshot)
        {
            this.MainForm = mainForm;

            InitializeComponent();

            var materialSkinManager = MaterialSkinManager.Instance;

            materialSkinManager.AddFormToManage(this);

            Update(snapshot);
        }
Example #3
0
        public void Update(SceneCalibrationSnapshot snapshot)
        {
            if (snapshot == null)
            {
                NameLabel.Text      = ProgramLocalization.NoDataArrived;
                LeftButton.Visible  = false;
                RightButton.Visible = false;
                return;
            }

            LeftButton.Visible  = true;
            RightButton.Visible = true;
            GenerateListFromSnapshot(snapshot);
            CurrentPosition = 0;
            UpdatePicturebox();
        }
        public (Chessboard3DReprezentation boardReprezentation, SceneCalibrationSnapshot snapshot) LocateChessboard(ChessboardTrackingCompleteData chessboardData)
        {
            var grayImage          = GetGrayImage(chessboardData.PlaneData.MaskedColorImageOfTable);
            var binarizedImage     = GetBinarizedImage(grayImage, chessboardData.UserParameters.OtzuActiveInBinarization, chessboardData.UserParameters.BinarizationThreshold);
            var cannyDetectorImage = ApplyCannyDetector(binarizedImage);

            var linesTuple = GetFilteredHoughLines(cannyDetectorImage);

            var snapshot = new SceneCalibrationSnapshot()
            {
                BinarizationImage = ((Bitmap)binarizedImage.Convert <Rgb, byte>().Bitmap.Clone()).HorizontalFlip(),
                CannyImage        = ((Bitmap)cannyDetectorImage.Convert <Rgb, byte>().Bitmap.Clone()).HorizontalFlip(),
                GrayImage         = ((Bitmap)grayImage.Convert <Rgb, byte>().Bitmap.Clone()).HorizontalFlip(),
                MaskedColorImage  = ((Bitmap)chessboardData.PlaneData.MaskedColorImageOfTable.Convert <Rgb, byte>().Bitmap.Clone()).HorizontalFlip()
            };

            var contractedPoints = LinesIntersections.GetIntersectionPointsOfTwoGroupsOfLines(linesTuple);

            var boardRepresentation = ChessboardFitting.ChessboardFittingAlgorithm(contractedPoints, chessboardData);

            return(boardRepresentation, snapshot);
        }
 public void UpdateCalibrationSnapshot(SceneCalibrationSnapshot snapshot)
 {
     MainForm?.UpdateCalibrationSnapshot(snapshot);
 }
 public SceneCalibrationSnapshotMessage(SceneCalibrationSnapshot snapshot)
 {
     Snapshot = snapshot;
 }
Example #7
0
 public void UpdateCalibrationSnapshot(SceneCalibrationSnapshot snapshot)
 {
     this.Snapshot = snapshot;
     SnapshotForm?.Update(snapshot);
 }