φ-OTDR 事件开源数据集与两种分类模型
φ-OTDR 事件开源数据集与两种分类模型
简介
本项目提供了一个包含六种常见 φ-OTDR 事件的开源数据集,以及两种基于 SVM 和 CNN 的事件分类模型。该数据集包含超过15,000个样本,可用于训练和评估 φ-OTDR 事件识别算法。
数据集
- 事件类型: * 背景噪声 (3094 samples) * 挖掘 (2512 samples) * 敲击 (2530 samples) * 震动 (2298 samples) * 浇水 (2728 samples) * 行走 (2450 samples)* 样本总数: 15,612 * 数据格式: .mat 文件 (可使用 scipy.io.loadmat 加载)* 训练集/测试集: 8:2* 数据存储: 由于文件大小限制,数据集存储于 Google Drive 和百度网盘,链接可在项目代码仓库的 rawdata 文件中找到。
基线模型
我们提供了两种常见分类模型的代码,作为基线:
- SVM (支持向量机): * 文件: das_data_svm.py, get_das_data.py, feature_extraction.py * 方法: 一维特征提取 + SVM 分类* CNN (卷积神经网络): * 文件: das_data_cnn.py, models.py, mydataset.py * 方法: 二维卷积神经网络
此外,我们还提供了一个 feature_visualization.py 文件,用于可视化事件特征,方便观察其区分度。
代码示例pythonimport numpy as npimport osimport scipy.io as sciofrom torch.utils.data import Dataset
def normalize(data): # 归一化到0-255 rawdata_max = max(map(max, data)) rawdata_min = min(map(min, data)) for i in range(data.shape[0]): for j in range(data.shape[1]): data[i][j] = round(((255 - 0) * (data[i][j] - rawdata_min) / (rawdata_max - rawdata_min)) + 0) return data
class MyDataset(Dataset):
def __init__(self, root_dir, names_file, transform=None): self.root_dir = root_dir self.names_file = names_file self.transform = transform self.size = 0 self.names_list = [] if not os.path.isfile(self.names_file): print(self.names_file + 'does not exist!') file = open(self.names_file) for f in file: self.names_list.append(f) self.size += 1
def __len__(self): return self.size
def __getitem__(self, idx): data_path = self.root_dir + self.names_list[idx].split(' ')[0] if not os.path.isfile(data_path): print(data_path + 'does not exist!') return None rawdata = scio.loadmat(data_path)['data'] # 10000,12 uint16 rawdata = rawdata.astype(int) # int32 data = normalize(rawdata) label = int(self.names_list[idx].split(' ')[1]) sample = {'data': data, 'label': label} if self.transform: sample = self.transform(sample) return sample
引用
如果您使用了我们的代码或数据集,请引用以下论文:
Cao, X., Su, Y., Jin, Z., & Yu, K. (2023). An open dataset of φ-OTDR events with two classification models as baselines. Results in Optics, 100372.
许可
本数据集和代码仅供非商业科研用途使用。如有商业应用需求,请联系我们。
原文地址: https://www.cveoy.top/t/topic/fPIr 著作权归作者所有。请勿转载和采集!