自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32CUBEMX生成SD卡读写代码不能进入4线模式解决

发现有的SD卡可以,有的卡在切换成4线时失败。具体在发送命令SD_CMD_SD_APP_SEND_SCR时,SDIO状态STA为0X42,bit1为SD_CMD_CRC_FAIL,表示CRC错误。既然CRC错想应该是硬件错误,网购多个芯片和SD卡座焊上,没什么明显效果。换成网上的SDIO代码,读写正常。反复和CUBEMX生成的代码,SDIO寄存器是完全一样的,直到排查了GPIOC和GPIOD寄存器,发现HAL代码定义了GPIOC的PIN8-12和GPID的PIN2复用为SDIO,但是没有定义为上拉。

2024-03-06 14:23:41 257

原创 Transformer进行序列预测

尝试使用Transformer的编码器Encoder实现序列的预测。为了验证模型首先用随机数产生源数据和目标数据,测试模型能否学习数据并做出正确的预测。嵌入层和位置编码的处理。输入数据必须先进行编码,相当于将每个词编码成词向量。输入的每一个随机数当做一个Long类型的词input_ids。为了简化按数据行号和每个数据在样本中的位置进行编码。生成1000个样本每个样本10个随机数,相当于自然语言1000句话每句话10个词。需要训练的目标2个维度,第0个维度为随机数和源数据的最大值、最小值。

2023-06-20 16:38:29 660

原创 【踩了torch.nn.Transformer一个大坑】

遇到torch.nn.Transformer的大坑不明白为什么。随机生成50个词的句子进行翻译。使用torch.nn.Transformer实现。字典共39个词,[0-9][a-z]每个字符当成一个词。翻译规则为小写转大写,新数字=9-数字。顺序左右颠倒。译文每0个字符重复。模型使用方法,输入源语句和译文句子开始标志,预测完整的译文句子。

2023-05-20 19:54:42 625 2

原创 两个传感器卡尔曼滤波python优化实现

两个传感器卡尔曼滤波python优化实现两个传感器滤波优化:事先算好KkPython实现两个传感器滤波一辆车做变速直线运动,车上有GPS定位仪和速度表。通过卡尔曼滤波将两个传感器的数据对车的位置进行最优估计。 假如观察到的数据为向量z=[z1 z2].T。 z1为GPS定位位置,z2为速度表的速度读数。z的协方差矩阵R~N(0,R)。 车辆状态方程的噪声为wk~N(0,Q)。 系统状态矩阵A=[1],预测值为上一个位置,最优估计为预测值,加测量值与预测值差乘以比例。 卡尔曼滤波计算公式如下优化:事

2021-08-02 10:48:48 1486

原创 MT WOFF FONT解密

提供了两个MT 数字内容的woff font解密算法。算法一,单个文件自校验解密。 原理是无论字体大小、位置怎么变化,但是同一个woff文件各个数字的笔画面积是固定顺序的,[7,1,5,3,4,2,9,6,8,0] 也就是说数字‘0’的面积最大, 数字‘1’倒数第二,数字‘7’面积最小。 这样就不需要任何其它的辅助,只要拿到woff文件即可解开。 文件是meituanfont.py算法二,需要一个任意woff文件做为标准的woff文件,知道标准font每个code对应的真实的数字。 将标准font的每一

2021-01-22 17:43:55 320

原创 cartpole 离散型动作 A3C

使用 Asynchronous Advantage Actor-Critic(A3C)算法,使用多线程,实现每个线程学习100多个回合,然后一个回合20000步杆子不倒。代码:http://github.com/ccjy88/cartpole_a3c/CartPole是http://gym.openai.com/envs/CartPole-v0/ 这个网站提供的一个杆子不倒的测试环境。CartPole环境返回一个状态包括位置、加速度、杆子垂直夹角和角加速度。玩家控制左右两个方向使杆子不倒。杆子倒了或超

2020-10-22 10:33:33 883 1

原创 使用DDPG算法实现cartpole 100万次不倒

DDPG的全称是Deep Deterministic Policy Gradient,一种Actor Critic机器增强学习方法。CartPole是http://gym.openai.com/envs/CartPole-v0/ 这个网站提供的一个杆子不倒的测试环境。 CartPole环境返回一个状态包括位置、加速度、杆子垂直夹角和角加速度。玩家控制左右两个方向使杆子不倒。杆子倒了或超出水平位置限制就结束一个回合。一个回合中杆不倒动作步数越多越好。cartpole_ddpg 程序是训练出一个DDPG神

2020-09-03 09:53:22 2181 1

原创 浏览器javascript 下载m3u8视频合成mp4

m3u8download.jsdownload m3u8 URL to mp4 下载m3u8视频合成一个完整的mp4源码:https://github.com/ccjy88/m3u8download.js功能m3u8downloader是在chrome浏览器中运行的html和js,用于下载m3u8视频。当视频链接比如是https://test-streams.mux.dev/x36xh...

2020-04-26 13:34:44 10119 1

原创 javascript XMLHttpRequest 获得 302 重定向后URL

当使用XMLHttpRequest访问网站,服务器返回代码302,HTTP head中Location重定向新的URL时,XMLHttpRequest会自动转到新的地址下载。可以访问responseURL知道真实的重定向后访问URL地址。var xhr = new XMLHttpRequest();xhr.open(‘GET’, ‘http://example.com/test’, true)...

2020-04-23 14:25:46 4766 1

原创 stem32F407 USB data toggle error的分析和解决

因工作需要从某个设备上读取USB数据。该设备有windows驱动和应用软件,需要用stm32F407做一个读取和转发设备。首先用BusHound在Windows上分析了该设备的USB数据。设备USB类为特殊的0XFF,EndPoint有两个,一个IN一个OUT Endpoint均是Bulk。主机OUT大约10几个字节的命令,设备会回应一帧(Frame)或多帧。每帧有一个或多个包(Packet)组...

2019-12-12 17:00:13 1052

空空如也

空空如也

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

TA关注的人

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