【超音速专利 CN118134841A】一种光伏产品缺陷检测AI深度学习算法

【超音速专利 CN118134841A】一种光伏产品缺陷检测AI深度学习算法
申请号CN202410053849.9
公开号(公开)CN118134841A
申请日2024.01.12
申请人(公开)超音速人工智能科技股份有限公司(833753)
发明人(公开)张俊峰(总); 叶长春(总); 廖绍伟

原文摘要

本发明公开一种光伏产品缺陷检测AI深度学习算法,涉及AI算法领域。该光伏产品缺陷检测AI深度学习算法,采用深度卷积神经网络作为预训练模型,使用特征金字塔网络结构FPN对预训练模型得到的不同尺度的特征图进行融合,采用区域提议网络RPN在特征图上生成候选框,该光伏产品缺陷检测AI深度学习算法通过使用预训练模型提取图像特征,使用FPN融合多尺度特征,使用RPN提取候选框,使用ROIAlign抽取局部特征,使用分类、回归、FCN进行缺陷分类、位置回归以及掩膜信息提取,对缺陷的分类以及输出缺陷效果的准确性好,对缺陷的定位精度高,对缺陷的描述准确且全面,从而提高了在光伏产品加工中,对产品的缺陷检测效果。

术语

FCN指的是全卷积网络,是深度学习中用于图像处理任务的一种重要架构,相比于传统的卷积神经网络CNN,FCN不仅能够识别图像中的对象,还能在像素级别对图像进行预测,如图像分割、图像生成等。
全卷积网络是一种由卷积层组成的神经网络架构,没有全连接层。相比于传统的CNN,全卷积网络的主要特点在于它的输出层是一个像素级别的密集特征图,每个像素点都对应输入图像中的一个局部感受野,这使得FCN能够对输入图像进行像素级别的预测和分析,比如图像分割,将图像中的每个像素进行分类,标记其所属的语义类别。
全卷积网络的出现在计算机视觉领域不仅在图像分割任务上取得了显著的成果,而且为其他图像处理任务,如图像生成、图像修复等,提供了重要的基础。全卷积网络在计算机视觉领域具有广泛的适用性。

步骤

1.一种光伏产品缺陷检测AI深度学习算法:所述深度学习算法包括如下步骤:
第一步:采用深度卷积神经网络作为预训练模型,对输入的光伏产品图像进行特征提取,获取图像的高层语义信息,得到不同尺度的特征图;
第二步:使用特征金字塔网络结构FPN对预训练模型得到的不同尺度的特征图进行融合,增强模型对不同尺寸产品缺陷的检测能力;
第三步:采用区域提议网络RPN在特征图上生成候选框,这些候选框涵盖了存在缺陷的区域和信息,以实现后续产品的缺陷快速检测;
第四步:使用ROIAlign技术从候选框中抽取出局部特征,以供后续的分类和回归任务使用;
第五步:利用全卷积网络FCN对局部特征进行分类,并同时进行回归操作以精确定位缺陷的位置;
第六步:除了分类和位置回归外,还利用FCN从局部特征中提取掩膜信息,以得到缺陷的精确形状和大小。
2:在第一步中,首先选择适用于光伏产品缺陷检测任务的预训练模型,然后,将预训练模型导入到算法中,并将待检测的光伏产品缺陷图像输入到模型中。
3.在第二步中,利用特征金字塔网络融合来自不同尺度的特征图,同时利用低层特征图的空间信息和高层特征图的语义信息,将这些特征图进行融合。
4.在第三步中,使用区域生成网络来提取候选框,RPN网络得到所有anchors的分类、回归信息,RPN基于特征图。
5.在第四步中,使用ROIAlign操作来抽取候选框内的局部特征,根据RPN网络输出的分类、回归信息,经过NMS得到最终的ROIs。
6.第五步中,对筛选出来的ROIs进行分类、回归、mask分割操作,使用分类器对候选框进行缺陷分类。
7.第六步中:分类器是传统的机器学习方法。
8.第七步中:分类器是深度学习方法。
9.在第六步,通过位置回归,根据分类结果和候选框的位置信息,对缺陷的位置进行进一步的调整和修正,同时,根据FCN得到的掩膜信息,进一步提取缺陷信息。

总结

该光伏产品缺陷检测AI深度学习算法,通过使用预训练模型提取图像特征,使用FPN融合多尺度特征,使用RPN提取候选框,使用ROIAlign抽取局部特征,使用分类、回归、FCN进行缺陷分类、位置回归以及掩膜信息提取,对缺陷的分类以及输出缺陷效果的准确性好,对缺陷的定位精度高,对缺陷的描述准确且全面,从而提高了在光伏产品加工中,对产品的缺陷检测效果。

硬件需求

工控机+显卡

扩展阅读

我想对大家说的话
工作中遇到的问题,可以按类别查阅鄙人的算法文章,请点击《算法与数据汇总》。
学习算法:按章节学习《喜缺全书算法册》,大量的题目和测试用例,打包下载。重视操作
有效学习:明确的目标 及时的反馈 拉伸区(难度合适) 专注
员工说:技术至上,老板不信;投资人的代表说:技术至上,老板会信。
闻缺陷则喜(喜缺)是一个美好的愿望,早发现问题,早修改问题,给老板节约钱。
子墨子言之:事无终始,无务多业。也就是我们常说的专业的人做专业的事。
如果程序是一条龙,那算法就是他的是睛
失败+反思=成功 成功+反思=成功

