自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 资源 (1)
  • 收藏
  • 关注

原创 【ESP-IDF】使用SNTP进行时间同步

【代码】【ESP-IDF】使用SNTP进行时间同步。

2023-07-02 20:58:05 506

原创 【ESP-IDF】ESP32利用wifi联网(STA模式)

APSTAAP。

2023-07-02 12:04:49 1666

原创 【ESP-IDF】工程中的cmake配置

maincmake在ESP32的官方代码中,会使用cmake作为编译工具,本文以官方例程为例,对移植时可能会修改的一些部分进行记录。

2023-06-28 17:47:10 982

原创 【ESP-IDF】在squareline studio上设计GUI并移植到esp-box上

因为软件中适配了ESP-BOX,所以作者本想直接使用该软件创建的工程,但是会出现花屏的现象,也不知道是不是没有做好的适配。因此只能先用设计好GUI,然后再导出其代码,在其他例程中进行移植工作。

2023-06-24 16:23:56 1487 2

原创 【ESP-IDF】esp-box的官方例程实践

使用工具和如下命令进行下载:下载成功后,如下图所示:根据版本信息,作者使用的是和,因此需切换到 。在本地项目中使用以下命令切换:切换成功的结果:此时本地项目还并不完整,还有一些子模块需要单独下载,先使用如下命令查看需要哪些子模块:运行结果:以子模块为例,在仓库中找到它(注意仓库要切换分支,否则没有该文件夹):直接点击,就切换到了另一个仓库,将该仓库下载下来,解压缩,然后覆盖掉本地项目中空的 即可。打开例程文件夹 ,选择例程 ,剩下的就是正常编译和烧录的步骤,具体内容可见上一篇博客。实际运行结果:

2023-06-04 20:23:16 1490

原创 【ESP-IDF】在VScode上进行esp-box的编译烧录

安装好ESP-IDF和VSCODE上的扩展插件。

2023-05-27 21:11:42 2087

原创 LVGL学习踩坑

使用正点原子的STM32F1精英板和2.8寸触摸屏时,会出现左右触点相反的现象。解决办法是在例程文件。

2023-04-01 15:57:18 975 1

原创 PTA浙江大学数据结构习题——第十周

散列1 电话聊天狂人#include <iostream>#include <map>using namespace std;int n;map<string, int> h;int main(){ cin >> n; string phone; for (int i = 0; i < n; i ++) for (int j = 0; j < 2; j ++) {

2022-05-28 13:09:54 203

原创 PTA浙江大学数据结构习题——第九周

