zachtong/pyALDIC: v0.6.0 - Session persistence & 35x faster export
Description
Feature release. Two headliners: your computed results now survive closing the GUI, and exports are ~35× smaller and ~5× faster.
Session persistence — save results, not just settings
- File → Save Session now writes the whole project — parameters,
ROIs, view state, and computed results — into a single
.aldicfile (results deduplicated, stored pickle-free). - Open Session restores the exact page: same frame, field, colormap, ranges — no recompute needed. Hours of computation survive closing the GUI.
- Async save / load with a progress dialog; legacy v0.5 session JSON still loads.
- Windows: optional double-click association for
.aldicfiles (File → Associate .aldic files).
Export overhaul
- ~35× smaller files, ~5× faster per image (LUT colormap + binary-alpha composite + rendering at output resolution). A 90-image 4K batch: 3.3 min / 2.8 GB → 40 s / 80 MB.
- Streaming GIF / MP4 writer — frames encode one at a time, no RAM spike; GIFs come out ~8× smaller.
- Resolution presets (512 / 768 / 1024 / 1536 / 2048 / native, long edge), JPEG default with quality control; PNG / TIFF still available. GIF / MP4 frame-step decimation (keep every Nth frame, playback duration preserved).
- New Preview & Colorbar tab: WYSIWYG preview through the real export path; colorbar position / font / thickness / background / margin; Apply to all fields; physical-unit-aware labels.
Memory on large datasets
- Frames now stream on demand instead of loading four full float64 stacks — ~40 GB less RAM at Run click on 300× 4K images.
- LRU-bounded caches stop O(N) growth in incremental mode; worker no-copy + uint8 ROI masks.
Fixes
- Locale-proof numeric input. On comma-decimal systems
(de / fr / es / pt / it / ru), typing
0.070into a range box silently became70. Both0.07and0,07now parse as 0.07 everywhere. - Strain window opens fitted to the screen (was fixed 1280×800).
- Color range is now an explicit Auto / Fixed radio choice; the run progress bar no longer jumps 90 → 100.
All 8 GUI locales remain at 100% translation coverage.
Install / upgrade: pip install -U al-dic
PyPI: https://pypi.org/project/al-dic/0.6.0/
Full changelog: https://github.com/zachtong/pyALDIC/blob/main/CHANGELOG.md
📺 Video tutorials: YouTube — English · 中文 | Bilibili — P1 中文 / P2 English
<details> <summary><b>中文版本说明 (Chinese release notes)</b></summary>
功能版本。两大亮点:计算结果现在可以随会话保存,关闭 GUI 不再丢失; 导出体积缩小约 35 倍、速度提升约 5 倍。
会话持久化 —— 保存的不只是参数
- File → Save Session 现在会把整个项目 —— 参数、ROI、视图状态、
以及计算结果 —— 全部写入单个
.aldic文件(结果去重存储, 不使用 pickle)。 - Open Session 直接回到关闭时的页面:同一帧、同一物理场、同样的 colormap 和量程,无需重新计算 —— 数小时的计算成果不再因关闭 GUI 而丢失。
- 保存 / 读取均为异步执行,带进度对话框;v0.5 的旧版会话 JSON 仍可打开。
- Windows 可选关联
.aldic文件(File → Associate .aldic files), 双击即可打开会话。
导出全面提速
- 文件缩小约 35 倍、单张导出快约 5 倍(LUT colormap + 二值 alpha 合成 + 按输出分辨率渲染)。90 张 4K 批量导出: 3.3 分钟 / 2.8 GB → 40 秒 / 80 MB。
- 流式 GIF / MP4 写出:逐帧编码,不再堆积内存;GIF 体积约缩小 8 倍。
- 分辨率预设(512 / 768 / 1024 / 1536 / 2048 / native,按长边), 默认改为 JPEG 并可调质量;PNG / TIFF 仍然可用。GIF / MP4 支持 抽帧导出(每 N 帧取 1 帧,播放时长保持不变)。
- 导出对话框新增 Preview & Colorbar 标签页:经由真实导出管线的 WYSIWYG 预览;colorbar 位置 / 字体 / 粗细 / 背景 / 外边距均可调; 支持 Apply to all fields 一键套用;标签自动使用物理单位。
大数据集内存优化
- 图像帧改为按需流式读取,不再一次性加载 4 份完整 float64 图像栈 —— 300 张 4K 数据集点击 Run 时约省 40 GB 内存。
- 各级缓存改为 LRU 限界,incremental 模式下内存不再随帧数 O(N) 增长; worker 零拷贝 + uint8 ROI 掩膜。
修复
- 数字输入不再受系统区域设置影响。 在逗号小数制系统
(de / fr / es / pt / it / ru)上,量程框中输入
0.070曾被静默解析为70;现在0.07与0,07都能在所有输入框中正确解析为 0.07。 - 应变窗口按屏幕大小自适应打开(原为固定 1280×800,小屏笔记本会溢出, macOS 上无法缩小)。
- 色彩量程改为显式的 Auto / Fixed 单选(主窗口、应变窗口、导出 对话框一致);运行进度条不再在结尾从 90 跳到 100。
全部 8 种界面语言(en、zh_CN、zh_TW、ja、ko、de、fr、es)保持 100% 翻译覆盖。
安装 / 升级: pip install -U al-dic
PyPI: https://pypi.org/project/al-dic/0.6.0/
完整更新日志: https://github.com/zachtong/pyALDIC/blob/main/CHANGELOG.md
📺 视频教程: YouTube — English · 中文 | Bilibili — P1 中文 / P2 English
</details>
Files
zachtong/pyALDIC-v0.6.0.zip
Files
(49.0 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:ab57beb72a7108ce817d27ca9a042422
|
49.0 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/zachtong/pyALDIC/tree/v0.6.0 (URL)
Software
- Repository URL
- https://github.com/zachtong/pyALDIC