Skip to content

Releases: SMARK2022/electron-media-toolbox

v2.1.3

Choose a tag to compare

@github-actions github-actions released this 24 Jun 20:28

更新内容

v2.1.3 新增

a9463fe feat(ci): 添加 macOS 构建流程和 E2E 测试支持,优化 CI 流水线
1e71f8a fix(ci): 强制安装 git lfs 以解决 macOS runner 中的冲突问题
2cefd42 fix(ci): 修复 macOS 权限问题和 CI 环境下的状态更新检查
cd8b322 fix(e2e): EXIF 读取改用 64KB 部分缓冲区替代全文件读取
a5f7154 feat(preview): ImagePreview 改用 createImageBitmap + canvas 实现已解码图像缓存
c91d4f4 fix(db): SQLite 并发安全——WAL 模式 + 原子 clearPhotos + 检测期间导入守卫
0db4c6f feat(filter): 相似度阈值支持精确输入与保留策略可配置
4b00a99 test(e2e): 补充弃用/启用确认流程 E2E 覆盖并清理无效类名
734c80f fix(ui): 修复 i18n 缺失、可访问性缺陷与结构性错误,清理死代码
5ed0d1d fix(preview): bitmapCache 改用 new Image() 替代 fetch 加载 local-resource 图片
f7c3022 docs: 全量重写中英文 README,版本号改为动态 badge,更新日志对齐 GitHub Release
9352c1e fix(GithubUpdateNotifier): 移除版本号前缀 v,确保从 GitHub API 获取的版本号正确显示

v2.1.2 积累

b5a7003 feat(ci): release notes 从 commit log 自动生成
c232e5f test(e2e): 修复测试链路并补全导入→筛选→点选→导出完整流程
afb2fd8 fix(release): 优化生成发布说明的逻辑,按版本 bump 分节展示变更
96e5b32 fix(mac): 隐藏 macOS 下的自定义窗口控件避免与红绿灯重复
0cfd0c5 refactor(lint): 全量清理 212 个 ESLint 违规并升级 CI lint 为阻塞门禁
e7f8825 feat(husky): 添加 pre-commit 和 pre-push 钩子以执行 lint 和测试检查
19e5b67 refactor(ci): 合并三个独立 workflow 为统一流水线,建立 CI→E2E→Release 依赖链
3ce62b6 fix(ci): 修复 lockfile 不同步导致 npm ci 失败并升级 CI Node 至 24
3b9dcec fix(ci): 彻底重建 package-lock.json 补齐跨平台可选依赖
e3ed61f fix(ci): 修复 e2e 在 build 失败时仍尝试下载不存在的 artifact
056496d fix(ci): 验证步骤增加 out/ 目录内容输出辅助排查打包产物路径
9a27254 test(e2e): 修复 E2E 测试逻辑错误使完整流程可实际运行
4bf9ad7 Merge branch 'master' of https://github.com/SMARK2022/electron-media-toolbox
a12394f fix(ci): package 步骤改用 bash 避免 pwsh 截断 Forge 打包子进程
57d1f96 fix(ci): 回退 Node 24 至 22 并设 NODE_OPTIONS 防止 Forge 打包进程提前退出
d2790a5 fix(ci): E2E job 补装 Electron 二进制修复 electron.launch 失败
722bd85 fix(e2e): 修复后端启动和照片计数选择器使 E2E 完整流程可运行
c8c45d0 fix(e2e): 修复导出路径验证和滑块可见性测试在 CI 中的失败
cd88c58 feat(mac): 实现 macOS 多平台兼容支持
1f3145d feat(mac): macOS 原生缩略图加速 + Nuitka --mode=app 编译


自动构建 from 9352c1e

v2.1.2

Choose a tag to compare

@github-actions github-actions released this 23 Jun 13:07

更新内容

v2.1.2 新增

