C# 和EmguCV
- C# 和EmguCV 推荐度:
- 相关推荐
C# 和EmguCV
想实现界面化的图像/视频处理算法,发现EmguCV封装了OPencv库,支持C#等,于是按照网上教程下载/安装来试试。
配置过程网上贴很多参考。
做了一个简单的界面,两个按钮,两个图片显示框,对选择的图片进行灰度化处理。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.CV.Structure;
using Emgu.Util;namespace Csharp
{public partial class Form1 : Form{public Form1(){InitializeComponent();}Image<Bgr, byte> dest;private void button1_Click(object sender, EventArgs e){//MessageBox.Show(textBox1.Text);OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.Filter = "BMP 文件 |*.bmp | JPG 文件 |*.jpg|JPEG 文件|*.jpeg|所有文件| *.*";if (openFileDialog.ShowDialog() == DialogResult.OK) {// CvInvoke.cvNamedWindow("打开图片");IntPtr img = CvInvoke.cvLoadImage(openFileDialog.FileName, Emgu.CV.CvEnum.LOAD_IMAGE_TYPE.CV_LOAD_IMAGE_ANYCOLOR);//CvInvoke.cvShowImage("打开图片",img);//CvInvoke.cvWaitKey(0);//CvInvoke.cvReleaseImage(ref img);//CvInvoke.cvDestroyWindow("打开图片");dest = new Image<Bgr, byte>(CvInvoke.cvGetSize(img));CvInvoke.cvCopy(img, dest, IntPtr.Zero);pictureBox1.Image = dest.ToBitmap();}}private void textBox1_TextChanged(object sender, EventArgs e){}private void pictureBox1_Click(object sender, EventArgs e){}private void button2_Click(object sender, EventArgs e){Image<Gray, Byte> grayImg = dest.Convert<Gray, Byte>();pictureBox2.Image = grayImg.ToBitmap();}private void pictureBox2_Click(object sender, EventArgs e){}}
}
最新文章
- 移动互联网应用如何赚钱?
- IntelliJ IDEA设置系列(五):类代码模板自定义(注释)
- 一些安全软件
- 强化学习入门及其实现代码
- python安装cpickle
- EmguCV学习(三)
- 计算机视觉博士去向,为什么现在不看好 CV 方向了呢?
- Android与MVC设计模式
- c++ PTA
- 无限法则服务器错误代码,电脑打个无限法则没事儿重启,看系统管理器。提示如图错误代码,发现看不懂...
- 无盘服务器0x00000124,蓝屏0x00000124,懂的帮我一下
- Hadoop安装与使用
- Redis管理
- H264视频编解码
- 视频编解码——编码流程介绍
- js中call()方法的用法
- Lock锁(重点)