毕设记录--环境搭建:Anaconda的安装与环境搭建

版本:

python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order

该命令会创建一个datasets/lfw/lfw_mtcnnpy_160的文件夹,并将所有对齐好的人脸图像存放到这个文件夹中,数据的结构和原先的datasets/lfw/raw一样。参数--image_size 160 --margin 32的含义是在MTCNN检测得到的人脸框的基础上缩小32像素(训练时使用的数据偏大),并缩放到160×160160×160大小,因此最后得到的对齐后的图像都是160×160160×160像素的,这样的话,就成功地从原始图像中检测并对齐了人脸。

下面我们来简略的分析一下align_dataset_mtcnn.py源文件,先上源代码如下,然后我们来解读一下main()函数

 View Code

  • 首先加载LFW数据集;
  • 建立MTCNN网络,并预训练(即使用训练好的网络初始化参数),Google Facenet的作者在建立网络时,自己重写了CNN网络所需的各个组件,包括conv层,MaxPool层,Softmax层等等,由于作者写的比较复杂。有兴趣的同学看看MTCNN 的 TensorFlow 实现这篇博客,博主使用Keras重新实现了MTCNN网络,也比较好懂代码链接:https://github.com/FortiLeiZhang/model_zoo/tree/master/TensorFlow/mtcnn;
  • 调用align.detect_face.detect_face()函数进行人脸检测,返回校准后的人脸边界框的位置、score、以及关键点坐标;
  • 对人脸框进行处理,从原图中裁切(先进行了边缘扩展32个像素)、以及缩放(缩放到160×160160×160)等,并保存相关信息到文件;

关于人脸检测的具体细节可以查看detect_face()函数,代码也比较长,这里我放上代码,具体细节部分可以参考MTCNN 的 TensorFlow 实现这篇博客。

 

我的运行:

缺少了挺多模块,全部都装上