b5a7003 feat(ci): release notes 从 commit log 自动生成
c232e5f test(e2e): 修复测试链路并补全导入→筛选→点选→导出完整流程
afb2fd8 fix(release): 优化生成发布说明的逻辑,按版本 bump 分节展示变更
96e5b32 fix(mac): 隐藏 macOS 下的自定义窗口控件避免与红绿灯重复
0cfd0c5 refactor(lint): 全量清理 212 个 ESLint 违规并升级 CI lint 为阻塞门禁
e7f8825 feat(husky): 添加 pre-commit 和 pre-push 钩子以执行 lint 和测试检查
19e5b67 refactor(ci): 合并三个独立 workflow 为统一流水线,建立 CI→E2E→Release 依赖链
3ce62b6 fix(ci): 修复 lockfile 不同步导致 npm ci 失败并升级 CI Node 至 24
3b9dcec fix(ci): 彻底重建 package-lock.json 补齐跨平台可选依赖
e3ed61f fix(ci): 修复 e2e 在 build 失败时仍尝试下载不存在的 artifact
056496d fix(ci): 验证步骤增加 out/ 目录内容输出辅助排查打包产物路径
9a27254 test(e2e): 修复 E2E 测试逻辑错误使完整流程可实际运行
4bf9ad7 Merge branch 'master' of https://github.com/SMARK2022/electron-media-toolbox
a12394f fix(ci): package 步骤改用 bash 避免 pwsh 截断 Forge 打包子进程
57d1f96 fix(ci): 回退 Node 24 至 22 并设 NODE_OPTIONS 防止 Forge 打包进程提前退出
d2790a5 fix(ci): E2E job 补装 Electron 二进制修复 electron.launch 失败
722bd85 fix(e2e): 修复后端启动和照片计数选择器使 E2E 完整流程可运行
c8c45d0 fix(e2e): 修复导出路径验证和滑块可见性测试在 CI 中的失败
cd88c58 feat(mac): 实现 macOS 多平台兼容支持

2.1.1 积累