(排序4 统计工龄)[https://pintia.cn/problem-sets/1497448825169559552/problems/1521131202348670976]排好序后,统计每一个连续的相同数字的个数。#include <iostream>using namespace std;const int N = 100010;int n;int a[N];void quick_sort(int l, int r){ if (l >= r) r

2022-05-25 21:22:07 167

原创 PTA浙江大学数据结构习题——第八周

排序1 排序方法一:插入排序#include <iostream>using namespace std;const int N = 100010;int n;int a[N];int main(){ cin >> n; for (int i = 0; i < n; i ++) cin >> a[i]; for (int i = 1; i < n; i ++) { int

2022-05-23 16:44:25 369

原创 吸烟者问题

问题背景假设有 1 个生产者,3 个吸烟者(消费者)。生产者可以生产 3 种不同的材料组合,每次放一种到桌子上(桌子容量为 1),每一种材料组合只能给 1 个对应的吸烟者使用。同步与互斥关系桌子的访问是互斥的。3 个吸烟者取对应的材料组合是同步关系。完成吸烟,供应者再生产材料组合,也是同步关系。...

2022-05-22 14:56:34 185

原创 多生产者——多消费者问题

问题背景假设有四个人:父亲、母亲、女儿、儿子,和一个空盘子,里面最多放一个水果。父亲每次向盘子中放一个苹果,女儿只会吃苹果。母亲每次向盘子中放一个橘子,儿子只会吃橘子。这个问题可以被抽象为放水果事件和拿水果事件,用信号量 plate 来表示,当 plate = 1 时,表示盘子可以放一个水果;plate = 0 表示盘子不能放水果。信号量 apple 和 orange 表示盘子中苹果和橘子的数量。同步与互斥关系该问题中,有 3 对同步关系:(1)向盘子中放入水果。需要先拿走盘子中的水果,才能放

2022-05-22 14:32:25 717

原创 PTA浙江大学数据结构习题——第七周

图7 公路村村通模板题。#include <iostream>#include <cstring>using namespace std;const int N = 1010, INF = 0x3f3f3f3f;int n, m;int g[N][N], dist[N];bool st[N];int prim(){ int res = 0; memset(dist, 0x3f, sizeof(dist)); for (in

2022-05-20 16:28:34 785

原创 C++类的继承

1.构造函数和析构函数#include <iostream>using namespace std;class A{ public: A() { cout << "A"; } A(int x) { cout << "A" << x; } ~A()

2022-05-11 23:36:26 257

原创 C++中给函数传参二维数组

有 4 种方式void f1(int a[N][M]);void f2(int a[][N]);void f3(int (*a)[N]);void f4(int *a);实例如下#include <stdio.h>/********************************** 方法1: 第一维的长度可以不指定 ** 但必须指定第二维的长度 **********************************/void print_a(int a[][5], i

2022-05-11 23:25:41 3153

原创 C函数指针

定义定义函数 f 的函数指针 p。void f(int a, int b){}void (*p)(int, int) = f;

2022-05-11 18:41:41 89

原创 C和C++中宏定义的坑

宏定义中运算符与函数体中的运算顺序不同。#define f1(a, b) a * b#define f2(a, b) (a) * (b)int main(){ cout << f1(2 + 3, 2) << endl; cout << f2(2 + 3, 2) << endl; return 0;}结果:810f1(2 + 3, 2) 表示 2 + 3 * 2 = 8,而 f2(2 + 3, 2) 表

2022-05-10 21:10:31 333

原创 PTA浙江大学数据结构习题——第七周

图4 哈利·波特的考试floyd 算法:#include <iostream>using namespace std;const int N = 110, INF = 1e6;int n, m;int d[N][N];void floyd(){ for (int k = 1; k <= n; k ++) for (int i = 1; i <= n; i ++) for (int j = 1; j <= n

2022-05-09 15:31:18 419

原创 PTA浙江大学数据结构习题——第六周

图1 列出连通集用邻接矩阵存图。#include <iostream>#include <queue>#include <cstring>using namespace std;const int N = 15;int n, m;int list[N][N];bool st[N];void dfs(int u){ st[u] = true; printf("%d ", u); for (int i = 0;

2022-04-23 16:20:51 1528

原创 PTA浙江大学数据结构习题——第五周

树7 堆中的路径插入所有节点后,从下往上不断输出当前结点的父节点即可。#include <iostream>using namespace std;#define MinData -10010typedef struct HeapStruct *MinHeap;struct HeapStruct{ int *arr; int size, capacity;};MinHeap create(int maxsize){ MinHeap H = (M

2022-04-22 22:13:23 539

原创 PTA浙江大学数据结构习题——第四周

树4 是否同一棵二叉搜索树分别对原有序列和需要检查的序列建立一棵二叉搜索树,然后分别进行前序遍历得到字符串结果,如果字符串结果相同,输出“Yes”,否则“No”。#include <iostream>using namespace std;const int N = 20;typedef struct TreeNode *Tree;struct TreeNode{ int data; Tree left, right;};int n, l;Tree i

2022-04-19 22:55:23 617

原创 LPC54114资料

1.NXP 官网资料MDK packSDK2.万利电子资料连接 FTP 222.186.63.138 ,用户名:guest ,密码:guest含以下内容:用户手册演示测试程序(software 文件夹)原理图及 PCB 设计文件(hardware 文件夹)工具软件(tools 文件夹)元器件数据手册(pdf 文件夹)3.驱动&固件固件驱动...

2022-04-16 18:27:50 362

原创 PTA浙江大学数据结构习题——第三周

第三周树的同构#include <iostream>#include <cstring>using namespace std;const int N = 15;struct TreeNode{ char e; int left, right;} T1[N], T2[N];bool st[N];int BuildTree(struct TreeNode t[]){ int n; cin >> n; m

2022-04-10 00:08:34 1372

原创 IMX6ULL设置AHB时钟

修改 AHB_PODF 时不能直接对寄存器中的相应位进行清零,因为 0 对应分频系数 1,会将 AHB 设置为 396 MHz 超过了其最大频率 132 MHz,导致死机。// 错误代码CCM->CBCDR &= ~(7 << 10);/* CBCDR 的 AHB_PODF 清零 */CCM->CBCDR |= 2 << 10; /* AHB_PODF 3 分频, AHB_CLK_ROOT=132MHz */// 正确代码CCM->CBCMR &

2022-04-09 20:37:50 582

原创 PTA浙江大学数据结构习题——第二周

第二周两个有序链表序列的合并List Merge( List L1, List L2 ){ List L3 = (List)malloc(sizeof(struct Node)); List p3 = L3; List p1 = L1->Next, p2 = L2->Next; while (p1 && p2) { if (p1->Data <= p2->Data)

2022-03-13 10:39:08 2077 1

原创 PTA浙江大学数据结构习题——第一周

今年就要找工作了,实习之余开始学习一下数据结构,顺便记录一下,题目是PTA上的浙江大学数据结构题集。第一周1.最大子列和问题res 是要求的最大子列和,cur 是当前子列和。在序列中从头枚举每个元素:(1)当前子列和大于最大子列和,更新res = cur。(2)当前子列和为负数,则当前子列和加上后面的数必定不是最大的,直接舍弃掉前面的子列和,新的子列和从序列当前下标i开始,更新cur = 0。#include <iostream>using namespace std;co

2022-03-11 18:18:38 1502

原创 基于ESP32-S2制作本地气象台/温度计

使用ESP32-S2制作一个本地气象台/温度计,在oled屏幕上显示本地的实时时间和天气信息。

2022-03-04 23:25:59 5117

原创 理解mobilenetV2(带源码)

文章目录1.原理1.1.深度可分离卷积1.2.线性 `bottleneck`1.3.倒置残差2.模型结构1.原理1.1.深度可分离卷积​ 深度可分离卷积将标准卷积层分为深度卷积和点卷积,深度卷积进行滤波,点卷积计算输入通道的线性组合构建新特征。​ 标准卷积中 hi×wi×dih_i × w_i × d_ihi​×wi​×di​ 输入张量 LiL_iLi​ ,并应用卷积核 K∈Rk×k×di×djK ∈ R^{k×k×d_i×d_j}K∈Rk×k×di​×dj​ 来产生 hi×wi×djh_i × w

2022-03-03 15:37:52 4019

原创 mobilenet 解析

1.简介MobileNets 基于流线型架构,使用深度可分离卷积来构建轻量级深度神经网络,用于移动和嵌入式视觉应用。该网络引入了两个简单的全局超参数——宽度乘数和分辨率乘数,可以有效地在延迟和准确性之间进行权衡。这些超参数允许模型构建者根据问题的限制条件为其应用程序选择合适大小的模型。图1.mobilenet 作为 backbone 可以用于各种视觉任务。2.mobilenet 结构2.1.深度可分离卷积MobileNet 模型基于深度可分离卷积,这是一种分解卷积形式,将标准卷积分解为深度卷

2022-03-02 15:44:06 25219

原创 Keep your Eyes on the Lane: Real-time Attention-guided Lane Detection(LaneATT)论文阅读

文章目录1.创新点2.解决了哪些问题3.原理和算法步骤3.1.车道和 `anchor` 表示3.2.主干网络3.3.基于 `anchor` 的特征池化3.4.注意力机制3.5.`proposal` 预测3.6.`NMS`3.7.模型训练3.8.`anchor` 过滤以提高速度效率1.创新点​ 提出了一种聚合全局信息的,新颖的基于 anchor 的注意力机制。​ 提出了一种基于 anchor 的单阶段车道检测模型,称为 LaneATT。它的架构允许使用轻量级 backbone CNN,同时保持高精度。

2022-01-18 14:58:17 2630 3

原创 FPGM(Filter Pruning via Geometric Median)笔记

原文地址文章目录1.创新点2.解决了哪些问题3.原理和算法流程1.创新点​ 提出了一种新的过滤器剪枝方法,即通过几何中值的过滤器剪枝(FPGM)来压缩模型。​ 与以前的方法不同,FPGM 通过修剪带有冗余信息的过滤器而不是那些重要性“相对较低”的过滤器来压缩 CNN 模型。​ 与之前修剪贡献相对较少的过滤器的方法不同,FPGM 选择具有最大可替换贡献的过滤器。具体来说,我们计算同一层内过滤器的几何中值 (GM) [8]。根据 GM 的特性,它附近的滤波器 F 可以用剩下的滤波器来表示。因此,修剪这

2022-01-10 14:52:28 3300

原创 SFP(Soft Filter Pruning)笔记

原理及流程过滤器修剪即卷积核修剪。深度 CNN 网络可以参数化为 {W(i)∈RNi+1∗Ni∗K∗K,1≤i≤LW^{(i)∈R^{N_{i + 1}*N_i*K*K}, 1 \leq i\leq L}W(i)∈RNi+1​∗Ni​∗K∗K,1≤i≤L },W(i)W^{(i)}W(i) 表示第 i 层中的连接权重矩阵。NiN_iNi​ 表示第 i 个卷积层的输入通道数。修剪过滤器可以删除输出特征图。这样,神经网络的计算成本就会显着降低。让我们假设第 i 层的 SFP 的剪枝率为 PiP_iPi​。该

2022-01-04 11:18:42 1592

原创 YOLOv1笔记

文章目录1.创新和优缺点2.算法流程2.1.网络结构2.2.训练2.2.1.输入图像2.2.2.激活函数2.2.3.损失函数2.2.4.学习率2.2.5.防止过拟合1.创新和优缺点​ YOLO 非常快。由于我们将检测视为回归问题,因此我们不需要复杂的管道。我们只是在测试时在新图像上运行我们的神经网络来预测检测。此外,YOLO 的平均精度是其他实时系统平均精度的两倍以上。​ 当进行预测时,YOLO 对图像进行全局推理。与基于滑动窗口和区域提议的技术不同,YOLO 在训练和测试期间看到整个图像,因此它隐式

2021-12-23 11:21:37 1865

原创 利用L1范数的CNN模型剪枝

通过这样做,我们获得了一个更紧凑的网络,具有更少的参数和运行时内存,以及更少的计算操作。修剪后,我们获得紧凑模型(右侧),然后对其进行微调以达到与正常训练的完整网络相当(甚至更高)的精度。在我们的实验中,经过微调的窄网络在很多情况下甚至可以达到比原始未剪枝网络更高的精度。在这种情况下,稀疏性是在层的传入端实现的,即该层有选择地使用它接收到的信道子集。中添加缩放层,缩放因子的值对于评估通道的重要性没有意义,因为卷积层和缩放层都是线性变换。(2)根据指定的修剪阈值,设定掩码,将较小的参数置 0,其余不变。

2021-12-21 09:30:16 5057 2

原创 从coco数据集中提取需要的类别

进行目标检测时,有时只需要训练数据集中的部分图像,以 coco128 为例,只选出其中的车辆类:bicycle car motorcycle bus truck。coco128 数据集中的标签为 txt 文件,每一个图像由若干行,每一行对应一个目标的类别序号和 4 个坐标(中心 x,中心 y,宽,高,只需要选出指定类别序号的 txt 文件,然后保存同名的图像文件即可。# 从coco128中提取车类的image和label# 0 bicycle# 1 car# 2 motorcycle# 3 bu

2021-12-15 14:38:21 7415 11

原创 模型剪枝方法:通过网络瘦身学习高效的卷积网络

​ 深度卷积神经网络 (CNN) 在许多实际应用中的部署在很大程度上受到其高计算成本的阻碍。在本文中,我们为CNN提出了一种新颖的学习方案,以同时1) 减小模型大小;2) 减少运行时内存占用;3) 在不影响准确性的情况下,减少计算操作的次数。这是通过以一种简单但有效的方式在网络中实施通道级稀疏性来实现的。与许多现有方法不同,所提出的方法直接适用于现代CNN架构,将训练过程的开销降至最低,并且不需要为生成的模型使用特殊的软件/硬件加速器。我们称我们的方法为网络瘦身。

2021-12-14 09:08:35 4895

原创 YOLOP:全景驾驶感知

文章目录YOLOP: You Only Look Once for Panoptic Driving Perception摘要1.导论2.相关工作A.交通目标检测B.可行驶区域分割C.车道线检测D.多任务方法3.方法A.编码器B.解码器C.损失函数D.训练范式4.实验A.设置B.结果C.消融实验(Ablation Study)5.结论参考文献YOLOP: You Only Look Once for Panoptic Driving Perception摘要​ 全景驾驶感知系统是自动驾驶的重要组成部分

2021-12-03 18:43:31 1697 1

原创 YOLOv3原理及流程简述

详细实现可以参考博客核心思想​ 输入图像经过全卷积神经网络得到 3 种尺度(跨尺度预测)的输出特征图,在输出特征图上划分 cell(单元格),对于 ground truth box 中心所在的 cell,该 cell 就负责预测 ground truth box 框中的目标。该 cell 先计算事先指定的 3 种 anchor 与 ground truth box 的 IOU,选出 IOU 最高的 anchor,然后用选出的 anchor 生成我们需要的检测框,最后根据该检测框对不同类别的置信度,来检测

2021-11-30 14:41:17 4783

原创 二维卷积层参数对形状的影响

卷积核假设原输入形状为 (nh×nw)(n_h \times n_w)(nh​×nw​),卷积核 kernel 大小为 (k_h \times k_w),则输出形状为 (nh−kh+1)×(nw−kw+1)(n_h - k_h + 1) \times (n_w - k_w + 1)(nh​−kh​+1)×(nw​−kw​+1)填充填充 padding 是指在输入高和宽两侧填充元素(通常是 0 元素),如果在高的两侧一共填充 ph 行,在宽的两侧一共填充 pw 列,则输出形状为(nh−kh+ph+1)×

2021-11-26 09:38:00 669

原创 从头实现YOLOv3:第5部分

第5部分:设计输入和输出管道​ 这是从头实现 YOLO v3 检测器教程的第 5 部分。在最后一部分,我们实现了一个函数,将网络的输出转换为检测预测。有了一个工作检测器,剩下的就是创建输入和输出管道。​ 在这一部分中,我们将构建检测器的输入和输出管道。这涉及从磁盘读取图像,进行预测,使用预测在图像上绘制边界框,然后将它们保存到磁盘。我们还将介绍如何让检测器在摄像头或视频上实时工作。我们将介绍一些命令行标志位,以允许对网络的各种超参数进行一些实验。那么让我们开始吧。注意:需要安装OpenCV 3​

2021-11-25 10:22:48 2792

MATLAB_TSM-Toolbox_2.03.zip

包括ola、wsola、htTSM、pvTsm、elastiqueTSM

2021-08-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除