源代码可用,禁止商业使用。 本项目采用 PolyForm Noncommercial 1.0.0,允许个人学习、研究、实验和其他非商业用途。由于许可证限制商业使用,本项目不是 OSI 定义下的开源软件。
- 自定义扫描方案:提供快速、摄影和完整预设,也可保存多个自定义方案,分别配置图片格式、RAW、排除规则、隐藏项目、符号链接和精确重复文件策略。
- 扫描前预览:应用方案前查看候选照片、格式分布、排除目录、跳过项目和访问错误统计。
- 本地照片索引:支持 JPG、JPEG、PNG、HEIC、HEIF、TIFF、WebP 与常见 RAW 格式,不上传照片文件。
- 增量更新:持久化文件指纹、EXIF 和地址缓存,只重新分析新增或变更的照片。
- 照片浏览:随机轮播、瀑布流、文件树、收藏和智能相册。
- EXIF 数据表:浏览、筛选并导出 28 列照片元数据。
- 深度分析:时间节奏、器材组合、曝光参数、焦段分布、画幅构图、相关性和非参数统计。
- 地理分析:照片聚类、密度图、省市分布、经纬度范围、海拔和拍摄行程。
- 报告导出:导出 CSV、JSON、PDF 和可交互 HTML 分析报告。
- 双语与外观:简体中文/英文,以及跟随系统、浅色和深色模式。
以上示例依据 Photo Insight 的真实分析数据绘制为 SVG,可无损缩放;使用项目内置的中国旅行摄影模拟数据。
在项目官网了解功能和使用方式;当前 v1.1.1 通过 GitHub Releases 提供 Universal macOS 安装包,已使用 Developer ID 签名、启用 Hardened Runtime,并通过 Apple 公证及附加公证票据。
- 系统要求:macOS 13 Ventura 或更高版本
- 处理器:Apple Silicon 或 Intel
- 网络:基础分析可离线使用;地址解析和在线地图需要联网
下载 ZIP 后解压并将 Photo Insight 移入“应用程序”文件夹即可运行。首次启动时 macOS 可能提示应用来自互联网,请确认打开;无需关闭 Gatekeeper 或修改系统安全策略。
需要完整安装 Xcode,并在 Xcode 设置中选择 Command Line Tools。
git clone https://github.com/SamsonRuan/Photo-Insight.git
cd Photo-Insight
./script/build_and_run.sh运行测试:
swift test --disable-sandbox构建本机架构的 .app:
./scripts/build-app.sh构建 Apple Silicon + Intel 通用发布包:
./scripts/package-release.sh未提供 Developer ID 时生成的是临时签名构建,仅适合本地测试。正式发布流程见 发布指南。
- 打开 Photo Insight,在设置菜单中选择照片根目录。
- 选择快速、摄影或完整扫描预设;需要时建立并预览自己的扫描方案。
- 点击“更新照片”建立本地索引。
- 使用首页、文件树、EXIF 表格和数据分析页面查看照片。
- 根据器材、时间、地点、曝光或构图条件建立智能相册。
- 在分析页面导出数据或完整报告。
照片和索引默认保存在用户的 Mac 上,项目不包含账号系统、广告或分析 SDK。使用 GPS 地址解析、OpenFreeMap 或 OpenStreetMap 地图时,相关网络服务会收到完成请求所必需的数据和网络信息。完整说明见 隐私政策。
Photo-Insight/
├── Sources/
│ └── PhotoExifLab/ # SwiftUI 应用源码
├── Tests/
│ └── PhotoExifLabTests/ # 自动化测试
├── AppResources/
│ ├── Data/ # 内置模拟数据
│ ├── InteractiveReport/ # 交互式报告资源
│ └── WebMap/ # 地图运行时与地理数据
├── docs/
│ └── assets/ # GitHub Pages 与图片资源
├── scripts/ # 构建、打包和发布检查
├── script/
│ └── build_and_run.sh # 本地构建与启动入口
├── .github/
│ ├── workflows/ # CI 与 Pages 工作流
│ └── ISSUE_TEMPLATE/ # Issue 模板
├── Package.swift # Swift Package 配置
├── LICENSE.md # 非商业许可证
└── README.md
欢迎提交错误报告、功能建议、文档改进和非商业用途的代码贡献。开始之前请阅读 贡献指南 和 行为准则。安全问题请按照 安全政策 私下报告。
Photo Insight 采用 PolyForm Noncommercial License 1.0.0。个人学习、研究、实验和其他非商业用途可以使用、修改和分发;商业用途需要另行取得书面授权。
第三方组件和地图数据各自适用其原始许可证,详见 第三方声明。