当前位置: 首页 > news >正文

Code For Better 谷歌开发者之声——基于改进 EfficientDet 的电网线路的识别与检测的设计实现

一、背景介绍

针对现有的无人机电力巡检中的目标检测算法小目标识别精度低、检测的元件及缺陷类型较为单一、检测速度和精度无法同时满足的问题,提出一种改进的 EfficientDet 目标检测算 法,该算法应用于无人机电力巡检图像的数据挖掘,对高压输电线路上的绝缘子、防震锤、均压环、屏蔽环、鸟巢同时进行目标检测及缺陷定位。

二、什么是EfficientDet 

EfficientDet是由谷歌大脑团队开源的一款对象检测模型,它利用了若干优化和主干调整,例如使用BiFPN,以及一种复合缩放方法,该方法同时均匀缩放所有主干、特征网络和盒/类预测网络的分辨率、深度和宽度。是涵盖轻量级到高精度的多个模型,COCO数据集上达到 50.9 mAP,一经推出便获得了大量关注!

三、EfficientDet 解决的痛点问题与改进思路

首先通过 Imgaug 数据增强库对现有的 1 468 张 国家电网某检修公司标准化无人机巡检数据集进行数据增强;然后在加强特征提取网络双向特征金字塔网络(BiFPN)特征融合时融入小一级尺度的特征层,提高了小目标检测能力,对主干特征 提取网络 EfficientNet 的倒残差模块进行改进,引入坐标注意力机制(CA)提高了主干特征提取 效率;最后进行对比训练实验。

四、数据集设计

4.1 实验数据

原始数据集共 1468 张,来源于国网某检修公司无人机巡检作业时拍摄的标准化照片。由于机器学习的训练中,数据集的质量对训练效果和检测效率有较大的影响,现有的原始数据集数量有限,直接用于训练得出的结果难以满足电力巡检的精度要求,所以利用 Imgaug 数据增强库进行数据扩充,模拟实际巡检时拍摄模糊、噪声、天气恶劣等情况,提升训练模型抗干扰的鲁棒性,实验效果如下图所示:

4.2 数据集类别分析与拓展情况

五、模型结构图

EfficientDet 目标检测算法由 EfficientNet 主干 特征提取网络、不同层数的双向特征金字塔网络 (Bidirectional Feature Pyramid Networks, BiFPN)加 强特征提取网络和先验框分类与调整网络三部分组成。

六、实验环境

6.0 实验代码

GitHub - xuannianz/EfficientDet: EfficientDet (Scalable and Efficient Object Detection) implementation in Keras and TensorflowEfficientDet (Scalable and Efficient Object Detection) implementation in Keras and Tensorflow - GitHub - xuannianz/EfficientDet: EfficientDet (Scalable and Efficient Object Detection) implementation in Keras and Tensorflowhttps://github.com/xuannianz/EfficientDet

实验步骤的话,就是换个数据集就行,数据集因为是实验室自己的,所有不能提供,自己找个其他的数据集也可以哦!所以实验参考下文即可:

睿智的目标检测38——TF2搭建Efficientdet目标检测平台(tensorflow2)_Bubbliiiing的博客-CSDN博客

6.1 实验设备

 6.2 训练损失图像

6.3 实验结果

五、结果分析

EfficientDet 算法在元件检测及缺陷定位测试集上平均均值精度达到 90.2%可以满足电力巡检中准确性的要求。

相关文章:

  • 【for lovelier】IDEA + LeetCode Editor 最佳实践
  • React Native 0.70 版本发布,Hermes 成为默认引擎
  • 【Java基础】时间日期类之Date类、SimplDateFormat类、Calendar类及二月天案例
  • 2023计算机毕业设计SSM最新选题之javaEE的仓库管理系统93c6b
  • 编程路学习书单推荐
  • 【OpenCV】基于cv2的图像阈值化处理【超详细的注释和解释】掌握基本操作
  • SpringBoot整合Canal、RabbitMQ监听数据变更记录
  • [HeMIM]Cl,[AeMIM]Br,[CeEIM]Cl,([HO-PECH-MIM]Cl,[HOOC-PECH-MIM]Cl改性酚醛树脂
  • 商业化广告--体系学习-- 6 -- 行业蓝图篇 -- 那些产品适合采用广告模式变现
  • 链路日志中追踪traceId
  • 2023计算机毕业设计SSM最新选题之javaJava班级信息管理系统x0w9c
  • 【Python炫技】使用zip函数,帮你写出更为Pythonic的代码!
  • 【python笔记】第十四节 文件操作
  • 【Verilog基础】【计算机体系结构】DMA数据搬移产生的cache一致性
  • 【JavaWeb】 Mybatis-02-Mybatis的快速入门
  • Apache Pulsar 2.1 重磅发布
  • codis proxy处理流程
  • const let
  • Cookie 在前端中的实践
  • CSS实用技巧
  • Flex布局到底解决了什么问题
  • Java面向对象及其三大特征
  • React组件设计模式(一)
  • Redux系列x:源码分析
  • vue-router的history模式发布配置
  • Web标准制定过程
  • Web设计流程优化:网页效果图设计新思路
  • 百度小程序遇到的问题
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 技术胖1-4季视频复习— (看视频笔记)
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 深度学习在携程攻略社区的应用
  • 说说动画卡顿的解决方案
  • 新版博客前端前瞻
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • ###项目技术发展史
  • #ifdef 的技巧用法
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (八)Flask之app.route装饰器函数的参数
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)jdk与jre的区别
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (转)Windows2003安全设置/维护
  • .equals()到底是什么意思?
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET中winform传递参数至Url并获得返回值或文件