C#的Winform中用来显示图片的控件是PictureBox,而Emgucv中显示图片用的是ImageBox。

1.ImageBox属性

在WinForm中,单击ImageBox控件,右击查看属性页

(1)FunctionalMode:

Minimun:鼠标在图像上的任何操作失效

RightClickMenu:仅鼠标右键有效

PanAndZoom:仅鼠标滚轮缩放有效

Everything:鼠标滚轮、左键框选、右键功能均生效。

2.使用方式

(1)按照上篇Emgucv配置;

(2)在工具箱中查找ImageBox控件,拖入winform设计窗体。

(3)通过按钮事件为ImageBox填充图片

private void btnReadLocalPic_Click(object sender, EventArgs e)
{
  OpenFileDialog ofdOpenLocalImage = new OpenFileDialog();
  ofdOpenLocalImage.InitialDirectory = @"C:\Users\Public\Pictures"; //设置默认路径
  ofdOpenLocalImage.Title = "请选择要打开的图片";
  ofdOpenLocalImage.Multiselect = true;
  ofdOpenLocalImage.Filter = "jpg图片|*.jpg|jpeg图片|*.jpeg|bmp图片|*.bmp|png图片|*.png|pdf文件|*.pdf";
  ofdOpenLocalImage.CheckFileExists = true;
  ofdOpenLocalImage.Multiselect = false;
  if (ofdOpenLocalImage.ShowDialog(this) == DialogResult.OK)
  {
    Image<Bgr, byte> img = new Image<Bgr, byte>(ofdOpenLocalImage.FileName);
    this.imgbShow.Image = img;
  }
  else
  {  
    MessageBox.Show("你没有选择图片");
  }
}

(4)使用中有遇到使用上面程序,正确编译了,但在执行到图像读取位置时,出现了异常,单点调试,问题出现在下面这一句:在文件Image.cs中

private void LoadImageUsingOpenCV(FileInfo file)
{
  using (Mat m = CvInvoke.Imread(file.FullName, CvEnum.LoadImageType.AnyColor | CvEnum.LoadImageType.AnyDepth))
  {
    if (m.IsEmpty)
      throw new NullReferenceException(String.Format("Unable to load image from file \"{0}\".", file.FullName));
    LoadImageFromMat(m);
  }
}

通过将Emgucv安装包下bin目录下下面几个文件复制到工程文件的Debug或Release下即可

 3.扩展应用
(1)如何设置通过鼠标滚轮来对图像进行缩放(以图像中心为原点)?

Emgucv - ImageBox控件的更多相关文章

  1. EmguCV控件Emgu.CV.UI.ImageBox及C# picturebox显示图片连续刷新出现闪烁问题

    在上一篇里,EmguCV(OpenCV)实现高效显示汉字及叠加  实现了视频叠加及显示,但存在问题,就是 Emgu.CV.UI.ImageBox及C# picturebox显示图片时都会出现闪烁,尤其 ...

  2. EmguCV3.0几个控件的使用

    值方图(Histogram)是一种统计图数据,在影像处理中最常被用来统计一张图像或是感兴趣(ROI)区域的色彩分布,在这边本人使用的EmguCV 2.4.0版的内建值方图工具只有被包含在WinForm ...

  3. OLE、OCX和ActiveX控件之间的比较

      OLE(Object Linking and Embedding,对象连接与嵌入) 一.过去的OLE和今天的OLE 最初的OLE含义是指在程序之间链接和嵌入对象数据,它提供了建立混合文档的手段(资 ...

  4. VC++编写ActiveX控件

    ActiveX这门技术是通过生成“*.ocx”文件来实现的.先来了解下OCX文件,在百度百科上面对OCX是这样解释的:“.ocx是ocx控件的扩展名,OCX 是对象类别扩充组件.如果你用过Visual ...

  5. JS调用Android、Ios原生控件

    在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...

  6. HTML5 progress和meter控件

    在HTML5中,新增了progress和meter控件.progress控件为进度条控件,可表示任务的进度,如Windows系统中软件的安装.文件的复制等场景的进度.meter控件为计量条控件,表示某 ...

  7. 百度 flash html5自切换 多文件异步上传控件webuploader基本用法

    双核浏览器下在chrome内核中使用uploadify总有302问题,也不知道如何修复,之所以喜欢360浏览器是因为帮客户控制渲染内核: 若页面需默认用极速核,增加标签:<meta name=& ...

  8. JS与APP原生控件交互

    "热更新"."热部署"相信对于混合式开发的童鞋一定不陌生,那么APP怎么避免每次升级都要在APP应用商店发布呢?这里就用到了混合式开发的概念,对于电商网站尤其显 ...

  9. UWP开发必备:常用数据列表控件汇总比较

    今天是想通过实例将UWP开发常用的数据列表做汇总比较,作为以后项目开发参考.UWP开发必备知识点总结请参照[UWP开发必备以及常用知识点总结]. 本次主要讨论以下控件: GridView:用于显示数据 ...

随机推荐

  1. 查看open office运行状态

    打开SSH工具: 1.ps -ef|grep soffice 2.cd /opt/jboss-eap-7.0 3.cd logs 4.tail -f subscription.log 然后就可以操作( ...

  2. vue-cli项目生成

    安装vue-cli C:\Users\fei>npm install -g vue-cli npm WARN deprecated coffee-script@1.12.7: CoffeeScr ...

  3. crm 添加用户 编辑用户 公户和私户的展示,公户和私户的转化

    1.添加用户 和编辑可以写在一起 urls.py url(r'^customer_add/', customer.customer_change, name='customer_add'), url( ...

  4. python Django cookie和session

    在一个会话的多个请求中共享数据,这就是会话跟踪技术.例如在一个会话中的请求如下:  请求银行主页: 请求登录(请求参数是用户名和密码): 请求转账(请求参数与转账相关的数据): 请求信誉卡还款(请求参 ...

  5. Subversion配置

    1.下载Apache-Subversion-1.9.7:https://github.com/wangfajun/dev-tools 2.打开idea-->File-->Settings, ...

  6. MySQL无法插入中文的解决方案

    本人在做数据库的连接过程中,发现无法插入中文值.原因是mysql的默认编码是latin1,只须将编码改为utf8即可. 在mysql的命令行窗口中输入 status 会出现当前的编码.在mysql的安 ...

  7. [译]Ocelot - Headers Transformation

    原文 Add to Request 为上游请求添加请求头,只需如下一样将下面的配置添加到一个ReRoute里: "UpstreamHeaderTransform": { " ...

  8. C++设计模式——装饰模式

    前言 在实际开发时,你有没有碰到过这种问题:开发一个类,封装了一个对象的核心操作,而这些操作就是客户使用该类时都会去调用的操作:而有一些非核心的操作,可能会使用,也可能不会使用:现在该怎么办呢? 将这 ...

  9. 【原创】运维基础之yum离线环境安装软件

    首先查看系统版本号,然后根据版本号从 CentOS-7-x86_64-DVD-1708.iso 和 CentOS-7-x86_64-Everything-1708.iso 根据需要选择一个下载,我这里 ...

  10. 【原创】大叔问题定位分享(7)Spark任务中Job进度卡住不动

    Spark2.1.1 最近运行spark任务时会发现任务经常运行很久,具体job如下: Job Id  ▾ Description Submitted Duration Stages: Succeed ...