- 博客(43)
- 资源 (5)
- 收藏
- 关注
原创 pyinstall 打包 paddleocr 成为.exe文件步骤
因为打包过程中,没能把ultralytics库导进来,所以我们把ultralytics文件夹复制到。把 tools与 ppocr复制到 _internal里面,正常运行。三、输入pyinstaller testsu49.spec就完成了。由上图已知,缺少defaut.yaml 文件,我们需要 从下面获取。四、运行testsu49.exe.会出现下面的错误。五、继续运行testsu49.exe,又出现了。产生上图两个文件夹,build与 dist。这是由于paddleocr 没有导入进来。
2024-06-08 20:31:48
738
1
原创 yolov8 预测目标图像显示
cv2.imwrite("cropped_image.jpg", cropped_img) # 如果需要,取消注释这行来保存图像。bbox = results[0].boxes.xyxy[0].tolist() # 提取第一个边界框的xywh值。results = yolo(source=img) # 如果yolo库支持直接处理numpy数组,则传入img。# 注意:如果您的YOLO库版本不支持直接处理numpy数组,您可能需要将图像保存为文件,# 对图像"aaa.jpg"进行目标检测。
2024-05-17 09:37:28
546
原创 yolov8使用与训练步骤
在网页按ctr+F 输入:搜py38 Miniconda3-py38_22.11.1-1-Windows-x86_64.exe 52.5 MiB 2022-12-23 07:57 下载进行安装 安装过程中记得加环境变量这个项。训练:yolo task=detect mode=train model=./yolov8n.pt data=yolo-bvn.yaml epochs=30 workers=1 batch=16。激活:命令:conda activate yolov8。
2024-05-15 18:47:26
569
原创 jupyter notebook导出pdf文件显示不了中文
找到文件index.tex.j2,我的在 C:\Users\Administrator\miniconda3\envs\opencv2\share\jupyter\nbconvert\templates\latex。最后:用文本编辑器打开,修改图中article为ctexart,重启jupyter lab即可导出为中文pdf。我安装miniconda3并配置opencv2所需要的环境,注:上面的图片参与网上的。
2024-05-01 13:51:20
784
1
原创 opencv动态识别人脸
gray = cv2.imread('./faces_dymamic/%s/%d.jpg'% (dir,i)) #三维图片。print('这个人是:%s.置信度:%0.1f'%(label,confidence))key = input('请输入文件夹的名字,姓名拼音的缩写,如果输入Q,程序退出!gray_ = gray[:, :, 0] #二维数组。target.sort() # 排序。#4、算法训练,找到目标值之间的规律。#2、加载数据,返回目标值。#3、加载人脸识别算法。
2024-04-27 21:25:39
926
2
原创 yolov8操作步骤
2、搜py38 Miniconda3-py38_22.11.1-1-Windows-x86_64.exe 52.5 MiB 2022-12-23 07:57。1、https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/(下载)清华源:https:/mirrors.tuna.tsinghua.edu.cn/help/pypi/9\源码安装: 在当前文件目录中 pip install -e. 查看安装情况:pip list。
2024-04-20 08:35:59
345
原创 OPEN CV 实现车辆统计
通过外接矩形的宽高大小来过滤掉小的矩形。#把车抽象为一点,即外接矩形的中心点。#要通过外接矩形计算矩形的中心点。# 如何画线,画在什么位置。#要求坐标点数都是整数。# 如何画线,画在什么位置。# 把原始帧进行灰度化。#膨胀,把图像还原回来。#画出所有检测的轮廓。
2024-04-20 08:14:49
410
2
原创 AT24C02读写操作 四
/在主函数里写判断if(USART_RX_STA&0xC000),然后读USART_RX_BUF[]数组,读到0x0d 0x0a即是结束。//以下是字符串接收到USART_RX_BUF[]的程序,(USART_RX_STA&0x3FFF)是数据的长度(不包括回车)
2024-01-19 11:38:51
378
原创 AT24C02读写操作 二
if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。if(AT24C02_IIC_Wait_Ack()==1) //如果没有应答。//10主机发送应答信号。
2024-01-19 11:32:36
391
原创 AT24C02读写操作 一
/2.主机发送器件地址 写操作。//2.主机发送器件地址 写操作。//2.主机发送器件地址 写操作。//2.主机发送器件地址 读操作。//7.主机发送器件地址 读操作。//7.主机发送器件地址 读操作。//3.主机等侍从机应答。//3.主机等侍从机应答。//10主机发送应答信号。//3.主机等侍从机应答。//10主机发送应答信号。//3.主机等侍从机应答。//6.主机再次发送开始信号。//6.主机再次发送开始信号。//4.主机读取1个字节数据。//5主机发送应答信号。
2024-01-17 22:41:21
964
原创 STM32F103C8驱动蜂鸣器
/设置IO接口速度(2/10/50MHz)GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;#define BUZZER GPIO_Pin_13 //定义IO接口。void BUZZER_Init(void){ //蜂鸣器的接口初始化。void BUZZER_BEEP1(void){ //蜂鸣器响一声。
2024-01-16 14:42:26
387
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (六)
include "inv_mpu_dmp_motion_driver.h" //DMP姿态解读库。//MPU6050数据上报。//MPU6050数据读取函数。#include "mpu6050.h"//MPU6050驱动库。#include "stdlib.h"//常用的系统函数库。#include "inv_mpu.h"//陀螺仪驱动库。#include "stdio.h"//标准输入输出库。#include "string.h"//字符串库。#include "sys.h"//系统中断分组库。
2024-01-16 13:06:22
879
1
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (五)
经过四步骤还可以产生欧拉角(主要是四元数产生),因为dmp还没有产生原始数据下面这两个文件产生角加速度与角速度原始数据。inv_mpu_dmp_motion_driver.c 文件。//定义目标板采用MSP430。
2024-01-16 12:59:05
435
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (四)
res=dmp_enable_feature(DMP_FEATURE_6X_LP_QUAT|DMP_FEATURE_TAP| //设置dmp功能。
2024-01-16 12:52:02
483
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (三)
经上面一篇,创建好I2C通信协议:现在我们来配置好:mpu6050数据 主要文件是mpu6050.c文件#include "mpu6050.h"#include "sys.h"#include "delay.h"#include "usart.h" //初始化MPU6050//返回值:0,成功// 其他,错误代码u8 MPU_Init(void){ u8 res; MPU_IIC_Init();//初始化IIC总线 MPU_Write_Byte(MPU_
2024-01-16 12:41:29
371
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (二)
/IIC发送ACK信号。#define MPU_READ_SDA PBin(7) //输入SDA PB2。
2024-01-16 12:24:24
370
原创 STM32F103C8驱动MPU6050姿态与tofsense报警 (一)
/使能USART1,GPIOA时钟。#if SYSTEM_SUPPORT_OS //如果SYSTEM_SUPPORT_OS为真,则需要支持OS.#if SYSTEM_SUPPORT_OS //如果SYSTEM_SUPPORT_OS为真,则需要支持OS.
2024-01-16 12:17:59
511
原创 stm32f103C8R6标准库配置
第四步:定义宏USE_STDPERIPH_DRIVER,STM32F10X_MD 宏要注意:不同型号的单片机配置不相同,具体查看其他资料。OBJ文件夹是编译保存路径.其中每个文件夹都有与其对应的c文件与h文件 如delay.c与delay.h。第二步:打开keil5,点击品字图标,把D盘文件夹与文件添加进去如图。第三步:添加头文件上去 头文件路径的添加主要是kei5编译根据去查找。stm32f103C8R6标准库配置 主要是以下几个步骤。第一步:在d盘建一个工程文件。
2024-01-08 23:53:16
435
原创 micropython esp32外部中断
button = Pin(19, Pin.IN, Pin.PUll_UP) # 使用上拉电阻。# button = Pin(19, Pin.IN, Pin.PUD_UP) # 使用上拉电阻。#定义PIN引脚对象。
2024-01-07 23:07:16
513
原创 micropython esp32 串口通信
self.system_time = int(temp[7] + temp[6] + temp[5] + temp[4], 16) # 传感器上电时间。self.dis = (int(temp[10] + temp[9] + temp[8], 16)) / 1000 # 测距距离 单位m。self.signal_strength = int(temp[13] + temp[12], 16) # 信号强度。self.dis_status = int(temp[11], 16) # 距离状态指示。
2024-01-06 18:24:40
714
1
原创 TOFSense-F实验
tof_f.system_time = int(temp[7] + temp[6] + temp[5] + temp[4], 16) # 传感器上电时间。tof_f.dis = (int(temp[10] + temp[9] + temp[8], 16)) / 1000 # 测距距离 单位m。tof_f.signal_strength = int(temp[13] + temp[12], 16) # 信号强度。tof_f.id = int(temp[3], 16) # 传感器ID。
2023-12-29 20:50:34
385
1
原创 esp32配网
main.py')else:')import reelse:else:returnreturnlines = []lines = []try:pass')else:')try:try:
2023-12-22 20:47:18
348
原创 在ESP32 实现 MQTT通信 编程实现MQTT通信
CLIENT_ID = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' # 客户端ID。wlan.connect('xxxxxx', 'xxxxxx') #输入WIFI账号密码。wlan = network.WLAN(network.STA_IF) #STA模式。msg_str = msg.decode() #消息为二进制转换为字符串。WIFI_LED=Pin(2, Pin.OUT) #初始化WIFI指示灯。# oled.fill(0) #清屏背景黑色。
2023-12-20 08:54:53
613
1
原创 micropython 控制电调
range_mode=RotaryIRQ.RANGE_WRAP)#RANGE_WRAP越界后从另一端开始。ch = tim.channel(2,Timer.PWM,pin = p) #调用定时器channel函数定时器4 chann2。ch.pulse_width_percent(val_new) #设置占空比。# ch.pulse_width_percent(23) #设置占空比。r = RotaryIRQ(pin_num_clk='PD4', #clk引脚。
2023-12-19 20:32:47
404
1
原创 Encoder 旋转编码器 使用CPU为ESP32 实现从100到230之间计数
range_mode=RotaryIRQ.RANGE_WRAP)#RANGE_WRAP越界后从另一端开始。使用方法:文件encoder.py 分别调用rotary_irq_esp.py文件与rotary.py。pin_num_dt=13, #data引脚*****r = RotaryIRQ(pin_num_clk=12, #clk引脚*****reverse=False, #是否反方向增加。min_val=100, #起始值。max_val=230, #终止值。
2023-12-19 13:02:43
469
1
原创 用micropython 操作stm32f4单片机的定时器实现pwm
from pyb import Pin,Timer #导入micropython-pyb文件夹下Pin,Timer模块。ch = tim.channel(1,Timer.PWM,pin = p) #调用定时器channel函数定时器3 chann1。p = Pin('PC6') #pc6是单片机引脚赋值。tim = Timer(3,freq=100) #设置定时器3的的频率。
2023-12-19 10:34:57
390
1
原创 stm32f10x中GPIOA理解(三)
有了文章二的理解后,我们返回GPIOA文章一。如何用固件库操作寄存器。首先要理解两个结构体://定义8种模式typedef enum{ GPIO_Mode_AIN = 0x0, //模拟输入 GPIO_Mode_IN_FLOATING = 0x04, //浮空输入 GPIO_Mode_IPD = 0x28, //输入下拉 GPIO_Mode_IPU = 0x48, //输入上拉 GPIO_Mode_Out_OD = 0x14,
2022-12-08 09:43:19
292
原创 stm32f10x中GPIOA理解(二)
一、要理解固定库操作GPIOx的寄存器,首先固定库通过void GPIO_Init(GPIO_TypeDef GPIOx, GPIO_InitTypeDef GPIO_InitStruct)函数来实现的。这函数 操作寄存器CRL和CRH二、认识GPIO的配置寄存器CRL和CRHSTM32的一组GPIO有16个IO口,比如GPIOA这一组,有GPIOA0~GPIOA15一共16个IO口。每一个IO口需要寄存器的4位用来配置工作模式。那么一组GPIO就需要16x4=64位的寄存器来存放这一组GPIO的
2022-12-06 21:58:45
1626
原创 stm32f10x中GPIOA理解(一)
stm32中GPIOA对于arm芯片来说,它属于芯片内外部的外设,对于单片机来说,它是按时间脉冲来执行的。那么GPIOA挂在RCC_APB2Periph上面的。在这里我们先理解GPIOA 在地址,STM32的外设起始基地址为0x40000000,而APB2总线设备起始地址相对于外设基地址的偏移量为0x10000,GPIOA设备相对于APB2总线设备起始地址偏移量为0x0800。因此,GPIOA地址为:GPIOA_BASE = 0x40000000 + 0x10000 + 0x0800 我们看到程序在“stm
2022-12-06 09:43:31
1821
原创 模拟IIC基本函数(伪函数实现)
每当主机向从机发送完一个字节的数据,主机总是需要等待从机给出一个应答信号,以确认从机是否成功接收到了数据,从机应答主机所需要的时钟仍是主机提供的,应答出现在每一次主机完成 8 个数据位传输后紧跟着的时钟周期,低电平 0 表示应答,1 表示非应答。/* 主机向从机发送一个SCL时钟脉冲,在SCL高电平期间,如果读取为低电平,表示从机成功收到了,如果为高电平,则表示从机没有回答,则从机接收数据失败*/当主机成功接收到从机发送的数据后,如果希望从机继续发送数据的话,就应向从机ACK,表示让从机继续发送数据。
2022-11-07 16:32:46
608
原创 HAL库操作SD读写操作
第五步:配置时钟(Clock Configuration)把Input frequency 设置为:8Mhz就可以了。选择HSE----->PLLCLK 通道.,并把HCLK设置为单片机支持最高时钟我的为180MHZ单击确定就可以了。printf("读出数据与写入数据不相等,读写SD卡失败\r\n");第四步:配置串口打印(usart1) 以上配置参数默认就可以了。设置低一点就可以了。SD卡知识的内容,在这里就不作介绍了。/*获取SD卡的基本信息,比如总块数、块大小 *//*比较写入读出的数据*/
2022-10-22 21:32:11
818
原创 在MDK5下加载所有文件到工程
第二步:选择FWLIB右击,选择品字图标(Manage Project Items...) 弹出对话框,选择FWLIB,Add所有文件夹STM32F10x_FWLib\src下所有文件。第五步:添加头文件,点击魔术棒图标(Options for Group FWLIB ALT+F7) ,在弹出对话框,选择C/C++对话框, 在includeparts下添加所有头文件.第四步:添加CORE目录下,core_cm3.c与startup_stm32f10x_hd.s文件。...
2022-08-14 00:10:45
2215
原创 STM32F10X 工程复制 STM32F10x_StdPeriph_Lib_V3.5.0 文件到工程文件夹
第四步:打开库文件,复制文件core_cm3.c与core_cm3.h到文件夹CORE里面(注意图片目录)至此,新建所有的库文件就复制进来了。接下来下一遍文章,在MDK5里面加载所有复制文件到工程里面。第一步:下载STM32F10x_StdPeriph_Lib_V3.5.0文件。再复制一个启动文件放到CORE文件夹里,注意看图片的目录。...
2022-08-13 23:08:18
1451
原创 SBUS协议数据演示
实验效果 在串口上实现接收数据硬件:RadioLinkAT10 RadioLink R12DS接收机 CH340模块软件: 串口调试助手二、硬件连接:正在上传…重新上传取消正在上传…重新上传取消接收机 信号线接------RC_SBUS RXD--- CH340的RXD端 电阻分别是10k 与1k 三极管为 S9013
2022-07-11 10:33:14
2339
车辆识别系统01 使用pyqt gui
2024-05-31
stm32f103c8t6TOFSense-DMA工程
2024-01-23
STM32F103C8驱动MPU6050姿态与tofsense报警
2024-01-16
micropython ESP32 串口(四)
2024-01-07
wifi manage 配网文件系统
2023-12-22
encoder micropython编程库
2023-12-19
ms5611源程序,气压就高
2022-11-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人