[心得] 自架PhotoPrism 替代Google相簿

行動通訊

55510

Google相簿取消無限容量後,就一直在找替代方案。不只是因為無限容量沒了,還傳出各
種掃描違法圖片就砍帳的新聞,曾試過有點對點加密的MEGA,但相簿功能普普,想來想去
還是自架較好。

那麼就是買NAS了吧?非也,我想先利用現有的電腦。將相片儲存在硬碟,配合像Google
相簿自動分類照片、臉孔辨識、AI上標籤的軟體。

那就是使用Docker跑PhotoPrism。PhotoPrism是開源免費的相簿軟體,大致能還原
Google相簿的七八成功能。

https://i.imgur.com/dSYYDZz.png


雖說是開源軟體,但某些進階功能要donate才會告訴你如何開啟,否則開發團隊會跟你
說...
https://i.imgur.com/IC8Ekjd.png


但一般版就夠用了。

那Docker是什麼呢。Docker是跨平台的容器技術,能用來跑各種伺服器服務,
Linux/Windows/MacOS都能架。而PhotoPrism主要用網頁端看相片,手機電腦皆可。

Linux電腦架設PhotoPrism過程:https://reurl.cc/DXjnA5


1. 主要功能

先來看看PhotoPrism主要功能,主頁面就跟Google相簿一樣總覽全部相片,版面會隨螢幕
大小自動適應,所以手機用起來也很流暢。
https://i.imgur.com/vNghkLJ.jpg


習慣用硬碟資料夾管理相片的,PhotoPrism亦支援以資料夾模式查看相片。
https://i.imgur.com/PHdAYgK.jpg


有紀載位置的相片,會顯示在地圖上。(更精美的地圖要donate才有QQ)
https://i.imgur.com/65QUKVJ.png


AI分類不可能像Google一樣精準,有時要自行給圖片加tag。
https://i.imgur.com/JUgapWZ.jpg


人臉辨識準確率一般般。辨識出後自行加上人名。
https://i.imgur.com/3dZJr37.png


跟Nextcloud比起來,PhotoPrism就是專精在相片分類業務上。使用Tensorflow進行AI演
算,理論上能自行訓練模型。

至於影片,PhotoPrism會將影片轉檔成較小的格式加快播放,但播放器很陽春。串流影片
還是交給"Jellyfin"吧!播起來比較流暢,串流時還能調畫質。


2. 上傳與備份相片的方式?

PhotoPrism支援以下二種方法新增相片:

1. 從硬碟新增,再讓PhotoPrism掃描變更
https://i.imgur.com/U7MYKRC.png


2. 從網頁端上傳
https://i.imgur.com/WknF0Su.png


要了解這二個方法的利弊,就要知道PhotoPrism的運作原理。假設硬碟有個資料夾叫做
Pictures,我們將它掛載到PhotoPrism容器的originals(這是處理相片的主目錄),
PhotoPrism就會開始處理,將相片轉檔成較小的格式寫入資料庫,變成網頁端看到的模樣
,但不會修改硬碟中的原始相片。

https://i.imgur.com/yIqxidC.jpg


所以將相片放到硬碟可保有資料夾的分類模式,同時又能讓PhotoPrism全部掃描,豈不美
哉?

注意:PhotoPrism的「相簿」功能跟資料夾是不一樣的,相簿只有PhotoPrism網頁看得到
,而資料夾會維持硬碟上顯示的樣子。

那如果從網頁端上傳呢?PhotoPrism一律會放到originals資料夾,以拍攝日期建立資料
夾。例如foo.jpg是11/1拍攝的,它就會在originals資料夾建立「11」、「01」的資料夾
,再把相片檔案放進去。檔案總管能馬上在硬碟看到檔案。

由此可見,習慣用資料夾分類相片的人,還是採用方法一新增相片較好。你可以手動把檔
案傳到電腦,或是Syncthing這類軟體自動無線同步相片,板上有教學這裡就不贅述。

https://syncthing.net/

從PhotoPrism網頁端刪除相片,硬碟上的檔案也會刪除,反之亦然。


3. 如何從外部網路存取?

類似NAS的情況,從外部網路存取家中電腦有二種方法:

