Select Page
Rope:您的一鍵換臉AI新工具選擇(千萬別拿去做壞事)

Rope:您的一鍵換臉AI新工具選擇(千萬別拿去做壞事)

Rope以其令人矚目的功能,站在了這場技術革新的前沿。這款AI工具不僅能夠輕鬆去除臉部遮擋,更整合了多種高清化算法,讓處理速度快如閃電。然而,在介紹如何安裝和使用Rope之前,我們必須提醒每一位用戶:這項強大的技術應當用於正當的創造和學術研究,千萬別拿去做壞事。現在,讓我們詳細了解如何在您的本地設備上安裝並運行Rope。

安裝必要軟體

在開始使用Rope之前,需要先安裝一些必要的軟體:

  1. 安裝Python
  2. 安裝FFmpeg
    • FFmpeg是處理影片不可或缺的組件,可以通過命令行進行安裝,或是參考我之前的ffmpeg教學
  3. Nvidia顯卡安裝CUDA
    • 為了充分發揮Rope的性能,Nvidia顯卡用戶應安裝CUDA 11.8,這對於AI運算至關重要。

安裝Rope

安裝了必要的軟體後,便可以開始安裝Rope:

  1. 下載Rope壓縮包
  2. 安装visual studio 2022
  3. 創建虛擬環境
    • 使用Python建立一個新的虛擬環境,這有助於管理依賴包和版本。
    • python -m venv venv
  4. 啟動虛擬環境
    • 透過命令行啟動虛擬環境,準備安裝Rope。
    • call venv\scripts\activate.bat
  5. 安裝依賴包
    • 在虛擬環境中,使用pip指令安裝Rope需要的所有依賴包。
    • pip install -r requirements.txt
    • 如果安裝失敗,要先執行下面的指令
    • pip install –no-cache-dir -r requirements.txt
    • pip uninstall onnxruntime onnxruntime-gpu
    • pip install onnxruntime-gpu==1.15.0
  6. 下載換臉模型

透過這些步驟,您可以在本地機器上成功安裝和配置Rope,並開始進行高效的臉部轉換。隨著AI技術的快速發展,Rope提供了一個既方便又強大的工具,使創意和創新更加無限。

操作指南:如何使用Rope進行批量換臉

請先確認安裝 Rope 已經成功,接著,遵循以下步驟來執行Rope的批量換臉功能:

  1. 打開命令提示字元
    • 輸入cmd並運行,以打開命令窗口。
  2. 進入Rope的本地根目錄
    • 使用cd命令切換到存放Rope應用程式的目錄。
  3. 激活虛擬環境
    • 通過執行call venv\Scripts\activate.bat指令來激活Rope的Python虛擬環境。
  4. 運行Rope主程式
    • 使用python run.py --execution-provider cuda指令,開始執行批量換臉處理。

自定義選項:提升處理質量與效率

Rope提供多個可選參數來滿足用戶的特定需求:

  • 面部增強
    • 加入face_enhancer選項,可以對換臉後的面部進行增強處理,使其更加清晰細緻。
    • python run.py –execution-provider cuda face_enhancer
  • 調整輸出視頻質量
    • 使用--video-quality選項並指定一個0到50的數值(數值越小,輸出質量越高)。
    • python run.py –execution-provider cuda –video-quality 1
  • 指定內存使用
    • 若需要管理程序的內存使用,可透過--max-memory選項設定最大內存限制。
    • python run.py –execution-provider cuda –max-memory 16
  • 指定執行線程
    • 對於較老的Nvidia顯卡,可使用--execution-threads來指定執行線程數,以達到最佳運行效能。
    • python run.py –execution-provider cuda –execution-threads 2
    • 預設是4

使用方法可以看YT

Rope又一款强大的一键换脸AI!可消除脸部遮挡,多种高清化算法,飞一般的处理速度!本地安装与参数使用详解。 – YouTube

