需求:规定一次波形显示的数据时231个点。
算法要求:采集到的数值是可以确定的。10000个点以内的点数都压缩成231个点,比如(采了1W个点,压缩成231显示出来)(5000个点还是压缩成231个点显示出来)(500个点还是压缩成231个点显示出来),传进来的点数是不确定的,不能写死,但是可以确定是在1W以内的点数,
总之就是232-10000指点的点数都压缩成231个点来显示到屏幕上
数学太差了,想了半天这种算法,但是画出来的波形总是和实际上显示的波形不太一样。
有没有大神指点,能有具体参考代码最好了!感激不尽。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
这个可以学习一下图像的缩放算法,肯定不是间隔几个点取一个点,而是通过对一系列点的运算,得出预期变化趋势后的点。近邻取样、二次线性插值、三次卷积插值、两次近邻取样、三次线性插值、两次三次卷积插值。反正就是一堆名词
你可以先构建一个大小为231的数组,先采集前231个然后放入这个数组,一边获取后面的值,一边计数有n个,后面每采集到的一个数据,1/2的概率决定是否替换前面数组中的某个值,这个值可以是随机的。
一周热门 更多>