Open dev-fox-101 opened 2 months ago
mt-photos-insightface-unofficial-exe.zip 也可以从这里下载
https://github.com/dev-fox-101/mt-photos-insightface-unofficial/releases/tag/1.0.0
请问下这个有cuda版本吗?
或者cuda的应该怎么打包镜像
或者cuda的应该怎么打包镜像
dockerfile里,把最上面的 基础镜像改下;
FROM python:3.8.10-buster
改为
FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04
应该就可以打包了
或者cuda的应该怎么打包镜像
dockerfile里,把最上面的 基础镜像改下;
FROM python:3.8.10-buster
改为FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04
应该就可以打包了
试了可行,同时要在添加python的包
或者cuda的应该怎么打包镜像
dockerfile里,把最上面的 基础镜像改下;
FROM python:3.8.10-buster
改为FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04
应该就可以打包了
感谢!
确实比较精准了。
试了下 cuda 编译,Dockerfile如果只是替换 FROM 还是会只用 CPU 跑,还需要安装python ;然后 requirement 里onnxruntime替换成onnxruntime-gpu,再加一个python-multipart。现在实测是可以在 GPU 上跑起来了
试了下 cuda 编译,Dockerfile如果只是替换 FROM 还是会只用 CPU 跑,还需要安装python ;然后 requirement 里onnxruntime替换成onnxruntime-gpu,再加一个python-multipart。现在实测是可以在 GPU 上跑起来了
可以分享下dockerfile吗,我按这个写,一直报错。
试了下 cuda 编译,Dockerfile如果只是替换 FROM 还是会只用 CPU 跑,还需要安装python ;然后 requirement 里onnxruntime替换成onnxruntime-gpu,再加一个python-multipart。现在实测是可以在 GPU 上跑起来了
可以分享下dockerfile吗,我按这个写,一直报错。
root:~/mt-photos-insightface-unofficial# cat Dockerfile
#FROM python:3.8.10-buster
FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04
USER root
RUN apt update && \
apt install -y python3 pip && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/log/*
WORKDIR /app
COPY requirements.txt .
# 安装依赖包
RUN pip3 install --no-cache-dir -r requirements.txt --index-url=https://pypi.tuna.tsinghua.edu.cn/simple/
COPY server.py .
ENV API_AUTH_KEY=mt_photos_ai_extra
ENV RECOGNITION_MODEL=buffalo_l
ENV DETECTION_THRESH=0.65
EXPOSE 8066
VOLUME ["/root/.insightface/models"]
CMD [ "python3", "server.py" ]
root:~/mt-photos-insightface-unofficial# cat requirements.txt
fastapi
python-dotenv
uvicorn
insightface
onnxruntime-gpu
python-multipart
不知道能不能通用,我这里是可以跑的
试了下 cuda 编译,Dockerfile如果只是替换 FROM 还是会只用 CPU 跑,还需要安装python ;然后 requirement 里onnxruntime替换成onnxruntime-gpu,再加一个python-multipart。现在实测是可以在 GPU 上跑起来了
可以分享下dockerfile吗,我按这个写,一直报错。
root:~/mt-photos-insightface-unofficial# cat Dockerfile
#FROM python:3.8.10-buster FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04 USER root RUN apt update && \ apt install -y python3 pip && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/log/* WORKDIR /app COPY requirements.txt . # 安装依赖包 RUN pip3 install --no-cache-dir -r requirements.txt --index-url=https://pypi.tuna.tsinghua.edu.cn/simple/ COPY server.py . ENV API_AUTH_KEY=mt_photos_ai_extra ENV RECOGNITION_MODEL=buffalo_l ENV DETECTION_THRESH=0.65 EXPOSE 8066 VOLUME ["/root/.insightface/models"] CMD [ "python3", "server.py" ]
root:~/mt-photos-insightface-unofficial# cat requirements.txt
fastapi python-dotenv uvicorn insightface onnxruntime-gpu python-multipart
不知道能不能通用,我这里是可以跑的
2024-09-03 17:58:31 Traceback (most recent call last):
2024-09-03 17:58:31 File "/app/server.py", line 44, in
我这个docker运行会出现这个报错。。
mac arm的话,可以用么?
纯小白问一下window版 MT原版的人脸识别,那个程序,需要完全卸载掉,然后再安装这个新模型版本,是吧? 新版本安装完之后,MT系统里面,人脸识别数据该怎么办呢?重建全部数据?
你好,非常不错的项目。我是使用cuda版本,请问这个docker的server.py能不能优化一下让它仅在人脸识别运行的时候才调用GPU资源,否则释放显存。多数人都是在nas上部署此类项目追求低功耗,目前的docker只要开着就一定调用GPU,一是浪费计算资源和显存。二是显卡保持唤醒不能休眠,增加了功耗。实际人脸识别运行时间占比全天时间很少。
装好回来,评论一下,非常好用的模型,很精准,值得切换。
试了下 cuda 编译,Dockerfile如果只是替换 FROM 还是会只用 CPU 跑,还需要安装python ;然后 requirement 里onnxruntime替换成onnxruntime-gpu,再加一个python-multipart。现在实测是可以在 GPU 上跑起来了
可以分享下dockerfile吗,我按这个写,一直报错。
root:~/mt-photos-insightface-unofficial# cat Dockerfile
#FROM python:3.8.10-buster FROM nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04 USER root RUN apt update && \ apt install -y python3 pip && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/log/* WORKDIR /app COPY requirements.txt . # 安装依赖包 RUN pip3 install --no-cache-dir -r requirements.txt --index-url=https://pypi.tuna.tsinghua.edu.cn/simple/ COPY server.py . ENV API_AUTH_KEY=mt_photos_ai_extra ENV RECOGNITION_MODEL=buffalo_l ENV DETECTION_THRESH=0.65 EXPOSE 8066 VOLUME ["/root/.insightface/models"] CMD [ "python3", "server.py" ]
root:~/mt-photos-insightface-unofficial# cat requirements.txt
fastapi python-dotenv uvicorn insightface onnxruntime-gpu python-multipart
不知道能不能通用,我这里是可以跑的
2024-09-03 17:58:31 Traceback (most recent call last): 2024-09-03 17:58:31 File "/app/server.py", line 44, in 2024-09-03 17:58:31 faceAnalysis = FaceAnalysis(providers=['CUDAExecutionProvider', 'CPUExecutionProvider'], allowed_modules=['detection', 'recognition'], name=recognition_model) 2024-09-03 17:58:31 File "/usr/local/lib/python3.10/dist-packages/insightface/app/face_analysis.py", line 43, in init 2024-09-03 17:58:31 assert 'detection' in self.models 2024-09-03 17:58:31 AssertionError
我这个docker运行会出现这个报错。。
似乎启动容器时加上--gpus all的参数就可以。 我这里没加参数时,启动容器时除了你说的这个报错,还有如下错误: WARNING: The NVIDIA Driver was not detected. GPU functionality will not be available. Use the NVIDIA Container Toolkit to start this container with GPU support; see https://docs.nvidia.com/datacenter/cloud-native/ .
后来查了一下,加上gpus的参数就好了。
参考文档:https://blog.csdn.net/semiconductor_s/article/details/139364028
kqstone 大佬已经集成了insightface的模型 https://github.com/kqstone/mt-photos-insightface-unofficial
insightface是开源中准确率最高的预训练模型,特别是针对亚洲人脸型,比官方仓库使用的Facenet512准确率高很多 可以大幅改善识别完成后,一个人物被识别为多个人物的情况;
使用方法:
Docker容器运行
docker-compose模板
API配置参数
人脸置信度阈值设置 建议填 0.65 人脸匹配差异度阈值 建议填 0.5
无法下载镜像
以下2个镜像已内置 buffalo_l 模型
可以使用这个国内的地址拉取镜像
第1条命令为拉取镜像 第2条命令为将镜像标记为Docker hub源,这样可以在图形化创建容器时使用
armV8版本镜像
启动容器后,测试api提示不是人脸识别API
第一次启动容器后需要下载模型,如果由于网络问题,下载失败,可以按下面的方法手动下载镜像
1、创建容器时,要映射 /root/.insightface/models 这个目录
2、将模型文件 buffalo_l.zip 解压到映射的目录中; 模型文件下载地址:https://github.com/kqstone/mt-photos-insightface-unofficial/releases/tag/models 或者百度网盘:https://pan.baidu.com/s/1SsY7_2t7aORh2jCvGWtD1A?pwd=1234
比如目录映射为: -v /mnt/docker/insightface/models:/root/.insightface/models 需要把buffalo_l.zip的文件解压到/mnt/docker/insightface/models/buffalo_l
解压完成后,在 /mnt/docker/insightface/models/buffalo_l 下面可以看到 1k3d68.onnx、2d106det.onnx、det_10g.onnx、genderage.onnx、w600k_r50.onnx 5个文件
创建容器的完整命令:
Windows如何使用
参考官方Windows版本的pyinstaller打包,我将kqstone/mt-photos-insightface-unofficial仓库的代码打包为Windows可以直接运行的exe文件
下载附件中的 mt-photos-insightface-unofficial-exe.zip 压缩包,解压后查看内部的 使用说明.txt
API配置参数
人脸置信度阈值设置 建议填 0.65 人脸匹配差异度阈值 建议填 0.5
Windows版本及模型下载
百度网盘:
https://pan.baidu.com/s/1SsY7_2t7aORh2jCvGWtD1A?pwd=1234