解除roop检测深度换脸 – YouTubehttps://www.youtube.com/watch?v=YH4hB3wmRcQ

roop新奇用法:一键直播换脸、批量换图 – YouTube

Rope 分支

https://github.com/Hillobar/Rope/

https://github.com/s0md3v/sd-webui-roop

DeepBrian AI – 養一個你自己的虛擬網紅

DeepBrian AI – 養一個你自己的虛擬網紅

一家很有趣的南韓AI公司,秉持著南韓娛樂產業的基底,在北京、加州以及東京都設有分公司,專注再利用AI解決虛擬真人溝通的解決方案,我想有別於日本的二次元文化,南韓更專注於解決真實偶像翅膀硬了就會飛的問題,我想這會是公司的一個大痛點,常常董事會中的討論是為何我要花大錢捧一個人?我想這會是解方。

DeepBrian AI 官網

https://www.deepbrainai.io/

官網有三個主要的解決方案

  • AI Human
  • AI Studios
  • AI Kiosk

AI Human – 從建立自己的偶像開始

https://www.deepbrainai.io/product/ai-human

可以把多個虛擬人放於你的教育、Youtube、FB上,自由使用

AI Studio – 輸入文字就可以讓虛擬主播替你代言

https://www.deepbrainai.io/product/ai-studios

可以試用看看,https://aistudios.com/demo,目前預設都是南韓人的臉

AI Studio 的收費方式

AI Kiosk – 把虛擬人放到自助機器中

https://www.deepbrainai.io/product/ai-kiosk

Google Teachable Machine 無程式碼建立 AI 模型

Google Teachable Machine 無程式碼建立 AI 模型

還記得 2013 年,我用圖形演算法寫了一個跟電視裡面的 Show Girl 玩剪刀、石頭、布,贏的就拿到 Candy ,是真的會從螢幕後面跑出一粒糖果的那種遊戲,靈感來源自於 Candy Crush ,只是我的是真實版本,不能線上玩得,2013 年寫這樣的軟體應該是很厲害的那種,2022 年居然不需要再寫程式碼就可以自己訓練模型,只要在短短的程式碼去呼叫就可以使用它了,What!

2013年版本的圖形辨識手部完玩剪刀、石頭、布

來看看年輕版本的我

Teachable Machine 介紹

  • Images,圖像分類器,https://medium.com/@warronbebster/4bfffa765866
  • Sounds,聲音分類器,https://medium.com/@warronbebster/4212fd7f3555
  • Poses,人體的姿勢分辨器,https://medium.com/@warronbebster/f4f6116f491

Teachable Machine Images

Images 可以很快速且簡易的製作圖像分類器,比起 Microsoft Azure Custom vision 要來的簡單些,但功能要來的少一些,最大的好處是支援 tensorflow 以及 https://www.tensorflow.org/js,這樣可以很快速且方便的讓我把模型放在 Edge 端。

Teachable Machine Sounds

聲音分類器比較難懂,可以看看強者學弟林智源它們公司的產品,簡單的說明,他是可以讓記者在訪問火箭升空的現場時,還可以分離人聲以及火箭的噪音的服務,如果你也想要自行訓練模型的話,就是要用到這個功能了。

迪威智能,https://dwave.cc/

Teachable Machine Poses

一個跟 Processing 、 Kinect 、 OpenNI 類似功能的應用服務,回想在 2011 年拿下微軟的 kinect for windows 第一屆的無限可能獎,說起會拿這個獎也很意外,那天比賽時後其實只取前三名,我在等到第一名公布後都沒有自己的名字後,突然間評審說還有一個跟第一名實在無法區分的獎項,是由評審們討論出來要加開的,叫做無限可能獎,才又找我原本失落的心,不枉費我前一天沒睡覺在開發這套看電子結婚照,還可以虛空把照片抓到自己手機的軟體。

我在 2:19 秒,Motion Welcome
Kinect MotionWelcome Demo

