原创 【存在问题】解释为什么旋转的物体有时看着像在倒转

2018-7-9 12:55 3788 21 6 分类: 处理器与DSP

今天在马路边观察了一下,日光下车轮确实不会发生倒转这种现象,只有隔着栅栏观察才会出现这种情况。

动态图的原视频可以点击阅读原文观看,是十个不错的Arduino项目


描述现象

相信大家都有过这么的经历,旋转的物体,有时候看着觉得在倒转。

比如汽车的车轮,从静止开始发动汽车,这个过程中,汽车的车轮看起来就是从正转到反转或停止,当汽车减速的时候,汽车车轮看起来就又恢复成正转了。(只有当灯源是离散的情况下)

学过信号与系统的或许知道奈奎斯特采样定律————最小采样频率是信号频率的两倍。

我在一开始也是不理解的,为什么刚刚好就要两倍,感觉很随意一样,别人家的黄金分割比都是小数0.618,听起来也酷,为什么奈奎斯特家的是整数。

虽然我也知道以低于两倍信号频率采样的时候,会欠采样,丢失信号信息,但是具体怎么个丢失法,也是不了解的。直到我开始学习数字信号处理(DSP),才总算是晓得了这么个东西。

解释原理

以下材料来自中国大学MOOC https://www.icourse163.org/learn/UESTC-236010?tid=1002753005#/learn/announce

有点懒得自己用Matlab画图(其实是自己学的不够好),就使用我在网上学习的课程中使用的图来解释吧。

图中是使用Fs=10Hz的信号对3Hz、7Hz、13Hz的信号采样的结果

采样间隔为0.1s,采样得到的序列为g1[n]=cos(0.6πn) g2[n]=cos(1.4πn) g1[n]=cos(2.6πn),从图中的采样点可以看出,采样点为三个信号的交点,所以采样得到的信号都是一样的,这种现象就是欠采样的效果:混叠现象

从频域上进行分析

使用10Hz的信号采样的效果相当于,将一个信号在频谱上分别向左和右搬移了20π。对于7Hz的信号来说,14π-20π=-6π,-14π+20π=6π,而3Hz的信号的频谱也在-6π和6π,所以无法分别到底是3Hz的信号还是7Hz的信号。如果将采样结果还原,得到的也只有3Hz的信号。同理可得13Hz信号的结果。

解释现象

一般来说,人眼能感受到的闪烁频率最高到60Hz,汽车车轮直径大概在737.6mm。也就是说,汽车车轮转动的频率超过30Hz,人眼就会出现“幻觉”了。

根据路程-速度-时间的关系,可以知道这个出现“幻觉”的速度为:v=30*737.6*10^(-3)=22.128(m/s)=79.6608(km/s)

所以说,一旦汽车的速度到了差不多80km/h的速度后,在人眼看来,车轮就有倒转的现象。

再现混叠现象

如果没条件把汽车架起来测试这个效果,可以选择平民化的测试方法。

手机摄像头的采集视频的刷新速度比人眼低很多,可以用手机摄像头对着电风扇拍视频,可以明显的看见电风扇也出现了“倒转”现象。

解决方法

在数字信号处理这个领域,为了解决这个问题,一般会在采样的前级加上一个抗混叠滤波器,通带为±二分之一的采样率,避免无法完全采样的频率“混叠”频谱。




PARTNER CONTENT

文章评论4条评论)

登录后参与讨论

任滔滔 2018-7-14 09:00

第一次见到这种计算分析,厉害了

rdg1993 2018-7-10 15:28

greedyhao: 你的称赞就是给我最好的奖励,说这么多,能否给我个赞,超喜欢看到赞的感觉
哈哈,已赞。

greedyhao 2018-7-9 17:53

rdg1993: 长知识了
你的称赞就是给我最好的奖励,说这么多,能否给我个赞,超喜欢看到赞的感觉

rdg1993 2018-7-9 17:00

长知识了
相关推荐阅读
greedyhao 2019-03-17 09:03
uboot链接脚本分析
上一篇uboot主编译脚本分析的编译选项参数中提到了链接脚本这么个东西我也是写到这里才开始了解链接脚本(Linker command scripts),之前只是大概知道有这么一个东西先从参考资料中的内...
greedyhao 2018-11-28 08:49
51总线方式获取adc0809数值
最近单片机有一个实验挺有意思的,使用51单片机以总线的方式读取adc0809的数据先补充点关于单片机总线的预备知识,我一开始不了解总线的时候做这个实验也是很懵逼的。单片机的三总线结构​51单片机有三条...
greedyhao 2018-09-29 21:18
对Xil_Out32未定义的引用
第一次在HLS中遇见一个官方库函数未定义问题,这就把解决方法记录下来。在创建好工程,写完工程代码后,发现报错如下./src/led_controller_test_tut_4A.o:在函数‘main’...
greedyhao 2018-09-29 21:12
Vivado生成Bitstream失败的解决方法
跟着实验指导书,难得的又遇到问题了,在最后生成Bitstream的时候出错了,无法生成Bitstream。报错信息如下[DRC NSTD-1] Unspecified I/O Standard: 4 ...
greedyhao 2018-09-17 22:26
zybo初体验
前段时间过生日,亲戚给了些钱让我自己买生日礼物,早就想搞一块zynq的板了,但是淘宝一看太贵,于是去咸鱼上淘了一块二手的ZYBO(谁知道是不是二手,反正看着挺新)来玩玩。学习肯定是从官方资料开始的,T...
greedyhao 2018-09-13 10:53
运行c代码前发生了什么
众所周知,c代码也是一种比较高级的语言了,机器是没有办法直接运行的,机器所能理解的只有机器码--那一串0和1而已。虽然早就知道c代码是先经过编译链接最后才放在机器上执行,但是在这么一个过程中究竟发生了...
我要评论
4
21
关闭 站长推荐上一条 /3 下一条