1. 通訊埠轉發+DDNS

2. ZeroTier內網穿透

使用Zerotier就不用去調整路由器,只要在手機和電腦開VPN連上ZeroTier網路就行了,
開防火牆開9993 UDP通訊埠做P2P速度更快。

在設定好ZeroTier後,就能用"虛擬電腦區域IP:2342"的網址開啟PhotoPrism頁面


至於安全性問題,謹記設定防火牆規則,關閉UPNP,使用強密碼等等。


4. 如何分享相片?

PhotoPrism分享相片的時候是使用「原始畫質」的相片。

PhtoPrism網頁端可直接下載相片,選取多個會變成壓縮檔。
https://i.imgur.com/sxZTbkO.png


分享相簿則是會產生一條連結。但要注意一點,別人要有你的IP或域名才能存取
PhotoPrism的網址;用ZeroTier的話還得把對方加入ZeroTier網路才行。
https://i.imgur.com/uY29rVV.png


PhotoPrism尚提供用WebDAV上傳的功能,類似SMB共享資料夾那樣,讓別人直接存取
originals資料夾內容。
https://i.imgur.com/SHO8jGa.png



5. 結論

畢竟是私有雲端,PhotoPrism自用還美賣,跟別人共用就複雜點。

除PhotoPrism外還有很多功能更強的自架相簿服務,像Damselfly、Piwigo、LibrePhotos
等等,按照需求自行選擇。

--
我一定是太閒才會發這種廢文。
https://i.imgur.com/kRCHaaH.png


--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.87.83 (臺灣)※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1669530054.A.070.html
yys3101樓wow 抓地點跟人的功能都有嗎? 感覺太強了 11/27 14:25
pterion2樓推分享 11/27 14:45
Sarasto3樓大大你家IP需要碼嗎 還是那個是假的 11/27 14:49
那是ZeroTier給的虛擬區域IP
harry8869014樓我自己方式是租一個vps架設proxy再用nextcloud連上去 11/27 15:07
harry8869015樓IP又不是公網IP你也要加到他vpn裡面才能連 11/27 15:08
fujisawa6樓ZeroTier大多數環境不筆轉發埠也能建P2P tunnel吧 11/27 15:25
對,只要開電腦防火牆就夠了,所以才說比通訊埠轉發方便。
Ereinion98957樓大推 11/27 15:46
tennyleaz8樓搭配Cloudflare tunnel可以不需要公網IP 11/27 16:09
tennyleaz9樓或是VPN就可以外部存取 11/27 16:09
lkj12tw10樓推教學分享 11/27 16:15
vip12578537311樓 11/27 16:45
siegfriedlin12樓太神了 感謝您 11/27 17:10
MK4713樓感謝分享 看起來不錯用 11/27 17:17
romber14樓感謝好文 11/27 17:24
xylophone13515樓推一下 雖然我用S家內建的 11/27 17:32
hollen916樓如果和群輝內建的人臉辨識比 有比較準確嗎 11/27 17:36
Two417樓推~ 11/27 17:36
dowbane18樓讚讚推 11/27 17:39
yasamnoya19樓 11/27 18:14
jyunwei20樓讚讚的 11/27 18:28
xgpwh21樓翠 危! XD 11/27 18:31
jasonaz22樓群輝的人臉很弱吧 11/27 19:08
blackguitar23樓推好文 11/27 19:55
joeboy24樓用docker建,看來簡單多了 11/27 20:16
watched25樓很用心給推 11/27 20:22
chenyuassa26樓 11/27 20:29
ja88121327樓用心推 11/27 20:34
JonDoe29728樓 11/27 20:51
ShibaTatsuya29樓推教學分享 這篇優文 11/27 20:58
nigelm8030樓推推 11/27 21:41
更多心得
[心得] vivo V25簡單入手心得
[心得] 2019台星599雙11方案續約留客149方案
[心得] 價值觀扭曲了,MagSafe真香
[心得] 台哥大688慰留方案
[心得] Zenfone 9 X Beams 包包到貨
[心得] 拍照測試 王者i14pm降臨。 s22u x70p+
[心得] realme GT NEO 3T簡單心得
[心得] 中華488吃到飽續約成功