Teachable Machine 的輸出

這是最關鍵的一環,可以輸出各種模型給各種市面上的終端設備使用,Android、Coral、Raspberry Pi、Intel Vino等,這也是我覺得最強大的部分,也是最能說服我採用 Teachable Machine 的功能

Teachable Machine 應用

Teachable Machine 官網

https://teachablemachine.withgoogle.com/

寫在最後,下一次要示範一下如何在 raspberry pi 中,如果大家有想看的題目可以留言給我

用 Raspberry Pi 4 + OpenCV 4 做個人臉辨識放在辦公室打卡吧

辦公室打卡到底要用甚麼方法最好,是員工卡嗎?還是手機APP定位?還是用打卡鐘?在2020年之後一定是跟你說生物辨識最好,因為又有疫情影響,大家最愛的是「人臉辨識」系統,非接觸,難造假,順便量體溫,噴個酒精,一切都這麼美好,但是只有千金難買好系統,一套好用的人臉辨識系統加上網動輒1萬元台幣,這時工程師的我們一定要自己DIY來一個「人臉辨識」打卡下。

Raspberry Pi 4 的 OpenCV 4 準備

採用 opencv_facerecognition 解決方案

https://github.com/mickey9801/opencv_facerecognition

首先安裝相關的依賴以及DB

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install python3-opencv python3-picamera python3-numpy python3-pil
sudo apt-get install sqlitebrowser

下載 opencv_facerecognition,並且解開壓縮

cd ~
wget https://github.com/mickey9801/opencv_facerecognition/archive/refs/heads/master.zip
unzip master
cd opencv_facerecognition-master/

設定環境人臉辨識的資料以及環境

等等會用到 haarcascade_frontalface_default.xml ,不要用 OpenCV 3版本的,要用之前安裝的版本,我將路徑放在下方

# 複製 xml 
cp ~/opencv/data/haarcascades/haarcascade_frontalface_default.xml ~/opencv_facerecognition-master/haarcascade_frontalface_default.xml
# 設定環境
python3 setup.py

擷取人臉用來訓練圖像

如果你是用 usb webcam 可以執行 recordface_webcam.py ,如果是用 PiCam 就用 python3 recordface_picam.py,此時會先問你的名字,提供完名字後,會開啟相機,當相機偵測到人臉時候,按下 「f」 鍵,就會開始抓取 30 張人像,放在 dataset 下

python3 recordface_webcam.py # for using webcam
python3 recordface_picam.py # for using PiCam v2

訓練人臉的圖像

在我們的系統中 OpenCV4,要修改 trainer.py 中的程式碼以符合現況

nano trainer.py

找到 recognizer = cv2.face.createLBPHFaceRecognizer() 把它改成 recognizer = cv2.face.LBPHFaceRecognizer_create()

#recognizer = cv2.face.createLBPHFaceRecognizer() # or 
recognizer = cv2.face.LBPHFaceRecognizer_create()

開始訓練,訓練完畢後會在目錄中取得一個 recognizer 目錄,裡面存放訓練後的資料

python3 trainer.py

開始辨識人臉

有了訓練資料後,就可以開始測試準度了,開始前記得也要改一下程式碼,符合現況

nano detector_picam.py

找到 Setup LBPH recognizer for face recognition,更改成下面的程式碼

# Setup LBPH recognizer for face recognition
#recognizer = cv2.face.createLBPHFaceRecognizer() # or LBPHFaceRecognizer_create()
recognizer = cv2.face.LBPHFaceRecognizer_create()

# Load training data
#recognizer.load(fname) # change to read() for LBPHFaceRecognizer_create()
recognizer.read(fname)

存檔後執行 detector_picam.py,就可以在辦公室打卡了

python3 detector_webcam.py # for using webcam
python3 detector_picam.py # for using PiCam v2

未來,再補影片~~相信OpenCV的安裝一定很多困難,只能說關關難關關過~~