当前位置:网站首页>deeplab implements its own remote sensing geological segmentation dataset
deeplab implements its own remote sensing geological segmentation dataset
2022-07-31 11:16:00 【I am a little rice】
1. 数据集下载



下载链接
提取码:2022
Samples are stored in the datasets folderimage和label,You can view their channel and other information,Convenient to work with your own datasets.
2. 数据集预处理
参考另一篇文章:图像预处理
- 数据集image
- 是24位深度
- 3通道RGB图像
- 数据集label
- 是8位深度
- The value of the label is0,1,2,…(有nclass valuen-1)
If your dataset labels take the value 255,需要转化为0,1,2,等(视自己情况而定)
例如:
Background [0,0,0]--------------0
Person [192,128,128]--------------1
Bike [0,128,0]----------------------2
Car [128,128,128]----------------- 3
Drone [128,0,0]--------------------4
Boat [0,0,128]--------------------- 5
Animal [192,0,128]---------------- 6
Obstacle [192,0,0]------------------7
Construction [192,128,0]-----------8
Vegetation [0,64,0]-----------------9
Road [128,128,0]-------------------10
Sky [0,128,128]---------------------11
如果显存不够,Images can be cropped as 256大小,对应代码如下:
The cropped image is saved in image和label中
import os
import numpy as np
import cv2
images_path = './JPEGImages/'
labels_path = './SegmentationClass/'
image_files = os.listdir(images_path)
for s in image_files:
image_path = images_path + s
label_path = labels_path + s[:-4]+'.png'
image = cv2.imread(image_path)
label = cv2.imread(label_path)
#print(image.shape)
index = 0
for i in range(4):
for j in range(4):
#print(i*256, ((i+1)*256-1), j*256, ((j+1)*256-1))
new_image = image[i*256 : ((i+1)*256), j*256 : ((j+1)*256), :]
new_label = label[i*256 : ((i+1)*256), j*256 : ((j+1)*256), :]
cv2.imwrite('./image/'+ 'b_' + s[:-4] +'_'+ str(index) + '.png', new_image)
new_label = cv2.cvtColor(new_label, cv2.COLOR_BGR2GRAY)
cv2.imwrite('./label/'+ 'b_' + s[:-4] +'_'+ str(index) + '.png', new_label)
index+=1
print(s)
3. 模型下载
4. 检查数据
- 数据准备完成之后,首先运行
voc_annotation.py文件,生成数据列表,运行命令:python voc_annotation.py,Usually no error is reported here,If an error is reported, you can check as follows:Check if the label is
8位深度,如果不是,运行下面的代码:import os import cv2 file_names = os.listdir('./SegmentationClass/') for s in file_names: image_path = os.path.join('./SegmentationClass/', s) image = cv2.imread(image_path) image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) cv2.imwrite('./SegmentationClass/' + s , image)Check if there are other values in the label,比如说
类别为3,Then the value in the tag can only be0,1,2,如果出现其他值,就可能会报错;Even if there is no error here,There may also be problems during training,So if there is this problem,一定要记得修改.If this value is not particularly large,可以直接设为0;如果特别多,Then you need to check which step is causing the problem,If you can't find it, suggest changing the dataset.
5. 训练模型
- 修改train.py代码
图像的尺寸(重要)
图像类别(重要)
batch_sizeand other parameters as the case may be
- 运行
python train.py来训练
6. 模型评估
- 修改deeplab.py内容,are the trained models.类别数(Including background).图像尺寸

- 修改get_miou.py内容

- 运行
python get_miou.py命令
7. 模型预测
- 修改deeplab.py内容,are the trained models.类别数(Including background).图像尺寸

- 修改predict.py内容.name_classesIndicates the corresponding name for each category

- 运行
python predict.py命令
边栏推荐
- unity-shader-2
- 一文吃透接口调用神器RestTemplate
- AtCoder—E - Σ[k=0..10^100]floor(X/10^k
- MySQL 的 limit 分页查询及性能问题
- MySQL limit paging query and performance issues
- Docker搭建Mysql主从复制
- [Virtualization Ecological Platform] Platform Architecture Diagram & Ideas and Implementation Details
- 透过开发抽奖小程序,体会创新与迭代
- Redis - Basics
- KVM virtualization job
猜你喜欢

Make your own dataset in FCN and train it

AWS Amazon cloud account registration, free application for 12 months Amazon cloud server detailed tutorial
![AtCoder—E - Σ[k=0..10^100]floor(X/10^k](/img/be/82cfab00950c1f28d426e76a792906.png)
AtCoder—E - Σ[k=0..10^100]floor(X/10^k

「MySQL」- 基础增删改查

KVM virtualization job

deeplab实现自己遥感地质分割数据集

3D激光SLAM:LeGO-LOAM论文解读---完整篇

Redis缓存面临的缓存击穿问题

3D激光SLAM:LeGO-LOAM论文解读---点云分割部分

分布式事务——分布式事务简介、分布式事务框架 Seata(AT模式、Tcc模式、Tcc Vs AT)、分布式事务—MQ
随机推荐
SQLServer2019安装(Windows)
mysql automatically adds creation time and update time
蓝牙协议栈开发板 STM32F1 跑蓝牙协议栈 –传统蓝牙搜索演示以及实现原理[通俗易懂]
MySQL limit paging query and performance issues
瑞吉外卖项目:文件的上传与下载
Windows安装mysql详细步骤(通俗易懂,简单上手)
502 bad gateway causes and solutions
Make your own dataset in FCN and train it
Can I find a Go job in 7 days?Learn Go with arrays and pointers
mpu9150(driverack pa简明教程)
【Go事】一眼看穿 Go 的集合和切片
SQL - Left join, Right join, Inner join
实现弹框组件
Intranet Penetration Learning (IV) Domain Lateral Movement - SMB and WMI Service Utilization
Experience innovation and iteration through the development of a lucky draw applet
St. Regis Takeaway Project: File Upload and Download
web安全入门-黑苹果MAC系统安装
矩形脉冲波形的占空比及脉冲和瞬态特征的测量
3D激光SLAM:LeGO-LOAM论文解读---完整篇
If the value of the enum map does not exist, deserialization is not performed