高点摄像山火烟雾检测数据集(并按照低、中详细标注烟雾浓度)。在初期阶段,野火由非火焰性的燃烧烟雾组成,热量相对较低。890张图像,分辨率1920×1080,标注采用json格式,标注烟雾位置

高点摄像山火烟雾检测数据集(并按照低、中详细标注烟雾浓度)。主要针对初期山火,任何野火检测系统的最重要目标是在火势扩大之前及时检测到火灾。在初期阶段,野火由非火焰性的燃烧烟雾组成,热量相对较低。在这个阶段识别火灾能够提供最佳的抑制机会。在这个阶段通常看不到火焰;因此,任何旨在早期检测的野火检测系统必须集中在检测烟雾而不是火焰上。该数据集全部为山顶开阔区域架设的高点摄像头拍摄,共2890张图像,分辨率1920×1080,标注采用json格式,标注了每个烟雾的位置,烟雾浓度等级(低,中,高),共1.1GB

高点摄像山火烟雾检测数据集介绍

名称

高点摄像山火烟雾检测数据集

规模
  • 图像数量:2890张
  • 分辨率:1920×1080
  • 数据量:约1.1GB
采集设备
  • 摄像头位置:山顶开阔区域架设的高点摄像头
  • 视野:覆盖广阔的森林和山区,能够捕捉到远处的烟雾
数据特点
  • 初期山火检测:主要针对初期山火,重点在于检测非火焰性的燃烧烟雾。
  • 详细标注:每个图像中的烟雾位置和浓度等级(低、中、高)都进行了详细标注。
  • 高分辨率:所有图像均为1920×1080分辨率,提供了丰富的细节信息,有助于提高检测精度。
  • 多样化场景:图像涵盖了不同时间段和天气条件下的场景,确保模型具有良好的通用性和适应性。
标注格式
  • 文件格式:JSON
  • 标注内容
    • 烟雾的位置(边界框)
    • 烟雾浓度等级(低、中、高)

示例JSON标注文件内容:

{
    "image_id": "image_0001.jpg",
    "annotations": [
        {
            "bbox": [500, 300, 600, 400],
            "smoke_concentration": "low"
        },
        {
            "bbox": [1000, 600, 1200, 800],
            "smoke_concentration": "medium"
        }
    ]
}
应用场景
  • 早期火灾检测:在火势扩大之前及时检测到火灾,提供最佳的抑制机会。
  • 智能监控系统:集成到智能监控系统中,自动检测并报警,减少人工监控的工作量。
  • 灾害响应:快速识别火灾发生地点,支持应急响应和救援行动。
  • 环境监测:持续监测森林和山区的烟雾情况,评估空气质量。
  • 研究与教育:用于科研机构的研究以及相关院校的教学,帮助学生和研究人员更好地了解山火检测技术。

数据集结构

假设数据集的文件结构如下:

wildfire_smoke_detection_dataset/
├── images/
│   ├── image_0001.jpg
│   ├── image_0002.jpg
│   └── ...
├── annotations/
│   ├── annotation_0001.json
│   ├── annotation_0002.json
│   └── ...
└── metadata.csv

metadata.csv 文件内容示例:

image_id, date, time, location
image_0001, 2023-07-01, 10:00:00, Mountain A
image_0002, 2023-07-02, 10:30:00, Mountain B
...

代码示例

下面是一个简单的Python脚本示例,展示如何加载和可视化这些数据集的一部分。我们将使用OpenCV来读取图像,并从JSON文件中解析标注信息。

import os
import cv2
import json
import pandas as pd
import numpy as np

def load_wildfire_data(image_dir, annotation_dir, metadata_file):
    images = []
    annotations = []
    metadata = pd.read_csv(metadata_file)
    
    for index, row in metadata.iterrows():
        image_id = row['image_id']
        date = row['date']
        time = row['time']
        location = row['location']
        
        # 加载图像
        img_path = os.path.join(image_dir, f"{image_id}.jpg")
        image = cv2.imread(img_path)
        
        # 加载对应的标注
        annotation_filename = f"annotation_{image_id.split('_')[1]}.json"
        annotation_path = os.path.join(annotation_dir, annotation_filename)
        
        with open(annotation_path, 'r') as f:
            annotation = json.load(f)
        
        if image is not None and annotation is not None:
            images.append((image, date, time, location))
            annotations.append(annotation)
        else:
            print(f"Failed to load image or annotation: {img_path} or {annotation_path}")
    
    return images, annotations, metadata

# 假设图像存储在'image'目录下,标注文件存储在'annotations'目录下,元数据文件为'metadata.csv'
image_dir = 'path_to_your_image_directory'
annotation_dir = 'path_to_your_annotation_directory'
metadata_file = 'path_to_your_metadata_file'

images, annotations, metadata = load_wildfire_data(image_dir, annotation_dir, metadata_file)

# 显示第一张图像及其对应的标注框
img, date, time, location = images[0]
annotation = annotations[0]

for obj in annotation['annotations']:
    bbox = obj['bbox']
    smoke_concentration = obj['smoke_concentration']
    
    (xmin, ymin, xmax, ymax) = bbox
    color = (0, 255, 0) if smoke_concentration == 'low' else (0, 255, 255) if smoke_concentration == 'medium' else (0, 0, 255)
    
    cv2.rectangle(img, (xmin, ymin), (xmax, ymax), color, 2)
    cv2.putText(img, smoke_concentration, (xmin, ymin - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.9, color, 2)

cv2.imshow('Image with Annotations', img)
cv2.setWindowTitle('Image', f'Image: Date {date}, Time {time}, Location {location}')
cv2.waitKey(0)
cv2.destroyAllWindows()

说明

  • 路径设置:请根据实际的数据集路径调整path_to_your_image_directorypath_to_your_annotation_directorypath_to_your_metadata_file
  • 文件命名:假设图像文件名分别为.jpg,标注文件为.json。如果实际命名规则不同,请相应修改代码。
  • 可视化:通过绘制边界框和标注烟雾浓度等级,可以直观地看到图像中的烟雾位置和浓度。

进一步的应用

  • 训练深度学习模型:可以使用这个数据集来训练卷积神经网络(CNN)或其他机器学习模型,以实现自动化的山火烟雾检测。
  • 数据增强:为了增加数据集的多样性和鲁棒性,可以使用数据增强技术(如旋转、翻转、缩放等)生成更多的训练样本。
  • 评估与优化:通过交叉验证和测试集评估模型性能,并不断优化模型参数,以提高检测准确率。

这个数据集对于早期山火检测具有重要的实用价值,可以帮助相关部门及时发现和处理火灾,减少损失并保护生态环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值