![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
k230
文章平均质量分 51
花月mmc
这个作者很懒,什么都没留下…
展开
-
Canmv k230 AI案例2——RNN时间序列预测(预告)
Canmv k230 开发板已经上市一段时间了,最近帖子时常有人关注,因此预告下更新的内容,如果其他想了解的内容可以留言,可能要很久才更新哦下次预告1、RNN模型及其在时间序列中的应用,例如温度预测2、k230模型转换工具的有效性探讨。原创 2024-05-25 02:25:34 · 132 阅读 · 0 评论 -
Canmv K230 开发(C++版)
已经使用一段时间Canmv K230开发板了,给人的印象,便宜,好用,资料比较齐全,交流群响应比较及时。在使用了一段时间micropython镜像后,只能使用一些基础的案例,虽然关于针对AI的开发可以直接调用各种代码,但实际应用中学会其中的原理比会调用函数库重要的多(个人简介),同时一些高级功能,如RVV好像也只能用C++开发。原创 2024-05-05 20:55:38 · 237 阅读 · 0 评论 -
Canmv k230 案例6.2—— S变换代码Python版
由于S变换的原理解释需要花费更多的时间,而python代码列出来又会过于看不懂,但还是先放出来,总比一直不做的要好。以后后完善,到终版可能还有几版。原创 2024-04-09 15:06:59 · 166 阅读 · 0 评论 -
Canmv k230 案例6—— s变换(Stockwell Transform)(预告)
基本原理已经实现,内容较多,需要过段时间才能更新。直接拆分了每个计算单元通过最简单的功能实现。ST变换的输出存在细节变化特征。误差很小,为数据计算产生的误差。FFT无法区分时间分辨率。matlab的输出结果。原创 2024-03-18 02:46:40 · 336 阅读 · 0 评论 -
Canmv k230 案例5.3——小波奇异性检测(三)
设置适当的滤波器实现波形突变检测,实际效果,串口输出结果如下图所示。原创 2024-03-07 16:51:00 · 377 阅读 · 0 评论 -
Canmv k230 案例4.3——实时FIR (ADC+FIR+UART)(三)(初稿)
待补充。原创 2024-03-06 23:47:51 · 393 阅读 · 0 评论 -
Canmv k230 案例4.2——实时FIR 滤波器原理(二)(初版)
理论待补充。原创 2024-03-06 23:34:40 · 382 阅读 · 0 评论 -
Canmv k230 案例5.1——小波变换(一)
尺度函数与小波函数Haar 可以先用a=[1 1]b=[1 -1]表示,暂时不考虑正交系数。原创 2024-03-01 16:02:45 · 401 阅读 · 0 评论 -
Canmv k230 案例4.1——FIR 滤波器(一)
1)绘制信号假定采样率为1kHz,1000点的数据FFT的分辨率为fs/N=1000/1000=1Hz/点2)并分析频谱除了FFT一个序列的直流分量外,三种谐波成分均已理论一致。原创 2024-02-25 01:09:54 · 358 阅读 · 0 评论 -
Canmv k230 案例2.4——DFT自定义(四)
最近在做S变换,将代码转换到micropython中,因为需要用到复数,因此进行DFT和IDFT变换,而Canmv k230中的FFT有些问题,ulab中的fft不支持复数,因此需要自定义DFT,FFT后面有时间再编写。可以看到计算得到的误差较小,FFT是DFT的快速算法,同时数据长度需要为2^n,DFT长度任意,但与FFT相比计算量大,FFT后续编写。S变换在实现上还有一些计算过程需要自定义,可能要过一段时间,同时虽然得到了计算结果但目前还不是完全理解其中的一些概念。原创 2024-02-19 18:34:33 · 399 阅读 · 0 评论 -
理解数字信号处理系列计划——基于canmv k230
在理论公式上理解数字信号处理没有通过软件仿真理解来的深刻,同时在公式及软件仿真上理解也远远不及实际的硬件实现算法来的深刻。个人的理解,数字信号处理方法应该是能够在硬件上实现的算法,仅在理论上理解感觉还是会对部分概念理解的不够深刻。但硬件开发是难度较大,C、C++的学习需要经历较长的时间,在canmv k230开发板支持micropython后,通过Python进行在线调试变得简单起来,同时k230支持深度学习算法的加速,学习成本较低。原创 2024-02-16 19:40:53 · 378 阅读 · 0 评论 -
Canmv k230 案例3.1——短时傅里叶STFT(一)
Canmv k230中集成了可调用的硬件FFT,但使用过程中存在问题,可以采用ulab中提供的FFT函数。500Hz内为随时间增加频率增加,大于500Hz为对称的频谱,matlab中对stft的绘图描述如下。当FFT沿着时间轴滑动得到的频率随时间变化的矩阵,就可以得到信号时频的变化——STFT。MATLAB中对于STFT的实现方法,自带函数stft,下面对调频信号测试。注:本文可能不严谨,主要是对STFT的简单阐述。将ide中的输出数据复制到MATLAB中。需要先对信号进行加窗处理,后续再说明。原创 2024-02-16 15:33:02 · 321 阅读 · 0 评论 -
Canmv k230 案例2.3——ADC+UART+FFT测试(三)
前面两节通过在k230中计算FFT,现在通过外部传感器采集数据,即ADC进行FFT测试。原创 2024-02-13 01:26:38 · 1108 阅读 · 0 评论 -
Canmv k230 案例2.2——FFT测试(二)
首先看下Canmv IDE 中FFT的函数部分及输出结果,原程序可能是为了演示效果,因此以下程序进行了部分修改:1、修改数组转换为int16,硬件FFT支持的数据类型;2、补偿了原始FFT存在系数上的差异,将幅值除以2。从计算频率的结果可以看出,因此计算采用int16,因此在幅值计算时可能出现截断,幅值为太小则无法就显示正确结果,因此调整输入数据的范围可以得到接近理论值的结果。看起来精度还是不太高,那么如果自定义FFT的结果怎样呢?下期可能更新FFT的一些实际应用问题、与ADC结合的操作。原创 2024-02-06 18:10:45 · 396 阅读 · 0 评论 -
Canmv k230 案例2——FFT测试(初版)
k230采用的int16,那么对于生成的数据存在截断的误差,在MATLAB里绘制可看出差异,讲输出的列表数据导入到MATLAB并定义为k230。其中第4、6项的计算结果为(32,2),但幅值计算结果不同分别为2、1,奇怪。打开canmv内置的FFT的例子(官网代码可能在测试中)进行参数修改。主要的幅值不大,但还是有一些其余的影响,是数据被截断产生的其余频率。这个截断的数据好奇怪,计算结果如下。k230计算的FFT结果如下。原创 2024-02-03 20:51:34 · 450 阅读 · 0 评论 -
CanMV K230使用经验分享
K230宣传了很久,K230的开发板目前还处于缺货的状态,价格在250左右,CanMV K230 在官网已经更新了资料,包括镜像和教程。在官网的开发者社区页面可以看到镜像、开发工具、在线文档等资料。开发板图其余信息可以查阅官网信息。原创 2023-12-22 02:29:55 · 2360 阅读 · 0 评论 -
Canmv k230 案例1——MNIST手写数字识别
工具:在windows下采用CanMV IDE 4.0.5-0 官网可以下载,但linux下的尚未更新,更改将k230的模型集成在ide中,案例采用deep learning with python(第二版)一书的mnist案例学习。保存数据为npy格式,便于micropython中的数组导入。更改保存的npy数据,实现不同手写数据的检测。可以查询ulab.numpy函数,用于简单计算。后续:通过板载摄像头检测手写数字?修正输入输出的第一个维度。原创 2024-01-05 15:36:38 · 586 阅读 · 0 评论