自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

噜噜噜噜鲁

简简单单学编程

  • 博客(32)
  • 收藏
  • 关注

原创 一文搞懂——C++内存管理(C++内存分布、new/delete的使用)

C/C++中的内存管理主要涉及内存分布和动态内存分配。内存分布包括代码区、全局数据区、堆区、栈区、常量区和内存映射段,分别用于存储可执行代码、全局变量、动态分配内存、函数局部变量、常量和共享内存。C语言中,动态内存管理通过malloc、calloc、realloc和free实现,分别用于分配、初始化和重新分配内存。C++则引入了new和delete操作符,用于更便捷地管理堆区内存,特别是对自定义类型的对象进行构造和析构。new和delete必须配对使用,否则可能导致内存泄漏或未定义行为。

2025-05-22 22:15:30 925

原创 MVDR算法详解:声源定位的强大工具

在声源定位技术领域,MVDR(Minimum Variance Distortionless Response,最小方差无失真响应)算法是一种应用广泛的高级信号处理方法。无论是智能音箱的语音拾取、会议系统的说话人定位,还是军事领域的声源跟踪,MVDR算法都扮演着重要角色。本文将深入浅出地解释MVDR算法的原理和实现,帮助您理解其在麦克风阵列声源定位中的应用。

2025-05-20 23:47:49 966

原创 MVDR源码(可直接运行)

本文介绍了一个基于MVDR(最小方差无失真响应)算法的麦克风阵列声源定位方法。代码首先设置了麦克风阵列的参数,包括阵元数量、采样率、信号频率等,并生成了模拟的麦克风阵列数据。接着,通过计算信号协方差矩阵并进行对角加载处理,确保矩阵的数值稳定性。随后,利用MVDR算法对每个可能的方向进行空间扫描,计算功率谱并找出最大值位置,从而估计声源的到达方向(DOA)。最后,代码通过图形化展示了声源定位结果,并输出了估计的方位角、俯仰角、置信度及处理时间。该算法能够有效定位声源,适用于麦克风阵列的声源检测场景。

2025-05-20 23:44:52 412

原创 一文搞懂——C++类与面向对象(类、封装、this指针、运算符重载、友元、单例模式、仿函数)

class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的方法或者成员函数。为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前⾯或者后⾯加_ 或者 m 开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看公司的要求。

2025-05-16 20:27:31 576

原创 一文搞懂——C++基础基础(命名空间、引用、函数重载、inline内联)

​C++ 基础语法文档,涵盖基础程序、面向对象特性、命名空间、语言差异及输入输出等内容。第一个 C++ 程序引入 std 命名空间,避免命名冲突。面向对象有封装、继承、多态三大特性。命名空间可避免标识符冲突,能全局定义、嵌套,使用方式有指定访问、展开成员等。C++ 相比 C 语言,三目运算符返回空间,结构体定义变量可省略 struct 且能含函数,类型转换更严格。输入输出使用 std::cin 和 std::cout,操作方便,精度控制可参考 C 语句或资料库。

2025-04-17 12:10:24 943

原创 快速入门matplotlib

matplotlib.pyplot.subplot(nrows,ncols,**fig_kw)可以创建多个axis(坐标系/绘图区)的图,其中nrows,ncols分别为行、列,若nrows=1,ncols=2则有一行两列的坐标系。x是需要传入的数据,width是宽度,align是每个柱状图的对其方式(center是中间,edge是边缘),**kwargs是其他参数,如color颜色。利用plt.xticks(x,**kwargs)和plt.yticks(y,**kwargs)分别给x轴y轴添加刻度信息。

2025-01-15 15:31:33 854

原创 目标检测指标-以及YOLOv1简介

本文主要介绍了物体检测评估的指标及YOLOv1模型的基本概念。首先,分析了物体检测的重要性及常用指标如IOU和MAP,并讲述了其计算方法;其次,讨论了深度学习中的经典检测方法及其优缺点;最后,详细介绍了YOLOv1的核心思想、网络架构、损失函数及非极大值抑制(NMS),并指出YOLOv1的一些不足之处。

2024-11-22 17:33:11 1204

原创 零基础利用实战项目学会Pytorch

如何利用PyTorch从零基础进行深度学习的实战项目,涵盖了线性回归、数据类型、分类任务、回归任务、卷积神经网络以及LSTM文本任务等多个关键主题。读者将学习到PyTorch的基本组成以及如何逐步构建和训练模型,以完成不同类型的任务,包括数据预处理、模型训练和性能评估等。

2024-11-16 15:01:15 1624

原创 看懂本文,入门神经网络Neural Network

以上就是神经网络的基础知识,看懂后能迅速入门神经网络,是理解更复杂的网络如CNN(卷积神经网络)的前提,学会后建议直接学习CNN卷积神经网络。也可以看Alexnet,vgg,resnet等经典网络,这些也是基于卷积神经网络实现的。

2024-11-10 19:44:30 1097

原创 Swin Transformer网络

