- 博客(38)
- 收藏
- 关注
原创 毕业实习——基于OpenVINO的口罩检测任务
0表示nomask,1表示mask,图片中标注了多少个框,相应的生成几排数据。如下魔性图中,假如图片是680x640,0或者1后面的几个小数分别代表框的中心坐标x,y,框的宽w,框的高h。生成的train.txt,val.txt如下,train_val_split是上述源代码文件,放置位置如下图所示,因为使用的jupyter notebook编写,所以是.ipynb,可以转成.py文件并在该文件夹下运行。因为数据集过大,启动一个项目,然后直接上传是不行的,所以先创建一个数据集,再在数据集基础上创建项目。
2023-07-16 10:45:50
408
1
原创 基于卷积神经网络 CNN 的猫狗识别详细过程
训练结果如上图所示,很明显模型上来就过拟合了,主要原因是数据不够,或者说相对于数据量,模型过复杂(训练损失在第30个epoch就降为0了),训练精度随着时间线性增长,直到接近100%,而我们的验证精度停留在70-72%。由于数据量的增加,对比基准模型,可以很明显的观察到曲线没有过度拟合了,训练曲线紧密地跟踪验证曲线,这也就是数据增强带来的影响,但是可以发现它的波动幅度还是比较大的。数据集增强主要是为了减少网络的过拟合现象,通过对训练图片进行变换可以得到泛化能力更强的网络,更好的适应应用场景。
2023-07-02 21:54:26
3588
2
原创 机器学习——决策树基础篇
现在我们只看年龄是青年的数据的最终得到贷款的概率为五分之二,因为在五个数据中,只有两个数据显示拿到了最终的贷款,同理,年龄是中年和老年的数据最终得到贷款的概率分别为五分之三、五分之四。那么,什么是信息增益?我们已经学习了从数据集构造决策树算法所需要的子功能模块,包括经验熵的计算和最优特征的选择,其工作原理如下:得到原始数据集,然后基于最好的属性值划分数据集,由于特征值可能多于两个,因此可能存在大于两个分支的数据集划分。根据表中的数据统计可知,在15个数据中,9个数据的结果为放贷,6个数据的结果为不放贷。
2023-07-02 21:05:47
258
2
原创 机器学习基础算法——多分类问题
在本练习中,我们将使用逻辑回归来识别手写数字(0到9)。我们将扩展在练习2中对逻辑回归的实现,并将其应用于一对多的分类问题。
2023-06-16 11:03:13
326
原创 机器学习基础算法——支持向量机
在本练习中,我们将使用支持向量机(SVM)来构建垃圾邮件分类器。在开始练习前,需要下载如下的文件进行数据上传:data.tgz -包含本练习中所需要用的数据文件其中:ex5data1.mat -数据集示例1ex5data2.mat -数据集示例2ex5data3.mat -数据集示例 3spamTrain.mat -垃圾邮件训练集spamTest.mat -垃圾邮件测试集emailSample1.txt -电子邮件示例1emailSample2.txt -电子邮件示例2。
2023-06-16 10:50:02
101
原创 用树莓派3B+和HC-SR04超声波测距模块实现测距
HC-SR04有4 个引脚, 2 个电源引脚(Vcc 、GND)和 2 个控制引脚(Trig、Echo)Vcc 和 Gnd 接 3.3v DC 电源,但不推荐用独立电源给它供电,可以接树莓派的引脚给它供电。Trig 引脚用来接收来自树莓派的控制信号。接任意 GPIO 口。Echo 引脚用来发送测距结果给树莓派。接任意 GPIO 口。HC-SR04 的测距过程树莓派向 Trig 脚发送一个持续 10us 的脉冲信号。
2023-06-07 13:36:53
103
原创 树莓派无需显示屏的VNC Viewer方式的远程连接
由于本次实验没有外接显示器。所以学习了使用远程连接的方法,这也是第一次知道这个方法。希望笔者的这次实验能够给读者带来帮助。
2023-06-07 13:25:31
1066
原创 基于FPGA的超声波测距
环境:2、vscode3、板子型号:EP4CE6F17C8N4、超声波模块:HC_SR04使用 DE2-115要求:开发板驱动 超声波检测模块(HC_SR04 ),并将所测得数据显示到开发板上的数码管上,或者通过用UART通信方式上传到笔记本串口助手上显示(可采用UART IP核)。HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。(1)采用IO口 TRIG触发测距,给最少10us的高电平信呈。
2023-05-28 17:37:14
211
原创 HLS入门实践
HLS(High Level Synthesis):一款高层次综合工具。能够将 C/C++ 或 者 system C 等高级语言转化为 RTL (底层硬件描述语言)电路,降低开发时间。提供了常见的库(例如图像处理相关的 OpenCv 库和其它的数学库)。可以创建IP并通过例化或者使用 BlockDesign 的方式应用到项目中。
2023-05-18 17:42:41
458
原创 【FPGA实验】基于DE2-115平台的VGA显示
VGA(Video Graphics Array)视频图形阵列是IBM于1987年提出的一个使用模拟信号的电脑显示标准。VGA接口即电脑采用VGA标准输出数据的专用接口。VGA接口共有15针,分成3排,每排5个孔,显卡上应用最为广泛的接口类型,绝大多数显卡都带有此种接口。它传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。VGA接口是一种D型接口,上面共有15针孔,分成三排,每排五个。
2023-04-25 20:22:19
268
原创 基于 NIOSII 软核的流水灯实验
本篇博客主要是学习 Quartus 、Platform Designer、Nios-II SBT 的基本操作;初步了解 SOPC 的开发流程,基本掌握 Nios-II 软核的定制方法;掌握 Nios-II 软件的开发流程,软件的基本调试方法。实现在DE2-115开发板上分别用Verilog和Nios软件编程两种方式完成LED流水灯显示。本次主要学到了以下内容:1、懂得了Nios II 软核的搭建方法,掌握 了Nios II 软件的特性。
2023-04-14 18:31:01
155
原创 FPGA——1位全加器的实现
启动 Quartus II 软件,选择File->New Project Wizard,在出现的界面下先Next,填写工程的路径和名称,然后接着Next,直到出现下面界面并进行相应操作。保存文件并启动功能仿真,出现错误,进行仿真配置,选择tool->launch simulation library complier。通过拨动SW,观察LED的亮灭的效果,发现SW开表示1,关表示0,LED亮表示1,灭表示0。首先选择File->New,进入后选择Block Diagram/Schematic File。
2023-04-08 18:17:08
472
原创 初识线性回归(Excel-Python实现)
这次博客,一共使用了三种方法对Excel的数据进行回归计算并分析。直接用Excel表的回归更直观,也更方便。但是,用jupyter进行编程的话对公式的理解就较为深刻,使用sklearn库的话使用内置的库函数则相对编程的方法较为方便,不用自己编程实现公式。
2023-03-17 14:01:53
176
原创 Python环境配置与数据处理
图灵测试是指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。进行多次测试后,如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。本次是第一次安装在windows中的Anaconda环境下练习创建虚拟环境,在虚拟环境下安装 jupyter 和 numpy,并运行jupyter。完成了jupyter基础练习,并且完成numpy、pandas、matplotlib三个库的例题。总的来说,安装过程很简单,就是有些算法需要琢磨一下。
2023-03-10 18:45:35
2342
原创 Ubuntu系统安装ROS & 实现小海龟仿真
ROS (Robot Operating System, 机器人操作系统)提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。它提供了硬件抽象、设备驱动、库函数、可视化、消息传递和软件包管理等诸多功能。这是第一次安装ROS,安装中途还是有一些问题的,比如网络较差,ubuntu版本不一致,但是最终还是解决了。如果电脑安装ROS有问题的,可以采用直接导入Ubuntu18+ROS 镜像的方式,节约时间。镜像文件很大,约7GB,请从百度网盘下载。提取码:2022。
2023-03-07 16:40:55
1038
原创 基于物联网技术的智慧病房管理系统
设计一个基于物联网技术的智慧病房管理系统。假设医院住院部的一层病房(走廊两边病房平行分布),病房数量最多60间,每间病房3个床位,编号从1~180号。每间病房可采用的设备如下:STM32F103开发板1块,房间温湿度采集模块1套(I2C接口,AHT20模块),房间自动灯光开关控制器(以PWM方式控制,每天早上7点渐亮,晚上22点渐灭),病人脉搏&血氧检测仪3套(UART接口输出脉搏+血氧的数字值),床头紧急呼叫按键开关3个(按下呼叫)。
2023-01-15 15:35:23
171
原创 STM32F103C8基于Modbus协议读取温湿度
stm32f103通过串口二向485总线轮询发送问答帧访问所有modbus温湿度传感器模块,并且把得到的应答帧进行解析,得到对应的温湿度的值,再通过串口一发送至PC端。
2022-12-26 17:45:26
314
3
原创 wireshark抓取网络数据包(疯狂聊天室)
软件使用的协议是UDP,能在多台电脑上同时传输聊天数据的原因是发送信息时使用的广播地址。关于UDP:将数据及源和目的封装成数据包中,不需要建立连接;每个数据报的大小在限制在64k内;因无连接,是不可靠协议;不需要建立连接,速度快。使用udp协议主要涉及到两个类:DatagramSocket,DatagramPacket。学会抓包可以帮助我们在网络编程过程中很好的测试。
2022-12-26 17:15:09
160
原创 通过STM32F103C8T6配置完成基于SPI协议的0.96OLED屏显
本篇博客主要是理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:1、显示自己的学号和姓名;2、显示AHT20的温度和湿度;3、上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”或者一段歌词或诗词(使用硬件刷屏模式)。
2022-11-23 20:40:58
2304
原创 STM32完成基于I2C协议的AHT20温湿度传感器的数据采集并通过串口输出
学习了IIC协议,清楚协议大致流程。第一次使用传感器进行实验,感觉很酷。也是第一次调用厂商的代码,并且通过STM32Cube进行配置相当方便,这样应该是以后工作的常态吧(使用厂商的代码)。
2022-11-23 18:13:49
196
原创 Quartus II实现D触发器
三种方式的对比:输入原理图能更清楚的了解D触发器的内部结构,调用D触发器最方便,但对D触发器的内部结构来说就不太清楚,Verilog语言在遇到比较复杂的电路图时会更容易。通过三种方式实现D触发器及时序仿真的过程,可以发现D触发器的基本功能是在复位信号为1的时候,CLK的上升沿会引起Q值的变化。
2022-11-14 20:57:58
591
原创 STM32F103C8移植uCOSIII(基于HAL库)
本次实验过程很复杂,一定要小心,每一步都要准确完成,不然可能会走很多弯路。详细可参考博客:https://blog.csdn.net/qq_45659777/article/details/121570886。
2022-11-08 10:28:20
287
原创 使用STM32输出PWM波形并驱动LED呼吸灯
本篇博客,使用TIM3和TIM4,分别输出一个PWM波形,PWM的占空比随时间变化,去驱动你外接的一个LED以及最小开发板上已焊接的LED(固定接在 PC13 GPIO端口),实现2个 LED呼吸灯的效果。
2022-11-07 22:27:12
1498
原创 通过RTC实现STM32的日历读取、设置和输出
STM32芯片自带RTC,因此不须像其他MCU需外接RTC模块。通过此次实验,我了解了实时时钟RTC的原理。并且知道了如何去实现STM32的日历读取、设置和输出。
2022-11-04 16:15:10
649
原创 stm32定时器控制LED闪烁和串口通信
之前作业中的延时功能都是通过循环、delay/Hal_delay函数等实现,本次作业通过定时器Timer方式实现时间的精准控制,相当于给CPU上了一个闹钟,CPU平时处理其它任务,当定时时间到了以后,处理定时相关的任务。要求:请设置一个5秒的定时器,每隔5秒从串口发送“hello windows!”;同时设置一个2秒的定时器,让LED等周期性地闪烁。
2022-11-04 15:51:08
725
原创 DMA (串口DMA发送接收)
直接存储器访问 (Direct Memory Access) :用于在外设与存储器之间以及存储器与存储器之间进行高速数据传输。DMA传输过程的初始化和启动由CPU完成,传输过程由DMA控制器来执行,无需CPU参与,从而节省CPU资源,提高利用率。DMA传输的四个要素:传输源:DMA数据传输的来源传输目标:DMA数据传输的目的传输数量:DMA数据传输的数量触发信号:启功一次DMA数据传输的动作。
2022-10-23 19:27:15
2194
原创 HAL库中断方式进行串口通信
软件版本:KEIl:5.31硬件:char c;//指令 0:停止 1:开始 char message [ ] = "hello Windows\n";//输出信息 char tips [ ] = "CommandError\n";//提示1 char tips1 [ ] = "Start.....\n";//提示2 char tips2 [ ] = "Stop......\n";//提示3 int flag = 0;//标志 0:停止发送 1.开始发送。
2022-10-23 18:30:46
112
原创 stm32外部中断模式控制灯亮灭
1.打开生成的项目,找到stm32f1xx_it.c,找到EXTI9_5_IRQHandler这个函数,选中HAL_GPIO_EXTI_IRQHandler这个语句按F12跳到该函数。先创建项目,过程可参考:https://blog.csdn.net/m0_50257213/article/details/127305041。该函数是给用户自己重写的,可以在这里根据不同的中断来执行不同的处理。2.如果按F12无法跳到函数,可以参照以下路径查找HAL_GPIO_EXTI_Callback该函数。
2022-10-23 17:31:28
122
原创 STM32的USART串口通讯程序
通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个UART(Universal Asynchronous Receiver and Transmitter),它是在 USART 基础上裁剪掉了同步通信功能,只有异步通信。简单区分同步和异步就是看通信时需不需要对外提供时钟输出,我们平时用的串口通信基本都是 UART。
2022-10-22 18:39:24
360
原创 STM32寄存器&HAL库方式的LED程序
自己单独用keil写程序时比较棘手,需要参考很多资料。不过用STMCubeMX+keil+hal库实现程序就简单许多。
2022-10-13 19:16:08
280
原创 搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写
此次实验,是第一次安装MDK软件,并且学习到简单的基于STM32汇编程序的编写、仿真调试。因为没有接入硬件设施,所以只能先进行程序的编译和仿真测试,而没有办法下载到硬件上运行,这个LED灯闪烁的代码不用深入了解,只是进行一个简单的程序编译调试。
2022-10-08 14:33:04
533
原创 Linux GCC 常用命令和 GCC编译器背后的故事
GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了,而是变成了 GNU Compiler Collection 也即是 GNU 编译器家族的意思了。另。
2022-09-21 22:23:33
190
原创 Ubuntu16.04下OpenCV3.4.15的安装及使用示例
ubuntu下安装opencv确实是比较麻烦的,需要有点耐心做下去,但是使用opencv还是挺有意思的,能够和实际相关联,也让我们理解了其实录制视频的代码并没有那么复杂。希望学完这章,能够对opencv有更大的兴趣,并且也能够深入学习嵌入式系统。
2022-09-21 21:17:51
1487
原创 用 gcc生成静态库和动态库以及静态库和动态库的使用
自定义的库时,main.c还可放在-L.和–lmyhello之间,但是不能放在它俩之后,否则会提示 myhello没定义,但是是系统的库时,如 g++ -o main(-L/usr/lib) -lpthread main.cpp就不出错。静态库文件命名规范:以lib作为前缀,是.a文件。实例中由于把main.o中的o打成数字0造成错误。(3). gcc编译得到.o文件。(2)在目录下创建三个文件。创建静态库的工具:ar。结果与静态库的结果相同。
2022-09-18 22:29:51
212
原创 Ubuntu系统使用gcc和Makefile编译C程序以及Windows系统下编译C程序
以上就是今天要讲的内容,本文仅仅简单展示了ubuntu系统下gcc编译器和Makefile的使用。
2022-09-09 21:04:05
618
原创 JavaScript & TypeScript 学习总结
JavaScript 是 Web 的编程语言。所有现代的 HTML 页面都可以使用 JavaScript。JavaScript 是 web 开发人员必须学习的 3 门语言中的一门:HTML 定义了网页的内容CSS 描述了网页的布局JavaScript 控制了网页的行为(HTML 中的 Javascript 脚本代码必须位于 script标签内。可被放置在 HTML 页面的 body 和 head 部分中。)使用 window.alert() 弹出警告框。使用 document.write() 方
2022-07-09 04:59:02
54
原创 HTML&CSS 学习总结
以下是一个完整的html页面的结构:可以发现每个结构都是由内容构成。例如上图中h1为一个标题,p是一个段落。总而言之,HTML 是一种在 Web 上使用的通用标记语言。HTML 允许你格式化文本,添加图片,创建链接、输入表单、框架和表格等等,并可将之存为文本文件,浏览器即可读取和显示。HTML 的关键是标签,其作用是指示将出现的内容。要想学习HTML的各种标签可以参考以下网站:菜鸟驿站在HTML中,我们可以设计网页上的内容,但是缺无法让页面展示的更好看(HTML的页面默认为浏览器的...
2022-07-09 04:16:50
251
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人