- PhotoPrism 是 Google Photos 的开源替代方案,它利用人工智能自动整理和标记图像。
- 它至少需要 4 GB 内存的硬件,建议使用 SSD 硬盘以优化文件索引过程。
- 其部署最好使用 Docker,您可以选择使用 SQLite 数据库以实现简单部署,或者选择 MariaDB 以实现高负载部署。
我相信你肯定遇到过这种情况:某天醒来,突然发现像谷歌相册这样的大公司提供的免费存储空间已经用完了。这种存储空间不足的感觉真是让人头疼,也促使许多人寻找其他方法来释放Gmail空间,避免存储空间告罄,同时又不想每月花大价钱订阅那些似乎永远也用不完的服务。
对于那些不想依赖外部公司,而是希望完全掌控自己文件的用户来说,搭建自己的云平台是理想的解决方案。PhotoPrism 正是为此而生,它是一款强大的工具,让您可以在自己的硬件上管理照片和视频,无论是高性能服务器、VPS,甚至是小巧的树莓派,而且丝毫不影响人工智能的应用。
PhotoPrism到底是什么?它是用来做什么的?
PhotoPrism 本质上是一个用 Go 和 JavaScript (Vue) 编写的自托管应用程序,它充当高级媒体库管理器的角色。它的主要优势在于,它不仅仅是一个简单的文件查看器;它集成了Google TensorFlow来自动分析图像。这意味着程序可以自动识别照片中是否包含狗、山或汽车,而无需用户进行任何操作。
该系统主要通过相册和智能标签进行组织。相册的功能与其他平台上的相册类似,而标签则由人工智能根据颜色、物体或时间自动生成。此外,如果系统出现错误,您还可以手动更正或添加标签。
拥有自己的照片云的优势
做出这一转变的主要原因在于隐私和合规性。如果您从事图像处理工作,将第三方数据存储在外部云端可能会引发 GDPR 问题。通过将服务器放在家中或您自己的 VPS 上,您可以自行决定谁可以查看哪些内容。另一个巨大的优势是支持RAW 格式,这对于专业摄影师来说至关重要。
此外,PhotoPrism 是开源且去中心化的,确保您不会受制于任何公司的意愿。为了方便您传输文件,该程序支持WebDAV ,允许您使用 PhotoSync 等PC 到移动设备的同步工具来同步手机或平板电脑,因为它没有官方的 iOS 或 Android 应用。
技术和硬件要求
请注意,并非所有电脑都能胜任。PhotoPrism 由于其人工智能处理功能,对电脑配置要求较高。为了流畅运行,建议使用至少配备双核处理器和 4GB 内存的电脑。如果您有大量照片(数十万张),使用固态硬盘 (SSD ) 至关重要;否则,索引过程将极其缓慢且令人沮丧。
如果您决定使用 4GB 内存的树莓派 4,请记住,您将接近它的性能极限。开发者表示它可以处理最多 200.000 万个文件,但如果您的文件数量更大,最好升级到VPS 或专用服务器。此外,请务必配置交换空间,以防止系统在图像分析过程中崩溃。
分步安装指南
最简洁的安装方法是使用Docker 和 Docker Compose。如果您使用的是 Raspberry Pi,那么安装 UbuntuDockerPi 是一个非常方便的选择,它预装了 Docker,可以节省您的时间。
一般流程包括创建项目目录并配置docker-compose.yml文件。该文件用于定义关键变量,例如管理员用户名、密码和站点 URL。数据库方面,您有两种选择:SQLite,它设置非常快捷,非常适合家庭用户;或者MariaDB/PostgreSQL,如果您有数百万张照片并且追求卓越的性能,则推荐使用它们。
部署和配置示例
YAML 文件准备好后,只需运行该命令即可。 docker compose up -d稍等片刻,您即可通过以下方式访问它: 端口2342 来自您的浏览器。默认数据通常是用户数据。 管理员 和密码 不安全 o 光棱镜,具体取决于您的配置方式。
要使系统开始识别您的图像,您必须执行以下指令: 索引 (docker-compose exec photoprism photoprism index此过程会激活人工智能来分析每个文件并自动创建标签。如果您想更新应用程序,只需执行以下操作: 提取最新图像 然后重启容器。
系统管理和维护
进入应用后,你会发现一个非常直观的界面。高级搜索功能简直太棒了,你可以按摄像头、颜色、日期或地理位置进行筛选。侧边栏可以用来浏览日历、精彩瞬间或通过面部识别功能找到的人物。
但并非一切都尽如人意;搭建自己的云平台责任重大。您是系统管理员,这意味着您要负责备份。硬盘故障导致毕生珍藏的照片丢失,无疑是一场悲剧,但只要配备一套优质的NAS存储系统或外置硬盘,并制定备份计划,就能避免这种情况的发生。此外,您还需要管理用户权限,并定期更新服务器,以防止安全漏洞。
使用由人工智能驱动的开源工具来管理您的视觉遗产,是一种可行且强大的商业服务替代方案,前提是您愿意承担数据的技术管理和安全责任,以防止意外丢失。