zoukankan      html  css  js  c++  java
  • 拍照与采样

    世界的本质是旋转(1)复平面与欧拉公式 - 流浪小狗的窝 - CSDN博客 http://blog.csdn.net/goldenhawking/article/details/51348035

    世界的本质是旋转(2) 旋转叠加与傅里叶变换 - 流浪小狗的窝 - CSDN博客 http://blog.csdn.net/goldenhawking/article/details/51352240

    世界的本质是旋转3-拍照与采样 - 流浪小狗的窝 - CSDN博客 http://blog.csdn.net/goldenhawking/article/details/51994310


    1.采样是一种观察方法

    采样是人类认识、分析连续运动的基本方法。对一个连续的运动,我们用状态方程来描述是可以的,但对稍微复杂的运动,实际上很难找到解析的状态方程,或者即使找到了(很幸运的话),也很难求解。有了照相技术之后,人类便有了研究运动的利器-照片。照相可以把瞬间的状态保留下来慢慢研究,比如高速摄像机可以捕捉蜂鸟扑翅一样,连续多帧影像连贯起来,就可以还原其运动的全貌。 
    用类似的方法,让我们考虑一个复平面实轴上的单频率震动: 

    s(t)=e2πjft+jθ+e2πjftjθ2

    该震动由两个互为共轭的旋转分量组成。如果我们用一个快拍相机,对旋转的复平面拍照,就可以观察各个时刻下矢量的位置。这里,我们假设拍照的速率是每秒 fs 次,变量n代表第几次拍摄,则可以直接写出历次拍照时刻: 

    t=nfs

    把这时间带入, 

    p(n)=s(nfs)=e2πjffsn+jθ+e2πjffsnjθ2

    设,ω=2πffs ,则上式可以简化为 

    p(n)=ejωn+jθ+ejωnjθ2

    这个 ω 究竟是神马意思呢?他的意思是,每次拍照,矢量比上一次拍照的照片转了 ω 弧度。可以看下图:

    %gnu octave
    f   = 500  ;%Hz
    fs  = 4000 ;%Hz
    tht = pi/6 ;%phase is 30 degree
    omg = 2 .* pi .* f / fs;
    n   = [0 , 1];
    p_1 = .5 .* exp ( 1j .* omg .* n + 1j .*tht);
    p_2 = .5 .* exp (-1j .* omg .* n - 1j .*tht);
    hold on;
    plot ([-1.2, 1.2],[0,0],'r',[0,0],[-1.2, 1.2],'r');
    plot (p_1(1),'r*',[0,real(p_1(1))], [0,imag(p_1(1))],'r-.');
    plot (p_2(1),'b*',[0,real(p_2(1))], [0,imag(p_2(1))],'b-.');
    plot (p_1(2),'r+',[0,real(p_1(2))], [0,imag(p_1(2))],'r--.');
    plot (p_2(2),'b+',[0,real(p_2(2))], [0,imag(p_2(2))],'b--.');
    hold off;
    • 向量旋转频率 f 为 500Hz
    • 拍照频率 fs 为 4000Hz
    • 初始相位 θ 为30度(π6)
    • 拍两次,分别在 n = 0, n = 1 
      0,1时刻向量的位置

    这里,我们只做了两次观察,n=0时,向量位于正负30度; n=1时,向量位于正负75度,旋转了45度,恰好是 π/4 。

    在不知道转动频率 f 的情况下,通过上述现象根据拍照频率 fs可推算 f: 
    (1) 既然我拍照的速率 是 fs ,在 1fs 秒这样长的时间,向量旋转了45度,说明,需要8次拍照,向量恰好转一圈。 
    (2) 推算出,其旋转频率是拍照速率的 1/8,即 4000 / 8 = 500Hz 
    可见,因为拍照频率已知,所以,可以根据离散的照片推算出向量的转速。

    从上面的例子,我们引申出采样,是与拍照思路相同的行为。不严格的说,人类通过采样,把连续的自然现象感知为几次离散时刻的观察结果,并思考得到连续现象的本质。

    2. 采样速率的选取

    在第一章,我们认为,因为拍照频率已知,所以,可以根据离散的照片推算出向量的转速。这个前提其实比较武断,它是有前提的。

    2.1 另一组实验

    我们接着上面的例子。现在,假设还用一个4000Hz的频率去拍照,研究一对旋转的向量,这个向量的初始相位是-30度,转速是 3500Hz

    f   = 3500  ;% Hz
    fs  = 4000 ;%Hz
    tht = -pi/6 ;%phase is -30 degree
    omg = 2 .* pi .* f / fs;
    n   = [0 , 1];
    p_1 = .5 .* exp ( 1j .* omg .* n + 1j .*tht);
    p_2 = .5 .* exp (-1j .* omg .* n - 1j .*tht);
    hold on;
    plot ([-1.2, 1.2],[0,0],'r',[0,0],[-1.2, 1.2],'r');
    plot (p_1(1),'r*',[0,real(p_1(1))], [0,imag(p_1(1))],'r-.');
    plot (p_2(1),'b*',[0,real(p_2(1))], [0,imag(p_2(1))],'b-.');
    plot (p_1(2),'r+',[0,real(p_1(2))], [0,imag(p_1(2))],'r--.');
    plot (p_2(2),'b+',[0,real(p_2(2))], [0,imag(p_2(2))],'b--.');
    hold off;

    拍的不够快哦 

    上图中,0时刻,红色向量位于-30度; 后顺时针转了315度,在1时刻到达n=1位置(285度)。这种旋转,如果不做染色(红色、蓝色),其观感与第一章中 500Hz, 30度相位的旋转完全一样!

    看来,不同转速在一定的拍照速率下,会呈现相同的结果。那末,究竟要拍多快,才能够唯一确定转速呢?这个问题就是奈奎斯特定理。

    2.2 奈奎斯特定理

    为了解决2.1中的歧义,我们必须用足够快的速度去拍照。 
    分析2.1中现象,会发现之所以结果使人糊涂,是因为两次拍照之间,向量旋转超过了180度。这样,我们就搞不清楚第二次拍照时,285度位置上的点,究竟是从-30度顺时针转315度过来的,还是从-30度逆时针转45度过来的。同样,我们就无法推定转速为500Hz还是3500Hz。

    换句话说,只有确保两次拍照之间,向量旋转不能高于180度,才能唯一地仅根据照片确定向量的转速。这个条件的不等式:

    ω=2πffs<π

    稍加变换: 

    fs>2f

    即必须用两倍以上的采样率进行拍照,才能准确推定转速。

    3.进一步深入思考

    不仅如此,我们很直观的感觉是,在4000Hz拍照频率下,能够拍出相同照片的转速绝对不止 500Hz, 3500Hz两种。事实上,比这两个转速对应角速率ω 高 fs 整数倍的旋转,观感是一样一样的: 

    ω=2πf+mfsfs

    如: 4500Hz, 7500Hz, 8500Hz, 11500Hz… 
    这很容易理解:每次拍照时,向量已经转了 m 圈了,只是这些圈圈太快了,等我再次按下快门,人家都转完了。 
    可以直接修改上述代码:

    m   = 10;  % As your wish
    fs  = 4000 ;%Hz
    f   = 500 + m .* fs ;% Hz
    tht = pi/6 ;%phase is 30 degree

    或者:

    m   = 7;  % As your wish
    fs  = 4000 ;%Hz
    f   = 3500 + m .* fs ;% Hz
    tht = -pi/6 ;%phase is -30 degree

    会发现,结果是相同的。接触到这里,已经能够引发思考很多潜在知识点,作为以后的内容吧:

    (1)如果我们已知被拍照的旋转大概是多少转,能不能用很低的采样率来精确测量它的转速呢?答案是肯定的。因为知道大概是多少转,就可以知道大概转速为 fs 的多少倍,用 fs 采样,等于是做了 fmod (f, fs) 取余,观察到余数后,再加上整数倍,就可以计算出转速; 换句话说,在有先验知识的情况下,这种低速拍照不损失信息,可以用来拍摄很高速的旋转。(这种行为,在大学课本里,叫做带通采样) 
    (2)前面的实验中,已经悄悄引入了一个现象,就是旋转的正反。这个概念好像是日光灯照射的电风扇,在特定转速下,扇叶看起来是反转的——这个现象,在大学课本上,叫做“倒谱”。

    看似简单的现象背后,却有非常明确的数学原因。下一部分,我们会看看如何只利用有限的照片,拍摄并分析任意运动的旋转分量,并最终和离散傅立叶变换建立形象与抽象的对应。

     
  • 相关阅读:
    Ui设计哪里有好的素材
    android重写view和viewgroup的区别
    笔记本电脑连接wifi有时候会自动断网提示有限的访问权限解决办法
    ADT 怎么删除logcat过滤规则
    Android开发在使用第三方推送的时候出现INSTALL_FAILED_VERSION_DOWNGRADE
    评论的延迟加载(转载)
    让Entity Framework支持MySql数据库(转载)
    Net4.0---AspNet中URL重写的改进(转载)
    Entity Framework 使用
    深入浅出JSONP--解决ajax跨域问题
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/7221581.html
Copyright © 2011-2022 走看看