(tensorflow) G:\graduationproject\facenet>pip install scikit_learn-0.20.3-cp36-cp36m-win_amd64.whl
Processing g:\graduationproject\facenet\scikit_learn-0.20.3-cp36-cp36m-win_amd64.whl
Requirement already satisfied: scipy>=0.13.3 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from scikit-learn==0.20.3) (1.2.1)
Requirement already satisfied: numpy>=1.8.2 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from scikit-learn==0.20.3) (1.13.1)
Installing collected packages: scikit-learn
Successfully installed scikit-learn-0.20.3(tensorflow) G:\graduationproject\facenet>pip install -i https://douban.com/simple h5py
Looking in indexes: https://douban.com/simple
Collecting h5pyCould not find a version that satisfies the requirement h5py (from versions: )
No matching distribution found for h5py(tensorflow) G:\graduationproject\facenet>pip install -i https://douban.com/simple requests
Looking in indexes: https://douban.com/simple
Collecting requestsCould not find a version that satisfies the requirement requests (from versions: )
No matching distribution found for requests(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple requests
Looking in indexes: https://pypi.douban.com/simple
Collecting requestsDownloading https://pypi.doubanio.com/packages/7d/e3/20f3d364d6c8e5d2353c72a67778eb189176f08e873c9900e10c0287b84b/requests-2.21.0-py2.py3-none-any.whl (57kB)100% |████████████████████████████████| 61kB 2.3MB/s
Collecting certifi>=2017.4.17 (from requests)Downloading https://pypi.doubanio.com/packages/60/75/f692a584e85b7eaba0e03827b3d51f45f571c2e793dd731e598828d380aa/certifi-2019.3.9-py2.py3-none-any.whl (158kB)100% |████████████████████████████████| 163kB 7.9MB/s
Collecting idna<2.9,>=2.5 (from requests)Downloading https://pypi.doubanio.com/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl (58kB)100% |████████████████████████████████| 61kB 6.1MB/s
Collecting urllib3<1.25,>=1.21.1 (from requests)Downloading https://pypi.doubanio.com/packages/62/00/ee1d7de624db8ba7090d1226aebefab96a2c71cd5cfa7629d6ad3f61b79e/urllib3-1.24.1-py2.py3-none-any.whl (118kB)100% |████████████████████████████████| 122kB 4.1MB/s
Collecting chardet<3.1.0,>=3.0.2 (from requests)Downloading https://pypi.doubanio.com/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)100% |████████████████████████████████| 143kB 2.0MB/s
Installing collected packages: certifi, idna, urllib3, chardet, requestsFound existing installation: certifi 2016.2.28Uninstalling certifi-2016.2.28:Successfully uninstalled certifi-2016.2.28
Successfully installed certifi-2019.3.9 chardet-3.0.4 idna-2.8 requests-2.21.0 urllib3-1.24.1(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple psutil
Looking in indexes: https://pypi.douban.com/simple
Collecting psutilDownloading https://pypi.doubanio.com/packages/16/6a/cc5ba8d7e3ada0d4621d493dbdcb43ed38f3549642916a14c9e070add21a/psutil-5.6.1-cp36-cp36m-win_amd64.whl (230kB)100% |████████████████████████████████| 235kB 3.1MB/s
Installing collected packages: psutil
Successfully installed psutil-5.6.1(tensorflow) G:\graduationproject\facenet>pip install h5py-2.9.0-cp36-cp36m-win_amd64.whl
Processing g:\graduationproject\facenet\h5py-2.9.0-cp36-cp36m-win_amd64.whl
Requirement already satisfied: six in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from h5py==2.9.0) (1.10.0)
Requirement already satisfied: numpy>=1.7 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from h5py==2.9.0) (1.13.1)
Installing collected packages: h5py
Successfully installed h5py-2.9.0(tensorflow) G:\graduationproject\facenet>pip install Pillow-5.4.1-cp36-cp36m-win_amd64.whl
Processing g:\graduationproject\facenet\pillow-5.4.1-cp36-cp36m-win_amd64.whl
Installing collected packages: Pillow
Successfully installed Pillow-5.4.1(tensorflow) G:\graduationproject\facenet>pip install opencv-python
Requirement already satisfied: opencv-python in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (3.4.5)(tensorflow) G:\graduationproject\facenet>pip show tensorflow
Name: tensorflow
Version: 1.2.1
Summary: TensorFlow helps the tensors flow
Home-page: http://tensorflow.org/
Author: Google Inc.
Author-email: opensource@google.com
License: Apache 2.0
Location: c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages
Requires: six, backports.weakref, wheel, protobuf, numpy, markdown, html5lib, werkzeug, bleach
Required-by:(tensorflow) G:\graduationproject\facenet>pip install matplotlib-3.0.3-cp36-cp36m-win_amd64.whl
Processing g:\graduationproject\facenet\matplotlib-3.0.3-cp36-cp36m-win_amd64.whl
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib==3.0.3)Downloading https://files.pythonhosted.org/packages/de/0a/001be530836743d8be6c2d85069f46fecf84ac6c18c7f5fb8125ee11d854/pyparsing-2.3.1-py2.py3-none-any.whl (61kB)100% |████████████████████████████████| 71kB 16kB/s
Collecting kiwisolver>=1.0.1 (from matplotlib==3.0.3)Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)",)': /simple/kiwisolver/Downloading https://files.pythonhosted.org/packages/44/72/16630c3392eba03788ad87949390516bbc488e8e118047a3b824631d21a6/kiwisolver-1.0.1-cp36-none-win_amd64.whl (57kB)100% |████████████████████████████████| 61kB 9.6kB/s
Requirement already satisfied: python-dateutil>=2.1 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from matplotlib==3.0.3) (2.6.1)
Requirement already satisfied: numpy>=1.10.0 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from matplotlib==3.0.3) (1.13.1)
Collecting cycler>=0.10 (from matplotlib==3.0.3)Downloading https://files.pythonhosted.org/packages/f7/d2/e07d3ebb2bd7af696440ce7e754c59dd546ffe1bbe732c8ab68b9c834e61/cycler-0.10.0-py2.py3-none-any.whl
Requirement already satisfied: setuptools in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from kiwisolver>=1.0.1->matplotlib==3.0.3) (36.4.0)
Requirement already satisfied: six>=1.5 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from python-dateutil>=2.1->matplotlib==3.0.3) (1.10.0)
Installing collected packages: pyparsing, kiwisolver, cycler, matplotlib
Successfully installed cycler-0.10.0 kiwisolver-1.0.1 matplotlib-3.0.3 pyparsing-2.3.1(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_face
ModuleNotFoundError: No module named 'align'(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple align
Looking in indexes: https://pypi.douban.com/simple
Collecting alignDownloading https://pypi.doubanio.com/packages/97/4a/c6ab8383c43b752cf2f5abc43e75408f2cb1cbc48f8d64309b90cb4a85f7/align-0.0.5.tar.gz (2.6MB)100% |████████████████████████████████| 2.6MB 7.3MB/s
Building wheels for collected packages: alignBuilding wheel for align (setup.py) ... doneStored in directory: C:\Users\admin\AppData\Local\pip\Cache\wheels\82\be\4f\b6c98df8f643d62bc9883557c993deaa0744ca379420ecf974
Successfully built align
Installing collected packages: align
Successfully installed align-0.0.5(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_faceFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\__init__.py", line 1, in from .prepare_transcripts import *File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\prepare_transcripts.py", line 7, in import pandas as pd
ModuleNotFoundError: No module named 'pandas'(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple pandas
Looking in indexes: https://pypi.douban.com/simple
Collecting pandasDownloading https://pypi.doubanio.com/packages/d0/4e/9db3468e504ac9aeadb37eb32bcf0a74d063d24ad1471104bd8a7ba20c97/pandas-0.24.2-cp36-cp36m-win_amd64.whl (8.8MB)100% |████████████████████████████████| 8.8MB 7.3MB/s
Collecting pytz>=2011k (from pandas)Downloading https://pypi.doubanio.com/packages/61/28/1d3920e4d1d50b19bc5d24398a7cd85cc7b9a75a490570d5a30c57622d34/pytz-2018.9-py2.py3-none-any.whl (510kB)100% |████████████████████████████████| 512kB 12.8MB/s
Requirement already satisfied: python-dateutil>=2.5.0 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from pandas) (2.6.1)
Requirement already satisfied: numpy>=1.12.0 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from pandas) (1.13.1)
Requirement already satisfied: six>=1.5 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from python-dateutil>=2.5.0->pandas) (1.10.0)
Installing collected packages: pytz, pandas
Successfully installed pandas-0.24.2 pytz-2018.9(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_faceFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\__init__.py", line 1, in from .prepare_transcripts import *File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\prepare_transcripts.py", line 12, in import nltk
ModuleNotFoundError: No module named 'nltk'(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple nltk
Looking in indexes: https://pypi.douban.com/simple
Collecting nltkDownloading https://pypi.doubanio.com/packages/6f/ed/9c755d357d33bc1931e157f537721efb5b88d2c583fe593cc09603076cc3/nltk-3.4.zip (1.4MB)100% |████████████████████████████████| 1.4MB 1.5MB/s
Requirement already satisfied: six in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from nltk) (1.10.0)
Collecting singledispatch (from nltk)Downloading https://pypi.doubanio.com/packages/c5/10/369f50bcd4621b263927b0a1519987a04383d4a98fb10438042ad410cf88/singledispatch-3.4.0.3-py2.py3-none-any.whl
Building wheels for collected packages: nltkBuilding wheel for nltk (setup.py) ... doneStored in directory: C:\Users\admin\AppData\Local\pip\Cache\wheels\e7\35\7a\e2b4bc80f3405208922309153f4bdbec4054840e4414ad0134
Successfully built nltk
Installing collected packages: singledispatch, nltk
Successfully installed nltk-3.4 singledispatch-3.4.0.3(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_faceFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\__init__.py", line 1, in from .prepare_transcripts import *File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\align\prepare_transcripts.py", line 19, in from gensim.models import word2vec
ModuleNotFoundError: No module named 'gensim'(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple gensim
Looking in indexes: https://pypi.douban.com/simple
Collecting gensimDownloading https://pypi.doubanio.com/packages/54/ee/c1f685caa83ee9b8f54573b51648af61b01377bcc5981a18704f5247cce7/gensim-3.7.1-cp36-cp36m-win_amd64.whl (24.1MB)100% |████████████████████████████████| 24.1MB 6.4MB/s
Requirement already satisfied: scipy>=0.18.1 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from gensim) (1.2.1)
Collecting smart-open>=1.7.0 (from gensim)Downloading https://pypi.doubanio.com/packages/ff/c8/de7dcf34d4b5f2ae94fe1055e0d6418fb97a63c9dc3428edd264704983a2/smart_open-1.8.0.tar.gz (40kB)100% |████████████████████████████████| 40kB 10.2MB/s
Requirement already satisfied: numpy>=1.11.3 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from gensim) (1.13.1)
Requirement already satisfied: six>=1.5.0 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from gensim) (1.10.0)
Collecting boto>=2.32 (from smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/23/10/c0b78c27298029e4454a472a1919bde20cb182dab1662cec7f2ca1dcc523/boto-2.49.0-py2.py3-none-any.whl (1.4MB)100% |████████████████████████████████| 1.4MB 6.8MB/s
Collecting bz2file (from smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/61/39/122222b5e85cd41c391b68a99ee296584b2a2d1d233e7ee32b4532384f2d/bz2file-0.98.tar.gz
Requirement already satisfied: requests in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from smart-open>=1.7.0->gensim) (2.21.0)
Collecting boto3 (from smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/02/af/b1cd14cb4b8889968c8fefdda196da7dd15562b5a3fba2201dd1bfdfab43/boto3-1.9.119-py2.py3-none-any.whl (128kB)100% |████████████████████████████████| 133kB 2.6MB/s
Requirement already satisfied: idna<2.9,>=2.5 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from requests->smart-open>=1.7.0->gensim) (2.8)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from requests->smart-open>=1.7.0->gensim) (2019.3.9)
Requirement already satisfied: urllib3<1.25,>=1.21.1 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from requests->smart-open>=1.7.0->gensim) (1.24.1)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from requests->smart-open>=1.7.0->gensim) (3.0.4)
Collecting jmespath<1.0.0,>=0.7.1 (from boto3->smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/83/94/7179c3832a6d45b266ddb2aac329e101367fbdb11f425f13771d27f225bb/jmespath-0.9.4-py2.py3-none-any.whl
Collecting botocore<1.13.0,>=1.12.119 (from boto3->smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/eb/c6/49443633bd8e0677ece4e0605b0abcfef3f627ed9c957d0579716f2564b4/botocore-1.12.119-py2.py3-none-any.whl (5.3MB)100% |████████████████████████████████| 5.3MB 4.7MB/s
Collecting s3transfer<0.3.0,>=0.2.0 (from boto3->smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/d7/de/5737f602e22073ecbded7a0c590707085e154e32b68d86545dcc31004c02/s3transfer-0.2.0-py2.py3-none-any.whl (69kB)100% |████████████████████████████████| 71kB 907kB/s
Collecting docutils>=0.10 (from botocore<1.13.0,>=1.12.119->boto3->smart-open>=1.7.0->gensim)Downloading https://pypi.doubanio.com/packages/36/fa/08e9e6e0e3cbd1d362c3bbee8d01d0aedb2155c4ac112b19ef3cae8eed8d/docutils-0.14-py3-none-any.whl (543kB)100% |████████████████████████████████| 552kB 10.2MB/s
Requirement already satisfied: python-dateutil<3.0.0,>=2.1; python_version >= "2.7" in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (from botocore<1.13.0,>=1.12.119->boto3->smart-open>=1.7.0->gensim) (2.6.1)
Building wheels for collected packages: smart-open, bz2fileBuilding wheel for smart-open (setup.py) ... doneStored in directory: C:\Users\admin\AppData\Local\pip\Cache\wheels\ff\81\c0\4b47774dd62e1c8ff9ba40b771c9ba0f76cff55806d369d41cBuilding wheel for bz2file (setup.py) ... doneStored in directory: C:\Users\admin\AppData\Local\pip\Cache\wheels\e4\0d\00\03c6e7d52a36ad95c18a9d4678f1184396e3b64ac58b008cf9
Successfully built smart-open bz2file
Installing collected packages: boto, bz2file, jmespath, docutils, botocore, s3transfer, boto3, smart-open, gensim
Successfully installed boto-2.49.0 boto3-1.9.119 botocore-1.12.119 bz2file-0.98 docutils-0.14 gensim-3.7.1 jmespath-0.9.4 s3transfer-0.2.0 smart-open-1.8.0(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_face
ModuleNotFoundError: No module named 'align.detect_face'(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 159, in main(parse_arguments(sys.argv[1:]))File "facenet/src/align/align_dataset_mtcnn.py", line 46, in mainfacenet.store_revision_info(src_path, output_dir, ' '.join(sys.argv))
AttributeError: module 'facenet' has no attribute 'store_revision_info'

出错:

第一个错误:因为detect_face.py和align_dataset_mtcnn.py在同一文件夹下,所以把align_dataset_mtcnn.py移动到上一级目录中

第二个错误:参考https://blog.csdn.net/weixin_42280271/article/details/82865337

(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 35, in import align.detect_face
ModuleNotFoundError: No module named 'align.detect_face'(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 159, in main(parse_arguments(sys.argv[1:]))File "facenet/src/align/align_dataset_mtcnn.py", line 46, in mainfacenet.store_revision_info(src_path, output_dir, ' '.join(sys.argv))
AttributeError: module 'facenet' has no attribute 'store_revision_info'(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 159, in main(parse_arguments(sys.argv[1:]))File "facenet/src/align/align_dataset_mtcnn.py", line 46, in mainfacenet.store_revision_info(src_path, output_dir, ' '.join(sys.argv))
AttributeError: module 'facenet' has no attribute 'store_revision_info'(tensorflow) G:\graduationproject\facenet>

第三个错误:卸载numpy重装:

cmd下:
安装pycurl包
pip install pycurl列出已经安装的python包
pip list输出pycurl包的信息
pip show pycurl卸载pycurl包
pip uninstall pycurl
--------------------- 
作者:guyue35 
来源:CSDN 
原文:https://blog.csdn.net/guyue35/article/details/51337513 
版权声明:本文为博主原创文章,转载请附上博文链接!

(base) C:\Users\admin>activate tensorflow(tensorflow) C:\Users\admin>G:(tensorflow) G:\>cd graduationproject\facenet(tensorflow) G:\graduationproject\facenet>python  facenet/src/align/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Traceback (most recent call last):File "__init__.pxd", line 1036, in numpy.import_array
RuntimeError: module compiled against API version 0xc but this version of numpy is 0xbDuring handling of the above exception, another exception occurred:Traceback (most recent call last):File "facenet/src/align/align_dataset_mtcnn.py", line 34, in import facenetFile "C:\Users\admin\Anaconda3\envs\tensorflow\Lib\site-packages\facenet\facenet.py", line 35, in from sklearn.model_selection import KFoldFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\sklearn\__init__.py", line 64, in from .base import cloneFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\sklearn\base.py", line 14, in from .utils.fixes import signatureFile "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\sklearn\utils\__init__.py", line 12, in from .murmurhash import murmurhash3_32File "sklearn\utils\murmurhash.pyx", line 26, in init sklearn.utils.murmurhashFile "__init__.pxd", line 1038, in numpy.import_array
ImportError: numpy.core.multiarray failed to import(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple numpy
Looking in indexes: https://pypi.douban.com/simple
Requirement already satisfied: numpy in c:\users\admin\anaconda3\envs\tensorflow\lib\site-packages (1.13.1)(tensorflow) G:\graduationproject\facenet>pip install -i https://pypi.douban.com/simple numpy.core
Looking in indexes: https://pypi.douban.com/simple
Collecting numpy.coreCould not find a version that satisfies the requirement numpy.core (from versions: )
No matching distribution found for numpy.core(tensorflow) G:\graduationproject\facenet>

第四个错误:

(tensorflow) G:\graduationproject\facenet>python  facenet/src/align_dataset_mtcnn.py   datasets/lfw/raw  datasets/lfw/lfw_mtcnnpy_160 --image_size 160 --margin 32 --random_order
Creating networks and loading parameters
2019-03-22 19:40:50.322458: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.334064: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.347975: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.361151: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.380658: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.398882: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.428938: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-22 19:40:50.457522: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
Traceback (most recent call last):File "facenet/src/align_dataset_mtcnn.py", line 159, in main(parse_arguments(sys.argv[1:]))File "facenet/src/align_dataset_mtcnn.py", line 55, in mainpnet, rnet, onet = align.detect_face.create_mtcnn(sess, None)File "G:\graduationproject\facenet\facenet\src\align\detect_face.py", line 282, in create_mtcnnpnet = PNet({'data':data})File "G:\graduationproject\facenet\facenet\src\align\detect_face.py", line 73, in __init__self.setup()File "G:\graduationproject\facenet\facenet\src\align\detect_face.py", line 227, in setup.softmax(3,name='prob1'))File "G:\graduationproject\facenet\facenet\src\align\detect_face.py", line 51, in layer_decoratedlayer_output = op(self, layer_input, *args, **kwargs)File "G:\graduationproject\facenet\facenet\src\align\detect_face.py", line 210, in softmaxmax_axis = tf.reduce_max(target, axis, keepdims=True)
TypeError: reduce_max() got an unexpected keyword argument 'keepdims'

解决方法:keepdims改为keep_dims

正常运行了

datasets/lfw/raw\Steve_Cutler\Steve_Cutler_0001.jpg
datasets/lfw/raw\John_Gruden\John_Gruden_0001.jpg
datasets/lfw/raw\Jose_Carreras\Jose_Carreras_0001.jpg
datasets/lfw/raw\Terry_McAuliffe\Terry_McAuliffe_0001.jpg
datasets/lfw/raw\Terry_McAuliffe\Terry_McAuliffe_0003.jpg
datasets/lfw/raw\Terry_McAuliffe\Terry_McAuliffe_0002.jpg
datasets/lfw/raw\John_Williams\John_Williams_0001.jpg
datasets/lfw/raw\Scott_Yates\Scott_Yates_0001.jpg
datasets/lfw/raw\Mark_Hurlbert\Mark_Hurlbert_0002.jpg
datasets/lfw/raw\Mark_Hurlbert\Mark_Hurlbert_0004.jpg
datasets/lfw/raw\Mark_Hurlbert\Mark_Hurlbert_0003.jpg
datasets/lfw/raw\Mark_Hurlbert\Mark_Hurlbert_0005.jpg
datasets/lfw/raw\Mark_Hurlbert\Mark_Hurlbert_0001.jpg
datasets/lfw/raw\Alex_Penelas\Alex_Penelas_0002.jpg
datasets/lfw/raw\Alex_Penelas\Alex_Penelas_0001.jpg
datasets/lfw/raw\Gina_Centrello\Gina_Centrello_0001.jpg
Total number of images: 13233
Number of successfully aligned images: 13233用时0.5h

结果:

评估模型的准确率:

出错:

(tensorflow) G:\graduationproject\facenet\facenet>python src/validate_on_lfw.py  ../datasets/lfw/lfw_mtcnnpy_160 ../models/20180408-102900
2019-03-25 11:33:58.940413: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:58.948354: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:58.962997: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:58.969602: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:58.984506: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:58.999096: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:59.015901: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
2019-03-25 11:33:59.029181: W c:\l\tensorflow_1501918863922\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.
Model directory: ../models/20180408-102900
Metagraph file: model-20180408-102900.meta
Checkpoint file: model-20180408-102900.ckpt-90
Traceback (most recent call last):File "src/validate_on_lfw.py", line 164, in main(parse_arguments(sys.argv[1:]))File "src/validate_on_lfw.py", line 73, in mainfacenet.load_model(args.model, input_map=input_map)File "G:\graduationproject\facenet\facenet\src\facenet.py", line 381, in load_modelsaver = tf.train.import_meta_graph(os.path.join(model_exp, meta_file), input_map=input_map)File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\training\saver.py", line 1686, in import_meta_graph**kwargs)File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\framework\meta_graph.py", line 504, in import_scoped_meta_graphproducer_op_list=producer_op_list)File "C:\Users\admin\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\framework\importer.py", line 283, in import_graph_defraise ValueError('No op named %s in defined operations.' % node.op)
ValueError: No op named DecodeBmp in defined operations.

解决方法:Anaconda中升级tensorflow的版本至1.9.0

再次执行,执行结果:

(tensorflow) G:\graduationproject\facenet\facenet>python src/validate_on_lfw.py  ../datasets/lfw/lfw_mtcnnpy_160 ../models/20180408-102900
2019-03-25 16:26:12.469707: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
Model directory: ../models/20180408-102900
Metagraph file: model-20180408-102900.meta
Checkpoint file: model-20180408-102900.ckpt-90
2019-03-25 16:26:52.757322: W T:\src\github\tensorflow\tensorflow\core\graph\graph_constructor.cc:1248] Importing a graph with a lower producer version 24 into an existing graph with producer version 26. Shape inference will have run different parts of the graph with different producer versions.
Runnning forward pass on LFW images
............
Accuracy: 0.97817+-0.00502
Validation rate: 0.83967+-0.03686 @ FAR=0.00133
Area Under Curve (AUC): 0.997
Equal Error Rate (EER): 0.025
2019-03-25 17:05:57.134546: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.141375: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.150160: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.157672: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.164343: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.173664: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.184883: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:277] _2_input_producer: Skipping cancelled enqueue attempt with queue not closed
2019-03-25 17:05:57.193215: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed
2019-03-25 17:05:57.204908: W T:\src\github\tensorflow\tensorflow\core\kernels\queue_base.cc:285] _1_FIFOQueueV2: Skipping cancelled dequeue attempt with queue not closed

由此,我们验证了模型在LFW上的准确率为99.7%。

在自己的图片上应用已有模型:

(tensorflow) G:\graduationproject\facenet\facenet>python src/compare.py ../models/20180408-102900 src/img1.jpg  src/img2.jpg src/img3.jpg
Creating networks and loading parameters
2019-03-25 18:48:14.200682: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
Model directory: ../models/20180408-102900
Metagraph file: model-20180408-102900.meta
Checkpoint file: model-20180408-102900.ckpt-90
Images:
0: src/img1.jpg
1: src/img2.jpg
2: src/img3.jpgDistance matrix0         1         2
0    0.0000    0.7271    0.5981
1    0.7271    0.0000    0.6791
2    0.5981    0.6791    0.0000

(tensorflow) G:\graduationproject\facenet\facenet>python src/compare.py ../models/20180408-102900 src/img1.jpg  src/img2.jpg src/img3.jpg
Creating networks and loading parameters
2019-03-25 18:55:24.259552: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
Model directory: ../models/20180408-102900
Metagraph file: model-20180408-102900.meta
Checkpoint file: model-20180408-102900.ckpt-90
Images:
0: src/img1.jpg
1: src/img2.jpg
2: src/img3.jpgDistance matrix0         1         2
0    0.0000    0.9791    0.5981
1    0.9791    0.0000    0.8691
2    0.5981    0.8691    0.0000

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部