基于深度学习的yolo11卫星影像图像识别 遥感图像船舶与飞机检测(数据集+模型+界面)

张开发
2026/4/8 14:09:04 15 分钟阅读

分享文章

基于深度学习的yolo11卫星影像图像识别 遥感图像船舶与飞机检测(数据集+模型+界面)
文章目录卫星图像中的目标检测基于YOLOv8和DIOR数据集的实现项目结构目标数据集数据预处理模型训练与测试结论卫星图像中的目标检测基于YOLOv8和DIOR数据集的实现项目结构完整的代码位于名为 yolov8.ipynb 的Jupyter Notebook中。所有模型训练和测试的结果存储在项目的“runs”目录下。目标本项目的首要目标是构建一个能够在卫星影像/光学遥感图像中分类并检测多个不同类型物体的模型。另一个目标是测试最新版本的YOLO模型YOLO V8的能力。数据集在这个项目中我使用了DIOR数据集。该数据集包含了20个不同的类别涵盖了从微小到大型的物体。整个数据集共有23,463张图像按照50%的比例划分为训练集和测试集。这些图像是随机打乱的并且具有高质量800 x 800像素。尽管如此数据集中也存在一些不足之处例如某些物体缺少标注信息以及各物体之间样本分布不均的问题。数据预处理预处理工作主要集中在注释文件上。原始注释采用Pascal VOC格式即.xml文件这种格式不适用于YOLO模型。因此我将注释文件转换为了符合YOLO格式的.txt文件。原始的数据划分是50%用于训练50%用于测试这样的比例并不理想。为了改善这一点我进行了调整保持50%的图像仅用于训练而将测试集进一步划分为20%-80%分别用于验证和最终测试。模型训练与测试我选择了的YOLOv8n模型来进行本项目的实验 - 。针对这个自定义数据集我在原始大小为800px的图像上以16的批量大小从零开始训练模型总共训练了50个epoch。我没有改变图像尺寸因为压缩图像会导致数据丢失而且考虑到物体本身已经很小这样做会降低物体及其整体数据集的质量。模型在9391张图像上进行了测试取得了良好的效果mAP50为0.71mAP50-95为0.485。您可以在Notebook和“runs”目录中查看完整的代码和模型结果。除了在数据集上的测试外我还使用了一段Google Earth视频片段来测试模型对视频文件的表现以下是部分测试结果ships_test_pred.1.mp4airplane_test_pred.1.mp4结论YOLOv8不仅速度快而且功能强大。最值得注意的是它的轻量级特性这使得它可以在成本较低的GPU上轻松运行。在我的案例中使用A4000 GPU训练超过20,000张图像的过程非常顺利整个模型训练耗时不到两个半小时。这对于利用小型数据集快速进行实验来说是非常理想的。DIOR数据集是一个大型且高质量的数据集。通过合并整个数据集并用不同大小的YOLOv8模型进行更小规模和受控的实验可以进一步提升性能。目前我只使用了最轻量级的模型实际上还有四个更大、更复杂的YOLOv8模型可供选择。

更多文章