ubuntu20部署Bringing-Old-Photos-Back-to-Life

                                                            

环境准备:

ubuntu20.04 

Python 3.8.10

首先将微软的「Bringing-Old-Photos-Back-to-Life」库 clone 到本地:

git clone https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life.git

cd Face_Enhancement/models/networks/
git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch
cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .
cd ../../../

Global 权重配置 

cd Global/detection_models
git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch
cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .
cd ../../

Face_Detection 权重  

人脸识别预训练模型:

cd Face_Detection/
wget http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2
bzip2 -d shape_predictor_68_face_landmarks.dat.bz2
cd ../

Face_Enhancement 权重

Face_Enhancement 权重用于人脸部位增强,下载后权重文件解压至 ./Face_Enhancement 

cd Face_Enhancement/
wget https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life/releases/download/v1.0/face_checkpoints.zip
unzip face_checkpoints.zip
cd ../
cd Global/
wget https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life/releases/download/v1.0/global_checkpoints.zip
unzip global_checkpoints.zip
cd ../

 创建 python3 虚拟环境

python3 -m venv .venv

source .venv/bin/activate

安装项目依赖库

pip3 install -r requirements.txt

出现的问题:


Running Stage 4: Blending
Traceback (most recent call last):
File “align_warp_back_multiple_dlib.py”, line 428, in
blended = blur_blending_cv2(warped_back, blended, backward_mask)
File “align_warp_back_multiple_dlib.py”, line 219, in blur_blending_cv2
mask *= 255.0
numpy.core._exceptions.UFuncTypeError: Cannot cast ufunc ‘multiply’ output from dtype(‘float64’) to dtype(‘uint8’) with casting rule ‘same_kind’

找到文件align_warp_back_multiple_dlib.py的219行,将代码 mask *= 255.0 改为:mask = mask * 255.0,再次运行。
 

修复不带折痕的照片

对于不带折痕的照片,终端输入时需要三个参数,

  • --input_folder ,存放需要修复图片的文件路径,不指定时默认为 ./test_images/old;
  • --output_folder,存放修复后图片的文件路径,不指定时默认为 ./output/
  • --GPU,指定用到的 GPU 编号,可设定为 0 、 0,10,1,2 ,没有 GPU 配置时 设为 -1 表示运行时只用 CPU ; 设定 GPU 时需要确保配置的 Pytorch 是 GPU 版本,相对 CPU 的话,GPU 测试时间会更短;

测试时,启动命令如下,这里 --input_folder、--output_folder参数都为默认,所以命令中加这两个参数,电脑比较渣没有 GPU 所以设为 -1;

python3 run.py --GPU -1

 修复带折痕的照片

与不带折痕相比,修复带折痕照片要多加入一个参数 --with_scratch,还有一点不同的是存放原照片默认路径更改为为 ./test_images/old_w_scratch ,其它参数设置见 3.1

终端中输入的测试命令如下:

python3 run.py --GPU -1 --with_scratch

最终的运行结果

export PYTHONPATH=/home/xxx/.local/lib/python3.8/site-packages/

文末福利

整个打包版下载地址,联系我要提取码

百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间icon-default.png?t=N7T8https://pan.baidu.com/s/1oKgBB0gkRIGjwzeTtFYWFw百度网盘 请输入提取码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/307372.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在Ant Design Vue(v1.7.8)a-table组件中实现余额自动计算

一、目标 在Ant Design Vue <a-table>表格中实现余额自动计算&#xff0c;公式为&#xff1a;剩余量 库存量 - 消耗量 二、二次开发基础 现有一个使用Ant Design Vue <a-table>表格的开源项目&#xff0c;原始表格有“消耗量”列&#xff0c;且带输入框&#xf…

【Maven】<scope>provided</scope>

在Maven中&#xff0c;“provided”是一个常用的依赖范围&#xff0c;它表示某个依赖项在编译和测试阶段是必需的&#xff0c;但在运行时则由外部环境提供&#xff0c;不需要包含在最终的项目包中。下面是对Maven scope “provided”的详细解释&#xff1a; 编译和测试阶段可用…

