# U2NetCPP_VS 环境以及相关说明
## 一、 开发环境及运行环境
### 1.1 开发环境
- Windows (20H2): 10.0.19042.928
- Microsoft Visual Studio Community 2017: 15.9.34
- Microsoft .NET Framework: 4.8.04084
- CUDA:11.2.142
- cuDNN:8.0.5
- OpenCV:4.5.1
- CMake:3.20.0
### 1.2 运行环境
- 使用CUDA加速需要GPU算力大于3.5
- 如果有遇到“MSVSP140.dll丢失相关的错误”,请到[The latest supported Visual C++ downloads](https://support.microsoft.com/en-us/topic/the-latest-supported-visual-c-downloads-2647da03-1eea-4433-9aff-95f26a218cc0)下载 [vc_redist.x64.exe](https://aka.ms/vs/16/release/vc_redist.x64.exe)
## 二、U2NetCPP_VS 相关说明
## 2.1 配置文件
使用不同的U2Net ONNX模型,只需要修改配置文件config.ini即可。
```ini
[Path]
ONNXModel = ./onnx_models/u2netp.onnx
TestImages = ./test_images
ImageExt = jpg
[ModelSetting]
InputHeight = 400
InputWidth = 400
UseGPU = 1
```
section [Path]:
- ONNXModel onnx:模型文件路径
- TestImages: 测试图片文件夹(不支持图片路径,可以将图片放在文件夹下,并将文件夹路径配置在此处)
- ImageExt:测试图片文件后缀
section [ModelSetting]:
- InputHeight:ONNX模型输入图像的高
- InputWidth:ONNX模型输入图像的宽
- UseGPU:是否使用GPU (CUDA)加速,设置为大于0的值为使用CUDA加速
## 2.2 程序处理过程
### 2.1 预处理
- 图像归一化处理:均值 (0.485, 0.456, 0.406), 标准差 (0.229, 0.224, 0.225)
### 2.2 后处理
- 直接输出预测前景概率图(*.png)
- 对概率图使用OTSU算法二值化得到mask,输出背景为白色的分割结果图(*-result.png)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于显著性目标检测的非特定类别图像分割项目python源码+项目说明文档.zip 【项目实现】 使用显著性目标检测(SOD)模型U2Net,U2Net提供了源码以及两个模型,一个167.3M,一个4.7M。 至此,将问题转化为将优化U2Net模型大小,以下为实现方案: 降低模型精度,使用float16进行计算(失败,预测不正确,得到全黑的图像) 将普通的卷积层改为分组卷积,分为2组 将普通的卷积层改为深度可分离卷积 【训练细节】 加载修改后U2Net的模型(167.3M)做为初始化参数、 分组卷积(将卷积层权重相邻的通道,两两切分作为一组,取平均值,得到一个通道,处理权重的所有通道,并将处理后的参数级联到一起。)【模型大小86M】 深度可分离卷积(将depthwise conv的权重设置为原来普通卷积层(out_channels, in_channels, kernel_h, kernel_width)的第一维取平均得到,再第一维与第二位做转置,得到(in_channels, 1, kernel_h, kernel_width)的张量作为初始化参数;depthwise conv的bia
资源推荐
资源详情
资源评论
收起资源包目录
基于显著性目标检测的非特定类别图像分割项目python源码+项目说明文档.zip (75个子文件)
Figures
train_groupconv_pretrain.png 36KB
train_groupconv_nopretrain.png 41KB
Backup
v1
download dataset.sh 504B
utils
__init__.py 78B
transform.py 639B
iou.py 382B
dataset
__init__.py 32B
dataset.py 2KB
nerworks
__init__.py 28B
sod_net_part.py 3KB
sod_net.py 2KB
train.py 4KB
U2NetPy
u2net_groupconv.py 15KB
u2net_refactor.py 6KB
u2net_test.py 4KB
setup_model_weights.py 431B
u2net_dsconv.py 15KB
weight_transform.py 3KB
main.py 5KB
model_summary.py 2KB
u2net_train_amp.py 5KB
u2net.py 15KB
data_loader.py 9KB
load_net.py 246B
sod.py 2KB
saved_models
u2netp.pth 4.47MB
u2netp.onnx 4.35MB
get_opencv_lib_name.py 397B
load_model_opencv.py 2KB
crf.py 7KB
extract_train_loss_info.py 2KB
u2net_train.py 6KB
model_transform.py 3KB
U2Net
U2NetPy
tools
setup_model_weights.py 431B
weight_transform.py 4KB
extract_train_result.py 2KB
model_summary.py 2KB
get_opencv_lib_name.py 397B
model_transform.py 3KB
loss.py 673B
backup
u2net_refactor.py 6KB
load_model_by_opencv_dnn.py 2KB
u2net_test.py 4KB
main.py 5KB
sod.py 2KB
utils
crf.py 7KB
nets
__init__.py 910B
u2net_groupconv.py 15KB
u2net_dsconv.py 15KB
u2net.py 15KB
u2net_val.py 5KB
data_loader.py 9KB
u2net_train.py 6KB
U2NetCPP
.vscode
tasks_backup.json 2KB
c_cpp_properties.json 1KB
launch_bakcup.json 1KB
settings.json 2KB
tasks.json 2KB
launch.json 733B
U2NetCPP_VS
Utils.h 706B
Utils.cpp 1KB
config.ini 156B
readme.md 2KB
U2Net.cpp 3KB
inipp.h 7KB
U2Net.hpp 690B
Main.cpp 2KB
U2NetCPP_VSCODE
U2Netp.hpp 4KB
test_env
hello.cpp 237B
hello_opencv.cpp 264B
hello_opencv_cuda.cpp 184B
hello_main.cpp 119B
SODMain.cpp 1KB
U2Netp.cpp 3KB
项目说明文档.md 4KB
共 75 条
- 1
资源评论
- 2301_768320722023-06-30资源内容详细,总结地很全面,与描述的内容一致,对我启发很大,学习了。
onnx
- 粉丝: 9712
- 资源: 5598
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功