当前位置:网站首页>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 2max_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 !!
边栏推荐
- Analyzing the influence of robot science and technology development concept on Social Research
- Introduction à l'objet blob
- Snyk 依赖性安全漏洞扫描工具
- buureservewp(2)
- 漏洞复现-easy_tornado
- Give full play to the wide practicality of maker education space
- 【无标题】
- 在Rainbond中一键部署高可用 EMQX 集群
- 发挥创客教育空间的广泛实用性
- Le système mes est un choix nécessaire pour la production de l'entreprise
猜你喜欢

拓维信息使用 Rainbond 的云原生落地实践

opencv学习笔记二——图像基本操作

Analyzing the influence of robot science and technology development concept on Social Research

Famine cloud service management script

Splunk子查询模糊匹配csv中字段值为*

One click deployment of highly available emqx clusters in rainbow

Qinglong panel - today's headlines

电池、电机技术受到很大关注,反而电控技术却很少被提及?

Fast parsing intranet penetration escorts the document encryption industry

Game attack and defense world reverse
随机推荐
CCTV is so warm-hearted that it teaches you to write HR's favorite resume hand in hand
[step on the pit series] H5 cross domain problem of uniapp
Uniapp mobile terminal forced update function
IP-guard助力能源企业完善终端防泄密措施,保护机密资料安全
Lua 编程学习笔记
一文了解如何源码编译Rainbond基础组件
[untitled]
MES system is a necessary choice for enterprise production
Real time monitoring of dog walking and rope pulling AI recognition helps smart city
The largest 3 same digits in the string of leetcode simple question
机器人教育在动手实践中的真理
Improve the delivery efficiency of enterprise products (1) -- one click installation and upgrade of enterprise applications
Vulnerability recurrence easy_ tornado
Use of out covariance and in inversion in kotlin
电池、电机技术受到很大关注,反而电控技术却很少被提及?
Call pytorch API to complete linear regression
Infix keyword infix expression and the use of generic extension function in kotlin
Unityhub cracking & unity cracking
藏书馆App基于Rainbond实现云原生DevOps的实践
Quick analysis of Intranet penetration helps the foreign trade management industry cope with a variety of challenges