Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ModelZoo
UNet_pytorch
Commits
0157fa3f
Commit
0157fa3f
authored
Jul 09, 2024
by
chenych
Browse files
Merge branch 'icon' into 'main'
Add icon and scnet, modify dockerfile See merge request
!1
parents
176ac334
4c150c1b
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
29 additions
and
29 deletions
+29
-29
Dockerfile
Dockerfile
+2
-4
README.md
README.md
+26
-24
icon.png
icon.png
+0
-0
model.properties
model.properties
+1
-1
No files found.
Dockerfile
View file @
0157fa3f
FROM
image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
FROM
image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
COPY
requirements.txt requirements.txt
RUN
source
/opt/dtk/env.sh
RUN
source
/opt/dtk-22.10/env.sh
RUN
cp
/usr/share/zoneinfo/Asia/Shanghai /etc/localtime
&&
echo
'Asia/Shanghai'
>
/etc/timezone
RUN
cp
/usr/share/zoneinfo/Asia/Shanghai /etc/localtime
&&
echo
'Asia/Shanghai'
>
/etc/timezone
ENV
LANG C.UTF-8
ENV
LANG C.UTF-8
RUN
pip
install
-r
requirements.txt
-i
http://mirrors.aliyun.com/pypi/simple/
--trusted-host
mirrors.aliyun.com
README.md
View file @
0157fa3f
# UNET
# UNET
## 论文
## 论文
`U-Net: Convolutional Networks for Biomedical Image Segmentation`
`U-Net: Convolutional Networks for Biomedical Image Segmentation`
-
https://arxiv.org/abs/1505.04597
-
https://arxiv.org/abs/1505.04597
## 模型结构
UNet(全名 U-Net)是一种用于图像分割的卷积神经网络(CNN)架构,UNet 的结构具有 U 形状,因此得名。
## 模型结构
UNet(全名 U-Net)是一种用于图像分割的卷积神经网络(CNN)架构,UNet 的结构具有 U 形状,因此得名。


## 算法原理
## 算法原理
U-Net 的核心原理如下:
U-Net 的核心原理如下:
1.
**编码器(Contracting Path)**
:U-Net 的编码器由卷积层和池化层组成,用于捕捉图像的特征信息并逐渐减小分辨率。这一部分的任务是将输入图像缩小到一个低分辨率的特征图,同时保留有关图像内容的关键特征。
1.
**编码器(Contracting Path)**
:U-Net 的编码器由卷积层和池化层组成,用于捕捉图像的特征信息并逐渐减小分辨率。这一部分的任务是将输入图像缩小到一个低分辨率的特征图,同时保留有关图像内容的关键特征。
2.
**中间层(Bottleneck)**
:在编码器和解码器之间,U-Net 包括一个中间层,通常由卷积层组成,用于进一步提取特征信息。
2.
**中间层(Bottleneck)**
:在编码器和解码器之间,U-Net 包括一个中间层,通常由卷积层组成,用于进一步提取特征信息。
3.
**解码器(Expansive Path)**
:U-Net 的解码器包括上采样层和卷积层,用于将特征图恢复到原始输入图像的分辨率。解码器的任务是将高级特征与低级特征相结合,以便生成分割结果。这一部分的结构与编码器相对称。
3.
**解码器(Expansive Path)**
:U-Net 的解码器包括上采样层和卷积层,用于将特征图恢复到原始输入图像的分辨率。解码器的任务是将高级特征与低级特征相结合,以便生成分割结果。这一部分的结构与编码器相对称。


