[集创赛海云捷讯杯]全国二等奖经验分享

[集创赛海云捷讯杯]全国二等奖经验分享

  • 一.前言
  • 二.我们的作品
  • 三.小结

一.前言

笔者是研一在校生,从五月份开始和本科生一起卷集创赛,经历初赛,分赛区决赛,全国总决赛,认识了很多一起做比赛的朋友收获颇丰。今年海云杯初赛报名队伍340支左右,晋级分赛区决赛的队伍130支,晋级全国总决赛22支加上各赛区优秀组织队伍报送一共晋级全国总决赛26支队伍。在淘汰率方面可以说是各杯赛最卷的几个杯赛之一了。其中我在的东北赛区分赛区八组晋级一组总决赛,除了西南赛区各个赛区也基本上都是这个比例。
为了记录一下集创赛的过程,也为下一届报名海云杯的同学们提供些借鉴,计划未来一两个月推出海云捷讯集创赛经验贴分享专栏。在专栏中会尽可能的详细介绍在做海云杯的过程中遇到的困难,和解决思路。

二.我们的作品

目前,基于FPGA的机器视觉技术在缺陷检测领域发展迅速,深度学习技术凭借其不需要人工、依靠卷积神经网络的特征表征能力自动提取特征的优点被广泛应用于缺陷检测领域。本设计基于海云自研CNN加速器,对AI框架进行深度优化,更高效的利用CNN加速器,从而实现机器视觉缺陷检测。
在这里插入图片描述
本文首先阐述了DVP、VGA时序、模型缩放、QAT量化、MobileNet_SSD算法等的原理,对Paddle-lite推理框架、工业缺陷检测存在的问题以及小目标识别的解决策略进行了详细阐述。训练一个全精度mobilenet_v1_ssd模型作为基准模型。针对样本中针孔识别置信度较低的问题,将算法默认的先验框大小进行了调整,提高了针孔样本推理置信度。对SDK各部分进行耗时分析,使用neon指令集优化输入输出重排,使推理时间降低至570ms左右。同时对模型先验框算子进行离线运算,将推理时间降低到220ms。在自定义位置插入伪量化节点,完全卷积全融合,将推理时间降低到186ms。通过敏感度分析结果,使用量化裁剪联合调度策略,完成裁剪,使推理时间降低为55ms。使用临近插值算法进行图形缩放算法优化。使用模块分层设计和状态机的方案重写dvp_ddr3,ddr3_vga,输入重排和预处理加速等模块,使系统能够流畅运行。在完成图片推理后,我们再联合调度摄像头、HDMI和加速器。成功的实现了视频读入输出,实现推理与摄像头加载图像的并行化,使推理刷新时间达到76ms。进一步地,通过多线程调度推理和HDMI刷新,提升pl侧的时钟频率,将HDMI平均刷新帧率提升至38Hz,平均推理刷新速度85ms。

我们使用模块分层设计和状态机的方案成功实现了dvp_ddr3,ddr3_vga,输入重排和预处理四个IP。经过上述优化,推理刷新时间最短为82ms,平均为85ms。HDMI平均刷新帧率为38Hz。成功检测了分赛区测试视频的十份缺陷样本,完成了赛题要求的设计指标。为了进一步提升推理刷新速度,我们自主设计了基于脉动阵列的CNN加速器,通过Avalon-mm总线进行系统互联,使用分层次状态机的方案完成数据加载和调度。
在这里插入图片描述

在这里插入图片描述

三.小结

等笔者写完毕设开题再回来更新!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/59693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java反射机制并实现任意对象转JSON格式

目录 java反射机制 获取构造方法 获取属性 获取成员方法 使用反射机制将对象转为JSON形式 java反射机制 在运行状态中,任意一个类,都可以知道它的任意属性和方法,任意一个对象,都可以调用它的任意一个方法和属性。 获取反射…

RabbitMQ工作模式-发布订阅模式

Publish/Subscribe(发布订阅模式) 官方文档: https://www.rabbitmq.com/tutorials/tutorial-three-python.html 使用fanout类型类型的交换器,routingKey忽略。每个消费者定义生成一个队列关绑定到同一个Exchange,每个…

性能测试jmeter连接数据库jdbc(sql server举例)