b57388d feat: 添加 GitHub 更新通知组件,支持版本检查和更新提示
c18f39d Add initial ONNX model data for lar_iqa
a83bc16 feat: 更新照片详情表格,优化布局和状态显示,添加拖动功能
6e04436 feat: 添加 LRU 缓存实现,优化资源管理和内存使用
ba55dea feat: 优化图片预览组件,减少阻塞,添加缩放提示和边界限制,调整样式以适应容器
30c5630 feat: 增加图片预览组件的缩放限制至 20 倍,优化缩放提示功能
6111c1b feat: 添加右键菜单功能,支持查看详情、下载、分享和标记状态等操作
322f6e1 feat: 更新依赖项,升级版本至 2.1.1,并添加 zustand 库
d7a4fd1 feat:优化带图库和侧面板的照片筛选页面 -添加GalleryPanel组件以分组或总计模式显示照片。 -引入GalleryGroup组件来渲染单个照片组。 -创建PhotoFilterEffects挂钩来管理与照片过滤相关的副作用。 -开发用于过滤选项和照片预览的SidePanel组件。 -使用Zustand实现usePhotoFilterStore进行状态管理。 -添加启用/禁用照片和更新服务器状态的功能。 -使用react-i18next集成翻译支持以实现国际化。
5527936 代码注释添加
d75c9fc 重构照片管理:迁移到新的数据库和存储结构 -更新了PhotoExtend和相关函数的导入路径,以使用新的helpers/db/db模块。 -重构使用PhotoFilterStore来改进状态管理和动作命名约定。 -用新的状态变量替换旧的状态变量,以提高清晰度和一致性。 -增强了获取和更新照片的逻辑,包括服务器状态轮询。 -删除了旧的usePhotoFilterStore文件,并将功能整合到新存储中。 -更新了组件(PhotoDetailsTable、PhotoFilterEffects、SidePanel),以与新的存储结构和命名约定保持一致。
6fc25f6 feat:在导出和导入页面中集成全局照片存储 -重构PhotoExportPage以使用PhotoFilterStore管理照片和当前页面状态。 -更新PhotoImportPage以将导入的照片与全局存储同步并管理当前页面状态。 -增强GalleryPanel以支持照片选择的事件传播。 -添加PhotoInfoDialog组件,用于显示具有本地化支持的详细照片元数据。 -为一致的UI元素引入复选框组件。 -为exif解析器定义类型,以提高处理exif数据时的类型安全性。
67d796c feat: 重构数据库接口,迁移至 IPC 模块并优化右键菜单国际化支持
2ca1a6d feat: 重构数据库接口,迁移至 IPC 模块并优化右键菜单国际化支持
81e576b feat:使用ONNX型号添加IQA和人脸检测功能 -使用具有延迟加载和会话管理的ONNX模型实现了IQA(图像质量评估)。 -增加了图像的预处理步骤,以满足IQA模型的要求。 -使用SCRFD模型集成人脸检测功能,支持多个执行提供者(CUDA、DML、CPU)。 -当模型不可用时,为IQA引入了虚拟会话回退。 -增强了模型加载和推理过程的错误处理和日志记录。 -为检测到的人脸提供结构化的JSON输出,包括边界框和置信度得分。
1a1e1cc Merge branch 'master' of https://github.com/SMARK2022/electron-media-toolbox
e36dabb feat: 移动 ONNX 推理模块
b4d894c feat: 修改数据库兼容性(兼容旧版本),同时优化后端初始化流程、进行解耦
d73ed28 feat: 更新图像处理模块导入路径,移除旧的 ONNX 版本
891319d feat: 添加人脸聚焦功能,优化预览组件和侧边面板
f7f02db feat: 优化人脸检测功能,添加中心点计算与排序逻辑;修复 PhotoDetailsTable 组件以确保 hooks 调用顺序一致
36e694d feat: 添加用户交互回调以禁用自动聚焦功能;重构人脸追踪逻辑并抽离 FaceThumbnail 和 FaceStrip 组件
73652fd feat: 添加禁用聚焦动画功能,优化用户交互处理逻辑
0238009 feat: 优化图片启用状态切换逻辑,自动选择下一张预览图;
f2c0353 feat: 优化禁用图片时的预览切换逻辑,预先获取下一张图片的扩展信息
6b1862f 添加眨眼识别
250e485 feat: 添加眨眼状态逻辑和统计功能,优化人脸信息展示
74d3b48 修改人脸检测算法并添加角标
698121a feat: 添加眨眼统计功能,更新Grid图片组件以显示眼睛状态指示器
86658c5 调整函数以及格式化
c70e37d 修改眨眼计算代码,以新增模型提高眨眼识别准确率
be91df7 重构ONNX导出流程和眼睛状态管理 -已将ONNX导出路径更新到绝对位置。 -添加了一个函数,用于在导出后将外部数据内联到单个ONNX文件中。 -增强了导出功能,以处理遗留导出器兼容性。 -导出后删除了不必要的外部数据文件。 -在PhotoFilterStore中重构了眼睛状态逻辑,以集中阈值管理。 -使用新的实用函数简化FaceStripBar中的眼睛状态计算。 -删除了已弃用的start-server.bat脚本。
7d202c1 feat: 引入RetinaFace模型和相关功能,重构模型获取逻辑
7d02194 feat: 更新眨眼状态指示器,优化删除确认对话框,调整眼睛状态阈值
b0a7c87 降低导入界面间距 mb
7f038a0 feat: 增加图像预览最大缩放比例至50,优化人脸追踪配置权重,调整置信度判断逻辑
fa0b119 fix: 修改主机地址为127.0.0.1以增强安全性
6dd77d6 feat: 优化服务器状态监控抽屉布局,调整内容结构和样式
62e329b 代码重构:
a8413ed feat: 增加人脸追踪模式相关文案和眼睛状态动态翻译,优化眼睛状态统计功能
8043a6e feat: 优化照片获取和刷新逻辑,调整空闲检测阈值
c38b026 1
8fdcd74 feat: 重构 EXIF 元数据处理,移除 photo-info 协议,新增缓存机制
3b424e8 feat: 增加窗口按钮的无障碍标签,调整 AboutPage 的顶部边距,优化 FaceStripBar 中的 hook 使用顺序,注释掉 PhotoDetailsTable 中的调试日志
8d9853b feat: 更新预览拖动逻辑,传递容器的 DOMRect优化拖动条,优化鼠标和触摸事件处理
05d6b09 feat: 优化 ImagePreview 动画和容器尺寸变化处理,修复 PhotoGrid 组件焦点索引问题,改进 PhotoService 照片加载逻辑,调整 GalleryPanel 分组标题显示
a3ead9e feat: 调整人脸检测和眨眼检测的阈值与最大批处理大小,优化检测性能
e6edb2a 重构:增强照片滤镜存储和组件,以获得更好的性能和清晰度 -更新了“usePhotoFilterStore”以改进状态管理,并添加了更清晰的注释以更好地理解。 -优化了“PhotoFilterPage”以利用细粒度状态订阅,减少了不必要的重新渲染。 -增强的“GalleryPanel”具有自定义比较功能,用于记忆,优化渲染。 -通过使用useCallback稳定回调函数来改进SidePanel,以防止在每次渲染时重新创建。
41bf36d feat: 优化眨眼统计计算逻辑,增量更新避免全网格重渲染
d550977 feat: 精细化选择器和状态管理,优化组件重渲染性能
54355fc feat: 优化 PhotoGrid 和 GalleryPanel 组件,合并高光focus等逻辑,简化高亮照片处理逻辑,提升性能
2fefe0a feat: 优化 ImagePreview 组件的用户交互处理,增加防抖机制以减少频繁重渲染,改进缩放提示的显示逻辑
6a0bf0c chore:更新依赖关系并改进图像处理 -将版本升级到2.2.0,并更新package.json中的各种依赖项,以获得更好的性能和兼容性。 -修改ImagePreview组件,使src prop为可选,以防止在没有提供图像源时进行不必要的渲染。 -通过使imageSrc可选来增强FaceStripBar组件,从而实现更灵活的使用。 -重构PhotoDetailsTable组件,对触摸事件使用可选链接,并通过详细的道具比较来改进渲染逻辑。
81572bf feat: 添加虚拟化支持到 PhotoGrid 组件,优化性能并更新相关页面
a6e0301 feat: 优化 ImagePreview 组件背景样式,调整 PhotoExportPage 组件间距,增强用户界面体验
0bc4034 feat: 修复 GalleryPanel 组件的焦点管理,确保键盘导航一致性
3fb274e feat: 重构照片服务和状态管理,优化导出和过滤页面的照片列表处理,避免被导出页面结果覆盖
7f73e16 feat: 优化 ImagePreview 组件用户交互处理,简化状态管理并提升性能
6dfa98b feat: 添加无照片时的占位符提示,优化用户体验
61f72b4 feat: 优化 InfoRow 组件,使用 React.memo 提升性能,简化 GroupBadge 组件实现
13f9e74 重构(GalleryPanel):简化组件结构并集成PhotoGridEnhance以改进照片显示 -删除了虚拟化逻辑和相关组件,以实现更精简的实现。 -集成PhotoGridEnhance以处理照片分组和显示。 -更新了道具和状态管理,以与新结构保持一致。 -增强的工具栏,用于模式切换和照片计数显示。 -清理未使用的导入和代码,以提高可读性和可维护性。
95cafc1 feat: 优化照片导入和导出页面,移除无照片时的占位符提示,直接展示照片网格
9dcb5db feat: 重构工作线程状态行组件,优化渲染性能并简化代码结构
52b9dd5 feat: 添加照片比较工具函数,优化照片数组相等性检查
3e07d2e feat:在PhotoCard组件中实现缩略图重试机制 -添加了自动重试逻辑,用于在PhotoCard组件中加载缩略图。 -引入了重试间隔和最大重试次数的常数。 -增强了对图像加载失败的错误处理。 -更新了图像加载过程,以重置URL更改时的重试状态。
ea24414 添加E2E测试流程
f0eee3b 优化python打包以减少缓存占用
eb478f2 feat(photo-filter): 优化筛选提示按键展示
58cd6b1 chore(deps): 安全升级依赖并修复生产审计告警
81fc38d chore(prompts): 对齐 agent prompt 与项目技术栈和约定
5b2eef1 chore(format): 适配 prettier 3.8 格式化规则变化
7c3bfc5 chore(lfs): ONNX 模型迁移至 Git LFS
5d19291 chore(deps): 补全 lint 脚本与缺失的 eslint-plugin-react-compiler
7b0cceb fix(types): 修正 tsconfig 配置与测试类型错误使 tsc 通过
559b576 chore(ci): 新增 test/build/release GitHub Actions 自动化
2d4691c test(e2e): 测试路径相对化与 CI fixture 机制
5129e87 chore: 新增 AGENTS.md 协作约定与校验命令
2a41feb refactor(faceTracker): 导出 gaussian/computeIoU/extractFeatures/softmax 辅助函数
500cc63 test(faceTracker): 补充人脸追踪匹配器单元测试
b9a496d test: 补充眨眼阈值/LRU缓存/文件扩展名/i18n一致性单元测试
42133dd fix(ci): npm ci 改用 --ignore-scripts 修复 better-sqlite3 编译失败
23bf22e chore: 更新依赖项,升级 tar 到 7.5.16,pydantic 到 1.10.26
af3d1af fix(ci): 提交 .prettierrc 与 .prettierignore 修复 CI 格式检查
42fde20 fix(ci): 修复 python-make.cjs 退出码传播与 CI conda 激活
ecd7f70 fix(ci): Nuitka 安装到 conda env 并修复 bat 错误检查
ccd3bd1 fix(ci): conda env ensurepip 并修复 bat exit code 传播
4fe03e3 fix(ci): release 路径恢复完整 npm ci 修复 Squirrel 工具缺失
0e55755 fix(ci): 回退 --ignore-scripts 绕过 VS2026 并补 7z PATH 修复 Squirrel
2f37886 fix(ci): 切换 windows-2022 修复 VS2026/Squirrel 兼容性 + Nuitka 缓存 + bump 2.1.2


