在 Codepen 複製貼上 MediaPipe 的 Face Mesh 和 Selfie Segmentation 的文件中最小範例程式碼,把相同名稱的變數改成不同名字。
參考 MediaPipe 的 Codepen 範例程式碼,加上 CSS 設定。兩種功能產出的畫面應該要重疊,目前也是有重疊,不過可惜的是,現在由後到前是
我想不出來如何讓 Selfie Segmentation 繪製的色塊去除 1 的背景,還有如何隱藏 3 的影片。所以目前的進度是只能一次顯示一種功能的效果,因為 3 和 4 會蓋掉 1 和 2。
理想的結果應該是
但是我現在做不出來。就只是因為沒學過而已。
導師傳來訊息"明天公司不補班",我回覆"收到,目前的進度是人臉網格和自拍去背只能二選一",並附上我寫的 Codepen 網頁的連結。
導師要我參考 MediaPipe 的 Codepen 範例程式碼,試試看先放預設靜態圖片,然後用 MediaPipe 的 Selfie Segmentation 功能去背。
嘗試過後回傳訊息"我把我寫的 Codepen 網頁原本讀取影片的地方改成讀取照片,不過沒有成功。"
導師問"所以是可以讀取影片嗎 現有影片 他可以去背",我說明"這個影片是指攝影機拍到的畫面",導師回覆"那可能要換個方式,或是找看看有沒有 library 有類似的範例"。
導師找到一個範例 change-background-using-body-segmentation,是用 TensorFlow 偵測攝影機畫面中的人物、去除畫面中的背景、加上靜態圖片背景,但不知道能不能結合 mediapipe 的 facemesh。
我改編上述範例,上傳到 GitLab,再回傳訊息,"因為 MediaPipe 沒辦法同時用去背和貼圖,目前嘗試用這個去背,加上之前提到過的 MindAR Threejs FaceMesh,不過還沒成功"。
下班前留言"希望會有幫助,我先下班了,謝謝",導師回覆"謝謝,辛苦了,我下禮拜來試試 有成功跟你說~"。
對所有正在做 AR/VR 的公司表示敬意。