作者:
yuzuki 2026-02-13 01:54:39一時興起,搞了一個多禮拜的實驗
事情是這樣,最近發現三星手機有AI繪製桌布和AI天氣效果的功能,但實際用了之後還是覺的差了一點
但我要的是可以根據現在天氣隨機繪製一張,而且會定時更新
研究了一下發現利用API繪圖應該是可行的辦法,但大部分API都要錢,如果一小時畫一張一天可能要幾十元台幣,雖然不是很多但為了這目的還是不划算
後來就注意到cloudflar有每天免費額度,對於我這種需求正好,但實際執行還是費了不少功夫
我會分享範例文件,歡迎各位指教
https://drive.google.com/drive/folders/1CW5EzsOymc8rPa-wCrtKuGS29z9HPmV1
需要申請:
Cloudflare 帳號
openweathermap 帳號
A.cloudflare 帳號
這目標是拿到帳號ID和AI token
帳號ID是my dashbord的網址中
https://dash.cloudflare.com/ 帳號ID /home/domains
token大概用下面方式取得
https://i.meee.com.tw/82Z4f5W.jpg
https://i.meee.com.tw/O65Zgzx.jpg
https://i.meee.com.tw/OwpWFLS.jpg
https://i.meee.com.tw/z4sqPcD.jpg
https://i.meee.com.tw/hB4g7Oi.jpg
2.openweathermap
目標是拿到API
大概像這樣
https://i.meee.com.tw/BHghsP5.jpg
B.關鍵字繪圖
這裡準備了一個python腳本,其中關鍵字產生長這樣
https://i.meee.com.tw/SUBkw28.png
原理是先利用現代位置傳給API,API回傳現在天氣,日出日落時間
然後根據不同天氣,從一大串關鍵字中選幾個,加上天氣描述和日夜描述,當作繪圖的基底
當然有這些關鍵字就能畫圖,但我決定複雜點,將剛才的關鍵字扔進LLM模型,請AI模型幫?
https://i.meee.com.tw/ZRGU8s4.png
產生關鍵字的promt可以自行修改,但我建議留著promt only等補述,否則LLM會產生諸如"真是美妙的組合"等廢話
擴展的關鍵字可以傳入繪圖AI,也可以加入negative promt。
其中最重要的一步是決定影像大小
這裡有所限制,影像的寬高需要是256的倍數,最大是2048,建議從中選一個最接近螢幕長?
https://i.meee.com.tw/fveTaFV.png
然後回傳的影像經由PIL套件存檔
C.設定termux
temux是個終端機,我屆此在手機上執行python
在此須安裝
Termux
Termux-API
不建議安裝play版,我是在FDROID上裝,或是在git上裝,但兩者來源需相同
安裝好兩者之後要安裝套件,在termux鍵入
pkg update && upgrade
pkg install termux-api
pkg install jq
pkg install python
pkg install libjpeg-turbo
pkg install libpng
pip install pillow
pip install requests
termux-storage-setup 然後給予termux存取檔案權限
ternux-location 這時候會跳出給termux-api 位置權限,記得要選"永遠允許"而非"應用程
再試一次
termux-location -r last 這時應該要跳出目前位置
安裝好後我們把範例檔中的 api.json AI_wallpaper.py AI_wallpaper.sh放入Pictures底?
api.json裡要填入剛才申請到的token和API
然後termux鍵入
mkdir ~/AI_wallpaper/
cp /storage/emulated/0/Pictures/AI_wallpaper/AI_wallpaper.sh ~/AI_wallpaper/
chmod +x ~/AI_wallpaper/AI_wallpaper.sh
上面三步是創建資料夾,把AI_wallpaper.sh搬過去,給予執行權限
現在可以執行看看 ~/AI_wallpaper/AI_wallpaper.sh
應該可以順利看到產生一張圖和一個log在 Picture/AI_wallpaper資料夾並被設定成桌面
如果可以執行,那鍵入
termux-job-scheduler \