Select Page

利用 Blender 合成3D模型

在做產品的時候,常常會有需要將現在的3D模型融合在一個實際照片中,通常這張照片是一個實際的場景,當然現在多數人用AI的方法合成,但AI需要嘗試多次,並且不可控,真的要實現完美的場景還是需要3D繪圖軟體,如Blender的介入才行

  1. fSpy 找出透視圖的xyz
  2. 利用現有 HDRI 找出正確的環境光源
  3. 為了物體打上光源
  4. 設計出3D物件的地板反射和陰影
  5. 利用算圖以及合成的小技巧,算出完美的圖像

參考資料以及資源下載

fSpy

Poly Haven

HDRIs • Poly Haven

手把手教你如何用Blender合成3D模型與照片! (youtube.com)

Luxgen n7 語音指令大全

這裡整理了自己試過可以使用的語音指令,當然一定還有很多指令我沒試出來,有試過的可以分享給我,我也會陸續增刪

音樂相關

  • 播放藍芽音樂
  • 暫停音樂
  • 停止播放
  • 停掉音樂
  • 上一首歌
  • 下一首歌
  • 切換音樂來源成USB
  • 切換音樂來源
  • 打開廣播
  • 啟動廣播
  • 調到FM91.7
  • 上一個頻道
  • 上一個電台
  • 切換下一個電台
  • 播放下一個電台
  • 暫停收音機
  • 播放收音機
  • 把電台加入我的收藏
  • 把電台從我的收藏裡刪除
  • 從收藏中移除電台
  • 降低音量
  • 音量調高
  • 音量靜音
  • 取消靜音

導航指令

  • 開啟導航
  • 退出導航
  • 回到首頁
  • 回到主菜單

系統控制類型

  • 打開藍芽
  • 關閉藍芽
  • 增加螢幕亮度
  • 設定螢幕亮度為最高
  • 降低螢幕亮度
  • 開啟頭燈
  • 關上大燈
  • 打開360度攝像機
  • 關閉360度攝像頭

門窗控制

  • 打開窗戶
  • 窗戶開一半
  • 關閉窗戶
  • 車窗開四分之一
  • 開一點車窗
  • 解鎖車門
  • 解鎖後門
  • 鎖上車門
  • 鎖上後面的門

詢問資訊

  • 剩餘里程?
  • 電池還有多少電?
  • 胎壓是多少?
  • 我能開多遠?
  • 現在幾點?
  • 今天幾號?
  • 我的駕駛模式是?

通訊方法

  • 打電話
  • 我要打電話
  • 顯示通訊
  • 最近的通話紀錄

空調控制

  • 打開冷氣
  • 冷氣調到25度
  • 關閉冷氣
  • 加大冷氣的風量
  • 減少冷氣的風量
  • 冷氣風量設置為5

TURING 用 Stable Diffusion 畫 EV 概念車 – 雨 (rain.tips)

賽局理論-分餅邏輯

從前,有一個村莊裡住著兩位餅師傅,A師傅和B師傅。他們的手藝都十分高超,但各有所長。A師傅能夠獨自一人創造出1等分的餅,而B師傅則能夠獨自一人創造出2等分的餅。他們發現,如果合作,則能創造出9等分的餅。

Barry Nalebuff | Split The Pie: A Radical New Way to Negotiate | Talks at Google (youtube.com)

有一天,村長請他們來製作一個9等分的餅,並要求他們公平地分配這個餅。A師傅和B師傅開始思考,如何分配才是公平的。

首先,他們考慮各自的貢獻。A師傅獨自可以製作1等分的餅,而B師傅可以製作2等分的餅。這意味著,A師傅的能力是B師傅的1/2,B師傅的能力是A師傅的2倍。

但如果他們合作,能夠製作9等分的餅,那麼在沒有合作的情況下,他們可以製作的餅總數是1 + 2 = 3等分。因此,合作所創造的額外價值是9 – 3 = 6等分。

為了公平分配,他們決定根據各自的貢獻來分配這6等分的額外價值。

一般人覺得

A師傅的貢獻是1等分,佔總貢獻的1/3,而B師傅的貢獻是2等分,佔總貢獻的2/3。因此,A師傅應該得到這6等分中的1/3,而B師傅應該得到2/3。

這樣,A師傅應該得到2等分(即6 * 1/3),B師傅應該得到4等分(即6 * 2/3)。加上各自本來能製作的餅,A師傅總共應該得到1 + 2 = 3等分,B師傅總共應該得到2 + 4 = 6等分。

會談判的新創

會談判的新創,應該要分平兩者合作帶來的6等分,也就是A師傅應該要拿 1+ 3 = 4等分,B師傅應該要拿 2+3 = 5等分。這樣的分配考慮了各自的能力,也體現了合作的價值,雙方都感到非常滿意。

用台幣一百元創業?別讓一百元限制了你的想像! – 雨 (rain.tips)

Hallo AI:讓照片動起來,結合語音技術的革命性數字人類

Hallo AI:讓照片動起來,結合語音技術的革命性數字人類


Fusion Lab 又有新款力作,Hallo AI 可以讓用戶僅需提供一張照片和一段語音,就能讓照片中的人物進行說話、唱歌甚至進行動作,為數字內容創作帶來了革命性的突破。

hallo framework