一、下载第三方工具包驱动数据库 1. 因为JMeter本身没有提供链接数据库的功能,所以我们需要借助第三方的工具包来实现。 (有这个jar包之后,jmeter可以发起jdbc请求,没有这个jar包,也有jdbc取样器,但不能发…

音视频 fmpeg命令裁剪和合并视频

一、生成测试文件 找三个不同的视频每个视频截取10秒内容 ffmpeg -i 沙海02.mp4 -ss 00:05:00 -t 10 -codec copy 1.mp4 ffmpeg -i 复仇者联盟3.mp4 -ss 00:05:00 -t 10 -codec copy 2.mp4 ffmpeg -i 红海行动.mp4 -ss 00:05:00 -t 10 -codec copy 3.mp4如果音视频格式不统一…

如果只发布terraform的部分功能,我们该怎么发布

如果你想在一个较大的 Terraform 配置中只发布其中的一部分功能,你可以考虑以下几种方法来实现: 使用 Workspaces: Terraform Workspaces 是一种将同一个配置文件拆分为多个环境的方式。你可以为不同的功能创建不同的 Workspace,然…

外观模式:简化复杂子系统的访问与使用

文章目录 1. 简介2. 外观模式的基本结构3. 外观模式的实现步骤4. 外观模式的应用与实例4.1 图形界面库的外观模式应用4.2 文件压缩与解压缩的外观模式应用4.3 订单处理系统的外观模式应用 5. 外观模式的优缺点5.1 优点5.2 缺点 6. 总结 1. 简介 外观模式是一种结构型设计模式&…

CentOS 7 上安装 Oracle 11g 数据库

本博客将向您介绍在 CentOS 7 操作系统上安装 Oracle 11g 数据库的步骤,以及在 Oracle 数据库中创建表空间和用户的脚本。 1. 安装必要的软件和依赖 首先,我们需要安装一些必要的软件和依赖项。在终端中执行以下命令: yum -y install xorg…

Linux服务器安装部署MongoDB数据库 – 【无公网IP远程连接】

文章目录 前言1.配置Mongodb源2.安装MongoDB数据库3.局域网连接测试4.安装cpolar内网穿透5.配置公网访问地址6.公网远程连接7.固定连接公网地址8.使用固定公网地址连接 前言 MongoDB是一个基于分布式文件存储的数据库。由 C 语言编写,旨在为 WEB 应用提供可扩展的高…

什么是OLAP

一、什么是OLAP OLAP(On-line Analytical Processing,联机分析处理)是在基于数据仓库多维模型的基础上实现的面向分析的各类操作的集合。可以比较下其与传统的OLTP(On-line Transaction Processing,联机事务处理&…

Redisson分布式锁 原理源码 分析

# 基于setnx实现的分布式锁存在的问题: # 为了解决上面的问题,可以用Redisson # Redisson入门 # Redisson可重入锁原理 获取锁的Lua脚本: 释放锁的Lua脚本: # 锁重试原理分析 tryLock()底层代码分析 tim…

什么是自动语音识别?

在人工智能发展和全球疫情的双重作用下,企业加强了与客户的线上沟通。企业越发依赖于虚拟助手、聊天机器人以及其他的语音技术,以实现与客户的高效互动。这几类人工智能,都是依赖于自动语音识别技术,简称为ASR。ASR涉及到将语音转…

Gson与FastJson详解

Gson与FastJson详解 Java与JSON 做什么? 将Java中的对象 快速的转换为 JSON格式的字符串. 将JSON格式的字符串, 转换为Java的对象. Gson 将对象转换为JSON字符串 转换JSON字符串的步骤: 引入JAR包 在需要转换JSON字符串的位置编写如下代码即可: String json new Gs…

python安装playwright问题记录

python安装playwright这个时候,有得时候会https timeout 有的时候会 not found。 我最后使用的方法三,挺好用的。 PyPI The Python Package Index 可以尝试使用的方法 1. 更换pip源:使用国内的pip源可以提高下载速度并减少超时问题。例如&#xff0c…

【PHP】PHP的面向对象编程

PHP面向对象编程是PHP编程的一个重要方向,它通过将数据和操作封装在对象中,使得代码更加模块化、可重用性和易于维护。本文将介绍PHP面向对象编程的基本概念、核心思想和常见应用,并探讨使用PHP面向对象编程时需要注意的问题。 一、概述 PH…

LLM推理部署(一):LLM七种推理服务框架总结

自从ChatGPT发布以来,国内外的开源大模型如雨后春笋般成长,但是对于很多企业和个人从头训练预训练模型不太现实,即使微调开源大模型也捉襟见肘,那么直接部署这些开源大模型服务于企业业务将会有很大的前景,本文将介绍七…

Effective C++条款16——成对使用new和delete时要采取相同形式(资源管理)

以下动作有什么错? std::string* stringArray new std::string[100]; // ... delete stringArray;每件事看起来都井然有序。使用了new,也搭配了对应的 delete。但还是有某样东西完全错误:你的程序行为不明确(未有定义)。最低限度&#xff…

PHP竞赛管理系统Dreamweaver开发mysql数据库web结构php编程计算机网页

一、源码特点 PHP 竞赛管理系统是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 下载地址 https://download.csdn.net/download/qq_41221322/88244066 二、功能介绍 后…

Spring Boot Dubbo Zookeeper(含ZK安装脚本)

文章目录 Spring Boot Dubbo Zookeeper&#xff08;含ZK安装脚本&#xff09;简介DubboCommonProviderConsumer Zookeeper Spring Boot Dubbo Zookeeper&#xff08;含ZK安装脚本&#xff09; 简介 Dubbo Common 公共依赖 <!-- Spring Boot Starter --> <dependen…

C#_特性反射详解

特性是什么&#xff1f; 为程序元素额外添加声明信息的一种方式。 字面理解&#xff1a;相当于把额外信息写在干胶标签上&#xff0c;然后将其贴在程序集上。 反射是什么&#xff1f; 反射是一种能力&#xff0c;运行时获取程序集中的元数据。 字面理解&#xff1a;程序运行…

一键实现 Oracle 数据整库同步至 Apache Doris

在实时数据仓库建设或迁移的过程中&#xff0c;用户必须考虑如何高效便捷将关系数据库数据同步到实时数仓中来&#xff0c;Apache Doris 用户也面临这样的挑战。而对于从 Oracle 到 Doris 的数据同步&#xff0c;通常会用到以下两种常见的同步方式&#xff1a; OGG/XStream/Lo…