自动构建 from cd88c58

v2.1.1 兼容性升级:迁移至 DirectML 推理后端,全面适配各类显卡硬件

Choose a tag to compare

@SMARK2022 SMARK2022 released this 23 Nov 18:03

本次 v2.1.1 版本着重于提升硬件兼容性与运行稳定性。核心变更在于将推理后端从 CUDA 专用的 onnxruntime-gpu 迁移至微软推出的 DirectML 架构。这意味着单一安装包即可在 Windows 平台上完美适配 NVIDIA、AMD 及 Intel 等各类显卡硬件,用户无需再额外安装 CUDA 工具包或 cuDNN 库即可直接享受 GPU 加速体验。此外,针对 Nuitka 编译产物优化了进程退出逻辑与信号处理机制,确保应用关闭时能正确执行清理操作,彻底解决了临时解压目录残留的问题,使软件运行更加清洁高效。

安装与升级说明

通用安装(推荐所有用户)
得益于 DirectML 的引入,现在的 Windows 安装包已不再区分显卡品牌,且体积大幅精简。无论您使用的是 NVIDIA RTX 系列、AMD Radeon 系列还是集成显卡,只需下载安装包覆盖安装即可,无需任何额外配置。

开发者
如果您需要进行源码调试,或在非 Windows 环境下运行,可下载 Source code 自行配置标准 Python 环境。

