簡介
使用百度深度學習框架paddlepaddle對人像圖片進行自動化摳圖
安裝
根據PaddlePaddle官網命令安裝

如
pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
pip install paddlehub -i https://mirror.baidu.com/pypi/simple
初試
1.jpg

2.jpg

3.jpg

4.jpg

5.jpg

import paddlehub as hub
from pathlib import Path
paths = [str(i) for i in Path('.').glob('*.jpg')] # 當前路徑下所有.jpg文件
human_seg = hub.Module(name='deeplabv3p_xception65_humanseg')
results = human_seg.segmentation(paths=paths, visualization=True, output_dir='output')
# results = human_seg.segmentation(paths=paths, use_gpu=True, visualization=True, output_dir='output') # 使用GPU
print(results)
代碼會自動下載圖像分割模型deeplabv3p_xception65_humanseg到C:\Users\Administrator\.paddlehub\modules
效果
文件名 |
原圖 |
效果 |
1.jpg |
 |
 |
2.jpg |
 |
 |
3.jpg |
 |
 |
4.jpg |
 |
 |
5.jpg |
 |
 |
詳解
人像分割API
def segmentation(images=None,
paths=None,
batch_size=1,
use_gpu=False,
visualization=False,
output_dir='humanseg_output')
參數
- images(list[numpy.ndarray]):圖片數據,BGR格式
- paths(list[str]):圖片路徑
- batch_size(int):批量處理數量
- use_gpu(bool):是否使用 GPU
- visualization(bool):是否將識別結果保存為圖片
- output_dir(str):圖片保存路徑
遇到的坑
1. 報錯RuntimeError: Environment Variable CUDA_VISIBLE_DEVICES is not set correctly. If you wanna use gpu, please set CUDA_VISIBLE_DEVICES as cuda_device_id.
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '0'
或
set CUDA_VISIBLE_DEVICES=0
參考文獻
一款Python實用神器,5 行 Python 代碼 實現一鍵批量扣圖
總結
到此這篇關于Python快速實現一鍵摳圖功能的文章就介紹到這了,更多相關Python一鍵摳圖內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- python和opencv實現摳圖
- 3行Python代碼實現圖像照片摳圖和換底色的方法
- Python實現AI自動摳圖實例解析
- python實現摳圖給證件照換背景源碼
- python實現人工智能Ai摳圖功能
- Python用5行代碼實現批量摳圖的示例代碼
- python利用蒙版摳圖(使用PIL.Image和cv2)輸出透明背景圖
- 使用python和opencv的mask實現摳圖疊加