Python微信订餐小程序课程视频

https://edu.csdn.net/course/detail/36074

Python实战量化交易理财系统

https://edu.csdn.net/course/detail/35475
大家好,之前向大家介绍并跑通了腾讯开源的老照片修复算法(AI 黑科技,老照片修复,模糊变高清),同时我也提到官方提供的3个线上试玩版体验都不好。所以我微调了一下官方 Demo,使用最新的V1.3预训练模型且输出whole-image,大家先感受一下

GFPGAN + Gradio + Huggingface 这三者我都是刚接触,揉在一起还是挺好玩的。

下面我就将整个实现过程详细介绍一下

克隆官方Demo

GFPGAN 的官方 Demo 就属 Huggingface 体验还行,缺点是只输出人脸且使用的是老模型。

clone 之前先安装git lfs

LFS是Large File Storage的缩写,用了帮助git管理大的文件

sudo apt-get install git-lfs
git init # 这一步必须
sudo git lfs install
# 安装完成克隆GFPGAN
git clone https://huggingface.co/spaces/akhaliq/GFPGAN

克隆后我直接运行了一下 python app.py,出现了两个报错,大家如果有遇到可以参考一下。
报错1:ERROR: Exception in ASGI application
解决pip install aiofiles

报错2:There is no current event loop in thread ‘Thread-2’
解决:参考这这篇文章
https://blog.csdn.net/SunshineKimi/p/12053914.html
具体就是在uvicorn的server.py 加上一句 new_loop = asyncio.new_event_loop()

Gradio

Huggingface 上的 GFPGAN Demo 是用 Gradio 实现的。

Gradio是MIT的开源项目,使用gradio,只需在原有的代码中增加几行,就能自动化生成交互式web页面,并支持多种输入输出格式,比如图像分类中的图>>标签,超分辨率中的图>>图等。同时还支持生成能外部网络访问的链接,能够迅速让他人体验你的算法。

Gradio 的定位类似于 Streamlit,但是更轻量(一行代码),因为它推荐的应用场景都是对“单个函数”进行调用的应用,并且不需要对组件进行回调。

顺便提一下,我之前已对 Streamlit 有详细介绍并开发了几个小东西:

  • 开发机器学习APP,太简单了
  • 为了这个GIF,我专门建了一个网站
  • 收手吧,华强!我用机器学习帮你挑西瓜
  • 耗时一个月,做了一个纯粹的机器学习网站

我也是第一次接触 gradio ,它的安装很简单:pip install gradio

从零学起我只看了官方文档,用法也只看了 Interface ,耗时半个小时。

# getting\_started
https://www.gradio.app/getting_started/
# docs
https://www.gradio.app/docs/
# github
https://github.com/gradio-app/gradio

代码修改

官方Demo的代码我只修改已下几处:

  • 修改model_path,直接将下载好的V1.3预训练模型放到了experiments/pretrained_models下。
  • 修改 inference(img),展现restored_img
restorer = GFPGANer(model_path='experiments/pretrained\_models/GFPGANv1.3.pth',upscale=2,arch='clean',channel_multiplier=2,bg_upsampler=bg_upsampler)def inference(img):input_img = cv2.imread(img, cv2.IMREAD_COLOR)cropped_faces, restored_faces, restored_img = restorer.enhance(input_img, has_aligned=False, only_center_face=False, paste_back=True)return Image.fromarray(restored_img[:, :, ::-1])

改完后可以python app.py先看一下效果:

它会自动生成一个本地静态交互页面,浏览器会自动跳转到 http://127.0.0.1:7860

那个gradio.app的链接可以分享,有效期 72 小时。

上传到Huggingface

step1:注册Huggingface账号

step2:创建Space,SDK记得选择Gradio

step3:克隆新建的space代码,然后将改好的代码push上去

git lfs install
git add .
git commit -m "commit from $beihai"
git push

push的时候会让输入用户名(就是你的注册邮箱)和密码,解决git总输入用户名和密码的问题:git config --global credential.helper store

push完成就大功告成了,回到你的space页对应项目,就可以看到效果了。

不过Huggingface也时常500,大家多试试吧,毕竟免费。