自定义docker镜像,ubuntu安装命令并导出

文章目录 问题现象解决步骤相关命令详细介绍docker save 与 docker loaddocker import 与 docker exportdocker commit 问题现象 我们的通讯服务&#xff0c;需要监测前端设备的在线情况&#xff08;是否在线、丢包率、延迟等&#xff09;&#xff0c;使用ping命令去实现此功能…

GBASE南大通用-Base 8a集群同步工具超详细指南 手把手带您玩转灾备

1工具介绍 GBase 8a集群间同步工具是基于集群的底层二进制数据同步的工具&#xff0c;其同步的对象是库内的数据&#xff0c;通过解析、对比智能索引中摘要信息的变化&#xff0c;来实现同构集群的同构表的数据复制功能&#xff0c;目前已经支持图形化操作&#xff0c;主要功能…

电脑报错“kernelbase.dll”文件缺失,软件游戏无法启动的解决方法

很多小伙伴留言说&#xff0c;每次自己要游戏或软件的时候&#xff0c;电脑就会弹出报错框&#xff0c;不知道应该怎么办&#xff1f; 其实&#xff0c;Windows报错提示已经说明了&#xff0c;程序找不到名为“kernelbase.dll”的文件&#xff0c;需要重新安装修复这个问题。 …

熊猫目标检测数据集VOC格式1200张

熊猫是中国的国宝&#xff0c;也是世界上最受人喜爱的动物之一。熊猫以其独特的外貌和与生俱来的文化象征意义而闻名于世。它们是一种大型的食草动物&#xff0c;主要分布在中国中部地区的竹林和高山地带。 熊猫的身形圆润笨拙&#xff0c;黑白分明&#xff0c;拥有圆润的脸庞…

Apipost一键压测参数化功能详解

最近更新中Apipost对UI页面进行了一些调整&#xff0c;另外一键压测功能支持参数化&#xff01;本篇文章将详细介绍这些改动&#xff01; API调试页面的细节改动 在请求区填入请求参数或脚本时会有相应的标识 如在Query中填入多个参数时上方会展示数量 在预、后执行脚本中写…

分享一个qml开发的Dialog

一、效果预览 二、源码分享 PopwindowWidget.qml import QtQuick import QtQuick.Controls import QtQuick.LayoutsApplicationWindow {id:selfwidth: 470height: 250visible: falsecolor: "#00000000"flags: Qt.Tool | Qt.FramelessWindowHint|Qt.MSWindowsFixedSiz…

REHL_用yum/dnf管理软件包

使用rpm安装包时经常会遇到一个问题就是包依赖&#xff0c;如下所示。 [rootRedHat ~]# rpm -ivh /mnt/AppStream/Packages/httpd-2.4.37-41.moduleel8.5.011772c8e0c271.x86_64.rpm 警告&#xff1a;/mnt/AppStream/Packages/httpd-2.4.37-41.moduleel8.5.011772c8e0c271.x86…

机器学习中的偏差和方差

评估机器学习模型的方法有很多种。我们可以使用MSE&#xff08;均方误差&#xff09;进行回归&#xff1b;精确度&#xff0c;召回率和ROC&#xff08;特征接收器&#xff09;用于分类问题。以类似的方式&#xff0c;偏差和方差帮助我们进行参数调整&#xff0c;并在几个构建的…

Linux 内核学习笔记: hlist 的理解

前言 最近阅读 Linux 内核时&#xff0c;遇到了 hlist&#xff0c;这个 hlist 用起来像是普通的链表&#xff0c;但是为何使用 hlist&#xff0c;hlist 是怎么工作的&#xff1f; 相关代码 hlist_add_head(&clk->clks_node, &core->clks); /*** clk_core_link_…

使用ArcMap进行选址服务,适宜性分析

文章目录 题目分析技术步骤1&#xff0c;环境设置2&#xff0c;计算坡度&#xff1a;空间分析——表面分析——坡度&#xff0c;根据DEM求坡度4&#xff0c;距离计算3&#xff0c;坡度赋分4&#xff0c;对学校赋分5&#xff0c;娱乐设施赋分6&#xff0c;土地利用类型赋分7&…