摘要: OpenCv,EmguCv及.net之间的互动(The Interaction of OpenCv, EmguCv AND .net)作者:王先荣前言 在.net中使用OpenCv和EmguCv时,必须在三者支持的图像格式之间进行转换。.net中用Bitmap类来承载图像,OpenCv中用IplImage指针来承载图像,EmguCv中用Image<TColor,TDepth>来承载图像。本文主要讲述如何在IplImage、Image<TColor,TDepth>和Bitmap之间转换。IplImage <=> MIplImage MIplImage是IplI 阅读全文
posted @ 2012-08-05 23:02 Eoocy 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 当你在WPF主线程中时不时需要加载图片时,界面上的Animation会因为IO操作而卡壳,要想保持动画的流畅就必须将IO操作放到后台线程中操作,如下:view sourceprint?01private void ChangeImage() {02 Image image = new Image();0304 new Thread(new ThreadStart(() => {05 BitmapImage bitmap = new BitmapImage();06 bitmap.BeginInit();07 bitmap.UriSource = new Uri(images[index+ 阅读全文
posted @ 2012-07-26 21:38 Eoocy 阅读(708) 评论(0) 推荐(0) 编辑
摘要: 作者:王先荣前言近期需要做一些图像处理方面的学习和研究,首要任务就是选择一套合适的图像处理类库。目前较知名且功能完善的图像处理类库有OpenCv、EmguCv、AForge.net等等。本文将从许可协议、下载、安装、文档资料、易用性、性能等方面对这些类库进行比较,然后给出选择建议,当然也包括我自己的选择。许可协议类库许可协议许可协议网址大致介绍OpenCvBSDwww.opensource.org/licenses/bsd-license.html在保留原来BSD协议声明的前提下,随便怎么用都行EmguCvGPL v3http://www.gnu.org/licenses/gpl-3.0.tx 阅读全文
posted @ 2012-07-26 21:31 Eoocy 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 有了Kinect,我们就可以使用手势来控制幻灯片的播放,而不需要一边演讲一遍按键盘或者手持一个ppt控制器,我们只需要做的就是轻轻的向右或者向左挥一下手就可以控制幻灯片向前或者向后翻一页,酷吧。虽然可能在演讲的时候做这个动作可能有点奇怪,但是这也是一种控制幻灯片放映的好方法。 实现Kinect控制幻灯片播放很简单,主要思路是:使用Kinect捕捉人体动作,然后根据识别出来的动作向系统发出点击向前,向后按键的事件,从而使得幻灯片能够切换。 这里的核心功能在于手势的识别,我们在开发之前需要定义怎么样的手势算是向前或者向后切换幻灯片。手势和姿势识别在我的Kinect开发入门第九,第十,十一篇文章有. 阅读全文
posted @ 2012-06-24 00:25 Eoocy 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 昨天晚些时候,微软发布了Kinect for Windows SDK 1.5版本,新版本SDK对1.0版本的进行了较大的改动和更新。本文根据Microsoft Kinect for Windows SDK and Toolkit – v1.5 Release Notes 和 Kinect for Windows: SDK and Runtime version 1.5 Released 这两篇文章,并结合自己的安装和体验整理而成。1. SDK 1.5 的下载和安装 新版本SDK和1.0版本的SDK完全兼容,如果您之前安装过1.0的,可以直接安装1.5的SDK,如果您之前的开发版本是Beta版. 阅读全文
posted @ 2012-06-21 14:01 Eoocy 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章介绍了Kinect for Windows SDK进阶开发需要了解的一些内容,包括影像处理Coding4Fun Kinect工具类库以及如何建立自己的扩展方法类库来方便开发,接下来介绍了利用Kinect进行近距离探测的一些方法,限于篇幅原因,仅仅介绍了近距离探测的三种方式。 本文接上文将继续介绍近距离探测中如何探测运动,如何获取并保存产生的影像数据;然后将会介绍如何进行脸部识别,以及介绍全息图(Holograme)的一些知识,最后介绍了一些值得关注的类库和项目。2.4 运动识别 目前,利用运动识别(motion detection)来进行近景识别是最有意思的一种方式。实现运动识别的. 阅读全文
posted @ 2012-06-21 14:00 Eoocy 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 前面十三篇文章介绍了Kinect SDK开发中的各个方面的最基础的知识。正如本系列博闻标题那样,这些知识只是Kinect for windows SDK开发的入门知识。本文将会介绍Kinect进阶开发需要了解一些知识(beyond the basic)。 读者可能会注意到,在学习了前面十三篇文章中关于Kinect开发的方方面面,如影像数据流、景深摄像机、骨骼追踪、麦克风阵列、语音识别等这些知识后,离开发出一些我们在网上看到的那些具有良好用户体验的Kinect应用程序还是显得捉襟见肘。Kinect SDK在某种意义上只是提供了一些其它Kinect类库的相同或者更好的功能。为了进一步提高Kine. 阅读全文
posted @ 2012-06-21 13:59 Eoocy 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章介绍了Kinect中语音识别的基本概念,以及一些语音处理方面的术语。在此基础上使用Kinect麦克风阵列来进行音频录制的例子说明了Kinect中音频处理的核心对象及其配置。本文将继续介绍Kinect中的语音识别,并以两个小例子来展示语音识别中的方向识别和语音命令识别。1. 使用定向麦克风进行波速追踪(Beam Tracking for a Directional Microphone) 可以使用这4个麦克风来模拟定向麦克风产生的效果,这个过程称之为波束追踪(beam tracking),为此我们新建一个WPF项目,过程如下:1. 创建一个名为KinectFindAudioDirec. 阅读全文
posted @ 2012-06-21 13:58 Eoocy 阅读(272) 评论(0) 推荐(0) 编辑
摘要: Kinect的麦克风阵列在Kinect设备的下方。这一阵列由4个独立的水平分布在Kinect下方的麦克风组成。虽然每一个麦克风都捕获相同的音频信号,但是组成阵列可以探测到声音的来源方向。使得能够用来识别从某一个特定的方向传来的声音。麦克风阵列捕获的音频数据流经过复杂的音频增强效果算法处理来移除不相关的背景噪音。所有这些复杂操作在Kinect硬件和Kinect SDK之间进行处理,这使得能够在一个大的空间范围内,即使人离麦克风一定的距离也能够进行语音命令的识别。 在Kinect第一次作为Xbox360的外设发布时,骨骼追踪和语音识别是Kinect SDK最受开发者欢迎的特性,但是相比骨骼追踪,. 阅读全文
posted @ 2012-06-21 13:57 Eoocy 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 上文简要介绍了手势识别的基本概念和手势识别的基本方法,并以八种手势中的挥手(wave)为例讲解了如何使用算法对手势进行识别,本文接上文,继续介绍如何建立一个手部追踪类库,并以此为基础,对剩余7中常用的手势进行识别做一些介绍。1. 基本的手势追踪 手部追踪在技术上和手势识别不同,但是它和手势识别中用到的一些基本方法是一样的。在开发一个具体的手势控件之前,我们先建立一个可重用的追踪手部运动的类库以方便我们后续开发。这个手部追踪类库包含一个以动态光标显示的可视化反馈机制。手部追踪和手势控件之间的交互高度松耦合。 首先在Visual Studio中创建一个WPF控件类库项目。然后添加四个类: Kin. 阅读全文
posted @ 2012-06-21 13:52 Eoocy 阅读(461) 评论(0) 推荐(0) 编辑