绘制符号以查找要使用的 LaTeX 命令。
该项目受到Detexify项目的启发,并使用了部分相同的训练数据,现在还增加了新的符号和额外的训练数据。
平台 | 格式 | 链接 |
---|---|---|
Linux | Flatpak | 即将推出 |
AUR | 即将推出 | |
Windows | 可执行文件 | HandTeX.exe |
所有平台 | Python 软件包 | pip install handtex |
Python 软件包需要 Python 3.10 或更高版本。请确保 Python 已添加到您的 PATH 中。
如果通过 Python 安装,请运行handtex
以启动程序。
如果这不起作用,尝试运行python -m handtex.main
。
是的,但对于使用 Hand TeX 来说,这并非必要。该模型足够小,可以在 CPU 上快速运行,没有明显的区别。
是的!在 Hand TeX 中,前往汉堡菜单并选择“帮助符号训练”。
这将向您展示一个符号供您绘制。然后只需提交您的绘制,
它将被保存到一个.json 文件中。您可以配置此文件的位置。
一旦您对收集的绘制感到满意,将所有.json 文件打包成一个.zip 压缩包,
发送至voxel.aur@gmail.com。
谢谢!
是的,总是需要帮助。如果您对训练模型有所了解,
我想知道如何进一步改进它。
如果您想建议新符号,请打开一个议题并包含您使用“帮助符号训练”功能制作的绘制。对于新符号,
只需在界面中手动输入您想建议的符号名称,然后按跳过键。然后绘制符号并提交它。如果能包含一个.tex 文件,
展示符号的使用情况,以便它能与 pdflatex 或 xelatex 编译,那就更好了。
Hand TeX 支持相同的符号和更多符号,因为它使用了更大的数据集。Detexify 模型使用时间信息来了解您绘制笔画的顺序和方向。
这对于以特定方式绘制的常见符号很有用,但这种方法在处理没有常见绘制方式的更复杂符号时会遇到困难。
Hand TeX 将您的笔画渲染为平面图像,并使用卷积神经网络来分类符号。这种方法忽略了您绘制笔画的顺序,只关注符号的形状。
扩展和修改后的数据集可在与原始 Detexify 数据集相同的许可证下在此处获得:此处。
这些说明假设您已安装 Python 3.10 或更高版本,以及一组终端实用程序。
这将在任何 Linux 系统上运行,或在其他安装了适当工具的系统上运行。
要从源代码运行,请克隆仓库:
git clone https://github.com/VoxelCubes/Hand-TeX.git
cd Hand-TeX
可选地,创建一个虚拟环境:
python -m venv venv
source venv/bin/activate
安装依赖项:
pip install -r requirements.txt
可选地,如果您希望训练和开发,还请安装开发依赖项:
pip install -r requirements_training.txt
您需要一个模型来运行程序。您有两种选择:
mkdir -p handtex/data/model
curl -o handtex/data/model/handtex.safetensors https://github.com/VoxelCubes/Hand-TeX/releases/download/model/handtex.safetensors
curl -o handtex/data/model/encodings.txt https://github.com/VoxelCubes/Hand-TeX/releases/download/model/encoding.txt
mkdir -p training/database
curl -o training/database/handtex.db.tar.xz https://github.com/VoxelCubes/Hand-TeX/releases/download/database/handtex.db.tar.xz
tar -xf training/database/handtex.db.tar.xz -C training/database
PYTHONPATH=. python training/train.py
最后,运行程序:
PYTHONPATH=. python handtex/main.py
或者
make run
如果您对符号或 Qt ui 文件进行了任何更改,则需要重新生成资源:
make refresh-assets