主要功能介紹:

  • 語音動畫同步:用戶只需上傳一張照片及一段WAV格式的英語語音,Hallo AI就能使照片中的人物按語音內容進行動作,包括說話和唱歌。
  • 動作自然流暢:結合精確的面部識別和動作捕捉技術,保證人物動作的自然流暢,令人印象深刻。

技術框架:

  • 音頻處理:使用Kim_Vocal_2 MDX-Net的vocal removal模型分離語音。
  • 面部分析:透過insightface進行2D和3D的臉部分析。
  • 面部標記:利用mediapipe的面部檢測和mesh模型進行精確標記。
  • 動作模組:AnimateDiff的動作模組為動作生成提供支持。
  • 影像生成:StableDiffusion V1.5和sd-vae-ft-mse模型協同工作,用於生成和調整圖像細節。
  • 聲音向量化:Facebook的wav2vec模型將WAV音頻轉換為向量數據。

安裝方法

盡量採用 Linux 平台,我這邊測試成功的有 Ubuntu 20 WSL 版本,就可以簡單三個步驟,部過前提要記得先安裝好 WSL CUDA 支援

1.建立虛擬環境

  conda create -n hallo python=3.10
  conda activate hallo

2.安裝相關的依賴

  pip install -r requirements.txt
  pip install .

3.要有 ffmpeg 支援

  apt-get install ffmpeg

4.測試與驗證

python scripts/inference.py --source_image examples/reference_images/1.jpg --driving_audio examples/driving_audios/1.wav

最近更新:

  • 在🤗Huggingface空間克隆了一個Gradio演示。
  • 新增Windows版本、ComfyUI界面、WebUI和Docker模板。

參考資料

Hallo GitHub

Hallo Model

大神開發的Windows介面

Hallo 線上版本

Hallo Docker版

影片跳舞合成

資料庫-每日自動備份-Ubuntu-MariaDB

今天來實做一個備份任務,要在 Ubuntu 上設定每日凌晨 4:00 自動備份 MariaDB 中的所有資料庫,我們可以使用 cron 和一個自定義的 Shell 腳本來完成這個任務,以下是詳細步驟和代碼:

步驟 1:創建備份腳本

先創建一個備份 Shell Script,這個腳本將備份所有資料庫並分開儲存。

1.在 /usr/local/bin 目錄下創建一個新的 Shell 腳本:

    sudo nano /usr/local/bin/backup_mariadb.sh

    2. Script 的內容指令如下

    #!/bin/bash
    
    # 設定資料庫的用戶名和密碼
    DB_USER="your_db_user"
    DB_PASSWORD="your_db_password"
    DB_HOST="10.0.0.1"
    
    # 設定備份儲存目錄
    BACKUP_DIR="/path/to/backup/dir"
    mkdir -p $BACKUP_DIR
    
    # 獲取當前日期和時間
    CURRENT_DATE=$(date +%Y-%m-%d-%H-%M-%S)
    
    # 獲取所有資料庫名稱
    DATABASES=$(mysql -h$DB_HOST -u$DB_USER -p$DB_PASSWORD -e "SHOW DATABASES;" | tr -d "| " | grep -v Database)
    
    # 備份每個資料庫
    for DB in $DATABASES; do
      if [[ "$DB" != "information_schema" && "$DB" != "performance_schema" && "$DB" != "mysql" && "$DB" != "sys" ]]; then
        BACKUP_FILE="$BACKUP_DIR/$CURRENT_DATE-$DB.sql"
        mysqldump  -h$DB_HOST -u$DB_USER -p$DB_PASSWORD --databases $DB > $BACKUP_FILE
      fi
    done

    其中要修改的有

    • DB_HOST : 要改成自己的
    • your_db_user : 資料庫中有備份權限的使用者 ID
    • your_db_password : 密碼
    • BACKUP_DIR=”/path/to/backup/dir” : 要改成你要存放的路徑,像是 /var/backup_db/

    3.將 .sh 變成可執行擋

    sudo chmod +x /usr/local/bin/backup_mariadb.sh

    步驟 2:設置 Cron 任務

    1.打開 cron

    crontab -e

    2.加入設定內容,要注意的是實間是主機時間,通常主機是 UTC+0 的時區,要注意轉換,才會是正確的當地時間,可以參考這篇

    0 4 * * * /usr/local/bin/backup_mariadb.sh

    這樣就會在每天的早上四點去備份資料庫了

    加入每一個SQL檔案都可以被壓縮的功能

    程式碼區塊要改成下面這一個

    # 備份每個資料庫並壓縮
    for DB in $DATABASES; do
      if [[ "$DB" != "information_schema" && "$DB" != "performance_schema" && "$DB" != "mysql" && "$DB" != "sys" ]]; then
        BACKUP_FILE="$BACKUP_DIR/$CURRENT_DATE-$DB.sql"
        ZIP_FILE="$BACKUP_DIR/$CURRENT_DATE-$DB.zip"
        mysqldump -h$DB_HOST -u$DB_USER -p$DB_PASSWORD --databases $DB > $BACKUP_FILE
        zip $ZIP_FILE $BACKUP_FILE
        rm $BACKUP_FILE
      fi
    done

    刪除舊資料

    可以利用下面的指令,放在程式碼的最後面

    # 刪除兩天前的備份文件
    find $BACKUP_DIR -type f -name "*.zip" -mtime +2 -exec rm {} \;

    需要改時間的話,只要修正 -mtime +2 ,把+2改成自己需要的時間

    參考資料

    https://help.ubuntu.com/community/CronHowto