自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

k

cc

  • 博客(23)
  • 资源 (3)
  • 收藏
  • 关注

原创 使用C#,Matlab(2015a)混合编程

我所使用的Matlab版本为2015a,2014和2013应该也可以这么做。 vs版本为2015,这个没什么影响 2015a编译出的dll要求.net版本至少为4. 一、查看Matlab是否配置完全 在Command Window窗口中输入mbuild –setup查看编译器,如果没有,将编辑器设置为vs 二、安装MCRinstaller.exe 位置在安装目录下的toolbox\com

2015-08-31 00:59:36 14098 22

原创 Emgucv 使用级联分类器来检测物体

级联分类器即为Emgucv中的 CascadeClassifier。使用 CascadeClassifier来加载一个.xml分类器文件,然后使用DetectMultiScale函数来对图片进行检测。 这是DetectMultiScale函数。public Rectangle[] DetectMultiScale(IInputArray image, double scaleFactor = 1.

2015-08-30 23:51:40 5747 5

原创 C++写dll文件用C#调用

创建项目: 项目为win32项目,注意不是控制台,然后在设置处选上DLL并勾上“导出项目”,见下图 开始写c++: 把和项目同名的.h文件和.cpp文件清空,添加如下代码://在头文件中添加#ifdef WIN32PROJECT1_EXPORTS#define WIN32PROJECT1_API __declspec(dllexport)#else#define WIN32PR

2015-08-29 23:52:36 3471 1

原创 Emgucv SURF特征点的寻找和匹配

使用SURF类和其相关的函数需要添加Emgu.CV.Features2D和Emgu.CV.XFeatures2D这两个命名空间,同时也可以使用cuda模块来进行加速,由于使用Cuda需要安装,但Cuda目前支持的显卡驱动并不兼容win10,所以这里我就简单的说一下通用的方法吧。 这个代码里使用了UMat,UMat应该算是3.0版本中的新特性,根据官方的说法,UMat等价于Opencv中的Mat。具

2015-08-29 21:22:11 19689 21

原创 Emgucv使用Harris角点检测和Fast角点检测

角点是两个边缘的连接点,代表了两个边缘变化的方向上的点,在这点上图像梯度有很高的变化。是图像中的重要特征点。在opencv中还有改进版的Harris角点检测:Shi-Tomasi 角点检测算法,但在Emgucv里并没有封装,所以目前无法直接使用。 一、Harris角点检测 Harris角点检测通过判断点在水平和竖直方向上的变化程度来判断是否为角点,使用CornerHarris函数,处理后再用阈值

2015-08-29 01:09:29 7497

原创 使用EmguCv播放指定视频

用Capture来加载一个视频。 用GetCaptureProperty函数可以获取这个视频的各种属性。 然后用Application.Idle来连续的显示视频中的帧(显示出一帧了,程序进入空闲,就继续加载下一帧) 由于视频中的帧太多,.net的垃圾回收机制赶不上,就使用GC.Collect();来强制回收垃圾,可以把程序的内存占用从700MB降到100MB左右public partial c

2015-08-28 16:21:46 5599 9

原创 使用EmguCv计算包围物体的最小圆与最小可旋转矩形和不可选择矩形

这篇博客需要用的上篇博客用的轮廓寻找的数据 链接 所使用的函数为BoundingRectangle、MinEnclosingCircle、MinAreaRect。 这三者所使用的参数并不一样,BoundingRectangle函数的参数为检测到的直接数据。 其他两个均为转化得来的PointF数组。 图片中分块的多个图形也可以检测的到。 有了上篇博客的基础,这个并不难。代码:public

2015-08-28 01:25:54 10049 1

原创 EmgnCv进行轮廓寻找和计算物体凸包

一、轮廓寻找 用的是FindContours函数,在CvInvoke中 不过需要用到这个VectorOfVectorOfPoint,来代替c++中的Vector 还有就是FindContours函数中的第三个参数hierarchy,不知道作用是什么,填入的只要是符合IOutputArray类型的都可以运行 代码:using System;using System.Collections.G

2015-08-27 16:20:38 11569 6

原创 EmguCV Image类中的函数(四)使用MatchTemplate函数进行模板匹配

MatchTemplate的函数原型为Image<Gray, float> MatchTemplate(Image<TColor, TDepth> template, TemplateMatchingType method);其中TemplateMatchingType 共有6种检测方式 1、平方差匹配 Sqdiff 最好匹配为0.匹配越差,匹配值越大。 2、相关匹配 Ccorr 数值越大表

2015-08-27 01:15:02 15087 10

原创 Emgucv 直方图相关,以后整理

Image<Bgra,byte>a=new Image<Bgra,byte>("153_140703112619_1.jpg");a._EqualizeHist();直方图均衡化,提高图片对比度a = new Image<Bgr, byte>("153_140703112619_1.jpg");Image<Gray, byte> asdasd = new Image<Gray, byte>(a.

2015-08-25 20:32:25 5605

原创 EmguCV Image类中的函数(三)几种边缘检测算法和仿射变换

一、边缘检测 (1)、Sobel导数 Sobel算子结合了高斯平滑和微分求导。可以用来计算图像灰度函数的近似梯度。计算时是将原图像分别与水平方向和竖直方向的奇数大小的内核进行卷积,然后再图像的每一点上进行计算(求根号下两数的平方和,有时会用两数的绝对值和)得出近似梯度。 当内核大小等于3时使用Sobel内核的误差会比较大,在这里可以使用Schar

2015-08-24 16:42:49 8758 4

原创 EmguCV Image类中的函数(二)使用MorphologyEx进行更多的变换

MorphologyEx中所有的变换如下图所示调用方法:Mat aaa = CvInvoke.GetStructuringElement(Emgu.CV.CvEnum.ElementShape.Rectangle, new Size(5, 5), new Point(2, 2)); imageBox1.Image = a.Convert().Morpho

2015-08-21 14:35:42 9461

原创 EmguCV Image类中的函数(一)

函数太多,怕忘掉,主要为自己做个备忘。1、Image AbsDiff     返回两幅图片或此图与某个yanse像素的差的绝对值的图片2、Image Add           返回这张图片与图片或颜色直接相加的图片(矩阵加法)3、Image Canny               边缘检测4、Image Clone()    拷贝5、Image ConcateHorizo

2015-08-20 14:40:21 9753

原创 EmguCV+Kinect2.0获取高清面部帧

基础信息请看这,本文中的代码是基于这篇文章中的代码修改而得EmguCv +Kinect2.0 获取面部信息由于不需要获取FaceFrameFeatures 所以NuiDatabase可以不用复制到根目录这段代码依然只能追踪一个人,但我将所追踪到的人脸与彩色帧进行的重合,所以用到了CoordinateMap来转换坐标using System;using System.Collectio

2015-08-15 22:32:21 2645 2

原创 EmguCv +Kinect2.0 获取面部信息

我使用的环境为EmguCv3.0.0+KinectSDK2.0+vs2015使用Kinect获取面部帧比较特殊,必须要在x64环境下才行,另外,还需要将示例项目文件夹中的NuiDatabase复制到程序的根目录里利用face库里的FaceFrameFeatures可以很方便的获取面部的多种信息 FaceFrameFeatures DefaultFaceFrameFeatures

2015-08-15 14:05:06 3273 4

原创 EmguCV+Kinect2.0 实时抠图

我的环境的KinectSDK2.0+EmguCV3.0.0依旧还是WinFrom和ImageBox因为需要用到BodyIndex的数据,但BodyIndex的分辨率和RGB图像的分辨率不同,所以需要用的CoordinateMap类中的坐标转换函数。然后直接对colorimage的像素点进行操作。同样,需要用的指针,要把项目调整为允许不安全的代码。代码和注释如下:using

2015-08-14 00:14:34 6890 2

原创 EmguCV+Kinect2.0获取BodyIndex图

我的环境为KinetSDK2.0+EmguCV3.0.0+vs2015依旧为WinFrom ,并在主窗口内拖入ImageBox不知道ImageBox的可以看我之前的博文http://blog.csdn.net/qq_22033759/article/details/47299269代码中需要用到指针,需要在项目属性中调一下上代码using System;using Syste

2015-08-12 23:44:33 2104 3

原创 Kinect2.0+EmguCV获取景深图

先说一下我的环境:Kinect sdk2.0+EmguCV3.0.0+vs2015具体代码如下using System;using System.Windows;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using S

2015-08-10 14:53:28 2205

原创 LeapMotion c#获取骨骼坐标

我就是用控制台应用来说一下吧。获取坐标也就是对他自身的Listener的OnFrame事件的重写。在重写Listener时最好不要直接用Console.WriteLine因为他用的是多线程,直接使用可能会导致线程冲突。using System;using System.Collections.Generic;using System.Linq;using System.Text;

2015-08-07 13:59:15 2992

原创 EmguCV获取kinect的彩色帧和红外图

如不能正确配置EmguCV  看这里http://blog.csdn.net/qq_22033759/article/details/47299269我使用的配置是Emgucv3+kinect2.0sdk+vs2015用的是WinFrom,不是WPF,虽然WPF可以添加WinFrom控件 ,但还是原生的用着方便。把Emgncv配好后添加kinect的引用还是要在from中放

2015-08-06 16:31:46 3042 5

原创 EmguCV的配置和获取摄像头画面

如遇到“Emgu.CV.MatInvoke”的类型初始值设定项引发异常报错 ,看这里http://blog.csdn.net/qq_22033759/article/details/47285653。我用的是emgucv3.0.0版本,网上有好多教程是2.4的版本的,有一部分已经不再适用,3.0.0版本比之前的要方便得多。先是添加引用,库文件所在目录为emgucv安装文件夹内的bin文件夹

2015-08-05 16:22:47 20433 5

原创 处理EmguCV3.0.0 “Emgu.CV.MatInvoke”的类型初始值设定项引发异常。的报错

直接将示例程序文件夹里的x86 或x64文件夹对应的复制入你的项目生成的exe所在的文件夹就好

2015-08-05 00:03:59 6497 2

原创 Leap Motion的环境配置(使用c#)

开发用的sdk和驱动程序从这里下载https://developer.leapmotion.com/官方的开发者文档在这里https://developer.leapmotion.com/documentation/index.html?proglang=current(我用的是电信的宽带 ,上面两个链接需要翻墙才能打开)官方下的sdk是个压缩包,解压到任意目录即可,解压后安装里面的那

2015-08-04 23:42:11 4970

taglib-sharp

taglib-sharp

2016-07-20

MIRtoolbox1.6.1

MIRtoolbox1.6.1

2016-07-12

刘玉珍版离散数学ppt

刘玉珍版离散数学ppt 前一半的 上学期用的

2015-07-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除