微软牛津项目人脸识别API初探
2015-08-25 10:12
113 查看
按照董子的这篇博客中的介绍,到微软牛津项目的网站申请到测试用的人脸识别Key,按照官方文档的介绍,把wpf项目建好之后,按照一步步的流程下来就可以完成example中的功能了。但是这仅仅是个example,图片不能太大,不然会出现溢出错误。之前关注过牛津项目,后来不知道竟然中文版的官网也出来了,只是中文的文档翻译的是在是太不堪入目了,不过这也保持了微软的一贯的风格。
我的环境是:win7 64bit+VS2015+.Net4.5+C#
PS:最好把 drawingContext.Close();
移到RenderTargetBitmap 对象实例化的后面,并且在 faceWithRectBitmap.Render(visual);处加上try-catch。修改后代码段如下:
下面是测试结果:
![](http://images0.cnblogs.com/blog2015/44645/201508/251003456083789.jpg)
啧啧,不得不感叹之前的宣传画师傅的画工啊:
![](http://images0.cnblogs.com/blog2015/44645/201508/251004164834855.jpg)
目前侧脸还是识别不到位(亦或是我还没找到侧脸识别的用法?):
![](http://images0.cnblogs.com/blog2015/44645/201508/251004575304928.jpg)
来一张二X的(其实我喜欢他的电影):
![](http://images0.cnblogs.com/blog2015/44645/201508/251007290618255.jpg)
目前比较火的阅兵女方队(最漂亮的那个妹子可能因为只有半边脸在照片中,所以没有识别出来):
![](http://images0.cnblogs.com/blog2015/44645/201508/251010066865644.jpg)
项目源代码:MicrosoftFaceAPI_src.7z
MicrosofFaceAPI_debug.7z
我的环境是:win7 64bit+VS2015+.Net4.5+C#
PS:最好把 drawingContext.Close();
移到RenderTargetBitmap 对象实例化的后面,并且在 faceWithRectBitmap.Render(visual);处加上try-catch。修改后代码段如下:
RenderTargetBitmap faceWithRectBitmap = new RenderTargetBitmap( (int)(bitmapSource.PixelWidth * resizeFactor), (int)(bitmapSource.PixelHeight * resizeFactor), 96,96,PixelFormats.Pbgra32); drawingContext.Close(); try { faceWithRectBitmap.Render(visual); } catch (Exception ex) { MessageBox.Show(ex.ToString()); }
下面是测试结果:
![](http://images0.cnblogs.com/blog2015/44645/201508/251003456083789.jpg)
啧啧,不得不感叹之前的宣传画师傅的画工啊:
![](http://images0.cnblogs.com/blog2015/44645/201508/251004164834855.jpg)
目前侧脸还是识别不到位(亦或是我还没找到侧脸识别的用法?):
![](http://images0.cnblogs.com/blog2015/44645/201508/251004575304928.jpg)
来一张二X的(其实我喜欢他的电影):
![](http://images0.cnblogs.com/blog2015/44645/201508/251007290618255.jpg)
目前比较火的阅兵女方队(最漂亮的那个妹子可能因为只有半边脸在照片中,所以没有识别出来):
![](http://images0.cnblogs.com/blog2015/44645/201508/251010066865644.jpg)
项目源代码:MicrosoftFaceAPI_src.7z
MicrosofFaceAPI_debug.7z
相关文章推荐
- Android自定义对话框(Dialog)位置,大小
- Android中的动画,属性动画
- UGUI(八)UI节点制作
- Algorithms—230.Kth Smallest Element in a BST
- VC多线程--在线程之间传递窗口句柄是安全的
- volatile关键字
- 《Java实战开发经典》第五章5.2
- sizeof()各种情况
- 树状数组区间求和三种模型
- SAP调用外部web service
- java发送邮件
- Deep Learning(深度学习)学习笔记整理系列之(四)
- Oracle触发器
- Android 安全机制
- justify-content (适用于父类容器上)
- 昆石VOS2009/VOS3000 2.1.6.00 操作指南
- 浅析C#中的委托
- 关于 阿里巴巴笔试题 :投资保险的 建议
- bootloader分析
- 集合栈