不会用Photoshop抠图?Python助你一键“除”人!
導(dǎo)讀:看過英劇《黑鏡》嗎?圣誕特別版《白色圣誕節(jié)》中有這樣一個場景:其中一個未來科技有自由屏蔽人像的功能,可以讓你屏蔽任何一個不想看見或不喜歡的人,然后留下的是一片灰白影像,就像是 Photoshop 軟件中的摳圖功能應(yīng)用在了動態(tài)場景中。
與此不同的是,本文作者則通過在 MS COCO 數(shù)據(jù)集上使用預(yù)先訓(xùn)練好的 Mask R-CNN 模型來自動生成圖像中行人的掩碼腳本,實(shí)現(xiàn)人像屏蔽,并且不需要 GPU 就可以運(yùn)行這個程序。所以,如果你發(fā)現(xiàn)相冊里有以前開心合過影但現(xiàn)在討厭的人,可以讓他/她一鍵變成白底了。此外,你還可以用這個腳本生成多達(dá) 80 種不同類型目標(biāo)的掩碼,包括長頸鹿和公交車等事物。
作者:minimaxir
翻譯:林椿眄
來源:AI科技大本營(ID:rgznai100)
01 使用方法
可以通過以下命令運(yùn)行行人掩碼腳本:
python3 person_blocker.py -i images / img3.jpg -c'(128,128,128)'-o'bus''truck'
-i / - image:指定的圖像文件。
-m / - model:加載預(yù)訓(xùn)練好的 COCO 模型權(quán)重的路徑(默認(rèn)是當(dāng)前目錄):如果沒有或不存在指定路徑,模型將自動下載到當(dāng)前目錄(注意:權(quán)重文件的大小為 258 MB)。
-c / - color:掩碼的顏色,采用引號包裝的十六進(jìn)制或 RGB 3 元組格式(默認(rèn)是白色)。
-o / - object:要掩碼的目標(biāo)類型列表(或特定對象的 ID)。你可以在 classes.py ?中或通過使用 -names 來查看掩碼的對象選擇(默認(rèn)值是行人)。
-l / - labeled:保存檢測到的對象及其對象 ID 注釋的標(biāo)記圖像。
-n / - names:打印目標(biāo)的類別選項(xiàng),然后退出。
該腳本輸出兩張圖像:靜態(tài)圖像(雙關(guān)意圖) person_blocked.png 和動畫圖像 person_blocked.gif。
02 示例
python3 person_blocker.py -i images/img1.jpg
python3 person_blocker.py -i images/img2.jpg -c '#c0392b' -o 'giraffe'
python3 person_blocker.py -i images/img3.jpg -c '(128, 128, 128)' -o 'bus' 'truck'
特定目標(biāo)的掩碼需要兩個步驟:在推理模式下運(yùn)行以獲取每個目標(biāo) ID,然后掩碼這些目標(biāo) ID。
python3 person_blocker.py -i images/img4.jpg -l
python3 person_blocker.py -i images/img4.jpg -o 1
03 安裝環(huán)境
這個腳本所需的環(huán)境配置和 Mask R-CNN 一樣:
Python 3.4+
TensorFlow 1.3+
Keras 2.0.8+
Numpy, skimage, scipy, Pillow, cython, h5py
此外,還需要添加 matplotlib 和 imageio 依賴庫。
原文鏈接:
https://github.com/minimaxir/person-blocker
推薦閱讀
2018世界杯數(shù)據(jù)清單:真球迷看球必備,偽球迷速成指南(附完整賽程)
到底需要多少人口,才能找出11個會踢球的?
端午出行大數(shù)據(jù):去這幾個地方,你就只能看人人人……
各地高考“難度系數(shù)”告訴你,天津戶口為什么值得搶
Q:?你覺得這比photoshop簡單嗎?
歡迎留言與大家分享
覺得不錯,請把這篇文章分享給你的朋友
轉(zhuǎn)載 / 投稿請聯(lián)系:baiyu@hzbook.com
更多精彩,請?jiān)诤笈_點(diǎn)擊“歷史文章”查看
總結(jié)
以上是生活随笔為你收集整理的不会用Photoshop抠图?Python助你一键“除”人!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FreeRTOS调度器挂起与解除
- 下一篇: makefile之伪目标(6)