Assets / 文件下载

  • Electron.Media.Toolbox.msi (254 MB) - 推荐下载,通用 GPU 加速版。
  • Electron.Media.Toolbox-2.1.1.Setup.exe (253 MB) - 传统的安装程序,内容同上。
  • Source code (zip/tar.gz) - 供开发者参考。

v2.1.0 架构升级:引入 ONNX Runtime 与 Nuitka 编译,实现后端一体化集成

Choose a tag to compare

@SMARK2022 SMARK2022 released this 21 Nov 20:25

本次 v2.1.0 版本带来了底层架构的深度重构,旨在彻底解决环境配置繁琐与启动速度缓慢的问题。核心变更在于引入 Nuitka 编译技术ONNX Runtime 推理引擎,将原本依赖庞大 PyTorch 环境的 Python 后端转化为轻量级独立可执行文件(web_api.exe)。这一改变使得 Electron 主进程能够全自动接管后端的生命周期,实现静默启动、状态保活与优雅退出,普通用户不再需要手动运行脚本或管理控制台窗口。

用户体验方面,新版本增加了后端健康探测机制。应用启动后的前 10 秒会自动尝试连接服务,并在首页实时反馈在线状态与 API 响应延迟,大幅提升了系统的可观测性。同时,关于页面集成了增强版版本检查器,支持直达 GitHub Release 页面。