Swin Transformer 使用了层次化的设计,能够有效捕捉不同尺度的特征,提升分类精度,尤其在图像分类中相较于传统的卷积神经网络(CNN)具有更强的表达能力。:通过局部窗口的自注意力机制和跨窗口连接,Swin Transformer 提供了高效的空间信息传递,使得在图像分割任务中,能更好地保留图像的细节,同时避免了计算上的高昂成本。

2024-11-10 19:27:33 746

原创 Transformer原理详解,一文就懂

详细介绍了 Transformer 原理。首先阐述其输入形式为 BatchlenD,且训练更新权重融入上下文信息。接着重点讲解 Self - Attention 机制,包括通过辅助向量 q、k、v 计算词语权重以确定含义,还介绍了多头机制、位置编码和堆叠方法。然后说明 Decoder 解码过程,涉及 cross - attention 和 mask 机制。最后讲述最终输出经全连接和 softmax 得到结果,以及整体梳理了从输入到输出各环节的操作流程。

2024-11-04 16:21:13 841

原创 目标追踪DeepSort

你可以在任何对某个动态系统有 “不确定信息” 的地方使用卡尔曼滤波器,并且可以对系统下一步的行为做出 “有根据的猜测”。即使混乱的现实干扰了你所猜测的干净运动,卡尔曼滤波器通常也能很好地确定实际发生了什么。它还可以利用你可能想不到要利用的疯狂现象之间的相关性!卡尔曼滤波器非常适合 “不断变化” 的系统。它们的优点是占用内存少(除了前一个状态,不需要保留任何历史记录),并且速度非常快,非常适合实时问题和嵌入式系统。开车时如何确定自己的位置呢?

2024-11-03 19:15:03 1195

原创 OpenPose姿态估计(Pose Estimation)

人体姿态估计通过图像或视频识别追踪人体关键部位重建姿态。主要方法有 TopDown 和 OpenPose。TopDown 分两步但存在缺点。OpenPose 先获关键点位置再拼接,利用热度图和高斯方法得关键点预测结果,通过 PAF 按顺序拼接关键点,利用权值确定连接,还介绍了 PAF 标签定义、权重计算和匹配方法。同时提到 CPM-Convolution Pose Machines 及整体框架。

2024-10-29 18:08:55 1779

原创 行为识别SlowFast

本文主要介绍了一种通用的行为识别框架,包括基本思想、网络结构和效果分析。其基本思想是在动作变化而环境不变的情况下,获取动作信息和环境信息并进行融合。对于环境信息,可从静止图像或视频中抽取几帧进行卷积计算获取;对于动作信息,将视频分为序列,用 3D 卷积提取动作特征。网络结构包括主干、细节和特征融合部分。主干中红色框为环境提取,蓝色为动作提取,两者融合后进行预测。细节部分阐述了数据采样、ResNet 特征提取和池化层等过程。

2024-10-28 10:56:28 1096

原创 图像分割-DeepLab

本文介绍了图像分割中的 DeepLab 相关内容。首先指出一般模型如 Unet 用于医学小目标分割存在局限,为增大感受野常采用 pooling 操作但会丢失信息。接着阐述了 DeepLab 的几种方法:空洞卷积通过设置参数可增大感受野;SPP - Layer 通过不同切分和池化策略获取多种特征并拼接;ASPP 引入不同倍率空洞卷积。最后详细介绍了 DeepLab V3

2024-10-24 22:41:27 654

原创 图像分割概述及U-net网络

