总结一下使用Emgucv的经验和经历
首先我准备开发一个一寸照片的处理程序。需要对上传照片进行过滤,人脸是第一步,然后是背景色是第二步。
先去emguc官方网站 下载最新版的emgucv随便安装到一个磁盘上就行。拿最新版3.0距离 安装完成之后的目录
找到Emgucv.CV.Example文件夹 里面都是各种 案例,人脸识别的话是FaceDetection 运行调试。应该是OK的。。运行ok效果图:
运行没问题 咱们开始准备吧 官方的demo的有用的代码扒下来。。。具体 怎么扒我不太好说,,总之我觉得 程序抄袭的能力应该都不赖。。。我扒下来的人脸识别类库
到这里我们应该有判断人脸的能力了。
如果调试不行的话,把官方文件里面bin/x86里面的dll复制到你们调试的项目的debug文件夹里面 再试试
再不行网上求助吧。。。
现在 开始 想办法判断背景色。。。研究了好久 因为是初学者 感觉难度太大 一个静态图 如何区分背景和前景。。这个 我认为是很难的。所以我就取巧 只截取 照片 的左上角 (picture.height/3*18)上面(picture.width*18)右上角(picture.height/3*18) 获得这3块的平均色 然后通过判断这3块的平均色的rgb值来判断 背景到底大概是什么颜色的。
<pre name="code" class="csharp">private static Image<Bgr, Byte> imageSource = null; //源图像private static Bgr left;private static Bgr top;private static Bgr right;
rectleft = new Rectangle(0, 0, 18, (int)image.Height / 3);recttop = new Rectangle(0, 0, image.Width, 18);rectright = new Rectangle(image.Width - 18, 0, 18, (int)image.Height / 3);//获取截取区域平均色left = imageSource.Copy(rectleft).GetAverage();top = imageSource.Copy(recttop).GetAverage();right = imageSource.Copy(rectright).GetAverage();
剩下的关键是我怎么处理这些个rgb值 在这里你首先要明白 什么是蓝色 。蓝色的rgb是多少 浅蓝 深蓝的rgb又是多少 多浅的蓝 多深的蓝 算是蓝色
想好这些问题,我相信 你们应该 知道 该怎么判断了这里附上我的方法,肯定不是很准确。。。这个只是我的思想。。
bool colorflag = false;double cuorong = 0.0;//超出蓝色的部分可以被其他颜色抵消string[] res = result.Split(',');if (Convert.ToDouble(res[4].ToString()) > 150)cuorong = Convert.ToDouble(res[4].ToString()) - 150;if (Convert.ToDouble(res[6].ToString()) > 150)cuorong = Convert.ToDouble(res[6].ToString()) - 150;//蓝色if (Convert.ToDouble(res[4].ToString()) >= (130 + cuorong) && (Convert.ToDouble(res[5].ToString()) + Convert.ToDouble(res[6].ToString())) <= (170 + cuorong)){if (Convert.ToDouble(res[7].ToString()) >= (130 + cuorong) && (Convert.ToDouble(res[5].ToString()) + Convert.ToDouble(res[6].ToString())) <= (170 + cuorong)){if (Convert.ToDouble(res[10].ToString()) >= (130 + cuorong) && (Convert.ToDouble(res[5].ToString()) + Convert.ToDouble(res[6].ToString())) <= (170 + cuorong)){colorflag = true;}}}
总结一下使用Emgucv的经验和经历相关推荐
- 牛P的经验、经历、感受分享
牛P的经验.经历.感受分享 刘加伟: 1. 做为技术方面的大牛/专家,一路走来,你最大的感悟和收获是什么? 只有努力, 并且相信自己, 你才能获得一点一点技术上的成绩. 2. 因为做技术的平时都喜欢熬 ...
- 小论文投稿经历与经验
小论文投稿经历与经验 投递经历 投稿经历: 在这里讲述下自己的第一篇核心期刊小论文的投稿经历,也给同样困惑在研发中的同学们给予启发. 我是研一下学期期末写完的小论文,然后期末寻找对应的期刊先是投递&l ...
- 来自微软华人的软件人生经历:功夫在身外
此为收藏文章. 来自微软华人的软件人生经历:功夫在身外 TheEdge推荐 [2007-6-4] 出处:<计算机世界> 作者:不详 在微软工作的华人已近千人.在微软TechEd技术教育 ...
- 华为人工智能岗位面试经历分享
https://blog.csdn.net/csdnsevenn/article/details/81916843 博客 学院 下载 GitChat TinyMind 论坛 APP 问答 商城 VIP ...
- 大三程序员实习面试经历(Java)
暑假该去实习了,网上搜罗了一些前辈们比较有含金量的面试经历,五个部分,纯属混剪: Part1 第一次去了广州黄村创业园,面试了创业公司,环境非常好,但是感觉不靠谱才3个人,一个技术,一个HR和总经理, ...
- 长安大学计算机网络复试题,研友分享:长安大学考研复试经验总结
作为经历过考研的我,非常理解大家现在的心情,我希望我的一点点经验和经历能够帮助到大家. 请大家一定要对自己有信心,因为复试刷人是比较少的,进入了复试你就已经成功了一大半了! 复试=笔试+面试 参考教材 ...
- 微软华人软件人生经历:功夫在身外
出处:计算机世界 在微软工作的华人已近千人.在微软TechEd技术教育大会期间,他们中的16位作为讲师回到北京.他们为听众带来微软软件技术的最新进展,而他们自身的软件生涯也是一种财富.记者在大会期 ...
- 【真实面试经历】我和阿里面试官的一次“邂逅”(附问题详解)
本文的内容都是根据读者投稿的真实面试经历改编而来,首次尝试这种风格的文章,花了几天晚上才总算写完,希望对你有帮助..已经收录自 Guide 哥开源的 JavaGuide 中.本文主要涵盖下面的内容: ...
- 【Java】广州三本秋招经历
前言 只有光头才能变强 离上次发文章已经快两个月时间了,最近一直忙着秋招的事.今天是2018年10月22日,对于互联网行业来说,秋招就基本结束了.我这边的流程也走完了(不再笔试/面试了),所以来写写我 ...
最新文章
- Java学习笔记10
- 如何把ajax改成同步请求,如何将Ajax请求从异步改为同步
- github page hexo博客gitee_利用Github和hexo搭建个人免费博客
- 遵义大数据中心项目工程概况_中策大数据:8月建筑工程项目有哪些?建筑工程项目信息汇总...
- Vue第一部分(2): 数据的渲染
- endnote如何添加网页类参考文献
- html5+简约登录页面,简洁时尚的CSS3用户登录界面设计
- 通过经纬度求解方位角
- R实例:构建量化分析系统(一)— 获取交易数据
- matplotlib.colors(ListedColormap)
- Premiere Pro CS6自学所需的视频编辑基础(一)
- 游戏首选高性能台式机显示器,240hz的刷新率够吗?
- 计算机基础文化课认识,【计算机基础论文】计算机基础的教学改革解析(共4653字)...
- 如何用gitbook写书
- IT行业的各岗位职责[转]
- 计算机安装操作步骤,重新安装计算机系统的步骤,最简单,最安全的操作!
- oracle11g静默安装
- Spark系列—spark简介
- 002:Python爬虫Urllib库全面分析
- 网络视频监控系统的现状和发展
热门文章
- 企业如何从0到1落地BI项目
- (字节流与字符流)OutputStream字节输出流
- Tomcat是一个Servlet容器?
- Flutter和RN对比分析
- BOM物料清单,金蝶KIS旗舰版专业版金蝶K3WISE生产管理软件ERP
- Type mismatch Can‘t assign java.math.BigDecimal to java.lang.Double
- FT232H如何使用jtag接口
- 如何给win11安装安卓应用
- 华光昱能针对工程光纤布线的痛点?常见问题及解决方案
- html中事件监听的使用,Vue.JS入门篇--事件监听