视频课程

先学简单的课程,请移步ZEEKLOG学院,听白银讲师(也就是鄙人)的讲解。
https://edu.ZEEKLOG.net/course/detail/38771
如何你想快速形成战斗了,为老板分忧,请学习C#入职培训、C++入职培训等课程
https://edu.ZEEKLOG.net/lecturer/6176

测试环境

操作系统:win7 开发环境: VS2019 C++17
或者 操作系统:win10 开发环境: VS2022 C++17
如无特殊说明,本算法用**C++**实现。

Read more

如何利用简单的浏览器插件Web Scraper爬取知乎评论数据

如何利用简单的浏览器插件Web Scraper爬取知乎评论数据

一、简单介绍: Web Scraper 的优点就是对新手友好,在最初抓取数据时,把底层的编程知识和网页知识都屏蔽了,可以非常快的入门,只需要鼠标点选几下,几分钟就可以搭建一个自定义的爬虫。 我在过去的半年里,写了很多篇关于 Web Scraper 的教程,本文类似于一篇导航文章,把爬虫的注意要点和我的教程连接起来。最快一个小时,最多一个下午,就可以掌握 Web Scraper 的使用,轻松应对日常生活中的数据爬取需求。 像这样的网页数据,想要通过网页爬虫的方式获取数据,可以下载web scraper进行爬虫 这是常见的网页类型: 1.单页 单页是最常见的网页类型。 我们日常阅读的文章,推文的详情页都可以归于这种类型。作为网页里最简单最常见的类型,Web Scraper 教程里就拿豆瓣电影作为案例,入门 Web Scraper 的基础使用。 2.分页列表 分页列表也是非常常见的网页类型。 互联网的资源可以说是无限的,当我们访问一个网站时,不可能一次性把所有的资源都加载到浏览器里。现在的主流做法是先加载一部分数据,随着用户的交互操作(

Xinference-v1.17.1快速部署:GitHub Codespaces云端环境3分钟启动WebUI

Xinference-v1.17.1快速部署:GitHub Codespaces云端环境3分钟启动WebUI 1. 为什么这次更新值得你立刻试试? Xinference-v1.17.1不是一次普通的小版本迭代。它把“开箱即用”这件事做到了新高度——你不需要本地装Python、不用配CUDA、甚至不用下载模型文件,只要一个浏览器,三分钟内就能看到完整的WebUI界面跑起来,还能直接和Qwen2、Phi-3、Gemma2这些热门模型对话。 更关键的是,它彻底打破了“换模型=重装环境”的老套路。以前想试试Llama3还是DeepSeek-V2,得反复改配置、删缓存、调参数;现在只需要改一行代码,GPT的调用逻辑就自动切换成任意开源LLM。这不是概念演示,是实打实能在云上跑、在笔记本跑、在边缘设备跑的生产级推理平台。 如果你试过用Ollama拉模型卡在99%、被vLLM的编译折磨到放弃、或者被FastChat的端口冲突搞崩溃……那这次,真的可以松一口气了。 2. 什么是Xinference?一句话说清它能帮你省多少事 Xinference(全称Xorbits Inference

中兴B863AV3.1-M2卡刷固件实战:从萌虎动画到无线网卡全解析

1. 中兴B863AV3.1-M2卡刷固件入门指南 第一次接触中兴B863AV3.1-M2刷机的朋友可能会觉得有些复杂,但其实只要跟着步骤来,整个过程并不难。这个固件最大的亮点就是加入了萌虎动画和无线网卡支持,让原本功能受限的机顶盒焕发新生。 我去年第一次刷这个固件时也踩过不少坑,比如U盘格式不对、刷机按键时机没掌握好等等。后来反复尝试了几次,终于摸清了门道。现在我的盒子开机就能看到可爱的萌虎动画,还能用USB无线网卡连接WiFi,彻底摆脱了网线的束缚。 这个固件适合哪些人呢?首先你得有个中兴B863AV3.1-M2的盒子,或者兼容的魔百盒E900V22C/D系列。其次最好有些基础的刷机经验,至少知道怎么进Recovery模式。如果你是纯小白,建议先看看其他基础教程练练手。 2. 萌虎动画的实现原理与定制 2.1 萌虎动画的技术解析 这个固件最吸引人的就是那个虎年主题的开机动画了。我拆解过这个动画包,发现它其实是由一系列PNG图片组成的bootanimation.zip。这个压缩包放在/system/media/目录下,包含三个关键部分: * desc.txt:定义动

Spring Boot Web 后端开发注解核心

Spring Boot Web 后端开发注解核心

在 Spring Boot Web 后端开发中,注解(Annotation)是核心,它们极大简化了配置、依赖管理、请求映射、数据持久化等。本文将按照功能分类,详细列出常用注解的作用、使用方式、典型场景,并附带简明代码示例,帮助你全面掌握并灵活运用。 文章目录 * 1. 核心启动与配置注解 * 2. 控制器与请求映射注解 * 3. 依赖注入与组件注册注解 * 4. 数据访问(JPA / Spring Data)注解 * 5. 事务管理注解 * 6. 缓存注解 * 7. 异步与定时任务注解 * 8. 异常处理与控制器增强 * 9. 跨域支持注解 * 10. 条件化配置注解(自动配置相关) * 11. 测试注解 * 12. Lombok 常用注解(简化代码)