GithubHelp home page GithubHelp logo

aassaadd / ballonstranslator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dmmaze/ballonstranslator

0.0 0.0 0.0 57.33 MB

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

License: GNU General Public License v3.0

Shell 0.70% JavaScript 2.06% Python 95.51% CSS 1.56% Batchfile 0.17%

ballonstranslator's Introduction

BallonTranslator

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

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

界面预览

Features

  • 一键机翻

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

  • 文本编辑

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

使用说明

Windows

如果用windows而且不想自己手动配置环境, 而且能正常访问互联网:
MEGAGoogle Drive 下载BallonsTranslator_dev_src_with_gitpython.7z, 解压并运行launch_win.bat启动程序。如果无法自动下载库和模型,手动下载data和ballontrans_pylibs_win.7z并解压到程序目录下.
运行scripts/local_gitpull.bat获取更新.

运行源码

安装Python < 3.12 (别用微软应用商店版) 和Git

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

# 启动程序
$ python3 launch.py

第一次运行会自动安装torch等依赖项并下载所需模型和文件, 如果模型下载失败, 需要手动从MEGAGoogle Drive下载data文件夹(或者报错里提到缺失的文件), 并保存到源码目录下的对应位置.

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

构建macOS应用(适用apple silicon芯片)

如果构建不成功也可以直接跑源码

录屏2023-09-11 14 26 49

# 第1步:打开终端并确保当前终端窗口的Python大版本号是3.11,可以用下面的命令确认版本号
python3 -V

# 第2步:克隆仓库并进入仓库工作目录
git clone -b dev https://github.com/dmMaze/BallonsTranslator.git
cd BallonsTranslator

# 第3步:创建和启用 Python 3.11 虚拟环境
python3 -m venv venv
source venv/bin/activate

# 第4步:安装依赖
pip3 install -r requirements.txt

# 第5步:源码运行程序,会自动下载data文件,每个文件在20-400MB左右,合计大约1.67GB,需要比较稳定的网络,如果下载报错,请重复运行下面的命令直至不再下载报错并启动程序
# 如果多次下载失败,也可以从[MEGA](https://mega.nz/folder/gmhmACoD#dkVlZ2nphOkU5-2ACb5dKw) 或 [Google Drive](https://drive.google.com/drive/folders/1uElIYRLNakJj-YS0Kd3r3HE-wzeEvrWd?usp=sharing)下载`libs`和`models`并放入data文件夹
python3 launch.py

# 第6步:运行下面的远程脚本开始构建macOS应用程序(仅限 Apple Silicon 芯片的 Mac 设备),中途sudo命令需要输入开机密码授予权限
cd ..
curl -L https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/macos-build-script.sh | bash

📌打包好的应用在./data/BallonsTranslator/dist/BallonsTranslator.app,将应用拖到macOS的应用程序文件夹即完成安装,开箱即用,不需要另外配置Python环境.

一键翻译

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

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

画板

修复画笔

修复画笔

矩形工具

矩形工具

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

文本编辑

文本编辑

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

OCR并翻译选中文本框

界面说明及快捷键

  • Ctrl+Z, Ctrl+Y可以撤销重做大部分操作,注意翻页后撤消重做栈会清空
  • A/D或pageUp/Down翻页, 如果当前页面未保存会自动保存
  • "T"切换到文本编辑模式下(底部最右"T"图标), W激活文本块创建模式后在画布右键拉文本框
  • "P"切换到画板模式, 右下角滑条改原图透明度
  • 标题栏->运行 可以启用/禁用任意自动化模块, 全部禁用后Run会根据全局字体样式和嵌字设置重新渲染文本
  • 设置面板配置各自动化模块参数
  • Ctrl++/-或滚轮缩放画布
  • Ctrl+A可选中界面中所有文本块
  • Ctrl+F查找当前页, Ctrl+G全局查找
  • 0-9调整嵌字/原图透明度
  • 文本编辑下Ctrl+B加粗, Ctrl+U下划线, Ctrl+I斜体
  • 字体样式面板-"特效"修改透明度添加阴影

自动化模块

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

Sugoi翻译器作者: mingshiba.

文本检测

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

OCR

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

图像修复

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

翻译器

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

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

  • 电脑带N卡或Apple silicon默认启用GPU加速
  • 感谢bropines提供俄语翻译
  • 第三方输入法可能会造成右侧编辑框显示bug, 见#76, 暂时不打算修
  • 选中文本迷你菜单支持聚合词典专业划词翻译沙拉查词: 安装说明

ballonstranslator's People

Contributors

dmmaze avatar rokolyt avatar hyrulelinks avatar tak2hu avatar bropines avatar snowad14 avatar kagenihisomi avatar eltociear avatar alicewish avatar pidanshourouzhouxd avatar mayako21126 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.