private void LoadImage() { EmguCV.LoadImage(); originalImage.Source = EmguCV.GetOriginalBitmap(); resultImage.Source = EmguCV.GetResultBitmap(); saveImageButton.IsEnabled = true; ProcessImage(); }
private void ProcessImage() { if (!EmguCV.IsImageLoaded() || isUpdateRequired) { return; } if (isProcessing && !isUpdateRequired) { isUpdateRequired = true; while (!isProcessing) { ; } isUpdateRequired = false; } isProcessing = true; EmguCV.ReloadResultImage(); Stopwatch stopwatch = Stopwatch.StartNew(); Preprocessing(); preprocessingImage.Source = EmguCV.GetResultBitmap(); stopwatch.Stop(); preprocessingTimeTextBox.Text = stopwatch.ElapsedMilliseconds.ToString(); stopwatch.Restart(); System.Drawing.Point position = DetectFish(); stopwatch.Stop(); detectionTimeTextBox.Text = stopwatch.ElapsedMilliseconds.ToString(); objectPositionXTextBox.Text = position.X.ToString(); objectPositionYTextBox.Text = position.Y.ToString(); resultImage.Source = EmguCV.GetResultBitmap(); isProcessing = false; }