Coder Social home page Coder Social logo

cellinlab / ballonstranslator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dmmaze/ballonstranslator

0.0 0.0 0.0 56.62 MB

深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning

License: GNU General Public License v3.0

Python 98.05% CSS 1.87% Batchfile 0.08%

ballonstranslator's Introduction

BallonTranslator

简体中文 | English | Русский | 日本語

深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑

界面预览

Features

  • 一键机翻

    • 译文回填参考对原文排版的估计, 包括颜色, 轮廓, 角度, 朝向, 对齐方式等
    • 最后效果取决于文本检测, 识别, 抹字, 机翻四个模块的整体表现
    • 支持日漫和美漫
    • 英译中, 日译英排版已优化, 文本布局以提取到的背景泡为参考, 中文基于pkuseg进行断句, 日译中竖排待改善
  • 图像编辑
    支持掩膜编辑和修复画笔

  • 文本编辑

    • 支持所见即所得地富文本编辑和一些基础排版格式调整、字体样式预设
    • 支持全文/源文/译文查找替换
    • 支持导入导出word文档
  • 适用于条漫

使用说明

发布版

Windows用户可从MEGA or Google Drive(注意: 需要从github release 下载最新版Ballonstranslator-1.3.xx, 解压并覆盖到Ballontranslator-1.3.0-core或者较旧的安装目录以更新程序.)

运行源码

# 确保python<=3.9
$ python --version

# 克隆仓库
$ git clone https://github.com/dmMaze/BallonsTranslator.git ; cd BallonsTranslator

# 安装依赖, macOS安装requirements_macOS.txt
$ pip install -r requirements.txt

如果有N卡可以安装torch-cuda启用GPU加速:

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116

MEGA or Google Drive 下载data文件夹并移动到 BallonsTranslator/ballontranslator目录, 最后运行

python ballontranslator

如果要使用Sugoi翻译器(仅日译英), 下载离线模型, 将 "sugoi_translator" 移入BallonsTranslator/ballontranslator/data/models.

Apple Silicon Mac 本地构建.app应用

# 安装Python 3.9.13虚拟环境
brew install pyenv mecab
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.9.13
pyenv global 3.9.13
python3 -m venv ballonstranslator
source ballonstranslator/bin/activate

# 克隆仓库
git clone https://github.com/dmMaze/BallonsTranslator.git
cd BallonsTranslator

# 安装依赖
pip3 install -r requirements_macOS.txt

# 打包应用
cd ballontranslator
sudo pyinstaller __main__.spec

# 打包好的`BallonsTranslator.app`在`dist`文件夹下
# 需要注意的是,现在的应用还无法使用,需要到 [MEGA](https://mega.nz/folder/gmhmACoD#dkVlZ2nphOkU5-2ACb5dKw) 或者 [Google Drive](https://drive.google.com/drive/folders/1uElIYRLNakJj-YS0Kd3r3HE-wzeEvrWd?usp=sharing) 下载`data`并覆盖到`BallonsTranslator.app/Contents/Resources/data`, 覆盖的时候选择“合并”,覆盖完成后应用最终打包完整,开箱即用,将应用拖到macOS的应用程序文件夹即可,不需要再配置Python环境。

一键翻译

建议在命令行终端下运行程序, 首次运行请先配置好源语言/目标语言, 打开一个带图片的文件夹, 点击Run等待翻译完成

一键机翻嵌字格式如大小、颜色等默认是由程序决定的, 可以在设置面板->嵌字菜单中改用全局设置. 全局字体格式就是未编辑任何文本块时右侧字体面板显示的格式:

画板

修复画笔

修复画笔

矩形工具

矩形工具

按下鼠标左键拖动矩形框抹除框内文字, 按下右键拉框清除框内修复结果.
抹除结果取决于算法(gif中的"方法1"和"方法2")对文字区域估算的准确程度, 一般拉的框最好稍大于需要抹除的文本块. 两种方法都比较玄学, 能够应付绝大多数简单文字简单背景, 部分复杂背景简单文字/简单背景复杂文字, 少数复杂背景复杂文字, 可以多拉几次试试.
勾选"自动"拉完框立即修复, 否则需要按下"修复"或者空格键才进行修复, 或"Ctrl+D"删除矩形选框.

文本编辑

文本编辑

批量文本格式调整及自动排版

OCR并翻译选中文本框

界面说明及快捷键

  • Ctrl+Z, Ctrl+Y可以撤销重做大部分操作,注意翻页后撤消重做栈会清空
  • A/D或pageUp/Down翻页, 如果当前页面未保存会自动保存
  • "T"切换到文本编辑模式下(底部最右"T"图标), W激活文本块创建模式后在画布右键拉文本框
  • "P"切换到画板模式, 右下角滑条改原图透明度
  • 底部左侧"OCR"和"A"按钮控制启用/禁用OCR翻译功能, 禁用后再Run程序就只做文本检测和抹字
  • 设置面板配置各自动化模块参数
  • Ctrl++/-或滚轮缩放画布
  • Ctrl+A可选中界面中所有文本块
  • Ctrl+F查找当前页, Ctrl+G全局查找

自动化模块

本项目重度依赖manga-image-translator, 在线服务器和模型训练需要费用, 有条件请考虑支持一下

Sugoi翻译器作者: mingshiba.

文本检测

暂时仅支持日文(方块字都差不多)和英文检测, 训练代码和说明见https://github.com/dmMaze/comic-text-detector

OCR

  • mit_32px模型来自manga-image-translator, 支持日英汉识别和颜色提取
  • mit48px_ctc模型来自manga-image-translator, 支持日英汉韩语识别和颜色提取
  • manga_ocr来自kha-white, 支持日语识别, 注意选用该模型程序不会提取颜色

图像修复

  • AOT修复模型来自manga-image-translator
  • patchmatch是非深度学习算法, 也是PS修复画笔背后的算法, 实现来自PyPatchMatch, 本程序用的是我的修改版

翻译器

  • 谷歌翻译能挂代理建议把url从cn改成com 谷歌翻译器已经关闭**服务, 大陆再用需要设置全局代理, 并在设置面板把url换成*.com
  • 彩云, 需要申请token
  • papago
  • DeepL 和 Sugoi(及它的CT2 Translation转换)翻译器, 感谢Snowad14

如需添加新的翻译器请参考加别的翻译器, 本程序添加新翻译器只需要继承基类实现两个接口即可不需要理会代码其他部分, 欢迎大佬提pr

  • 如果电脑带N卡, 程序默认对所有模型启用GPU加速, 默认配置下显存占用在6G左右. 4G显存调小修复器inpaint_size即可.
  • 感谢bropines提供俄语翻译
  • 第三方输入法可能会造成右侧编辑框显示bug, 见#76, 暂时不打算修
  • 选中文本迷你菜单支持聚合词典专业划词翻译沙拉查词: 安装说明

一键翻译结果预览

Original Translated (CHS) Translated (ENG)
Original Translated (CHS) Translated (ENG)
Original Translated (CHS) Translated (ENG)
Original Translated (CHS) Translated (ENG)
Original Translated (CHS)

ballonstranslator's People

Contributors

dmmaze avatar snowad14 avatar bropines avatar eltociear avatar alicewish avatar tak2hu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.