- 博客(41)
- 收藏
- 关注
原创 树莓派环境设置
1.下载树莓派镜像格式化工具SDCardFormatterv5烧录工具Raspberry PiVNC Viewer2.SD卡格式化3.烧录镜像 raspberry pi选择CHOOSE OS4.配置网络③查看Ubuntu的网卡名称,一般为ens33④修改Ubuntu网络配置文件sudo nano /etc/network/interfaces将下面信息添加进去sudo nano /etc/resolv.conf将下面信息添加进去创建新的用户增加一条用户名 ALL=(ALL:ALL) ALL(实现新添加用
2022-06-19 22:11:30
644
1
原创 状态机实验
一.测试过程状态机1.新建工程2.计时器模块module time_count( input wire clk, input wire rst_n, output wire sec_15 );parameter MAX_NUM = 30'd749_999_999;reg [29:0] cnt_15;reg sec_15_r;always@(posedge clk or negedge rst_n)begin
2022-05-11 20:38:20
270
原创 Quartus-II利用两个半加器实现简单全加器
目录一、新建工程设计半加器半加器的仿真二、利用两个半加器设计全加器全加器仿真三、硬件测试运行结果软件基于quartusII 13.1版本,开发板基于Intel DE2-115。一、新建工程设计半加器1.新建并命名工程2.选择芯片型号3.新建半加器原理图4.两个input、output,一个AND2元件和一个XOR元件并连线选中并双击下面区域空白处选择元件5.保存并编译6.将该半加器.bdf文件设置成可调用元件半加器的仿真1.新建一个.vwf文件双击空白处2.添加接口
2022-03-15 17:36:01
7436
原创 VLC保存网络视频及抓包合成视频
目录一、VLC保存网络流视频二、fiddler抓包合成视频ffmpeg合成视频链接一、VLC保存网络流视频选择一个网站 模式为串流点击添加点击浏览转码为MP4保存后也可观看二、fiddler抓包合成视频搜索框输入cls清屏抓取bilibili包选中一条鼠标右键Save->Response->Response Body保存格式为.m4sffmpeg合成视频下载地址添加环境变量ffmpeg -i 1.m4s -i 2.m4s -vcodec copy
2021-12-30 22:34:04
2811
原创 使用SMTP POP发送查看邮件
目录一、SMTP和POP二、使用QQ邮箱SMTP服务开启TELNET功能使用SMTP手动发送邮件使用POP查看邮件链接一、SMTP和POPPOPPOP的全称为 Post Office Protocol,即邮局协议,用于电子邮件的接收。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。POP是TCP/IP协议族中的一员,POP允许本地计算机上的用户代理程序连接到邮件服务器,将用户的邮件取回到本地,这样用户就能在本地阅读邮件了。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。SM
2021-12-30 22:13:04
3169
原创 STM32基于W5500模块实现通信
目录一、W5500及modbus二、代码实现1.初始化网络2.响应函数3.main函数循环三、通信结果链接一、W5500及modbusW5500 芯片是一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器,同时也是一颗工业级以太网控制芯片。是韩国WIZnet(微知纳特)发布全硬件TCP/IP协议栈以太网接口芯片。W5500 支持高速标准4线SPI接口与主机进行通信,该 SPI 速率理论上可以达到 80MHz。其内部还集成了以太网数据链路层(MAC)和10BaseT/100BaseTX 以太网物理
2021-12-28 20:29:30
1680
原创 基于SVM,HOG笑脸识别
目录一、HOG描述与SVM简介二、微笑识别1.代码2.笑脸检测和结果链接一、HOG描述与SVM简介方向梯度直方图(英语:Histogram of oriented gradient,简称HOG)是应用在计算机视觉和图像处理领域,用于目标检测的特征描述器。这项技术是用来计算局部图像梯度的方向信息的统计值。HOG理论基础及优点HOG描述器最重要的思想是:在一副图像中,局部目标的表象和形状(appearance and shape)能够被梯度或边缘的方向密度分布很好地描述。具体的实现方法是:首先将图
2021-12-25 21:38:46
1545
原创 RGB转换HSL,HSV及切割车牌
目录HSL和HSV简介对比RGB与HSL HSV相互转换RGB->HSL HSVHSL->RGBHSV->RGB一、图片颜色转换1.转换为灰度图2.转化为HSV HSL二、车牌切割1.读取2.灰度化和二值化3.闭运算4.腐蚀(去掉螺丝孔带来的影响)5.切割保存链接HSL和HSV简介HSL和HSV都是一种将RGB色彩模型中的点在圆柱坐标系中的表示法。这两种表示法试图做到比基于笛卡尔坐标系的几何结构RGB更加直观。HSL(HSI)即色相、饱和度、亮度(英语:Hue, Saturatio
2021-12-24 20:22:35
2672
原创 图片格式认识及相关处理
目录一、认识BMP文件Bitmap文件头颜色表和点阵数据二、图片示例1.图像表现2.储存大小三、图片编程处理1.奇异函数分解(SDV)2.利用图像的开闭运算(腐蚀-膨胀)计算硬币、细胞数量3.定位条形码一、认识BMP文件Bitmap简介:位图图像(bmp),亦称为点阵图像或栅格图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增大单个像素,从而使线条和形状显得参差不齐。然而,如果从稍远的位
2021-12-12 22:15:12
787
原创 STM32使用RTC计时并使用仿真查看串口频率
目录RTC组成和特征一、使用HAL库新建程序1.CubeMXRTC串口2.keil结果二、仿真逻辑仪分析串口波形1.keil仿真2.saleaelogic仿真RTC实时时钟的缩写是RTC(Real_Time Clock)。RTC 是集成电路,通常称为时钟芯片。-实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC模块和时钟配置系统(RCC_BDCR寄存器)处于后备区域,即在系统复位或从待机模式
2021-12-04 23:43:49
1208
原创 基于HAL库移植uC/OS-III
目录一、uC/OS-Ⅲ二、项目准备1.文件准备2.新建工程三、导入文件和相关设置1.文件夹转移(方便之后的步骤)2.增加itemBSPCONFIGSOURCEPORTLIBCPU3.增加头文件路径四、代码修改1.starup2.app_cfg.h3.includes.h4.bsp.c .hmain结果一、uC/OS-ⅢμC/OS,最早出自于1992 年美国嵌入式系统专家Jean J.Labrosse 在《嵌入式系统编程》杂志的5 月和6 月刊上刊登的文章连载,并把μC/OS 的源码发布在该杂志
2021-12-04 23:16:28
386
原创 C#基于已有程序的游戏设计
目录一、连接服务器二、玩家向服务器发送数据三、BGM控件的实现1.添加组件2.代码准备四、游戏背景变换小结使用Virtual Studio 2022利用老师给出的框架进行的修改。一、连接服务器NetworkStream的相关知识点①NetworkStream只能使用于具有TCP/IP协议之中,用于UDP中虽然不会报错,但是会出现异常。②NetworkStream是面向连接的。③NetworkStream是利用流的形式进行传输信息。private NetworkStream stream
2021-11-28 20:19:15
3932
原创 C#编写端口扫描器
目录一、项目设计二、单线程1.代码编写2.扫描结果三、多线程1.代码编写2.扫描结果小结一、项目设计新建项目整体设计最终设计二、单线程1.代码编写buttonusing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Net.Sockets;usi
2021-11-25 22:32:20
185
原创 TCP/UDP基础通信编程
目录C# "HelloWorld"创建项目代码编写C# “HelloWorld”创建项目代码编写using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace hello{ internal class Program { static void Main(string[] a
2021-11-25 22:03:09
344
原创 爬虫入门练习
目录网络爬虫一、爬取[南阳理工OJ题目](http://www.51mxd.cn/problemset.php-page=1.htm)python代码结果二、爬取[重交新闻](http://news.cqjtu.edu.cn/xxtz.htm)python代码结果小结网络爬虫简介网络爬虫英文名叫Web Crawler戒WebSpider。是一种自动浏览网页并采集所需要信息癿程序。通过编写脚本模拟浏览器发起请求获取数据。爬虫从初始网页的URL开始, 获取初始网页上的URL,在抓取网页的过程中,不断从
2021-11-20 23:21:46
680
1
原创 wireshark抓取未加密聊天数据
wireshark简介Wireshark(前称Ethereal)使用WinPCAP作为接口,直接与网卡进行数据报文交换。在过去,网络封包分析软件是非常昂贵的,或是专门属于盈利用的软件。Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的途径取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。Ethereal是全世界最广泛的网络封包分析软件之一。Wireshark不是入侵侦测系统(Intrusion Detection System,IDS)。对于网
2021-11-20 22:54:37
1373
原创 基于dlib建立人脸识别
目录Ⅰ-采集并储存人脸图像Ⅱ-建立特征数据集基于数据集进行人脸识别小结dilb库安装及原理可参考:python+OpenCv+dlib实现人脸68个关键点检测并标注Ⅰ-采集并储存人脸图像在gif文件中提取20人脸import cv2import dlibimport osimport sysimport random# 存储位置output_dir = 'D:/myworkspace/JupyterNotebook/People/person/person2'size = 64 i
2021-11-18 22:42:55
378
原创 使用LIBSVM训练核函数
目录Ⅰ-LIVSVM是什么Ⅱ-使用LIBSVM生成数据集Ⅲ-使用LIBSVM求决策函数线性核多项式核高斯核小结Ⅰ-LIVSVM是什么LIBSVM – A Library for Support Vector MachinesChih-Chung Chang and Chih-Jen LinLIBSVM是台湾大学林智仁教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包。Ⅱ-使用LIBSVM生成数据集1.启动LIBSVM解压好的libsvm目录下找到windows文件夹
2021-11-18 22:24:32
1297
原创 Linux下点阵汉字的字模显示
目录Ⅰ汉字点阵字库编码点阵获取Ⅱ Ubuntu中使用C++调用OpenCV在图片上叠加汉字1.代码准备2.编译3.结果小结Ⅰ汉字点阵字库编码区位码 在国标GD2312—80中规定,所有的国标汉字及符号分配在一个 94 行、94 列的方阵中,方阵的每一行称为一个“区”,编号为 01 区到 94 区,每一列称为一个“位”,编号为01 位到 94 位,方阵中的每一个汉字和符号所在的区号和位号组合在一起形成的四个阿拉伯数字就是它们的“区位码”。 区位码的前两位是它的区号,后两位是它的位号。 用区位码
2021-11-13 00:58:37
3406
原创 两电脑间利用串口进行文件传输
目录Ⅰ建立连接Ⅱ接收数据(jpg)Ⅲ传输数据(txt)小结Ⅰ建立连接使用串口线将两电脑相连Ⅱ接收数据(jpg)打开串口通信软件打开串口1.另一台电脑开始传输2.保存接收的文件命名为ll3.修改txt后缀为jpg4.接收的图片如下Ⅲ传输数据(txt)加载txt文件内容为:3099e57fa0f7a7c8370f363e155d682a1.发送数据2.接收数据成功小结通过将两台笔记本电脑,建立起串口连接。在一定范围内,当波特率增大时,对于同等大小的文件,传输
2021-11-12 21:13:38
1304
原创 人脸特征点提取
目录dlib与opencv安装Ⅰ-提取人脸特征Ⅱ-在眼睛处绘制黑色的实心圆(伪墨镜)小结链接dlib与opencvDlib 是一个十分优秀好用的机器学习库,其源码均由 C++ 实现,并提供了 Python 接口,可广泛适用于很多场景.这里主要记录 Dlib 中关于人脸检测和人脸关键点等技术的 python 应用.OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系
2021-11-12 19:58:47
6117
原创 SVM处理月亮、鸢尾花数据集
初步了解SVM机器学习之支持向量机以下为本次会使用的核函数目录Ⅰ-处理月亮数据集代码准备1.基于线性核函数2.基于多项式核3.基于高斯核Ⅱ-处理鸢尾花数据集代码处理1.基于线性核2.基于多项式核3.基于高斯核小结Ⅰ-处理月亮数据集代码准备# 边界绘制函数import numpy as npfrom matplotlib.colors import ListedColormapdef plot_decision_boundary(model,axis): x0,x1=np.mes.
2021-11-12 17:37:03
1739
原创 STM32中断与DMA通信
目录Ⅰ-中断方式点灯中断1.创建STM32CubeMX工程LED2.keil代码修改LED3.结果Ⅱ-中断方式串口通信1.创建STM32CubeMX工程USART2.keil代码修改USART3.结果Ⅲ-DMA向上位机发送数据DMA1.创建STM32CubeMX工程2.keil代码修改3.结果小结链接Ⅰ-中断方式点灯中断中断通常被定义为一个事件,该事件能够改变处理器执行指令的顺序。这样的事件与 CPU 芯片内外部硬件电路产生的电信号相对应。中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急
2021-11-08 22:19:18
668
原创 Wireshark抓包
目录Ⅰ.HTTP(1)协议概述(2)请求方法Ⅱ.使用wireshark抓包验证1.选择接口筛选2.观察TCP握手小结链接Ⅰ.HTTP(1)协议概述超文本传输协议(英语:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。HTTP是一个客户端(用户)和服务端(网站)之间请求和应答的标准,通常使用TCP协议。通过使用网页浏览器、网络爬虫或者其它的工具,客户端发起一个HTTP请求到服务器上指定端口
2021-11-07 22:12:27
288
原创 机器学习之支持向量机
Ⅰ支持向量机在机器学习中,支持向量机(英语:support vector machine,常简称为SVM,又名支持向量网络[1])是在分类与回归分析中分析数据的监督式学习模型与相关的学习算法。给定一组训练实例,每个训练实例被标记为属于两个类别中的一个或另一个,SVM训练算法创建一个将新的实例分配给两个类别之一的模型,使其成为非概率二元线性分类器。SVM模型是将实例表示为空间中的点,这样映射就使得单独类别的实例被尽可能宽的明显的间隔分开。然后,将新的实例映射到同一空间,并基于它们落在间隔的哪一侧来预测所属
2021-11-05 18:54:29
236
原创 LDA代码案例
Ⅰ线性判别分析**线性判别分析 (LDA)**是对费舍尔的线性鉴别方法的归纳,这种方法使用统计学,模式识别和机器学习方法,试图找到两类物体或事件的特征的一个线性组合,以能够特征化或区分它们。所得的组合可用来作为一个线性分类器,或者,更常见的是,为后续的分类做降维处理。(wikipedia)在实际中,类的均值和协方差都是未知的。然而,它们可以从训练集合中估算出来。最大似然估计和最大后验概率估计都可以用来替代上述方程里面的相应值。虽然协方差的估值在某种意义上是最优的,即使对类的正态分布假设是正确
2021-11-05 18:38:04
1510
原创 简易多元线性回归学习
目录多元线性回归一、问题分析二、数据预处理(excel)1.数据清洗2.数据全数值化三、使用EXcel回归回归实现回归分析四、使用代码实现回归ⅠStatsmodels1.数据处理2.绘制热力图探讨价格与其他之间的联系3.利用statsmodels建立回归方程ⅡSklearn数据处理及计算R方小结相关链接多元线性回归多元线性回归是一般线性模型到多个自变量的概括,以及一般线性模型的特例,仅限于一个因变量。一般线性模型(general linear model, multivariate regress
2021-11-03 15:41:14
550
原创 基于STM32汇编程序的编写
目录新建keil项目程序编写及运行1.添加代码2.仿真设置3.程序调试运行结果小结链接新建keil项目点击Project下的New uVision Project选择芯片型号 1.CMSIS下选择CORE; 2.Device下Startup,其中包含了启动文件; 程序编写及运行1.添加代码选择Asm File(.s),创建汇编文件Test.s AREA MYDATA, DATA AREA MYCODE, CODE ENTRY EXPORT __main__main
2021-10-31 19:57:21
182
原创 决策树挑选西瓜
决策树「Decision Tree」常用于数据领域的分类和回归,是一种流行的机器学习手段;对于复杂的预测问题,通过建立树模型产生分支节点,被划分成两个(二叉树)或多个(多叉树)较为简单的子集,从结构上划分为不同的子问题。将依规则分割数据集的过程不断递归下去(Recursive Partitioning)。随着树的深度不断增加,分支节点的子集越来越小,所需要提的问题数也逐渐简化。当分支节点的深度或者问题的简单程度满足一定的停止规则(Stopping Rule)时, 该分支节点会停止分裂,此为自上而下的停止阈.
2021-10-31 19:22:57
254
原创 初步串口通信学习
目录(一)RS-232与TTL区别和USB/TTL转232"的工作原理1.RS-232与TTL电平区别RS-232具体区别2.USB转串口原理(二)LED点灯实验1.cubeMX项目设置时钟设置项目完成创建2.keil中编译项目main函数中加入以下代码运行效果如下(三)USART串口通讯实验(一)RS-232与TTL区别和USB/TTL转232"的工作原理串口通讯串口通讯 (Serial Communication)是一种设备间非常常用的串行通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调
2021-10-30 21:01:20
395
原创 从JDBC到MyBatis
Mybatis对JDBC进行改造一、JDBC1.新建IDEA项目新建java class代码如下import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DatebaseLink {//mysql8.0以上版本 static fin
2021-10-22 23:18:46
106
原创 学习GPIO端口并使用STMcubeMX实现LED点灯
目录(一)学习GPIO端口的初始化设置三步骤(二)在STM32cubeMX中创建项目项目设置时钟设置项目完成创建(三)keil中编译项目main函数中加入以下代码运行效果如下小结(一)学习GPIO端口的初始化设置三步骤GPIO相关的寄存器首先需要知道的是,STM32中对于GPIO口的操作,无非就是操作下面的寄存器而已,所谓的标准库也好,HAL库也好,它们都只是对操作寄存器的过程进行了封装,目的是为了减轻你编程时的工作负担。因此对于寄存器的描述,你只要稍微了解一下,大概知道每个寄存器是干啥的,有哪些位,
2021-10-22 20:24:33
242
原创 IDEA项目上传到Github
目录Git下载IDEA中上传到GitHubidea中配置gitidea中登录github创建项目仓库并上传修改项目再上传commit静态网页版本回退小结链接Git下载Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。详细安装步骤见链接: Git 详细安装教程IDEA中上传到GitHubidea中配置gitidea中登录github1打开GitHub网页,
2021-10-15 15:34:17
103
原创 Keil下STM32的C与汇编语言混合编程
目录C语言调用汇编函数编写代码编译调试Init_1函数的类型改为 int Init_1(init)1.修改代码编译调试汇编函数调用C语言函数编写代码 g.c及修改fun代码直接debugC语言调用汇编函数编写代码1.创建新uvision项目命名为stu22.创建新的Asm File .s3.在.s 文件中编写代码如下 AREA My_Function,CODE ,READONLY EXPORT Init_1 Init_1 MOV R1,#0 MOV R2,#0
2021-10-15 10:47:50
91
原创 重温JDBC
MDK536项目创建Keil uVision5中基于STM32F103ZET6创建新项目配置环境添加源文件创建Arm File —stu1测试代码仿真器设置使用软件仿真DEBUG
2021-10-14 20:58:38
168
原创 初识线性回归
什么是线性回归在二十世纪二十年代以前,科学家基于传统牛顿力学、相对论等理论的成功,认为世界是由因果规律支配的,一切事物都严格遵守因果律和自然法则。也就是苹果会掉下来是因为有力在拉它,太阳在转也是因为有力在拉它。推导到最后就发现世界必须有一个源头提供原始的力,最终侧面证明了上帝的存在二十世纪二十年代,开创量子力学的哥本哈根学派科学家波尔、海森伯认则为认为世界上一切事物的发生都是不确定的,只能用概率也就是发生的可能性来描述事物运动规律。也就是说世间一切的事儿都符合于某种概率分布而不是因果,可以用概率模型来表
2021-10-02 17:14:51
118
原创 Spring Boot开发入门及Java软件设计模式的学习
IDE:idea2020.3postman目录"hello spring boot!"分别用get、put、post等访问一个累加计数器postman测试Java软件设计模式的学习单例模式一个例子-枚举工厂模式一个例子-简单工厂模式小结“hello spring boot!”通过idea创建基于spring boot的web项目,该网页返回为基本的“hello spring boot”New Project选择Spring Initializr接下来的界面选择web—spring web在c
2021-09-20 18:56:15
185
原创 Ubuntu18.04环境中使用gcc和makefile的简单编译(VMware)
软件支持:VMwareWorkstation16Ubuntu目录安装VMwareWorkstationPro虚拟机环境虚拟环境中安装Ubuntu使用gcc和Makefile编译C程序gcc直接编译编译及结果windows平台对比Makefile编译小结安装VMwareWorkstationPro虚拟机环境官网下载并安装输入密钥后运行vmware创建虚拟机选择稍后安装操作系统创建完成虚拟环境中安装Ubuntu官网下载Ubuntu映像虚拟机设置打开虚拟机 选择英语进行安装
2021-09-16 17:44:13
367
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人