1.首先正常安装自己的tensorflow-gpu,CUDA,cuDNN,python,tensorflow(注意版本兼容问题)
2.下载CMake,解压缩
3.用VIS2019打开dlib-master的安装目录并且开始编辑json文件,开启USE_AVX_INSTRUCTIONS,失效USE_SSE2_INSTRUCTIONS
4.进入dlib的安装目录
#不用像网上说的那样加什么--yes
python .\setup.py install
5.结果
6.输入代码测试dlib
#!/usr/bin/python3.6
# -*- coding: utf-8 -*-
# @Time : 2020/3/16 14:03
# @Author : JoyYang
# @Email : JoyYang21@163.com
# @File : aa.py
# @Software: PyCharm
from PIL import Image
import face_recognition
import time
import dlib
import sys
from skimage import io
image = face_recognition.load_image_file("微信图片_20200313141838.jpg")
Image.fromarray(image)
s = time.time()
face_locations = face_recognition.face_locations(image, number_of_times_to_upsample=0,model='cnn')
print(time.time() - s)
print(dlib.cuda.get_num_devices())
for face_location in face_locations:
# Print the location of each face in this image
top, right, bottom, left = face_location
print("A face is located at pixel location Top: {}, Left: {}, Bottom: {}, Right: {}".format(top, left, bottom, right))
# You can access the actual face itself like this:
face_image = image[top:bottom, left:right]
pil_image = Image.fromarray(face_image)
pil_image.show()
7.查看运行GPU
查看机器上GPU情况
命令: nvidia-smi
功能:显示机器上gpu的情况
命令: nvidia-smi -l
功能:定时更新显示机器上gpu的情况
其中左上侧有0、1、2、3的编号,表示GPU的编号,在后面指定GPU时需要使用这个编号
CUDA_VISIBLE_DEVICES=1 python your_file.py
在默认条件下,tensorflow会一次占满左右显存!这对于我们想在同一台机器上跑多个程序不利(后面的程序会报显存不足的错误),可以通过以下方式,设置tensorflow中显存的使用方式
在Python代码中指定GPU
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = "0" # 使用几号GPU
os.environ["CUDA_VISIBLE_DEVICES"] = "-1" # 不使用GPU
设置定量的GPU使用量
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.9 # 占用GPU90%的显存
session = tf.Session(config=config)
设置最小的GPU使用量
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config)
Pwr:Usage/Cap| :Pwr:用法/上限|
Memory-Usage:内存使用情况
作者:Joyyang_c