未验证 提交 3aa607ca 编写于 作者: W wuyefeilin 提交者: GitHub

Merge pull request #238 from wuyefeilin/humanseg

Humanseg
...@@ -18,14 +18,15 @@ $ pip install -r requirements.txt ...@@ -18,14 +18,15 @@ $ pip install -r requirements.txt
## 模型 ## 模型
| 模型类型 | 预训练模型 | 导出模型 | 量化模型 | 说明 | | 模型类型 | 预训练模型 | 导出模型 | 量化模型 | 说明 |
| --- | --- | --- | --- | --- | | --- | --- | --- | --- | --- |
| HumanSegServer | [humanseg_server]() | [humanseg_server_export]() | [humanseg_server_quant]() | 服务端GPU环境 | | HumanSegServer | [humanseg_server](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server.zip) | [humanseg_server_export](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server_export.zip) | [humanseg_server_quant](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server_quant.zip) | 服务端GPU环境 |
| HumanSegMobile | [humanseg_mobile]() | [humanseg_mobile_export]() | [humanseg_mobile_quant]() | 小模型, 适合轻量级计算环境 | | HumanSegMobile | [humanseg_mobile](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile.zip) | [humanseg_mobile_export](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile_export.zip) | [humanseg_mobile_quant](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile_quant.zip) | 小模型, 适合轻量级计算环境 |
| HumanSegLite | [humanseg_lite]() | [humanseg_lite_export]() | [humanseg_lite_quant]() | 小模型, 适合轻量级计算环境 | | HumanSegLite | [humanseg_lite](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite.zip) | [humanseg_lite_export](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite_export.zip) | [humanseg_lite_quant](https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite_quant.zip) | 小模型, 适合轻量级计算环境 |
## 视频流分割 ## 指定运行设备
```bash ```bash
python video_infer.py --model_dir path/to/model_dir export CUDA_VISIBLE_DEVICES=0
``` ```
当CUDA_VISIBLE_DEVICES变量有效时,使用相应的显卡进行计算,无效时使用CPU进行计算
## 准备训练数据 ## 准备训练数据
我们提供了一份demo数据集,通过运行以下代码进行下载,该数据集是从supervise.ly抽取的一个小数据集。 我们提供了一份demo数据集,通过运行以下代码进行下载,该数据集是从supervise.ly抽取的一个小数据集。
...@@ -40,10 +41,15 @@ python data/download_data.py ...@@ -40,10 +41,15 @@ python data/download_data.py
python pretrained_weights/download_pretrained_weights.py python pretrained_weights/download_pretrained_weights.py
``` ```
## 视频流分割
```bash
python video_infer.py --model_dir path/to/model_dir
```
## 训练 ## 训练
使用下述命令进行训练 使用下述命令进行训练
```bash ```bash
CUDA_VISIBLE_DEVICES=0 && python train.py --model_type HumanSegMobile \ python train.py --model_type HumanSegMobile \
--save_dir output/ \ --save_dir output/ \
--data_dir data/mini_supervisely \ --data_dir data/mini_supervisely \
--train_list data/mini_supervisely/train.txt \ --train_list data/mini_supervisely/train.txt \
......
...@@ -22,12 +22,16 @@ sys.path.append(TEST_PATH) ...@@ -22,12 +22,16 @@ sys.path.append(TEST_PATH)
from test_utils import download_file_and_uncompress from test_utils import download_file_and_uncompress
def download_pet_dataset(savepath, extrapath): def download_data(savepath, extrapath):
url = "https://paddleseg.bj.bcebos.com/dataset/mini_supervisely.zip" url = "https://paddleseg.bj.bcebos.com/humanseg/data/mini_supervisely.zip"
download_file_and_uncompress(
url=url, savepath=savepath, extrapath=extrapath)
url = "https://paddleseg.bj.bcebos.com/humanseg/data/video_test.zip"
download_file_and_uncompress( download_file_and_uncompress(
url=url, savepath=savepath, extrapath=extrapath) url=url, savepath=savepath, extrapath=extrapath)
if __name__ == "__main__": if __name__ == "__main__":
download_pet_dataset(LOCAL_PATH, LOCAL_PATH) download_data(LOCAL_PATH, LOCAL_PATH)
print("Dataset download finish!") print("Data download finish!")
...@@ -22,9 +22,24 @@ sys.path.append(TEST_PATH) ...@@ -22,9 +22,24 @@ sys.path.append(TEST_PATH)
from test_utils import download_file_and_uncompress from test_utils import download_file_and_uncompress
model_urls = { model_urls = {
"humanseg_server": "", "humanseg_server":
"humanseg_mobile": "", "https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server.zip",
"humanseg_lite": "", "humanseg_server_export":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server_export.zip",
"humanseg_server_quant":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_server_quant.zip",
"humanseg_mobile":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile.zip",
"humanseg_mobile_export":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile_export.zip",
"humanseg_mobile_quant":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_mobile_quant.zip",
"humanseg_lite":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite.zip",
"humanseg_lite_epxort":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite_export.zip",
"humanseg_lite_quant":
"https://paddleseg.bj.bcebos.com/humanseg/models/humanseg_lite_quant.zip",
} }
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -2,7 +2,7 @@ pre-commit ...@@ -2,7 +2,7 @@ pre-commit
yapf == 0.26.0 yapf == 0.26.0
flake8 flake8
pyyaml >= 5.1 pyyaml >= 5.1
visual >= 1.3.0 visualdl >= 1.3.0
Pillow Pillow
numpy numpy
six six
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册