安装与运行说明

NVIDIA 显卡用户(推荐)
本次发布的 Windows MSI 安装包(及 Setup.exe)已完整内置 CUDA 加速环境与预编译后端。用户仅需下载安装包并运行,无需额外下载 Python 环境或配置虚拟环境即可直接使用,系统会自动调用 GPU 进行加速。

AMD 显卡或纯 CPU 用户
由于内置环境绑定了 CUDA 依赖,非 NVIDIA 用户请勿直接依赖内置后端。请额外下载 python.zip 源码包,手动配置环境并安装适用于 CPU 或 DirectML 的 onnxruntime 库,通过开发者模式启动后端服务。

Assets / 文件下载

  • Electron.Media.Toolbox.msi (339.01 MB) - 推荐下载,含完整 CUDA 环境。
  • Electron.Media.Toolbox-2.1.0.Setup.exe (337.42 MB) - 传统的安装程序,内容同上。
  • python.zip (71.57 MB) - 仅 AMD/CPU 用户或开发者需要下载并配置启动后端。

v2.0.0 新增 MSI 安装方式,精简打包体积,并大幅优化界面与导入流程

Choose a tag to compare

@SMARK2022 SMARK2022 released this 19 Nov 13:14

Users may have a large number of burst photos during photography, and it can be difficult to filter them during post-processing. Therefore, I created this toolbox, which can directly read the photo folder from the camera's storage card, group them by HSV histogram similarity, and then sort them by IQA aesthetic score for easy deletion. After users finish managing the photos, they can export and copy them to a specified folder.

2025.11.19 发布 v2.0.0 版本:新增 MSI 安装方式,精简打包体积,并大幅优化界面与导入流程。
Released version v2.0.0: added MSI installer support, significantly reduced bundle size, and greatly improved the UI and import flow.

Highlights / 更新内容

  • 全新界面与交互优化

    • 重构导入、筛选与预览页面布局,信息层级更清晰
    • 改进空状态 / 加载状态 / 错误提示,让筛选过程更直观
    • 更清晰的导入提示与状态反馈,减少误操作
  • 📦 支持 MSI 安装并精简体积

    • 新增 Windows .msi 安装包,支持一键安装与卸载
    • 移除冗余依赖,显著减小主程序安装包体积
  • ⚙️ 内部优化

    • 调整部分组件结构,便于后续功能扩展
    • 保持原有 HSV 分组 + IQA 美学评分逻辑不变,提升整体稳定性

How to run (Only for Windows x64)

  1. Download

    • 下载并安装最新的 .msi 安装包(主程序,或.exe安装程序)
    • 同时下载 python.zip(后端推理环境)
  2. Install Main Program

    • 双击 .msi,按照向导完成安装
    • 程序将安装到类似:C:\Program Files (x86)\Electron Media Toolbox 目录
  3. Prepare Python Backend

    • python.zip 解压到安装目录下,例如:
      └── 📁Electron Media Toolbox
          └── 📁python
              ├── 📁packages
              ├── 📁utils
              ├── requirements.txt
              ├── start-server.bat
              └── web_api.py
          └── Electron Media Toolbox.exe
      
    • 打开终端,进入 python 目录,执行:
      pip install -r requirements.txt
  4. Run

    • 运行 start-server.bat 或手动执行 python web_api.py 启动后端
    • 启动 Electron Media Toolbox 主程序即可开始使用 🎉

如果使用exe安装,建议在更新前删除旧版本配置目录(如 C:\Users\[USERNAME]\AppData\Local\electron_media_toolbox),以释放空间并避免历史配置干扰。

Please Enjoy! 🥳