## 环境配置
## 环境配置
### Docker(方法一)
### Docker(方法一)
此处提供
[
光源
](
https://sourcefind.cn/#/main-page
)
拉取docker镜像的地址与使用步骤
```
```
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
docker run -it --network=host --name=unet --privileged --device=/dev/kfd --device=/dev/dri --ipc=host --shm-size=32G --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
docker run -it --network=host --name=unet --privileged --device=/dev/kfd --device=/dev/dri --ipc=host --shm-size=32G --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-23.04-py37-latest
cd /path/unet-pytorch
pip install -r requirements.txt
```
```
### Dockerfile(方法二)
### Dockerfile(方法二)
此处提供dockerfile的使用方法
```
```
docker build --no-cache -t unet:latest .
docker build --no-cache -t unet:latest .
docker run -dit --network=host --name=unet --privileged --device=/dev/kfd --device=/dev/dri --ipc=host --shm-size=16G --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 unet:latest
docker run -dit --network=host --name=unet --privileged --device=/dev/kfd --device=/dev/dri --ipc=host --shm-size=16G --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 unet:latest
docker exec -it unet /bin/bash
docker exec -it unet /bin/bash
cd /path/unet-pytorch
pip install -r requirements.txt
pip install -r requirements.txt
```
```
### Anaconda(方法三)
### Anaconda(方法三)
此处提供本地配置、编译的详细步骤,例如:
关于本项目DCU显卡所需的特殊深度学习库可从
[
光合
](
https://developer.hpccube.com/tool/
)
开发者社区下载安装。
关于本项目DCU显卡所需的特殊深度学习库可从
[
光合
](
https://developer.hpccube.com/tool/
)
开发者社区下载安装。
```
```
DTK驱动:dtk23.04
DTK驱动:dtk23.04
python:python3.7
python:python3.7
apex
==
0.1+f49ddd4.abi0.dtk2304.torch1.13
apex
:
0.1+f49ddd4.abi0.dtk2304.torch1.13
torch
==
1.13.1+git55d300e.abi0.dtk2304
torch
:
1.13.1+git55d300e.abi0.dtk2304
torchvision
==
0.14.1+git9134838.abi0.dtk2304.torch1.13
torchvision
:
0.14.1+git9134838.abi0.dtk2304.torch1.13
```
```
`Tips:以上dtk驱动、python等DCU相关工具版本需要严格一一对应`
`Tips:以上dtk驱动、python等DCU相关工具版本需要严格一一对应`
...
@@ -52,39 +50,39 @@ torchvision==0.14.1+git9134838.abi0.dtk2304.torch1.13
...
@@ -52,39 +50,39 @@ torchvision==0.14.1+git9134838.abi0.dtk2304.torch1.13
```
```
pip install -r requirements.txt
pip install -r requirements.txt
```
```
## 数据集
## 数据集
`Carvana`
`Carvana`
-
https://www.kaggle.com/c/carvana-image-masking-challenge/data
-
https://www.kaggle.com/c/carvana-image-masking-challenge/data
此处提供数据预处理脚本的使用方法
下载命令:
```
```
bash scripts/download_data.sh
bash scripts/download_data.sh
```
```
项目中已提供用于试验训练的迷你数据集,训练数据目录结构如下,用于正常训练的完整数据集请按此目录结构进行制备:
项目中已提供用于试验训练的迷你数据集,训练数据目录结构如下,用于正常训练的完整数据集请按此目录结构进行制备:
```
```
── data
│
── data
│ ├── imgs
│ ├── imgs
│ ├──────fff9b3a5373f_15.jpg
│ ├──────
fff9b3a5373f_15.jpg
│ ├──────fff9b3a5373f_16.jpg
│ ├──────
fff9b3a5373f_16.jpg
│ └── masks
│ └── masks
│ ├────── fff9b3a5373f_15.gif
│ ├────── fff9b3a5373f_15.gif
│ ├────── fff9b3a5373f_16.gif
│ ├────── fff9b3a5373f_16.gif
```
```
## 训练
## 训练
### 单机单卡
### 单机单卡
```
```
python train.py
python train.py
```
```
### 单机多卡
### 单机多卡
```
```
python -m torch.distributed.launch --nproc_per_node 4 train_ddp.py
python -m torch.distributed.launch --nproc_per_node 4 train_ddp.py
```
```
## 推理
## 推理
[
模型下载路径
](
https://github.com/milesial/Pytorch-UNet/releases/tag/v3.0
)
```
```
python predict.py -m model_path -i image.jpg -o output.jpg
python predict.py -m model_path -i image.jpg -o output.jpg
```
```
...
@@ -98,15 +96,19 @@ python predict.py -m model_path -i image.jpg -o output.jpg
...
@@ -98,15 +96,19 @@ python predict.py -m model_path -i image.jpg -o output.jpg
| Unet | 精度 |
| Unet | 精度 |
| :------: | :------: |
| :------: | :------: |
| Carvana | 0.976 |
| Carvana | 0.976 |
## 应用场景
## 应用场景
### 算法类别
### 算法类别
`图像分割`
`图像分割`
### 热点应用行业
### 热点应用行业
`医疗`
,
`交通`
,
`家居`
`医疗,交通,家居`
## 预训练权重
[
SCNet AIModels - milesial-pytorch-unet-3.0
](
http://113.200.138.88:18080/aimodels/findsource-dependency/milesial-pytorch-unet-3.0
)
## 源码仓库及问题反馈
## 源码仓库及问题反馈
-
https://developer.hpccube.com/codes/modelzoo/unet-pytorch
-
https://developer.hpccube.com/codes/modelzoo/unet-pytorch
## 参考资料
## 参考资料
-
https://github.com/milesial/Pytorch-Unet
-
https://github.com/milesial/Pytorch-Unet
icon.png
0 → 100644
View file @
0157fa3f
66.7 KB
model.properties
View file @
0157fa3f
# 模型唯一标识
# 模型唯一标识
modelCode
=
420
modelCode
=
420
# 模型名称
# 模型名称
modelName
=
unet_pytorch
modelName
=
unet_pytorch
# 模型描述
# 模型描述
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment