当前位置:网站首页>Implement your own dataset using bisenet
Implement your own dataset using bisenet
2022-07-07 08:23:00 【I am a little rice】
Data set preparation
Data sets : Remote sensing house image segmentation , There are two times , It is mainly to realize the area change of building area with time .
Baidu cloud :https://pan.baidu.com/s/1HlnKWToc00986jiTxhq_CA
Extraction code :RSAI
Data processing
1. Data sets
The data set is stored in the root directory datasets
Under the folder , And coco
and city
Data set juxtaposition , If the label of your dataset is already 0,1
, Then don't worry label_255
, If the label has not passed 255-->1
The transformation of , You can put the label file in label_255
Next .
—BiSeNet
---------datasets
-----------------coco
-----------------cityscapes
-----------------time
-----------------------train
------------------------------image
------------------------------label_255
------------------------------label
-----------------------val
------------------------------image
------------------------------label_255
------------------------------label
2. stay datasets/times/
Create under folder one.py
The aim is to 0,255
The label of is converted to 0,1
, If it's multi class , Then the label is 0,1,2,3,...n
In the code, only train
Documents in , To transform val Documents in , modify train
by val
that will do
import os
import cv2 as cv
labels_path = './train/label_255'
labels_save_path = './train/label'
lab_names = os.listdir(labels_path)
for s in lab_names:
label_path = os.path.join(labels_path, s)
label_save_path = os.path.join(labels_save_path, s)
label = cv.imread(label_path, 0)
label[label!=0]=1
cv.imwrite(label_save_path, label)
2. stay datasets/times/
Create under folder util.py
file
The goal is to generate train.txt
Document and val.txt
file , To transform val.txt
file , Just add all of the following code train
Switch to val
that will do ( There are three )
import os
image_path = './train/image'
label_path = './train/label'
image_names = os.listdir(image_path)
for s in image_names:
image = os.path.join(image_path, s)
label = os.path.join(label_path, s)
with open('train.txt', 'a') as fin:
fin.write(image[2:] +","+ label[2:] +"\n")
fin.close()
Network model address
Model modification
1. modify configs/bisenet_customer.py
file
n_cats
: Number of categories including background , The category here is 2
max_iter
: Training times im_root
: Data path train_im_anns
: Just generated train.txt route val_im_anns
: Just generated val.txt route cropsize
: Change to image size eval_crop
: Change to image size ( I don't know the effect )ims_per_gpu:gpu
Number
2. Modify category
This dataset category is 2
If configs/bisenet_customer.py
Medium model_type='bisenetv2'
modify lib/models/bisenetv2.py
In the document n_classes=2
If configs/bisenet_customer.py
Medium model_type='bisenetv1'
modify lib/models/bisenetv1.py
In the document BiSeNetV1(2)
Run the command
--nproc_per_node
Do not know what that mean? , there 2
yes gpu
The number of
CUDA_VISIBLE_DEVICES=0,1 torchrun --nproc_per_node=2 tools/train_amp.py --config configs/bisenet_customer.py
And it's going to work !!
边栏推荐
- Excel import function of jeesite form page
- Using helm to install rainbow in various kubernetes
- One click deployment of highly available emqx clusters in rainbow
- ROS bridge notes (05) - Carla_ ackermann_ Control function package (convert Ackermann messages into carlaegovehiclecontrol messages)
- Lua programming learning notes
- 利用 Helm 在各类 Kubernetes 中安装 Rainbond
- Qinglong panel - today's headlines
- 解读创客思维与数学课程的实际运用
- Use of out covariance and in inversion in kotlin
- JS copy picture to clipboard read clipboard
猜你喜欢
随机推荐
Using helm to install rainbow in various kubernetes
Rainbond 5.6 版本发布,增加多种安装方式,优化拓扑图操作体验
The simple problem of leetcode is to judge whether the number count of a number is equal to the value of the number
Openvscode cloud ide joins rainbow integrated development system
Splunk查询csv lookup table数据动态查询
Learn how to compile basic components of rainbow from the source code
单元测试报告成功率低
Zcmu--1492: problem d (C language)
Kotlin combines flatmap for filtering and zip merge operators
Openjudge noi 2.1 1752: chicken and rabbit in the same cage
Game attack and defense world reverse
Basic use of CTF web shrink template injection nmap
BiSeNet的特点
Rainbow combines neuvector to practice container safety management
Qinglong panel -- finishing usable scripts
One click installation of highly available Nacos clusters in rainbow
DeiT学习笔记
Analyzing the influence of robot science and technology development concept on Social Research
提高企业产品交付效率系列(1)—— 企业应用一键安装和升级
Interactive book delivery - signed version of Oracle DBA work notes