void Awake() { openCVImage = OpenCVImage.Instance(webCamHeight, webCamWidth); renderTexture = new RenderTexture (webCamWidth, webCamHeight, 16); screenShot = new Texture2D (webCamWidth, webCamHeight); screenShotRect = new Rect (0, 0, webCamWidth, webCamHeight); }
private int Percent(OpenCVImage picture) { var k1 = (int)((originalPictureBox.Height / (double)picture.Height) * 100); var k2 = (int)((originalPictureBox.Width / (double)picture.Width) * 100); var percent = Math.Min(k1, k2); return percent; }
public OpenCVImage OpenImage(string fileName) { try { Mat load = new Mat(fileName, LoadMode.AnyColor); OpenCVImage original = new OpenCVImage(load); return original; } catch { MessageBox.Show("ошибка при открытии картинки"); return null; } }
public ContinueExercise() { _srcBinaryImage = new Mat(); _removeBgImage = new Mat(); openCVImage = OpenCVImage.Instance(); size = new Size(5, 5); point = new Point(3, 3); StructuringElement = Cv2.GetStructuringElement(MorphShapes.Ellipse, size, point); }
public StepByStep() { openCVImage = OpenCVImage.Instance(); _srcBinaryImage = new Mat(); _middleImage = new Mat(); StructuringElement = Cv2.GetStructuringElement( MorphShapes.Ellipse, new Size(5, 5), new Point(3, 3)); _dstImageBuffer = new Mat(); stepImageBufferOfBuffer = new Mat(); stepImageBuffer = new Mat[2]; }
void Update() { if (this.isActiveAndEnabled) { text.text = (int)time + " / " + (int)(endTime - 1) + "초 안에 자세를 잡아주세요!\n" + currentExercise + " " + currentStep + " / " + maxStep; switch (currentStep) { case 1: time += Time.deltaTime; if (time >= endTime) { OpenCVImage.Instance().stepOne = true; nextCurrentStep(); okay.PlayOneShot(okay.clip); GameObject.Find("/ImageTarget/Beta") .GetComponent <BetaController>().nextStep(); } break; case 2: time += Time.deltaTime; if (time >= endTime) { OpenCVImage.Instance().stepTwo = true; nextCurrentStep(); okay.PlayOneShot(okay.clip); } break; case 3: text.text = "잘하셨습니다!"; if (!okay.isPlaying) { Init(); GameObject.Find("/ImageTarget/Beta") .GetComponent <BetaController>().endStep(); GameObject.Find("/ImageTarget/Beta") .GetComponent <BetaController>().stopExerciseAnimation(); GameObject.Find("/Managers/Canvas Manager") .GetComponent <CanvasManager>().nextCanvas(); } break; default: break; } } }
public override OpenCVImage ApplyFilter(Mat currentPicture) { try { Mat resultPicture = new Mat(); Cv2.Threshold(currentPicture, resultPicture, downLimit, upLimit, type); OpenCVImage result = new OpenCVImage(resultPicture); return result; } catch { MessageBox.Show("не удалось применить фильтр Threshold"); return new OpenCVImage(currentPicture); } }
public override OpenCVImage ApplyFilter(Mat picture) { try { var resultPicture = new Mat(); Cv2.CvtColor(picture, resultPicture, ColorConversion.BgraToGray); var result = new OpenCVImage(resultPicture); return result; } catch { MessageBox.Show("не удалось применить фильтр CvtColorToGray"); return new OpenCVImage(picture); } }
public override OpenCVImage ApplyFilter(Mat picture) { try { Mat resultPicture = new Mat(); Cv2.Dilate(picture, resultPicture, null); OpenCVImage result = new OpenCVImage(resultPicture); return result; } catch { MessageBox.Show("не удалось применить фильтр Dilate"); return new OpenCVImage(picture); } }
public override OpenCVImage ApplyFilter(Mat picture) { try { Mat resultPicture = new Mat(); Cv2.CvtColor(picture, resultPicture, ColorConversion.BgraToGray); Cv2.Canny(resultPicture, resultPicture, 10, 100, 3); OpenCVImage result = new OpenCVImage(resultPicture); return result; } catch (Exception e) { MessageBox.Show("не удалось применить фильтр Canny"); return new OpenCVImage(picture); } }
void Start() { openCVImage = OpenCVImage.Instance(); }
void Awake() { openCVImage = OpenCVImage.Instance(webCamHeight, webCamWidth); }
private void OnOpenMovieButtonClick(object sender, EventArgs e) { videoTimer.Stop(); openFileDialog.Filter = ""; if (openFileDialog.ShowDialog() == DialogResult.OK) { this.Text = filename = openFileDialog.FileName; } ShowOriginal(); persistFiltersButton.Visible = false; stopPlaybackButton.Visible = true; originalImage = null; }
private void OnSaveFilteredButtonClick(object sender, EventArgs e) { if (saveFileDialog.ShowDialog() == DialogResult.OK) { if (originalImage != null) { originalImage = originalImage.ApplyFilter(filter); originalImage.SaveToFile(saveFileDialog.FileName); } if (movie != null) { var currentFrame = movie.GetCurrentFrame(); var filtered = currentFrame.ApplyFilter(filter); filtered.SaveToFile(saveFileDialog.FileName); } } }
private void OnPersistFiltersButtonClick(object sender, EventArgs e) { originalImage = originalImage.ApplyFilter(filter); originalPictureBox.Image = originalImage.Resize(Percent(originalImage)).ToBitmap(); filteredPictureBox.Image = null; filteredPictureBox.BackColor = Control.DefaultBackColor; originalPictureBox.Image.Save(Application.StartupPath + "\\temp.jpeg"); this.Text = Application.StartupPath + "\\temp.jpeg"; }
private void OnApplyFilterButtonClick(object sender, EventArgs e) { var filterType = (FilterType)filterComboBox.SelectedValue; filter = Filter.Get(filterType); filteredImage = filteredImage.ApplyFilter(filter); if (movie != null) { videoTimer.Start(); } else { ShowResult(); } }
private void OnResetImageClick(object sender, EventArgs e) { filteredImage = originalImage; ShowResult(); }
void Awake() { openCVImage = OpenCVImage.Instance(webCamHeight, webCamWidth); webCamImage = new Texture2D(webCamHeight, webCamWidth); }
private void OnOpenImageButtonClick(object sender, EventArgs e) { videoTimer.Stop(); openFileDialog.Filter = "jpg|*.jpg| bmp|*.bmp|png|*.png"; if (openFileDialog.ShowDialog() == DialogResult.OK) { filename = openFileDialog.FileName; this.Text = filename; } originalImage = new Opener().OpenImage(filename); filteredImage = originalImage.Copy(); ShowOriginal(); movie = null; stopPlaybackButton.Visible = false; }