零门槛AI上色:cv_unet_image-colorization+Streamlit可视化工具教程

张开发
2026/4/16 10:04:45 15 分钟阅读

分享文章

零门槛AI上色:cv_unet_image-colorization+Streamlit可视化工具教程
零门槛AI上色cv_unet_image-colorizationStreamlit可视化工具教程你是否有一堆泛黄的老照片想要让它们重现当年的色彩或者想给黑白照片添加一些艺术气息今天我要介绍的这个工具能让这些需求变得轻而易举。不需要任何AI背景跟着这篇教程你就能在自己的电脑上搭建一个专业的照片上色工具。1. 工具简介与准备工作1.1 什么是cv_unet_image-colorizationcv_unet_image-colorization是一个基于深度学习的图像上色模型它采用了ResNet编码器和UNet生成对抗网络(GAN)架构。这个模型能够理解图像内容并为其填充符合现实的合理颜色。最棒的是它完全在本地运行你的照片数据不会上传到任何服务器确保了隐私安全。1.2 你需要准备什么在开始之前请确保你的电脑满足以下要求操作系统Windows 10/11、macOS或Linux显卡支持CUDA的NVIDIA显卡可选但推荐Python 3.8或更高版本至少4GB可用存储空间用于存放模型2. 环境安装与配置2.1 安装Python依赖首先我们需要安装运行这个工具所需的所有Python库。打开你的命令行工具Windows上是CMD或PowerShellMac/Linux上是终端输入以下命令pip install modelscope streamlit opencv-python pillow numpy torch这条命令会安装以下组件modelscope阿里开源的模型社区框架streamlit用于构建可视化界面opencv-python和Pillow图像处理库numpy科学计算基础库torchPyTorch深度学习框架如果下载速度慢可以加上国内镜像源pip install -i https://pypi.tuna.tsinghua.edu.cn/simple modelscope streamlit opencv-python pillow numpy torch2.2 下载模型文件接下来我们需要获取模型文件访问ModelScope官网搜索cv_unet_image-colorization找到对应的模型页面下载模型文件在本地创建一个文件夹存放模型例如D:\ai_models\image_colorization将下载的模型文件夹通常名为iic/cv_unet_image-colorization放入上述目录记住这个路径我们稍后会用到。3. 创建照片上色应用3.1 编写Python脚本创建一个新文件命名为photo_colorizer.py然后添加以下代码import streamlit as st from modelscope.pipelines import pipeline from modelscope.utils.constant import Tasks from PIL import Image import cv2 import numpy as np import os # 设置页面标题和布局 st.set_page_config(page_titleAI老照片上色器, layoutwide) st.title(AI智能老照片上色修复工具)3.2 加载AI模型添加模型加载代码st.cache_resource def load_colorization_model(): 加载图像上色模型使用缓存避免重复加载 # 重要将下面的路径替换为你自己存放模型的真实路径 model_dir D:/ai_models/image_colorization/iic/cv_unet_image-colorization # 示例路径请修改 try: colorizer pipeline(Tasks.image_colorization, modelmodel_dir) st.success(AI上色模型加载成功) return colorizer except Exception as e: st.error(f模型加载失败请检查模型路径是否正确: {e}) return None colorizer load_colorization_model()注意务必将model_dir的路径改为你实际存放模型的路径。3.3 构建用户界面添加界面代码# 侧边栏控制面板 with st.sidebar: st.header(上传图片) uploaded_file st.file_uploader(选择一张黑白或老照片, type[jpg, jpeg, png]) st.header(⚙ 操作) col1, col2 st.columns(2) with col1: process_btn st.button(开始上色, typeprimary, use_container_widthTrue) with col2: clear_btn st.button(清除所有, use_container_widthTrue) st.markdown(---) st.caption(提示支持JPG、PNG格式。图片越清晰上色效果通常越好。) # 主展示区 col_left, col_right st.columns(2) # 初始化session_state来保存图片状态 if original_image not in st.session_state: st.session_state.original_image None if colored_image not in st.session_state: st.session_state.colored_image None # 处理清除按钮 if clear_btn: st.session_state.original_image None st.session_state.colored_image None st.rerun()3.4 实现上色功能最后添加核心功能代码# 处理上传的图片 if uploaded_file is not None: image Image.open(uploaded_file).convert(RGB) st.session_state.original_image image with col_left: st.subheader(原始图片) if st.session_state.original_image: st.image(st.session_state.original_image, use_column_widthTrue) else: st.info(请从左侧上传一张黑白或老照片。) # 处理开始上色按钮 with col_right: st.subheader(AI上色结果) if process_btn and st.session_state.original_image and colorizer: with st.spinner(AI正在为照片注入色彩请稍候...): try: img_np np.array(st.session_state.original_image) result colorizer(img_np) colored_np result[output_img] colored_pil Image.fromarray(colored_np.astype(uint8)) st.session_state.colored_image colored_pil st.success(上色完成) except Exception as e: st.error(f上色过程中出现错误: {e}) if st.session_state.colored_image: st.image(st.session_state.colored_image, use_column_widthTrue) # 提供下载按钮 buf st.session_state.colored_image st.download_button( label下载彩色图片, databuf, file_namecolored_photo.png, mimeimage/png, use_container_widthTrue ) else: st.info(点击「开始上色」按钮查看AI修复后的彩色效果。)4. 运行你的照片上色工具保存photo_colorizer.py文件后按照以下步骤运行打开命令行工具导航到存放脚本的目录例如cd Desktop如果文件在桌面输入命令streamlit run photo_colorizer.py按回车后命令行会显示一个本地网址通常是http://localhost:8501在浏览器中打开这个网址就能看到你的照片上色工具了5. 使用指南5.1 基本操作流程上传图片在左侧边栏点击选择文件选择一张黑白或老照片查看原图上传成功后左侧会显示原始图片开始上色点击开始上色按钮等待AI处理查看结果右侧会显示上色后的彩色图片下载保存如果满意效果点击下载彩色图片保存结果5.2 使用技巧图片质量上传清晰度高的图片会得到更好的上色效果处理时间根据图片大小和电脑性能处理时间从几秒到几十秒不等多次尝试如果第一次效果不理想可以尝试调整图片后重新上传6. 总结通过这篇教程你已经成功搭建了一个本地运行的AI照片上色工具。这个工具基于cv_unet_image-colorization模型能够智能地为黑白照片添加合理的色彩。整个过程不需要任何AI专业知识完全零门槛。这个工具特别适合修复家族老照片为黑白艺术照添加色彩历史照片修复创意图像处理获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章