作为业余摄影爱好者,可能用过很多相机和镜头,但回顾自己的照片,可能只对自己的设备和使用习惯有一个模糊的印象。 这个工具帮你统计常用焦段、常用光圈、常用 ISO 等拍摄参数,或许可以帮助更了解自己。
- 曝光三要素:ISO、光圈(f/值)、快门速度(1/Xs)
- 拍摄参数:焦段(mm)、曝光补偿(EV)、拍摄时段(凌晨/上午/下午/晚上)、镜头型号
- 相机信息:相机型号、相机品牌
- 区分 RAW 和 JPEG 文件,去重
- 支持更多图片格式(HEIC、TIFF)手机会用
- 优化拍摄时段统计(注意时区)
- 优化图表呈现效果
- 添加单文件 EXIF 输出功能
- 添加 EXIF 数据导出功能(CSV/JSON)
- 多文件夹输入支持
# 开发运行(终端文本输出)
bun run src/index.ts /path/to/photos
# 生成 HTML 图表报告
bun run src/index.ts /path/to/photos --html # => ./exif-summary.html
# 打包成独立二进制
pnpm run build
./exif-summary /path/to/photos
./exif-summary /path/to/photos --html发现 320 个图片文件
完成批次 1/4
成功处理了 318 个文件
EXIF 统计信息:
ISO 分布:
400 85
800 72
200 61
光圈分布:
f/2.8 120
f/4 98
相机型号分布:
ILCE-7M3 120
Canon EOS R5 98
生成自包含的 exif-summary.html 文件,使用 Chart.js 渲染交互式图表:
- 柱状图:ISO、光圈、快门速度、焦段、曝光补偿(按数值排序)
- 环形图:拍摄时段、镜头型号、相机型号、相机品牌(显示占比)
- 响应式布局,按分组展示
src/
├── index.ts # CLI 入口,支持 --html 参数
├── scanner.ts # 递归目录扫描
├── exif-reader.ts # 单文件 EXIF 读取
├── statistics.ts # 统计聚合
├── formatter.ts # 表格格式化输出
└── html-formatter.ts # HTML 图表报告生成