v1.5.0 调整照片路径输入方法,自动检测文件夹路径,优化若干特性,修复已知 bug

Choose a tag to compare

@SMARK2022 SMARK2022 released this 16 Nov 15:29

Users may have a large number of burst photos during photography, and it can be difficult to filter them during post-processing. Therefore, I created this toolbox, which can directly read the photo folder from the camera's storage card, group them by HSV histogram similarity, and then sort them by IQA aesthetic score for easy deletion. After users finish managing the photos, they can export and copy them to a specified folder.

  • 2025.11.16 发布a1.5版本 调整照片路径输入方法,自动检测文件夹路径,优化若干特性,修复已知 bug
  • Released version a1.5, Adjusted photo path input method, automatically detected folder path, optimized several features, and fixed known bugs

How to run(Only for Windows x64):

  1. Download the Setup.exe(Or using Portable version) and python.zip
  2. Install the Main Program with Setup.exe ( Or unzip the Portable.zip.)
  3. Unzip the python.zip into the Installed Folder with the structure like this:
└── 📁Electron-Media-Toolbox
    └── 📁python
        └── 📁packages
        └── 📁utils
        ├── requirements.txt
        ├── start-server.bat
        └── web_api.py
    └── xxx.exe
  1. Run pip install -r requirements.txt in the python folder to prepare the environment.
  2. Run the .exe and python web_api.py to Start!

Don't forget to remove the C:\Users\[YOUR USERNSME]\AppData\Local\electron_media_toolbox folder before you update, to free your C: 👈

Please Enjoy! 🥳

v1.4.0 修复若干特性并且支持更新检测

Choose a tag to compare

@SMARK2022 SMARK2022 released this 15 Nov 20:35

Users may have a large number of burst photos during photography, and it can be difficult to filter them during post-processing. Therefore, I created this toolbox, which can directly read the photo folder from the camera's storage card, group them by HSV histogram similarity, and then sort them by IQA aesthetic score for easy deletion. After users finish managing the photos, they can export and copy them to a specified folder.

  • 2025.11.16 发布a1.4版本 更新依赖项,优化若干特性,且现在支持检查 GitHub releases
  • Released version a1.4, Updated dependencies , optimized several features, and now supports checking GitHub releases

How to run(Only for Windows x64):

  1. Download the Setup.exe and python.zip
  2. Install the Main Program with Setup.exe
  3. Unzip the python.zip into the Installed Folder with the structure like this:
└── 📁Electron-Media-Toolbox
    └── 📁python
        └── 📁packages
        └── 📁utils
        ├── requirements.txt
        ├── start-server.bat
        └── web_api.py
    └── xxx.exe
  1. Run pip install -r requirements.txt in the python folder to prepare the environment.
  2. Run the .exe and python web_api.py to Start!

Please Enjoy! 🥳

v1.3.0 SMARK Media Tools Release

Choose a tag to compare

@SMARK2022 SMARK2022 released this 05 Nov 16:55

Users may have a large number of burst photos during photography, and it can be difficult to filter them during post-processing. Therefore, I created this toolbox, which can directly read the photo folder from the camera's storage card, group them by HSV histogram similarity, and then sort them by IQA aesthetic score for easy deletion. After users finish managing the photos, they can export and copy them to a specified folder.

  • 2025.11.06 发布a1.3版本 修正electron-forge与vite打包导致的依赖项缺失问题,修复若干 bug,并发布 electron 打包后的 release
    ---------- Released version a1.3, Fixed missing dependencies caused by electron-forge + Vite packaging, fixed several bugs, and published the electron packaged release

How to run(Only for Windows x64):

  1. Download the Setup.exe and python.zip
  2. Install the Main Program with Setup.exe
  3. Unzip the python.zip into the Installed Folder with the structure like this:
└── 📁Electron-Media-Toolbox
    └── 📁python
        └── 📁packages
        └── 📁utils
        ├── requirements.txt
        ├── start-server.bat
        └── web_api.py
    └── xxx.exe
  1. Run pip install -r requirements.txt in the python folder to prepare the environment.
  2. Run the .exe and python web_api.py to Start!

Please Enjoy! 🥳