本文主要介绍了图像分割中的U-net相关内容。首先阐述了图像分割与目标检测的区别,包括语义分割(对每个像素打标签,区分前景背景,介绍了相关损失函数和IOU计算)和实例分割(不仅区分类别还区分个体)。接着详细介绍了U-net网络,包括原版结构(由下采样的编码过程和上采样的解码过程组成,通过特征融合完成分割任务,常用于医学领域小目标检测分割)、U-net++的改进(特征融合更复杂,有Deep Supervision,可对最后一层剪枝)以及U-net+++(先下采样,对中间某一特征图特殊处理后得到。

2024-10-24 16:47:41 1104

原创 一文搞懂内部类

1.实例内部类本质上也是类,它有类的种种特性,如可以继承,2.在实例内部类中,不能定义一个静态的成员变量。非要定义,就要定义常量3.实例化 实例内部类的对象:OuterClass.InnerClass innerClass = outerClass.new InnerClass();即就是:外部类名.内部类名 变量 = 外部类对象的引用.new 内部类()4.实例内部类中的"this":单独的"this"表示内部类,"外部类名.this"表示外部类。

2022-11-11 22:11:54 423

原创 一文搞懂——搜索树

二叉搜索树又称为二叉排序树,它具有以下性质1.若它的左子树不为空,则左子树上所有节点的值都小于根节点的值2.若它的右子树不为空,则右子树上所有节点的值都大于根节点的值3.它的左右子树也为二叉搜索树

2022-11-09 21:37:59 3270

原创 一文学懂Map和Set——详解

Map与Set是一种专门用来搜索的容器或者数据结构,其搜索的效率与具体的实例化子类有关。一般的查找如二分查找,它适合静态类型的查找,即就是不进行插入、删除操作。但现实中,如根据学号查找学生姓名,这种查可能会在查找时进行插入或删除操作,二分查找就不适用了。Map就是一个数据对应于另一个数据,如学号与姓名是一一对应的、身份证与某个人是一一对应的Set就像是一个集合,它里面存放一组不重复的数据。

2022-11-09 19:16:06 1872

原创 一文搞懂泛型——泛型简介/优点/上界/通配符

一般的类或者方法,只能运用具体的类型:即基本类型、自定义的类。若要编写可以用于多种类型的代码,这种刻板的限制对编写代码的束缚会很大

2022-11-06 21:45:08 553 1

原创 数据结构——八大排序算法(面试/数据结构期末考试-简单且详细)

一般认为希尔排序的分组如下所示,每个颜色对应一组,共5组,并对每一组进行直接插入排序由于是分5组,我们令gap = 5,i与j始终相差5,从第一组开始进行排序,排序后令i++。这种分组方法相比于前面说的按顺序分组的方法,大概率将小的数据放在前面,大的数据放在后面,使得这组数据更加有序。

2022-11-05 20:49:04 526

原创 MFC计算器——万字长文/一看就懂(需要的建议点赞收藏)

MFC程序-计算器的制作

2022-08-25 11:22:18 13345 16

原创 图书管理系统java简易实现—超简单,超详细

所需要的知识:类,对象,抽象类,接口,封装,继承,多态,顺序表对于书的信息,进行编写创建 关于书的 包有书名,作者,价格,类型,以及是否借出等信息,这里用private进行封装,可有效保护代码隐私。class Books{ private String name;//书名 private String author;//作者 private String price;//价格 private String type;//类型 pr

2022-02-23 21:00:59 7286 5

原创 图书管理系统java实现

简单图书管理程序Java实现,超详细代码

2022-02-22 17:33:31 1260 3

原创 链表刷题(1)

1.反转链表对于以下链表,对齐反转得到如下链表

2021-12-07 20:02:42 465 10

原创 Java链表详解--通俗易懂(超详细,含源码)

概念链表(linked list):是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,操作复杂。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要O(n)的时间,而线性表和顺序表相应的时间复杂

2021-12-05 21:04:57 39576 29

原创 数据结构基础——顺序表及其增删查改

数据结构数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。1.线性表线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是一种在实际中广泛使用的数据结构,常见 的线性表:顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储 时,通常以数组和链式结构的形式存储。数组

2021-12-01 08:00:00 729 6

原创 时间复杂度以及空间复杂度(大O的渐进表示法)

1.算法效率算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被 称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额 外空间,在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的 迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复 杂度。2.时间复杂度2.1 时间复杂度的概念时间复杂度的定义:在计算机科学中,算法

2021-11-29 19:54:02 1836 9

原创 Java中的类与对象

什么是类?什么是对象? 面向过程 如用洗衣机洗衣服这个事情,人需要打开洗衣机盖,把衣服放进洗衣机,再加上洗衣粉,打开开关等等多个过程才可完成。 面向对象 总共有4个对象:人,衣服,洗衣粉,洗衣机。整个过程是通过这四个对象交互完成,人不需要了解洗衣服的过程,仅需要知道这四个对象即可。总的来说,需要3个过程找对象(由类而来) 创建对象 使用对象简单创建一个类class Person{}我

2021-11-28 19:16:21 758 10

原创 HTML常用标签(上)

目录1.标签语义2.标题标签-3.段落和换行标签1.段落标签2.换行标签3.小练习4.文本格式化标签5.与标签6.图像标签和路径1.图像标签使用方法:其他属性alt的使用:title的使用:width,height的使用border的使用图片属性总结2.文件1.目录文件夹和根目录2.VS Code打开文件夹3.路径相对路径绝对路径1.标签语义学习标签是有技巧的,重点是记住每个.

2021-08-27 17:51:52 238 1

原创 简单入门HTML

目录HTML简单介绍1.什么是网页 ?2.什么是HTML ?3.网页怎么形成的 ?常用浏览器及其内核浏览器浏览器内核Web标准1.为什么需要Web标准2.Web标准的构成HTML简单介绍现在,我们经常可以用到网页,小游戏,app等等,这些都是得益于前端开发的技术发展。而HTML正是完成这些的基础这里的编译器,我选择功能强大visual studio。学习HTML前,需要了解三个问题:什么是网页 ? 什么是HTML ? 网页怎么形成 ?

2021-08-26 22:02:25 427 2

原创 typora画图(1)--流程图

我们用typora可以利用mermaid进行流程图的制作实例先看一个简单效果首先打开typora,并添加代码块(输入“ ``` ”,即可),语言选则mermaid在第一行输入 graph LR这里 graph 为语法规定(必须写上) ,LR表示流程图方向是从左往右这里对 方向 进行简单介绍T---TOP B---BOTTOML---LEFT R---RIGHT用词 含义 TB 从上到下 BT 从下到上 LR ...

2021-08-24 22:38:40 2624

空空如也

空空如也

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

TA关注的人

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