? ? ? ?相對于其他的相冊管理軟件,Immich的智能搜索和人臉識別功能是其優勢,通過應用機器學習模型,其智能搜索和人臉識別功能更為先進。
一、大模型的下載與安裝
? ? ? ?網上有大佬提供了相關大模型的下載:https://url22.ctfile.com/d/58003522-62058436-b932de?p=4215
?? ? ? ?其中Roberta-Large-Vit-B-16Plus.zip是中文搜索要用的大模型,buffalo_l.zip是人臉橫測的大模型。ViT-B-32__openai.zip好像是提取中文地址用的,好像不用也行,不知是不是新版immich已經自動支持中文地圖和中文地址了。
? ? ? ?搜索模型也有較多版本,這個比較大,近5G,下載太慢,我先在網上找了個2.24G的,人臉檢測模型也有很多,這只是其中一種,究竟那個效果要好一些,可能要自己試試才知道。下載后要上傳到相應文件夾中。我是在/volume1/docker/immich下建了個model-cache文件夾,文件結構如下:
注意下載的文件要解壓縮,子目錄參考如下(也許不同版本有不同的目錄結構,我的人臉檢測還下載有另一個模型antelopev2):
? ? ? ?注意:各個模型上傳好后,要把immich停用,然后再重建,也許模型才生效。
二、人臉識別及元數據的提取
? ? ? ? 打開immich:用你NAS的IP加端口號如192.168.1.100:2283,打開immich客戶端,登錄后在右邊的帳戶各下點擊系統管理,進入任務界面。
? ? ? ?運行人臉檢測,對帳戶中的照片進行人臉檢測,完成后再根據人臉進行分組。如果照片比較多,這個過程會比較長。
? ? ? ?點擊左上角,回到照片界面,點擊下面的探索,可以看到人物、地點等,說明人臉檢測、人臉識別成功。如對人臉頭像不滿意,還可以更換頭像。
? ? ? ? ? 而地點的出現,說明提取元數據也完成了。
? ? ? ?? ? ?人臉檢測設置比較簡單,只需在任務設置里選擇好模型就好。
三、智能搜索的設置
? ? ? ? 智能搜索的設置就要復雜的多,我是設置后又花了太長時間運行,然后用文字一搜索,竟然沒有成功。后來反思,應是以前用的模型有問題,而我也沒找到大模型加載成功與否的判斷方法,白白在大夏天讓電腦在高溫下運行了N長的時間。某種程度來說,這才是我寫這篇文章的初衷和動力,希望和我一樣的菜鳥少走一些彎路。
? ? ? ? 首先要在任務設置中打開智能搜索,并將默認的不支持中文的模型替換成現在的模型XLM-Roberta-Large-Vit-B-16Plus。
? ? ? ?其次,還要修改配置文件docker-compose.yml。
? ? ? ? ?將 - model-cache:/cache改為? ?- ./model-cache:/cache。大致意思是將當前目錄(immich)下的?model-cache目錄映射為cache目錄(可能在運行人臉識別前就應修改此處)。同樣保存后要重新構建immich?項目。
? ? ? ?重新構建項目后,模型XLM-Roberta-Large-Vit-B-16Plus究竟有沒正確加載呢?有的網文說要看immich_machine_learning的日志中是否有load?XLM-Roberta-Large-Vit-B-16Plus之類。? ? ? ?
? ? ? ? 剛才有又重新查看了日志,應該是說明加載成功了:
? ? ? ??但我重新下載模型并重啟immich項目時等了好長時間,一直沒有任何關于?XLM-Roberta-Large-Vit-B-16Plus的提示:
? ? ? ? 為了判斷模型加載是否成功,我就在探索中輸入中文內容搜索,同時打開終端機,終于發現了我所想要的內容。同時搜索結果也出來了:
? ? ? ? 雖然智能搜索還沒有運行完成,所以相關數據庫還沒有建立,這些搜索應是實時搜索,但結果還是很快,準確度也還行。也許數據庫建立后,中文搜索會更迅速更準確吧。這才是我們花大量時間部署immich的初衷。