【Hugging Face实战】使用Gradio创建一个图片上色应用

前言

前面我们尝试了在Hugging Face上创建文本生成、情感分析以及文生图应用,今天我们再看一个有意思的项目,使用DDColor模型在Hugging Face上创建一个黑白图上色的应用,对往期内容感兴趣的小伙伴也可以看往期:

创建Space应用

首先在Hugging Face上创建一个Gradio 空白模版应用,详细创建流程可以查看之前这篇文章:
【Hugging Face】Hugging Face Space空间的基本使用方式

创建完成后将项目克隆到本地,我们将拥有一个类似的项目结构:

简介

DDColor是一种基于深度学习的图像上色技术,它利用卷积神经网络(CNN)对黑白图像进行上色处理。该模型通常包含一个编码器和一个解码器,编码器提取图像的特征,解码器则根据这些特征生成颜色。DDColor模型能够处理多种类型的图像,并生成自然且逼真的颜色效果。它在图像编辑、电影后期制作以及历史照片修复等领域有广泛的应用。

搭建图片上色应用

本示例以 DDColor 模型项目为例搭建文本生成应用

Github地址:github.com/piddnad/DDC...

魔搭社区体验地址:www.modelscope.cn/models/iic/...

缓存模型

php 复制代码
$ pip install modelscope
python 复制代码
from modelscope.hub.snapshot_download import snapshot_download
model_dir = snapshot_download('damo/cv_ddcolor_image-colorization', cache_dir='./modelscope')
print('model assets saved to %s' % model_dir)

缓存完成后,我们将得到模型目录结构如下:

复制代码
modelscope                           
└─ damo                              
   └─ cv_ddcolor_image-colorization  
      └─ pytorch_model.pt            

克隆项目

DDColor提供了DDColor模型的最佳实践封装,因为DDColor没有提供可以通过pip安装的依赖库,我们使用DDColor需要先将DDColor源代码克隆下来

shell 复制代码
$ git clone https://github.com/piddnad/DDColor.git

DDColor项目克隆下来以后,项目结构如下:

我们需要删除 assets 目录,该目录为DDColor项目README的效果展示资源目录,不删除提交到Hugging Face Spaces时会报错,Hugging Face对二进制文件有限制

项目整合

准备好DDColor模型和DDColor工具库之后,将DDColor模型和工具库拷贝到Hugging Face image-colorization 项目中(注意DDColor工具库项目中除了README.md 和 assets 不要,其他的都要),完成后我们可以得到一个完整的项目,项目结构如下:

修改 gradio_app.py 文件为 app.py,或者修改Hugging Face项目REAEME.md 中的 app_file 为 gradio_app.py

最后修改 requirements.txt 中的 dlib==19.24.2 为 dlib-bin==19.24.2,在Hugging Face上dlib库编译时会报错,详细内容可见【常见问题】

准备完成后,最终的目录结构如下:

运行 python app.py 启动服务,在浏览器中打开效果如下

随便找张黑白图测试一下效果,拖动ImageSlider组件查看效果对比

在线体验

在线体验地址:huggingface.co/spaces/zhou...

常见问题

Failed to build dlib

Hugging Face编译报错,出现该问题的原因是【容器缺系统依赖 + CMake 版本不兼容】,解决方案是把 dlib==19.24.2 改成 dlib-bin==19.24.2

Push was rejected

DDColor工具项目中包含图片,使用 git lfs 添加track仍然报错,尝试把DDColor项目中的 assets 目录移除后重新提交,该目录也不是项目必要的。

友情提示

见原文:【Hugging Face实战】使用Gradio创建一个图片上色应用

本文同步自微信公众号 "程序员小溪" ,这里只是同步,想看及时消息请移步我的公众号,不定时更新我的学习经验。

相关推荐
程序员佳佳11 小时前
【万字硬核】从零构建企业级AI中台:基于Vector Engine整合GPT-5.2、Sora2与Veo3的落地实践指南
人工智能·gpt·chatgpt·ai作画·aigc·api·ai编程
墨风如雪16 小时前
OpenAI亮剑医疗:ChatGPT Health正式发布,你的私人健康参谋上线
aigc
Miku1618 小时前
使用 Claude Code 的 pptx-skills 技能生成精美 EVA 主题 PPT 完整指南
aigc·agent·claude
龙潜月七20 小时前
做一个背单词的脚本
数据库·windows·c#·aigc·程序那些事
REDcker20 小时前
AIGCJson 库解析行为与异常处理指南
c++·json·aigc·c
GISer_Jing1 天前
智能体工具使用、规划模式
人工智能·设计模式·prompt·aigc
GISer_Jing1 天前
AI Agent:学习与适应、模型上下文协议
人工智能·学习·设计模式·aigc
DebugEve1 天前
AI 时代的减法生活:我为什么不再追逐新工具了
aigc·ai编程
贝格前端工场1 天前
AI不是前端/UI的“终结者”,而是提升的“加速器”
aigc·前端开发·ui设计
SpringLament1 天前
从零打造AI智能博客:一个项目带你入门全栈与大模型应用开发
前端·aigc