腾讯的老照片修复算法,我把它搬到网上,随便玩相关推荐

  1. 腾讯老照片修复算法开源,细节到头发丝,3种预训练模型可下载 | GitHub热榜

    明敏 发自 凹非寺 量子位 | 公众号 QbitAI 还记得这个能将老照片修复到纤毫毕现的GFPGAN吗? 现在,它的代码正式开源了! 官方已经在GitHub上传了3个预训练模型,3个版本的效果区别如 ...

  2. satoshi自动上色算法_再见,老照片!百年老照片修复算法,那些高颜值的父母!...

    点赞再看,养成习惯,微信公众号搜索[JackCui-AI]关注这个爱发技术干货的程序员.本文 GitHub Jack-Cherish/PythonPark 已收录,有一线大厂面试完整考点.资料以及我的 ...

  3. 百年老照片修复算法,那些高颜值的父母!

    点赞再看,养成习惯,微信公众号搜索[JackCui-AI]关注这个爱发技术干货的程序员.本文 GitHub Jack-Cherish/PythonPark 已收录,有一线大厂面试完整考点.资料以及我的 ...

  4. 火爆全网的老照片修复技术,今天手把手教你用怎么玩

    大家好,我是辰哥~ 点击下方名片关注和星标『Python研究者』!

  5. AI 黑科技,老照片修复,模糊变高清

    大家好 最近闲逛,发现腾讯开源的老照片修复算法新出了V1.3的预训练模型,手痒试了一下. 我拿"自己"的旧照片试了一下,先看效果 GFPGAN FPGAN算法由腾讯PCG ARC实 ...

  6. [GAN]老照片修复Bringing Old Photos Back to Life论文总结

    Title Title:Bringing Old Photos Back to Life Source:CVPR2020 论文官网 Code 1.Summary 文章提出并解决了两个问题. 问题一 泛 ...

  7. 【python|小乐趣儿】老照片修复神器

    老照片修复神器 如何发现黑科技(qiong(穷) o(╯□╰)o) 1. 克隆开源的GFPGAN项目 2. 安装依赖包 3. 使用方法(修复人脸) 3-1. 默认只修复人脸 执行windows cmd ...

  8. 老照片修复、寻找系外行星……这里有8个超赞的机器学习项目

    来源:机器之心 本文约2000字,建议阅读5分钟. 经典有趣的机器学习项目,了解一下? 在人工智能的大潮中,机器学习项目琳琅满目.哪些项目是兼具代表性和实用性的呢?近日,一位名为 Kajal Yada ...

  9. layui鼠标放上图片局部放大_老照片修复教程之—裁剪图片大小

    对于会PS的网友来说,这些内容太小白了,但对于不会的网友来说,完全摸不着头脑,所以,41图片老照片修复以最简单的工具使用说起,争取让PS小白也能快速入门. 本节的内容就讲裁剪图片大小: 扫描或者翻拍好 ...

最新文章

  1. 深度学习编译器综述The Deep Learning Compiler
  2. MEMS传感器作为变革的驱动力
  3. Hadoop Intellij IDEA 建demo
  4. ls命令显示结果图解
  5. 使用可变对象作为Java Map的key,会带来潜在风险的一个例子
  6. 微信开发基础 获取用户OpenID 列表
  7. 友盟分享小程序_在线学习应用“小打卡”小程序分享
  8. blender2.8与2.7X的一些不同点
  9. 95-40-055-java.util.concurrent-ConcurrentSkipListSet
  10. zynq文档阅读pg144-axi-gpio之AXI GPIO IP核
  11. 什么是平板电脑的杀手锏?
  12. 配置GoldenGate意外处理及记录Oracle错误信息(1)
  13. excel使用教程_办公软件excel表格制作教程
  14. HTML背景图片的设置
  15. Dorado 7 Ajax 交互处理
  16. Excel:列的顺序颠倒(d-a列变成a-d列)
  17. 吴恩达深度学习系列笔记
  18. vue里删除购物车商品(购物车功能六)
  19. linux mount error(79): Can not access a needed shared library
  20. ▷Scratch课堂丨【编程趣味卡3】制作音乐

热门文章

  1. 51单片机之音乐代码
  2. 开源 免费 java CMS - FreeCMS1.9 会员组管理
  3. corba的兴衰_数据科学薪酬的兴衰
  4. 大数据相关从业_如何在组织中以数据从业者的身份闪耀
  5. leetcode 896. 单调数列
  6. leetcode106. 从中序与后序遍历序列构造二叉树(dfs)
  7. 虚幻引擎 js开发游戏_通过编码3游戏学习虚幻引擎4-5小时免费游戏开发视频课程
  8. mac 没有所有开发者_为什么开发人员应该像产品所有者那样思考
  9. ux设计师怎样找同类产品_没有预算? 别找借口。 便宜的UX上的UX 2:让我们开始构建。...
  10. 鸽子 迷信_人工智能如何帮助我战胜鸽子