-
Notifications
You must be signed in to change notification settings - Fork 196
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[GUIDE] How to install BallonsTranslator DEV #187
Comments
thanks, better call it DEV instead of BETA |
dev是python 3.11还是3.10环境哈? |
Python 3.9 but those two also work |
On the dev branch, I do not recommend using python 3.9 The switch to python 3.10 and to the dev branch was due to optimizations and easier development. Yes, and basically people are sitting at 3.10 after Stable Diffusion |
@dmMaze 报告一个Apple芯片macOS运行dev分支的bug和解决方法 复现过程
报错信息
报错原因通过requirements.txt安装opencc的版本是0.2(2015年),PyPI库里opencc最新正式发行版本1.1.6(2022年),但
这个问题似乎存在很久,至今都未解决,猜测可能与opencc版本号格式从*.变成.*.*不连续有关。 解决方法其他仓库有提到解决办法是先删除opencc,然后从opencc仓库用build from source方式重新安装,这个方法有一点点麻烦。
运行结果然后就可以正常运行了
建议我没在Windows上尝试过运行dev分支,不确定上面的问题在Windows中是否同样存在。
|
@dmMaze 另外可能是兼容性或者别的什么原因,这个项目在macOS上运行,如果导入文件夹内有≥2张漫画,运行程序就会闪退,如果文件夹内只有1张漫画,则可以正常运行,但修改编辑翻译文本后,没有保存按钮,不知道怎么保存修改,退出重新打开就又恢复到编辑文本前的状态了 我的macOS是32GB内存,运行内存虽然占用16GB以上,但并未占用满,还有10GB冗余,似乎也不是爆内存闪退 |
CTRL+S就是手动保存,有没有报错信息啥的 |
ctrl+s按了是保存了,就是没有提示,不放心得多按几次 |
dev分支打包app bundle运行源代码# 安装Python 3.11.5
pyenv install '3.11.5'
# 全局启用Python 3.11.5
pyenv global '3.11.5'
# 克隆仓库dev分支
git clone --branch dev https://github.com/dmMaze/BallonsTranslator.git
# 切到仓库
cd BallonsTranslator
# 创建Python 3.11.5虚拟环境
python -m venv 'venv3.11'
# 启用Python 3.11.5虚拟环境
source 'venv3.11/bin/activate'
# 安装依赖
pip install -r requirements.txt
# 将下载data文件夹复制到项目覆盖同名文件夹
cp ../data/libs ./data
cp ../data/models ./data
# 运行程序
python launch.py Pyinstaller打包1、编辑launch.py# 将第209行`req_updated = False`修改成如下:
req_updated = True
# 将第210-226行注释掉,否则打包好的app运行代码会陷入` install requirements `死循环而无法启动
if sys.platform == 'win32':
for req in REQ_WIN:
try:
pkg_resources.require(req)
except Exception:
run_pip(f"install {req}", req)
req_updated = True
torch_command = os.environ.get('TORCH_COMMAND', "pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118")
if args.reinstall_torch or not is_installed("torch") or not is_installed("torchvision"):
run(f'"{python}" -m {torch_command}', "Installing torch and torchvision", "Couldn't install torch", live=True)
req_updated = True
try:
pkg_resources.require(open(args.requirements,mode='r', encoding='utf8'))
except Exception:
run_pip(f"install -r {args.requirements}", "requirements")
req_updated = True 2、创建launch.spec# 导入模块
import os
import sys
from PyInstaller.utils.hooks import collect_data_files
import subprocess
# 获取提交哈希和构造版本号
commit_hash = subprocess.check_output(['git', 'rev-parse', '--short', 'HEAD']).decode('utf-8').strip()
version = "1.3.35.dev." + commit_hash
block_cipher = None
a = Analysis(
['launch.py'],
pathex=[
'./',
'./modules',
'./modules/inpaint',
'./modules/ocr',
'./modules/textdetector',
'./modules/textdetector/ctd',
'./modules/textdetector/yolov5',
'./modules/translators',
'./scripts',
'./ui',
'./ui/framelesswindow',
'./ui/framelesswindow/fw_qt6',
'./ui/framelesswindow/fw_qt6/linux',
'./ui/framelesswindow/fw_qt6/mac',
'./ui/framelesswindow/fw_qt6/utils',
'./ui/framelesswindow/fw_qt6/windows',
'./ui/pagesources',
'./utils',
],
binaries=[],
datas=[
('config', './config'),
('data', './data'),
('icons', './icons'),
('translate', './translate'),
# 必须包含modules、ui两个自制模块文件夹,否则会ModuleNotFoundError,原理暂时不明
('modules', './modules'),
('ui', './ui'),
],
hiddenimports=[
# 导入隐藏模块,理论上应该不需要,但实测不导入会发生ModuleNotFoundError,原理暂时不明
'PyQt6-Qt6',
'PyQt6',
'numpy',
'urllib3',
'jaconv',
'torch',
'torchvision',
'transformers',
'fugashi',
'unidic_lite',
'tqdm',
'opencv-python',
'shapely',
'pyclipper',
'einops',
'termcolor',
'bs4',
'deepl',
'qtpy',
'spacy-pkuseg',
'sentencepiece',
'ctranslate2',
'python-docx',
'docx2txt',
'piexif',
'keyboard',
'ordered-set',
'opencc-python-reimplemented',
'requests',
'Pillow',
'beautifulsoup4',
'colorama',
'gallery-dl',
'openai',
'pyyaml',
'httpx',
'langdetect',
'pyobjc-core',
'pyobjc-framework-cocoa',
'pyobjc-framework-coreml',
'pyobjc-framework-quartz',
'pyobjc-framework-vision',
],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
exe = EXE(
pyz,
a.scripts,
[],
exclude_binaries=True,
name='launch',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
console=False,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
)
coll = COLLECT(
exe,
a.binaries,
a.zipfiles,
a.datas,
strip=False,
upx=True,
upx_exclude=[],
name='launch',
)
app = BUNDLE(
coll,
name='BallonsTranslator.app',
icon='icon.icns',
bundle_identifier=None,
info_plist={
# 添加应用信息
'CFBundleDisplayName': 'BallonsTranslator',
'CFBundleName': 'BallonsTranslator',
'CFBundlePackageType': 'APPL',
'CFBundleSignature': 'BATR',
'CFBundleShortVersionString': version,
'CFBundleVersion': version,
'CFBundleExecutable': 'launch',
'CFBundleIconFile': 'icon.icns',
'CFBundleIdentifier': 'dev.dmmaze.batr',
'CFBundleInfoDictionaryVersion': '6.0',
'LSApplicationCategoryType': 'public.app-category.graphics-design',
'LSEnvironment': {'LANG': 'zh_CN.UTF-8'},
}
) 3、Pyinstaller打包# 安装pyinstaller
pip install pyinstaller
# pyinstaller通过spec文件打包应用
sudo pyinstaller launch.spec 4、遗留问题
@dmMaze 这里torchvision缺了libjpeg或libpng,但实际已经通过Homebrew安装了这两个,这个报错信息在源代码运行时是没有的,目前没找到解决这个报错信息的办法 |
也有用mac跑上的好像没遇上这么多事啊...我对mac生态也不了解, 可以试试py310 |
导入不会崩,但运行翻译和修图就会崩,现在只能一个文件夹一张图这样挨个处理 |
写个脚本不也是开箱即用...怎么崩的命令行没点提示吗 |
想双击桌面图标能跑起来 崩的时候都是双击应用图标运行的,没开终端,等下用终端跑崩看看有没有错误提示 |
奇怪这两个module不在依赖pip list里面 |
srsly隐藏模块导入后错误信息变了,提示spacy_pkuseg缺了dicts文件 |
从sites把spacy_pkuseg/dicts/default.pkl复制到缺的地方后,显示在下载什么inpaint的什么东西,然后就timeout了
|
这还是spacy在下不知道什么东西,你可以在设置里取消自动断句(Auto Layout),或者检查一下data/models目录下有没有一个pkuseg文件夹,没有就从网盘里下载补上 |
运行源代码,也开始下载东西,但下载完成没报错,源代码运行翻译多张漫画没崩,打包后app翻译多张也没崩 |
打包的崩溃可能是某些路径问题, 请更新到 284f18b (不保证修复 |
|
@dmMaze
|
如果你不用patchmatch inpainting就不是,这个是它的依赖库不过是win上的,如果你要用需要自行编译https://github.com/dmMaze/PyPatchMatchInpaint/tree/linux_build |
@dmMaze
|
更新到 62f1d3e , 把libpatchmatch_inpaint.dylib放到data/libs下面 |
dll在macOS应该是不能直接用的,我在wps office的应用包里找到 我尝试本地编译opencv并启用build opencv world选项,但编译全部失败,现在有点没办法了,可能只能用 |
@dmMaze 更新:我尝试了上面的方法,在应用中选择patchmatch,该功能可以用,但修图效果不及lama_mpe,可能是我用法不对 |
这个对一些重复pattern (网点) 和材质修复效果偶尔比lama好一点 |
@dmMaze 请问models里面这些模型在github或者huggingface上的仓库是哪几个,我向学习下,谢谢 |
没有一个集中的huggingface仓库, lama是用https://github.com/advimman/lama 在我自己一个动画数据集上训练的, 有些改动不过其实没什么用所以你可以直接参考原仓库, 其它模型来源README里有写 |
@hyrulelinks 直接用你那个编译过的patchmatch报缺库了,我又自己编译了下opencv和patchmatch,你试试有没有问题 |
抱歉我刚看到,我明天试试 |
更新下,重新拉源码运行python3 launch.py会开始下载data相关文件,但hash校验通不过,试了很多次,下载速度大概平均5mb/s,中间没卡过,但下载完就提示hash不对,可能pre-calculated hash值有问题,然后就是一直重复下载,没有办法启动程序,另外我还没试过Pyinstaller打包,不知道直接源码打包是不是能启动这个程序,因为.app对下载东西到应用程序内的权限控制非常严格,可能还会报错 |
具体哪些不通过 |
然后是下载postag.zip和spacy_ontonotes.zip报错,说不是zip,但我看了缓存文件夹里,是zip,文件大小也对,也不知道是怎么回事,后来我自己手动下载后放.btrans_cache缓存文件夹内,再运行就通过了 然后启动运行程序,还是会报错下面这个:
pkg_resources显示已经弃用了,可能这个模块需要更新下 en_CN.qm显示不存在,启动后界面是英文,启动几次就提示几次,这个文件我没找到,是不是应该改成zh_CN.qm?
|
另外macos_libopencv_world.4.8.0.dylib这个怎么只有9.5mb,是作者自己编译的吗,我编译出来30多mb,求教编译过程,我的编译过程报错很多 |
@hyrulelinks import torch
torch.load('data/models/lama_large_512px.ckpt', map_location='cpu') 如果报错大概就是你那三个模型都下载失败了,所以torch直接读取失败,试试拉 849800a 再重新下载,我换了个下载接口,另外方便的话把你的lama_large_512px.ckpt(如果上面代码报错的话)传个网盘share给我
你软件里试过patchmatch能正常使用吗? |
下载全部失败,速度是满格的,但下了一部分就报错失败,然后下载下一个,继续报错,直到全部报错完
能正常使用 |
换了个网络环境,多试几次可以下载全,但过程确实比较煎熬,经常400多MB还差几MB就报错,试了很多次才下完整,从源码可以正常运行,首次启动会生成config,里面有个错误是界面语言文件找不到en_CN.qm,需要先把界面调成英文,再调回中文,config里面才会变成正确的zh_CN.qm |
This guide is outdated, please read the README_EN.md and follow the installation guide there
If you came here, then you did not understand how to do it yourself. Let me help.
Two installation options. Interactive or via CMD. Shown on the example of windows 11.
[GitBash]
3.1. Clone the repository
3.2. Go to the BT folder and change the branch to DEV
cd BallonsTranslator
To update the repository (changes):
video:
explorer_tbZf0PQ756.mp4
[Gihub Desktop]
4.1 Clone the repository
explorer_QgXTsdul8v.mp4
2.2. Click on Current Branch -> select Dev. Ready
Install models
To update the repository (changes):
Video:
explorer_sDl6qJHHZC.mp4
PS. YOU MUST HAVE PYTHON 3.10.x INSTALLED (3.9 deprecated)
The text was updated successfully, but these errors were encountered: