自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 神经网络初识-以MINST数据集和CIFAR10数据集为例

网络的结构如下,输入层一共28*28=784个神经元,隐藏层共15个神经元(这里可以自由设置),输出层一个十个神经元,分别代表十个数字(0~9)。对于上图中的神经网络结构,假设我们随机初始化各个神经元的权值,并且将手写数字图片”9“传入到网络中,可以预见网络大概率并不会得到正确答案,但是我们可以通过不断调整权值来让它输出正确的结果。

2023-07-16 21:04:11 571 1

原创 【人工智能与机器学习】决策树ID3及其python实现

决策树ID3是一种经典的机器学习算法,用于解决分类问题。它通过在特征空间中构建树形结构来进行决策,并以信息增益作为划分标准。ID3算法的关键在于选择最佳的属性进行划分,以最大化信息增益。通过Python实现ID3算法,我们可以构建出一棵高效而准确的决策树模型,用于分类预测和决策分析。参考。

2023-07-02 16:39:16 3011

原创 【人工智能与机器学习】基于卷积神经网络CNN的猫狗识别

卷积神经网络(Convolutional Neural Networks,简称CNN)是一种具有局部连接、权值共享等特点的深层前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一,擅长处理图像特别是图像识别等相关机器学习问题,比如图像分类、目标检测、图像分割等各种视觉任务中都有显著的提升效果,是目前应用最广泛的模型之一。

2023-07-02 11:55:21 6004 1

原创 机器学习-支持向量机SVM

在本练习中,我们将使用支持向量机(SVM)来构建垃圾邮件分类器。

2023-06-30 22:34:28 975

原创 逻辑回归模型的简介及python代码实现

Logistic回归虽然名字里带“回归”,但它实际上是一种分类方法,主要用于二分类问题(即输出只有两种,分别代表两个类别),也可以处理多分类问题。

2023-06-21 19:26:30 2293

原创 支持向量机SVM的原理和python实现

支持向量机(SVM)是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面,可以将问题化为一个求解凸二次规划的问题。与逻辑回归和神经网络相比,支持向量机,在学习复杂的非线性方程时提供了一种更为清晰,更加强大的方式。具体来说就是在线性可分时,在原空间寻找两类样本的最优分类超平面。在线性不可分时,加入松弛变量并通过使用非线性映射将低维度输入空间的样本映射到高维度空间使其变为线性可分,这样就可以在该特征空间中寻找最优分类超平面。

2023-06-21 13:34:23 11800

原创 opencv特征检测 HOG特征算法

Hog 算法的工作原理是创建图像中梯度方向分布的柱状图,然后以一种非常特殊的方式对其进行归一化。这种特殊的归一化使得Hog 能够有效地检测物体的边缘,即使在对比度很低的情况下也是如此。这些标准化的柱状图被放在一个特征向量(称为 HOG 描述符)中,可以用来训练机器学习算法,例如支持向量机(SVM),以根据图像中的边界(边)检测对象。由于它的巨大成功和可靠性,HOG 已成为计算机视觉中应用最广泛的目标检测算法之一。特征描述符是图像或图像补丁的表示形式,它通过提取有用信息并丢弃无关信息来简化图像。

2023-06-21 12:52:11 1211

原创 opencv检测二维码和条形码

二维码检测与识别是计算机视觉领域中的一个重要任务,它旨在从图像或视频中检测、定位和解析出二维码信息。在实现二维码检测与识别的过程中,我们可以借助开源工具库,如OpenCV和ZBar,利用图像处理、特征提取和分类器训练等技术来实现。

2023-06-20 18:13:39 2402 1

原创 使用CubeMX配置STM32驱动HC-SR04超声波模块

硬件选择stm32f103c8t6(最小板)hc-sr04超声波模块软件环境。

2023-06-05 21:16:03 998 1

原创 【嵌入式系统应用开发】FPGA——基于HC-SR04超声波测距

硬件DE2-115HC-SR04超声波传感器软件通过实际上板测试,已基本实现超声波测距,所测距离与实际距离基本一致。但由于代码中设计的寄存器位数有限,该代码只能测试到4~247cm左右的距离,同时在使用HC-SR04超声波测距模块进行测距时,常常会遇到一些干扰和误差,例如传感器本身的噪声、回波的多路径传播、环境的干扰等,这些因素可能导致测距结果不准确或者产生错误的距离值,为了减少这些干扰和误差对测距结果的影响,之后将会对测距信号进行滤波处理。

2023-06-03 16:49:47 2573 1

原创 【嵌入式系统应用开发】FPGA——HLS入门实践之led灯闪烁

一款高层次综合工具。能够将C/C++或者system C等高级语言转化为RTL(底层硬件描述语言)电路,降低开发时间。提供了常见的库(例如图像处理相关的OpenCv库和其它的数学库)。可以创建IP并通过例化或者使用的方式应用到项目中。转化原理:在前端将 C 语言描述进行分析,然后进行代码层面的优化(code-level transformation),再在后端把这些运算工作进行并行调度(parallelise & schedule),最后生成 RTL 语言。

2023-05-17 20:27:03 1034

原创 【嵌入式系统应用开发】FPGA——VGA显示基础实验

文章使用的工具及板子类型工具:Quartus II 13.1开发板:Cyclone IV E EP4CE115F29C7VGA(Video Graphics Array)视频图形阵列是IBM于1987年提出的一个使用模拟信号的电脑显示标准。VGA接口即电脑采用VGA标准输出数据的专用接口。VGA接口共有15针,分成3排,每排5个孔,显卡上应用最为广泛的接口类型,绝大多数显卡都带有此种接口。它传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。VGA接口是一种D型接口。

2023-04-26 15:55:19 724

原创 【嵌入式系统应用开发】基于NIOS II软核的流水灯

文章使用的工具及板子类型工具:Quartus II 13.1开发板:Cyclone IV E EP4CE115F29C7实验目的学习 Quartus Prime 、Platform Designer、Nios II SBT 的基本操作;初步了解 SOPC 的开发流程,基本掌握 Nios II 软核的定制方法;掌握 Nios II 软件的开发流程,软件的基本调式方法。Quartus中的一个系统集成工具名称。

2023-04-14 16:16:26 443

原创 【嵌入式系统应用开发】FPGA——四位全加器的实现

在上一篇文章中,已经实现了一位加法器,在此基础上,下文将用原理图与Verilog编程两种方式,完成四位加法器的设计。下文步骤将不进行详细讲述,如有看不懂的地方,详见上一篇文章由于上一篇文章步骤较为详细,本次四位加法器的实现步骤省略了一部分,详情可参考上一篇文章。四位加法器是在一位加法器的基础上实现的。

2023-03-25 23:01:48 1005

原创 【嵌入式系统应用开发】FPGA——1位全加器的实现

通过本次实验,学习了解了一位加法器,总体来说实验完成比较顺利,在实验过程中,出现了找不到驱动的情况,在查阅相关文章后,顺利解决。

2023-03-25 22:06:52 2707

原创 【嵌入式系统应用开发】ROS通信模式编程

通过本次实验,学习了解了ROS相关控制机制,学习了话题、服务、动作的相关知识,同时也学习了解到了分布式通信,实现了从机控制主机的小海龟的行走。参考。

2023-03-18 14:10:37 156

原创 【人工智能与机器学习】初识线性回归

环境python数据集weights_heights(身高-体重数据集).xlssklearn (全称 Scikit-Learn) 是基于 Python 语言的机器学习工具,Sklea是处理机器学习 (有监督学习和无监督学习) 的包。有监督学习的分类任务有监督学习的回归任务无监督学习的聚类任务无监督学习的降维任务数据预处理任务模型选择任务数据引入本文通过Excel和python编程的方式,进行了线性回归。通过对比发现,两者解决线性回归问题得出的结果大致相同。

2023-03-17 14:16:46 146

原创 【嵌入式系统应用开发】ROS环境安装配置与入门实操

环境 Ubuntu18.04ROS(机器人操作系统,Robot Operating System),是专为机器人软件开发所设计出来的一套电脑操作系统架构。它是一个开源的元级操作系统(后操作系统),提供类似于操作系统的服务,包括硬件抽象描述、底层驱动程序管理、共用功能的执行、程序间消息传递、程序发行包管理,它也提供一些工具和库用于获取、建立、编写和执行多机融合的程序。基于服务的同步RPC(远程过程调用)通讯;基于Topic的异步数据流通讯,还有参数服务器上的数据存储。

2023-03-07 17:53:34 1684

原创 【人工智能与机器学习】Python环境配置与数据处理

NumPy 是一个 Python 包。它代表 “Numeric Python”。它是一个由多维数组对象和用于处理数组的例程集合组成的库。NumPy(Numerical Python) 是科学计算基础库,提供大量科学计算相关功能,比如数据 统计,随机数生成等。其提供最核心类型为多维数组类型(ndarray),支持大量的维度数组 与矩阵运算,Numpy 支持向量处理 ndarray 对象,提高程序运算速度。图灵测试是测试人在与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。

2023-03-06 21:33:53 555 2

原创 STM32使用Modbus协议读取温湿度

软件版本Keil 531硬件AHT20温湿度传感器题目要求用stm32最小核心板+AHT20模块,完成一个 modbus接口的温湿度Slave设备,能够让上位机PC通过modbus协议获取温湿度。主程序采用多任务框架,比如RT-thread Nano。本次实验进一步学习了解了Modbus协议的应用,同时还完成了RT-Thread的移植。

2022-12-25 20:08:23 2223

原创 利用modbus协议从云端服务器读取温湿度数据

Modbus是一种广泛应用于工业控制领域串行通信协议,以其开放性、高可靠性、高效简单性、免费等优点,成为了工业领域通信协议的业界标准,是工业现场电子设备之间常用的连接方式。Modbus按其格式可分为,其中前两者适用于串行通信控制网络中,例如RS485,RS232等,而Modbus-TCP主要应用于基于以太网TCP/IP通信的控制网络中。通过此协议,控制器相互之间、或控制器和其它设备之间进行通信。Modbus协议使用的是主从通讯技术,即由主设备主动查询和操作从设备。一般将主控设备方所使用的协议称为。

2022-12-25 11:33:56 1642 1

原创 通过Wireshark抓包疯狂聊天程序聊天记录

Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。WireShark可以比喻做硬件工程的万用表、示波器,同样我们网络工程师或者软件工程师可以利用wireshark来进行分析网络。直接安装即可。软件使用的协议是UDP,连接端口是5005,能在多台电脑上同时传输聊天数据的原因是发送信息时使用的广播地址。关于UDP:将数据及源和目的封装成数据包中,不需要建立连接;

2022-12-24 16:10:15 1483

原创 新型网络接入控制技术

网络接入控制(Network Access Control,简称NAC)是由思科(Cisco)主导的产业级协同研究成果,NAC可以协助保证每一个终端在进入网络前均符合网络安全策略。NAC技术可以提供保证端点设备在接入网络前完全遵循本地网络内需要的安全策略,并可保证不符合安全策略的设备无法接入该网络、并设置可补救的隔离区供端点修正网络策略,或者限制其可访问的资源。

2022-12-08 19:59:47 992

原创 STM32实现OLED屏显示

软件版本Keil 531硬件题目要求理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:显示自己的学号和姓名;显示AHT20的温度和湿度;上下或左右的滑动显示长字符,如一段歌词或诗词(最好使用硬件刷屏模式)。SPI(Serial Peripheral interface)是串行外围设备接口,SPI 接口主要应用在 EEPROM,FLASH,实时时钟,AD 转换器,还有数字信号处理器和数字信号解码器之间。

2022-11-19 21:33:37 5463

原创 STM32F103 I2C采集温湿度(AHT20)

软件版本Keil 531硬件空闲状态当总线上的SDA和SCL两条信号线同时处于高电平,便是空闲状态,如上面的硬件图所示,当我们不传输数据时, SDA和SCL被上拉电阻拉高,即进入空闲状态起始信号当SCL为高期间,SDA由高到低的跳变;便是总线的启动信号,只能由主机发起,且在空闲状态下才能启动该信号,如下图所示:停止信号当SCL为高期间,SDA由低到高的跳变;便是总线的停止信号,表示数据已传输完成。

2022-11-16 21:17:54 649

原创 Quartus 实现D触发器及时序仿真

初次使用Quartus,输入原理图能更清楚的了解D触发器的内部结构,也可以直接调用库中D触发器进行实验,但对其内部结构不太清楚。同时,使用Verilog语言在遇到比较复杂的电路图时会更容易。

2022-11-13 20:20:24 1707

原创 STM32F103 移植uc/OSIII(HAL库)

软件版本Keil 531硬件以uc/OS-III为例,将其移植到stm32F103上,构建至少3个任务(task)下面进行实操UCOS是Micrium公司出品的RTOS类实时操作系统, UCOS目前有两个版本:UCOSII和UCOSIII。UCOSIII是一个可裁剪、可剥夺型的多任务内核,而且没有任务数限制,提供了实时操作系统所需的所有功能,包括资源管理、同步、任务通信等。

2022-11-07 19:38:34 451

原创 STM32 使用PWM实现呼吸灯

软件版本Keil 531硬件本文将通过PWM波形实现呼吸灯效果含义PWM(Pulse Width Modulation)即脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术;它是一种模拟控制方式,根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变。基本原理PWM就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。

2022-11-06 18:51:02 700

原创 STM32 日历读取和输出

软件版本硬件本文将介绍实时时钟RTC的原理。STM32芯片自带RTC,因此不须像其他MCU需外接RTC模块。RTC (Real Time Clock):实时时钟**RTC是个独立的定时器。**RTC模块拥有一个连续计数的计数器,在相应的软件配置下,可以提供时钟日历的功能。修改计数器的值可以重新设置当前时间和日期 RTC还包含用于管理低功耗模式的自动唤醒单元。在断电情况下 RTC仍可以独立运行 只要芯片的备用电源一直供电,RTC上的时间会一直走。RTC实质是一个掉电后还继续运行的定时器,从定时器的角度来看,相

2022-11-06 11:06:53 235

原创 STM32F103 Timer方式控制LED闪烁及串口通信

软件版本Keil 531硬件之前笔记中介绍的延时功能都是通过循环、本文将采用定时器Timer方式实现时间的精准控制,并且利用定时器实现串口通信以及LED周期闪烁。简单来说就是用来定时的机器,是存在于STM32单片机中的一个外设。定时器名称功能等级TIM1高级控制定时器TIM8高级控制定时器TIM2通用定时器TIM3通用定时器TIM4通用定时器TIM5通用定时器TIM6基本定时器TIM7基本定时器定时器种类位数计数器模式产生DMA请求捕获/比较通道。

2022-11-03 17:44:37 829

原创 STM32 HAL库实现DMA串口通信

软件版本Keil 531硬件DMA全称,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间。当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的。DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。DMA的作用就是实现数据的直接传输,而去掉了传统数据传输需要CPU寄存器参与的环节。

2022-10-23 20:41:01 912

原创 STM32 HAl库中断方式进行串口通信

软件版本Keil 531硬件串口通信的实现方式有多种,轮询、中断以及使用DMA处理等,本文简单实现了中断方式。参考。

2022-10-23 20:02:25 2721

原创 图像加噪与滤波【C#】

项目源码见椒盐噪声又称为脉冲噪声,它是一种随机出现的白点或者黑点。椒盐噪声 = 椒噪声 (pepper noise)+ 盐噪声(salt noise)。椒盐噪声的值为0(椒)或者255(盐),“椒”噪声是低灰度噪声,“盐”噪声属于高灰度噪声。一般两种噪声同时出现,呈现在图像上就是黑白杂点。对于彩色图像,也有可能表现为在单个像素BGR三个通道随机出现的255或0。高斯噪声(Gaussian noise)是指它的概率密度函数服从高斯分布的一类噪声。

2022-10-21 15:47:32 1472

原创 STM32F103中断模式控制led灯亮灭

软件版本Keil 531硬件HAL库可以使用不同方式来完成同一目标,又学习了中断方式控制灯,由于没有开关模块,使用高低电平模拟控制灯的亮灭。

2022-10-19 19:57:57 1523

原创 STM32 USART串口通讯初试【查询方式】

在STM32的参考手册中,串口被描述成通用同步异步收发器(USART),它提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互联网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。还可以使用DMA方式,实现高速数据通信。接受数据输入(RX)和发送数据输出(TX)。RX。

2022-10-18 22:42:38 2043

原创 STM32F103使用寄存器方式点亮LED流水灯

寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的。寄存器是中央处理器内的组成部分。寄存器是有限存储容量的高速存储部件,它们可用来暂存指令、数据和位址。

2022-10-11 18:44:47 718

原创 使用STM32CubeMX+ HAL库点亮流水灯

但是HAL库推出的同时,也加入了很多第三方的中间件,有RTOS,USB,TCP / IP和图形等等。并且从16年开始,ST公司就逐渐停止了对标准固件库的更新,转而倾向于HAL固件库和 Low-layer底层库的更新,停止标准库更新,也就表示了以后使用STM32CubeMX配置HAL/LL库是主流配置环境;和标准库对比起来,STM32的HAL库更加的抽象,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。完成后,点击open project,直接进入keil中。

2022-10-09 21:13:56 429

原创 基于keil MDK STM32的C与汇编语言混合编程

在STM32汇编语言编程与仿真调试的基础上,继续学习Keil下STM32的C与汇编语言混合编程。

2022-10-09 17:11:32 578

原创 ARM汇编 中值滤波

在嵌人式的实际应用中,如A/D采样时,如果有瞬间干扰信号,那么采样回来的数据就有明显的变化,如明显偏大或偏小。因为模拟信号是连续变化的,并且其变化一般都是相对缓慢的, 这时就可以采用中值滤波(也叫“算数中值滤波”),把这些干扰数据去除掉,其原理如下:在采样时连续采样奇数个数 (换句话说,工程信号就是由不同频率的正弦波叠加而成的,组成信号的不同频率的正弦波叫信号的“频率成分”或“谐波成分”。有良好的滤除作用,特别是在滤除噪声的同时,能够保护信号的边缘,使之不模糊。处的样值,便定义为中值滤波的输出值。

2022-10-08 13:53:29 214

原创 基于Keil MDK 完成对纯汇编语言的STM32工程的建立

数据的物理地址是通过将此偏移量添加到先前建立的基地址来计算的,因此允许内存寻址超过16位地址的64 KB限制。快捷键Ctrl + F10,将光标放在某一行,点击该按钮(或Ctrl + F11),程序执行到光标的位置就会停止下来(前提是程序能执行到光标的位置)这个功能在程序停止运行时有效,主要的作用就是在打开了很多文件时,不知道将程序翻到哪里去了,点击按钮即可知道我们的程序暂停在那个位置。全速运行:快捷键F5,可以让程序运行常看运行状态,也可以在特定位置打断点,让程序运行到特定位置,查看运行状态。

2022-10-06 17:14:58 563

身高体重数据集(用于线性回归练习)

身高体重数据集,可用于线性回归练习

2023-03-15

小熊猫ide-dev-cpp的可替代IDE

小熊猫是一个 dev-cpp的可替代IDE。

2022-12-25

C# 图像处理-放大与缩小、翻转、旋转

用于图像处理实验,基于C#的简单程序。实现图像的缩小与放大,包括等比例缩放,和自定义比例缩放;图像的水平/垂直翻转;图像可变角度的旋转操作

2022-10-22

C# 图像加噪【椒盐噪声、高斯噪声】

用于图像处理实验,基于C#的图像处理项目,包含图像的打开与原图查看,对图像进行加噪【椒盐噪声、高斯噪声】,可以改变值达到不同等级的加噪处理。

2022-10-21

C#图像处理(加噪、滤波、锐化等)

基于C#图像处理项目,包含图像的打开与保存、亮度/对比度调节、灰度化、二值化(固定/修改阈值,类判别法)、单通道显示、伪彩色、加噪(椒盐噪声、高斯噪声)、去噪/滤波(最大值/最小值、中值、修正平均)、图像锐化(物种不同算子)

2022-10-21

空空如也

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

TA关注的人

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