尝试在tensorflow上运行facenet
上一篇装好了tensorflow的运行环境,开始尝试运行一些实例代码,在github上找到了一个tensorflow实现的facenet的代码,还是遇到了很多坑!
坚持看完,有重要总结!
代码:https://github.com/davidsandberg/facenet
clone完毕后, 直接运行validate_on_lfw.py ,接下来就是一堆坑!
可能是新装的Ubuntu, 里面缺少太多东西了, 先装了多少东西基本不记得了, 起码还要安装好这两个:
apt-get install cmake
apt-get install python-dev
接下来从装 dlib 开始说起
开始直接用 pip install dlib 安装, 报错, 错误内容太多,且没有实际意义就不贴上来了,
关键是要再运行一次pip install dlib , 就会发现一个“非常人性化”的提示(我是真不知道为什么装不上,找了好久安装方法)
-- Could NOT find Boost
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found suitable version "2.7.12", minimum required is "2.6")
-- *****************************************************************************************************
-- To compile Boost.Python yourself download boost from boost.org and then go into the boost root folder
-- and run these commands:
-- ./bootstrap.sh --with-libraries=python
-- ./b2
-- sudo ./b2 install
-- *****************************************************************************************************
关键信息就是说, 要自己去boost.org官网下载安装包,按照以下步骤安装!(如果第一次就提示了该多好, 非要执行两次pip install dlib,才告诉我)
按照如上提示装好boost后,在pip install dlib, 很顺利就装好了! (前提是一定要装了cmake和python-dev, 否则还有其他问题,在这不多说了, 总之依赖关系不能一次性全告诉你, 就跟到机关办手续一样麻烦)
dlib装好后, 还要再装这些:
pip install matplotlib
pip install sklearn
apt-get install python-tk
这些比较顺利,不多说了!
全部装好了, 运行 validate_on_lfw.py, 依然出现奇葩的问题“段错误 (核心已转储) ” (segement fault core dump),完全无从查起, 后来知道有gdb, 目前还不知道怎么用!
后来去试代码发现,只要是import tensorflow 就会崩溃,哪怕只有这么一句也会,
再后来从https://github.com/tensorflow/tensorflow/issues/2129 找到了解决方法, 要先import numpy,就不会崩溃, 不知道是tensorflow的什么问题导致的!
重要结论是什么呢?
1、github上的issues 真的很有用, 一般你遇到的问题, 在issues上都能找到
2、github的wiki一点要好好看, https://github.com/davidsandberg/facenet/wiki 一直就只看了“Home”,其他的“Validate on lfw”等都没看, 导致很多问题折腾了好久
希望能对大家有所帮助!
尝试在tensorflow上运行facenet的更多相关文章
- 在Docker和Kubernetes上运行MongoDB微服务
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟.容器是完全使用沙箱机制,相互之间不会有任何接 ...
- TensorFlow分布式在Amazon AWS上运行
TensorFlow分布式在Amazon AWS上运行 Amazon AWS 提供采用 NVIDIA K8 GPU 的 P2.x 机器.为了能够使用,第一步还需要创建一个 Amazon AWS 账户, ...
- Paragraph Vector在Gensim和Tensorflow上的编写以及应用
上一期讨论了Tensorflow以及Gensim的Word2Vec模型的建设以及对比.这一期,我们来看一看Mikolov的另一个模型,即Paragraph Vector模型.目前,Mikolov以及B ...
- docker_facenet_image在Docker容器中运行Facenet环境搭建
对开发和运维人员来说,可能最梦寐以求的就是一次性地创建或配置,可以在任意环境.任意时间让应用正常运行.而Docker恰恰是可以实现这一终极目标的瑞士军刀. 具体来说,Docker在开发和运维过程中,具 ...
- Linux上运行NET
今天尝试了下Ubuntu上运行NET程序,按照 https://github.com/aspnet/Home 的指引,一步一步来: 1.安装DNVM(原名KVM) Linux控制台下输入 curl - ...
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- Firefox上运行自动化测试脚本提示元素无法点击“WebDriverException: Message: Element is not clickable at point“解决方法
1. Firefox上运行脚本时提示“WebDriverException: Message: Element is not clickable at point (934.316650390625, ...
- 尝试在Linux上编译KestrelHttpServer
Kestrel是目前在非Windows平台上运行ASP.NET 5应用程序的唯一可用Web服务器,但微软似乎将它冷落在一边,源代码更新很慢. 今天试着在Linux上编译Kestrel的源代码,遇到了很 ...
随机推荐
- 修改开机启动等待时间(for Ubuntu12.10)
Ubuntu的开机启动等待时间默认是10s,等待时间比较长,每次启动都得按一下回车,于是就想修改一下等待时间.我们可以找到Grub的配置文件(/boot/grub/grub.cfg),在其中进行个性化 ...
- PostgreSQL学习记录-- 2016-03-11
1.日期字段 “年月日” 使用 date “年月日 时分秒” 使用 timestamp without time zone 2.布尔字段 使用 boolean 3.字符字段 使用 character ...
- C#设计模式(14)——模板方法模式(Template Method)
一.引言 提到模板,大家肯定不免想到生活中的“简历模板”.“论文模板”.“Word中模版文件”等,在现实生活中,模板的概念就是——有一个规定的格式,然后每个人都可以根据自己的需求或情况去更新它,例如简 ...
- 使用SignalR为FineUI/Webform打造消息总线
第一次写博客,语言组织能力不好,请大家多多包涵! 效果图如下: 图片的右下角即为SignalR消息总线的消息框. 一.建立SignalR服务端 第一步:打开一个空的FineUI 4.5空项目文件,在空 ...
- mysql 密码重置
1.停止mysql服务(以管理员身份,在cmd命令行下运行) net stop mysql 2.使用命令启动mysql数据库,跳过权限验证 mysqld -nt --skip-grant-tables ...
- atitit.dw不能显示正确的百分比高度in dw的解决
atitit.dw不能显示正确的百分比高度in dw的解决 div 设置35%的高度,三,不能正确的显示高度...环境dw cs6 但是设置161px奏能ok了...表明这个是dw的一个bug... ...
- iOS开发---集成ShareSDK实现第三方登录、分享、关注等功能。
(1)官方下载ShareSDK IOS 2.9.6,地址:http://sharesdk.mob.com/Download (2)根据实际情况,引入相关的库,参考官方文档. (3)在项目的AppDel ...
- CSS揭秘读书笔记 (一)
CSS揭秘读书笔记 (一) 一.半透明边框 要想实现半透明边框可以使用border: border: 10px solid hsla(0,0%,100%,.5); background: ...
- Revit中如何自定义快捷键
最佳的绘图方式是左手键盘,右手鼠标,使用快捷键将大大提高绘图效率,Revit同样提供了自定义绘图工具快捷键的功能(Revit2011及以后版本),有两种方式调出自定义快捷键窗口,第一种是Revit窗口 ...
- IPv6正则表达式
斯蒂芬·瑞恩写了一个非常有用的正则表达式,可用于匹配任何一个合法的IPv6地址.以下为正则表达式的代码: ^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|: ...