论文复现| Free-Form Image Inpainting with Gated Convolution

论文地址具有上下文注意的生成图像修复 

论文代码:GitHub 

01配置环境

根据原文代码中read me中要求,进行环境配置以及包的安装。

Run

安装python3

安装tensorflow(在1.3.0,1.4.0,1.5.0,1.6.0,1.7.0版本上进行了测试)。
安装tensorflow工具包neuralgym(运行pip Install git+https://github.com/JiahuiYu/neuralgym)。

01安装tensorflow

        我在pycharm中安装tensorflow发生报错,我选择在conda中安装,Read me中各几个版本的(1.3/4/5/6/7.0)对应的python版本都很低,选择安装py3.6。

第一步:导入下载镜像地址,加速下载。配置国内源
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaonda/pkgs/main/
第二步:现实源地址
        conda config --set show_channel_urls yes
第三步:创建一个3.6的python环境

conda create --prefix=D:\an\anaconda\envs\xf3.6 python=3.6
conda remove -n xf --all

        conda create -n txxf3.6 python=3.6

conda activate xf3.6

第四步:安装1.4.0的版本的tensorflow,我安装了1.3.0和1.7.0都报错了,Conv2D可能没有。          第五步:安装gpu版本的tensorflow

conda install  tensorflow==1.4.0
pip install tensorflow-gpu==1.4.0  -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U --trusted-host pypi.tuna.tsinghua.edu.cn

02安装neuralgym

        我们需要运行代码pip Install git+https://github.com/JiahuiYu/neuralgym,首先我们需要下载一个git。

git官网Git

1点击downloads,2点击windows,3在点击64位window系统的

        安装:01图Next,02图选择图中5个打勾,设定基本功能next,

03选择默认的喜好-默认vim。04选择 重写新存储库的默认分支名称。

05选择中间的git from 06上面的

07上面的 08上面的

09 10

11 12

13点安装  14 安装成功

 打开anaconda prompt,激活你的环境,再cd D:\learn\txhf\generative_inpainting-master,然后安装

pip install git+https://github.com/JiahuiYu/neuralgym

01 cv2

ModuleNotFoundError: No module named 'cv2'

输入代码 pip install opencv-python

报错

Collecting opencv-python
  Cache entry deserialization failed, entry ignored
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

解决方法,在官网https://www.lfd.uci.edu/~gohlke/pythonlibs/下载opencv的whl文件安装 ,D盘是whl文件保存路径。

pip install D:\an\anaconda\Lib\site-packages\opencv_python-4.4.0-cp36-cp36m-win_amd64.whl

02 numpy

报错

  File "D:\an\anaconda\envs\txxf3.6\lib\site-packages\neuralgym\ops\image_ops.py", line 5, in <module>
    import cv2
ImportError: numpy.core.multiarray failed to import

numpy版本过低,我安装的1.3.1的numpy,应该根据python版本找适合的最好版本,我装了1.16.4成功了。

conda install numpy==1.16.4

03 yaml

报错

  File "D:\an\anaconda\envs\txxf3.6\lib\site-packages\neuralgym\utils\config.py", line 4, in <module>
    import yaml
ModuleNotFoundError: No module named 'yaml'

安装 pyyaml,直接

conda install pyyaml

  File "D:\an\anaconda\envs\txxf3.6\lib\site-packages\neuralgym\ops\gan_ops.py", line 138, in <module>
    class Conv2DSepctralNorm(tf.layers.conv2D):
AttributeError: module 'tensorflow.python.layers.layers' has no attribute 'conv2D'

报错代码为

class Conv2DSepctralNorm(tf.layers.Conv2D):def build(self, input_shape):super(Conv2DSepctralNorm, self).build(input_shape)self.kernel = kernel_spectral_norm(self.kernel)

把其中的Conv2D改为小写的。

路径在D:\an\anaconda\envs\txxf3.6\Lib\site-packages\neuralgym\ops\gan_ops.py

class Conv2DSepctralNorm(tf.layers.conv2d):def build(self, input_shape):super(Conv2DSepctralNorm, self).build(input_shape)self.kernel = kernel_spectral_norm(self.kernel)

04 pillow 

Traceback (most recent call last):
  File "D:\learn\txhf\generative_inpainting-master\train.py", line 7, in <module>
    from inpaint_model import InpaintCAModel
  File "D:\learn\txhf\generative_inpainting-master\inpaint_model.py", line 16, in <module>
    from inpaint_ops import gen_conv, gen_deconv, dis_conv
  File "D:\learn\txhf\generative_inpainting-master\inpaint_ops.py", line 8, in <module>
    from PIL import Image, ImageDraw
ModuleNotFoundError: No module named 'PIL'

这个需要安装piillow,PIL曾用于2x版本的python,先使用3x版本对应pillow。

登录pillow官网pillow · PyPI

点击download files,在其中找到Pillow-5.2.0-cp36-cp36m-win_amd64.whl(1.6 MB view hashes)
我们是python3.6 win系统 64位 whl文件。

        直接点击左边蓝字下载。把下载好的whl文件放到D:\an\anaconda\Lib路径下,

        安装代码与路径一致。

pip install D:\an\anaconda\Lib\site-packages\Pillow-5.2.0-cp36-cp36m-win_amd64.whl

06 检验环境包安装成功

点击train.py,初步训练成功。

02训练过程

准备训练图像文件列表并打乱它(例子)。
修改填补。设置DATA_FLIST、LOG_DIR、IMG_SHAPES等参数。
运行python train.py。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【零基础入门AI:83%的文本推荐系统都在用的算法 TF-IDF】

什么是推荐系统&#xff1f; 在如今这个信息爆炸的时代&#xff0c;推荐系统是根据用户的信息或者行为&#xff0c;向用户推荐用户可能会感兴趣的内容。其中基于文本的推荐系统&#xff0c;比如搜索引擎&#xff0c;头条、微信这类资讯类应用的搜索功能&#xff0c;就是在一个…

图表示学习中的Transformer:Graphormer的突破

人工智能咨询培训老师叶梓 转载标明出处 在自然语言处理和计算机视觉等领域&#xff0c;Transformer架构已经成为主导选择。然而&#xff0c;在图级别的预测任务中&#xff0c;它的表现并不如主流的图神经网络&#xff08;GNN&#xff09;变体。这一现象引发了一个思考&#x…

轻松重置 MySQL 8.0 Root 密码的简便方法!

在Windows环境下安装MySQL数据后&#xff0c;如果忘记了 MySQL 8.0 的 root 密码&#xff0c;不必担心&#xff01;通过 --skip-grant-tables 和 named-pipe 模式登录后&#xff0c;只需几步简单的 SQL 命令即可重置密码&#xff1a;刷新权限表、修改密码、再刷新权限&#xff…

SpringBoot | Maven快速上手

文章目录 一、Maven1.1 Maven 简介&#xff1a;1.2 Maven 的核心功能&#xff1a;1.2.1 项目构建&#xff1a;1.2.2 依赖管理&#xff1a; 1.3 Maven 仓库&#xff1a;1.3.1 本地仓库&#xff1a;1.3.2 中央仓库&#xff1a;1.3.3 私服&#xff1a; 二、第一个 SpringBoot 程序…

数据处理与统计分析篇-day09-数据透视表与日期时间处理

一. 数据透视表 概述 数据透视表&#xff08;Pivot Table&#xff09;是一种交互式的表&#xff0c;可以进行某些计算&#xff0c;如求和与计数等。 所进行的计算与数据跟数据透视表中的排列有关。之所以称为数据透视表&#xff0c;是因为可以动态地改变它们的版面布置&#…

智慧水利采砂船在线监控平台:构建高效、智能的河道采砂监管体系

随着科技的不断发展&#xff0c;水利行业的智慧化转型也日益受到重视。智慧水利采砂船在线监控平台便是这一转型的重要成果之一。该平台主要服务于水政执法人员&#xff0c;针对取得河道采砂许可证的采砂公司及采砂船&#xff0c;实施在线自动监控&#xff0c;旨在提高监管效率…

OSError: [Errno 16] Device or resource busy: ‘.nfs*‘报错解决办法

目录 1 项目场景&问题描述&#xff1a;2 原因分析&#xff1a;2.1 问题背景&#xff1a; 3 解决方案&#xff1a;3.1 创建存放临时文件的目录3.2 使用该目录3.2.1 设置环境变量 TMPDIR3.2.2 运行时设置&#xff08;推荐&#xff09;3.2.3 代码中设置 4 总结 1 项目场景&…

瑞芯微RK3566鸿蒙开发板Android11修改第三方输入法为默认输入法

本文适用于触觉智能所有支持Android11系统的开发板修改第三方输入法为默认输入法。本次使用的是触觉智能的Purple Pi OH鸿蒙开源主板&#xff0c;搭载了瑞芯微RK3566芯片&#xff0c;类树莓派设计&#xff0c;是Laval官方社区主荐的一款鸿蒙开发主板。 一、安装输入法并查看输入…

CSS05-Emment语法

Emmet语法的前身是Zen coding&#xff0c;它使用缩写&#xff0c;来提高html/css的编写速度&#xff0c;Vscode内部已经集成该语法。 作用&#xff1a; 1.快速生成HTML结构语法 2.快速生成CSS样式语法

linux 安装 tomcat9、java环境

一、安装 Java环境 1. 下载文件 https://repo.huaweicloud.com/java/jdk/ 或者网盘&#xff1a;通过网盘分享的文件&#xff1a;jdk-8u192-linux-x64.tar.gz 链接: https://pan.baidu.com/s/1V3pQWzgSLJxdrUdmmKueRA 提取码: qspw 2. 查看Linux系统是否有自带的jdk&#xf…

【TabBar嵌套Navigation案例-产品推荐-CollectionView的layout设置 Objective-C语言】

一、我们接着来做这个产品推荐页面啊 1.我们之前,把这个产品推荐页面做出来了,就是长的丑了点儿,所以呢,我们需要去给它设置一下itemSize啦,等等一些东西, 好,首先呢,在这个里边,我们找到我们的layout这块儿, 然后呢,这个layout里边,我们一个一个来设置, 首先呢…

Excel DATE函数怎么用,DATE函数的使用方法来了

大家好&#xff0c;这里是效率办公指南&#xff01; &#x1f4c5; 在处理Excel中的日期数据时&#xff0c;我们经常需要创建特定的日期或从多个单元格中合并日期。DATE 函数是Excel中一个非常实用的工具&#xff0c;它可以帮助我们从年、月、日的单独信息中创建一个正确的日期…

Kylinsec操作系统

外网源 发布地址&#xff1a;http://mirrorlist.kylinsec.com.cn:8888/publicrepo/

Git(5):分支合并merge和rebase

git merge 假设有两个分支&#xff1a;master 分支和 feature 分支&#xff0c;现在需要将 feature 分支合并到 master 分支。 git checkout mastergit merge feature在合并分支时&#xff0c;git 提供了不同的合并策略&#xff0c;用于处理不同的合并场景。 Fast-forward 如…

《百家姓》中排名第八却是中国人口第一大姓-王姓

王姓在《百家姓》中虽然排名第八&#xff0c;但根据近年来的统计数据和实际人口分布&#xff0c;王姓已成为中国第一大姓。以下是对王姓作为“百家姓之首”的详细解析&#xff1a; 一、人口数量与分布 人口数量&#xff1a;截至当前时间&#xff08;2024年&#xff09;&#x…

Jmeter 配置元件-计数器时间变量

计数器 在 JMeter 中&#xff0c;计数器是一个非常有用的配置元件&#xff0c;可以帮助你在每次请求时生成递增的数字。 在线程组下新增计数器 配置计数器 开始值&#xff08;Starting value&#xff09;&#xff1a;给定计数器的起始值、初始值&#xff0c;第一次迭代时&…

我们离生成式 AI 应用全面爆发还有多远?2024 全球产品经理大会透露了这些关键信号

GenAI 应用爆发何时到来、生成式 AI 应用到底该怎么做……大模型浪潮已经有将近两年的时间&#xff0c;去年狂卷模型&#xff0c;今年业内则一致认为是应用落地元年&#xff0c;但其间困惑诸多&#xff0c;产品人与创业者们该何去何从&#xff0c;答案尽在 2024 全球产品经理大…

Linux 常用命令(待更新)

1、pwd命令 2、cd命令 3、ls命令 4、locate命令 5、clear命令 6、cat命令 7、head命令 8、tail命令 9、grep命令 10、chmod命令 11、cp命令 12、mv命令 13、mkdir命令 14、rm命令 15、文件压缩和有关归档的命令 16、文件系统的命令 17、与系统管理相关的命令 …

七种修复错误:由于找不到msvcr110.dll 无法继续执行的方法

当你在运行某些程序时遇到“找不到msvcr110.dll”的错误提示&#xff0c;这通常意味着你的系统缺少了Microsoft Visual C 2012 Redistributable包中的一个重要文件。这个DLL文件是Microsoft Visual C Redistributable的一部分&#xff0c;用于支持许多使用Visual C编写的软件和…

Linux:文件描述符详解

相关阅读 Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 Linux中的所有进程&#xff0c;都拥有自己的文件描述符(File Descriptor, FD)&#xff0c;它是操作系统在管理进程和文件时的一种抽象概念。每个文件描述符由一个非负整…