Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Emgu.CV;
- using Emgu.CV.UI;
- using Emgu.CV.Structure;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Drawing;
- using System.Runtime.InteropServices;
- using System.Windows.Forms;
- using System.ComponentModel;
- using System.Data;
- namespace Vmouse
- {
- public partial class MouseControls : Form
- {
- private ParameterSettings ps;
- private Thread T1;
- private Capture _capture;
- private Image<Bgr, Byte> frame;
- private Emgu.CV.CvEnum.FLIP horizontal, vertical;
- public MouseControls(ParameterSettings ps)
- {
- this.ps = ps;
- InitializeComponent();
- T1 = new Thread(new ThreadStart(operate));
- _capture = new Capture(0);
- frame = _capture.QueryFrame();
- ps.temp1 = new Image<Bgr, Byte>(frame.Size);
- ps.temp2 = new Image<Gray, Byte>(frame.Size);
- ps.cs.initVariables(frame.Width, frame.Height);
- ps.init(frame.Size);
- horizontal = Emgu.CV.CvEnum.FLIP.HORIZONTAL;
- vertical = Emgu.CV.CvEnum.FLIP.VERTICAL;
- T1.Start();
- CheckForIllegalCrossThreadCalls = false;
- }
- public void operate()
- {
- // pictureBox1.Image = _capture.QueryFrame().Bitmap;
- while (true)
- {
- Image<Bgr, Byte> f = _capture.QueryFrame().Flip(horizontal).Flip(vertical);
- Image<Bgr, Byte> fcopy = f.Copy();
- ps.operate(fcopy);
- label14.Text = ps.Event_Generated == "LeftUp" ? "yes" : "no";
- label15.Text = ps.Event_Generated == "LeftDown" ? "yes" : "no";
- label16.Text = ps.Event_Generated == "RightUp" ? "yes" : "no";
- label17.Text = ps.Event_Generated == "RightDown" ? "yes" : "no";
- try
- {
- label8.Text = ps.current_coordinate.X.ToString();
- label9.Text = ps.current_coordinate.Y.ToString();
- label20.Text = ps.dx.ToString();
- label21.Text = ps.dy.ToString();
- label24.Text = System.Windows.Forms.Cursor.Position.ToString();
- label26.Text = ps.Event_Generated;
- }
- catch (Exception e)
- {
- label18.Text = e.Message;
- }
- pictureBox1.Image = f.Resize(pictureBox1.Width, pictureBox1.Height, Emgu.CV.CvEnum.INTER.CV_INTER_LINEAR).Bitmap;
- pictureBox2.Image = fcopy.Resize(pictureBox2.Width, pictureBox2.Height, Emgu.CV.CvEnum.INTER.CV_INTER_LINEAR).Bitmap;
- }
- }
- private void trackBar1_Scroll(object sender, EventArgs e)
- {
- }
- private void label8_Click(object sender, EventArgs e)
- {
- }
- private void label7_Click(object sender, EventArgs e)
- {
- }
- private void label19_Click(object sender, EventArgs e)
- {
- }
- private void label22_Click(object sender, EventArgs e)
- {
- }
- private void toolStripMenuItem2_Click(object sender, EventArgs e)
- {
- }
- private void button3_Click(object sender, EventArgs e)
- {
- }
- private void button2_Click(object sender, EventArgs e)
- {
- //parameter settings
- ps.Visible = true;
- }
- private void MouseControls_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (T1.IsAlive) T1.Abort();
- _capture.Dispose();
- }
- private void radioButton1_CheckedChanged(object sender, EventArgs e)
- {
- //flip horizontal
- horizontal = Emgu.CV.CvEnum.FLIP.HORIZONTAL;
- }
- private void radioButton2_CheckedChanged(object sender, EventArgs e)
- {
- // original horizotal
- horizontal = Emgu.CV.CvEnum.FLIP.NONE;
- }
- private void radioButton3_CheckedChanged(object sender, EventArgs e)
- {
- // flip vertical
- vertical = Emgu.CV.CvEnum.FLIP.VERTICAL;
- }
- private void radioButton4_CheckedChanged(object sender, EventArgs e)
- {
- // original vertical
- vertical = Emgu.CV.CvEnum.FLIP.NONE;
- }
- private void trackBar2_Scroll(object sender, EventArgs e)
- {
- ps.beta = ((double)trackBar2.Value / 100.0);
- label4.Text = "Sensitivity(beta)" + ((double)trackBar2.Value / 100.0).ToString();
- }
- private void trackBar3_Scroll(object sender, EventArgs e)
- {
- ps.alpha = (double)trackBar3.Value / 100000.0;
- label5.Text = "Accuracy(alpha)" + ((double)trackBar3.Value / 100000.0).ToString();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement