manga-image-translator部署教程:本地搭建高性能翻译服务
痛点与解决方案
你是否还在为漫画/图片中的外语文字无法理解而烦恼?手动翻译效率低下且容易出错,在线翻译服务又存在隐私泄露风险和网络依赖问题。本文将详细介绍如何在本地部署manga-image-translator项目,搭建属于自己的高性能图片翻译服务,实现一键翻译各类图片内文字,让你轻松跨越语言障碍。
读完本文后,你将能够:
- 了解manga-image-translator的核心功能和工作流程
- 掌握在不同操作系统下的本地部署方法
- 学会使用Docker快速搭建服务
- 配置GPU加速以提升翻译性能
- 熟悉各种使用模式和参数优化技巧
项目概述
manga-image-translator是一个开源的图片翻译工具,旨在翻译那些不太可能有人专门翻译的图片,例如各种群聊、图站上的漫画/图片。该项目主要支持日语,同时也支持简繁中文、英文及其他20种小语言,支持图片修复(去字)和嵌字功能。
核心功能
- 文本检测:自动识别图片中的文本区域
- OCR识别:将图片中的文本转换为可编辑文本
- 翻译功能:支持多种翻译引擎,包括在线和离线选项
- 图片修复:智能去除原图文字并修复背景
- 文字渲染:将翻译后的文字重新排版到图片中
工作流程
flowchart TD
A[输入图片] --> B[文本检测]
B --> C[OCR识别]
C --> D[文本翻译]
D --> E[图片修复]
E --> F[文字渲染]
F --> G[输出翻译后图片]
环境准备
硬件要求
| 组件 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU | 双核处理器 | 四核及以上 |
| 内存 | 4GB | 8GB及以上 |
| 显卡 | 集成显卡 | NVIDIA GPU (4GB显存及以上) |
| 存储 | 10GB可用空间 | 20GB可用空间 |
软件要求
- 操作系统:Linux (推荐Ubuntu 20.04+)、Windows 10/11、macOS 12+
- Python:3.10或更高版本
- Git:用于克隆代码仓库
- pip:Python包管理工具
- 虚拟环境工具:venv或conda(推荐)
本地安装步骤
使用Pip/venv(推荐)
1. 克隆代码仓库
git clone https://gitcode.com/gh_mirrors/ma/manga-image-translator.git
cd manga-image-translator
2. 创建并激活虚拟环境
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
# Linux/macOS
source venv/bin/activate
# Windows
venv\Scripts\activate
3. 安装依赖
# 基础依赖安装
pip install -r requirements.txt
# 如果需要使用GPU加速,请安装对应版本的PyTorch
# 访问https://pytorch.org/get-started/locally/获取适合你系统的安装命令
# 例如,对于CUDA 11.7:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
4. 模型下载
模型将在首次运行时自动下载到./models目录,无需手动下载。
Windows用户注意事项
Windows用户需要额外安装Microsoft C++ Build Tools,否则某些依赖包可能无法编译安装。
-
下载并安装Microsoft C++ Build Tools:
- 下载地址:https://visualstudio.microsoft.com/vs/
- 安装时选择"使用C++的桌面开发"工作负载
-
安装CUDA(如使用GPU):
- 下载地址:https://developer.nvidia.com/cuda-downloads
- 安装后需要重启电脑
Docker部署
环境要求
- Docker:19.03或更高版本
- Docker Compose(可选)
- Nvidia Container Runtime(如使用GPU)
CPU版本部署
# 使用docker-compose启动
docker-compose -f demo/doc/docker-compose-web-with-cpu.yml up
GPU版本部署
# 使用docker-compose启动GPU版本
docker-compose -f demo/doc/docker-compose-web-with-gpu.yml up
手动运行Docker容器
# CPU版本
docker run \
--name manga_image_translator_cpu \
-p 5003:5003 \
--ipc=host \
--entrypoint python \
--rm \
-v $(pwd)/result:/app/result \
zyddnys/manga-image-translator:main \
server/main.py --verbose --start-instance --host=0.0.0.0 --port=5003
# GPU版本
docker run \
--name manga_image_translator_gpu \
-p 5003:5003 \
--ipc=host \
--gpus all \
--entrypoint python \
--rm \
-v $(pwd)/result:/app/result \
zyddnys/manga-image-translator:main \
server/main.py --verbose --start-instance --host=0.0.0.0 --port=5003 --use-gpu
本地构建Docker镜像
# 构建镜像
make build-image
# 运行构建好的镜像
make run-web-server
使用方法
本地批量模式
# 基本用法
python -m manga_translator local -v -i <输入图片路径或文件夹>
# 示例:翻译images文件夹中的所有图片
python -m manga_translator local -v -i ./images
# 结果将保存在<输入文件夹>-translated目录中
网页模式
启动网页服务器
# 旧版UI
cd server
python main.py --use-gpu
# 服务启动后访问 http://127.0.0.1:8000
网页界面说明
网页模式提供了直观的用户界面,主要包含以下功能区域:
- 图片上传区:用于上传需要翻译的图片
- 参数配置区:可调整翻译器、目标语言、字体等参数
- 预览区:显示翻译前后的对比效果
- 历史记录区:查看之前的翻译结果
API模式
# 启动API服务
cd server
python main.py --use-gpu --port 8001
# API文档可访问 http://127.0.0.1:8001/docs
API调用示例
# 使用curl调用API
curl -X POST "http://127.0.0.1:8001/translate" \
-H "Content-Type: multipart/form-data" \
-F "image=@test.jpg" \
-F "target_lang=CHS" \
-F "translator=sakura"
性能优化配置
推荐参数组合
针对不同语言和场景,以下参数组合可获得较好效果:
| 场景 | 检测器 | OCR | 翻译器 | 修补器 |
|---|---|---|---|---|
| 日语漫画 | default | 48px | sakura | lama_large |
| 英文漫画 | default | 48px | sugoi | lama_large |
| 中文漫画 | default | 48px | offline | lama_large |
| 韩语漫画 | ctd | 48px | lama_large |
GPU加速配置
# 启用GPU加速
python -m manga_translator local -v -i ./images --use-gpu
# 网页模式启用GPU
cd server
python main.py --use-gpu
提升翻译质量的技巧
-
调整检测参数:
# 低分辨率图片降低检测尺寸 python -m manga_translator local -v -i ./images --detection-size 1024 # 提高掩膜覆盖范围 python -m manga_translator local -v -i ./images --mask-dilation-offset 20 -
使用合适的字体:
# 指定漫画风格字体 python -m manga_translator local -v -i ./images --font-path fonts/anime_ace_3.ttf -
调整字体大小:
# 增加字体大小偏移量 python -m manga_translator local -v -i ./images --font-size-offset 2 -
使用术语表:
# 使用预定义术语表 python -m manga_translator local -v -i ./images --pre-dict dict/mit_glossary.txt
高级配置
配置文件
可以通过配置文件进行更详细的参数设置。示例配置文件位于examples/config-example.json。
# 使用配置文件
python -m manga_translator local -v -i ./images --config-file ./config.json
常用配置项说明
{
"detector": {
"detector": "default",
"detection_size": 2048,
"text_threshold": 0.5
},
"ocr": {
"ocr": "48px",
"min_text_length": 0
},
"translator": {
"translator": "sakura",
"target_lang": "CHS"
},
"inpainter": {
"inpainter": "lama_large",
"inpainting_size": 2048
},
"render": {
"font_size_offset": 0,
"alignment": "auto"
}
}
环境变量配置
对于需要API密钥的翻译服务,可以通过环境变量设置:
# Linux/macOS
export OPENAI_API_KEY="your_api_key"
export DEEPL_AUTH_KEY="your_deepl_key"
# Windows
set OPENAI_API_KEY="your_api_key"
set DEEPL_AUTH_KEY="your_deepl_key"
常见问题解决
依赖安装问题
问题:安装依赖时出现编译错误
解决方法:
- 安装编译工具链:
# Ubuntu/Debian sudo apt-get install build-essential python3-dev # CentOS/RHEL sudo yum install gcc python3-devel # macOS xcode-select --install
GPU支持问题
问题:无法使用GPU加速
解决方法:
- 确认已安装正确版本的PyTorch和CUDA
- 检查NVIDIA驱动是否正常工作:
nvidia-smi - 确保在命令中添加了
--use-gpu参数
性能优化问题
问题:翻译速度慢
解决方法:
- 降低检测和修复尺寸:
python -m manga_translator local -v -i ./images --detection-size 1024 --inpainting-size 1024 - 使用更快的翻译器:
python -m manga_translator local -v -i ./images --translator sugoi - 减少线程数:
python -m manga_translator local -v -i ./images --threads 2
总结与展望
通过本教程,你已经掌握了在本地部署manga-image-translator的完整流程,包括使用Pip/venv和Docker两种方式,以及各种使用模式的基本操作。合理配置参数和利用GPU加速可以显著提升翻译性能和质量。
项目目前仍在持续开发中,未来可能会加入更多功能,如:
- 更先进的文本检测算法
- 多语言同时翻译
- 更好的图片修复效果
- 移动端支持
如果你在使用过程中遇到问题或有改进建议,可以通过项目的GitHub仓库参与讨论和贡献。
附录:参数参考
基本参数
-h, --help 显示帮助信息
-v, --verbose 启用详细日志
--use-gpu 使用GPU加速
--model-dir MODEL_DIR 模型存储目录
--font-path FONT_PATH 字体文件路径
--pre-dict PRE_DICT 翻译前替换字典
--post-dict POST_DICT 翻译后替换字典
本地模式参数
local 本地批量模式
-i, --input INPUT 输入图片路径
-o, --dest DEST 输出目录
-f, --format FORMAT 输出格式(png,jpg等)
--overwrite 覆盖已存在的文件
--skip-no-text 跳过没有文本的图片
--save-text 保存提取的文本和翻译结果
网页模式参数
--host HOST 服务器地址
--port PORT 服务器端口
--start-instance 自动启动翻译实例
--models-ttl MODELS_TTL 模型在内存中保留的时间(秒)
翻译参数
--translator TRANSLATOR 翻译器类型(sakura,deepl等)
--target-lang TARGET_LANG 目标语言
--source-lang SOURCE_LANG 源语言
--translator-chain TRANSLATOR_CHAIN 翻译器链
检测和修复参数
--detector DETECTOR 文本检测器
--detection-size DETECTION_SIZE 检测尺寸
--inpainter INPAINTER 图片修复器
--inpainting-size INPAINTING_SIZE 修复尺寸
--mask-dilation-offset MASK_DILATION_OFFSET 掩膜扩展偏移量
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00