视线语音鼠标
文章平均质量分 78
琴空
北航软件学院本科二年级生,现在在学习ACM,分布式,网页制作。QQ:939582481
展开
-
视线语音鼠标 7 人脸检测-形态学运算
开运算,闭运算为基础,有腐蚀和膨胀两种。我用的样本是5*5的,腐蚀(膨胀)说白了就是只要这个点是0(1),周围5*5的就都是0(1)。做两次形态学运算。先腐蚀,后膨胀。然后再先膨胀,后腐蚀。用以去除噪声。最后用floodfill做连通块,并根据矩形的大小及长宽比进行判定。至此,我们简单的人脸检测完毕。public void Cal(int[,] Seg, out int[,] Seg1, out int l, out int r, out int u, out int d) {原创 2011-02-25 19:43:00 · 582 阅读 · 0 评论 -
视线语音鼠标 1 提纲
关键词:人脸检测,人眼检测,语音识别最近想做一个软件练练我的c#,最终决定做一个视线语音鼠标,用视线控制鼠标的移动,用语音控制鼠标的行为。语音识别有微软的Speech SDK,还好说。人脸检测神马的就比较难了,有什么PCA,Haar-Adaboost,向量机,人工神经网络等等,都好难好难。Opencv咱也不太会用(汗呀!vs2010+opencv2.2的环境搭了半天都没搭好),所以,咱一个大一的就做些简单的好了……下面给出我的步骤,每个步骤我都将会撰文进行解说。1. 捕获视频2. 每原创 2011-02-20 22:35:00 · 604 阅读 · 0 评论 -
视线语音鼠标 2 C#视频捕获
要引用system32中的avicao32.dll和user32.dll四个函数的意思分别为设置捕获窗口,关闭窗口,发送消息,和设置窗口位置。我用panel显示视频,button和1button2分别控制视频的开关,这里有个小bug,有时会蹦出视频源那个窗口,要快速的多点几次才行。不知是怎么一回事,知道的一定要告诉我一声!using System; using System.Collections.Generic; using System.ComponentModel; using System.D原创 2011-02-21 20:53:00 · 663 阅读 · 0 评论 -
视线语音鼠标 3 C#视频流截取图像
如何才能从视频流中一帧一帧的截取图像,得以处理结果并且输出呢?我想了一个偷懒的办法,但效果也还不错。就是用一个timer,将处理放在tick里,timer的控制放在那两个按钮中。为了预防以后调试鼠标可时能会不好控制,再设两个热键回车和退格,也具备两个按钮的功能。提取出的图像,一位图形式存储,就是下面的image1。private void button1_Click(object sender, EventArgs e) { //运行视频开始原创 2011-02-22 20:45:00 · 1243 阅读 · 2 评论 -
视线语音鼠标 5 C#图像缩放
<br />为什么缩小图像呢?有两个目的:1.加速,2.减小噪声的出现。<br />我还以为要写个函数呢,结果发现用Bitmap就好了,一行搞定……<br />//将原图缩小为120*90 Image image1 = new Bitmap((Image)obj1.GetData(typeof(Bitmap)),120,90); pictureBox1.Image = image1;原创 2011-02-23 15:06:00 · 680 阅读 · 0 评论 -
视线语音鼠标 4 C#图像的读取和显示
读取图像的rgb信息,做视频流的话,不用指针速度是无法忍受的。用rectangle框选,转为bitmapData,用指针读,注意颜色顺序是b,g,r。现实的话也是差不多的,我的图像显示是二值图(Seg存的),返回bitmap,到时可用pictureBox什么的显示就行了。不多说了,上代码。 public void InIt(Bitmap Source) { int iWidth = Source.Width; int iHe原创 2011-02-22 21:08:00 · 476 阅读 · 0 评论 -
视线语音鼠标 6 肤色点检测
<br />我用了那个椭圆聚类,转成YCb’Cr’,为了取得更好的效果,取它和rgb肤色空间点的交。<br />整个处理在读入中进行,二值图结果用Seg导出。<br /> double Y = r * 0.256789 + g * 0.504129 + b * 0.097906+ 16; double Cb = r *-0.148223 + g * -0.290992 + b * 0.439215+ 128;原创 2011-02-23 15:40:00 · 545 阅读 · 0 评论