心照不宣

太强大了!

自从在研究生的那个实验室呆过,就觉得各种意念控制终有一天是可以实现的,但是没想到来的这么早!原原本本把视频拿到这里来太麻烦,干脆就给一个链接好了,是网易公开课的视频:

http://v.163.com/movie/2010/7/P/T/M78G0BFIM_M78G0FFPT.html

一般人可能觉得这是个很邪门的东西,但是编程的角度看,就相当于是面向过程编程进化到了面向对象编程。最初的编程是机器码,后来变成了汇编码,再后来变成了C、Fortune这样的高级语言,再后来面向对象语言Java、C++、C#横行霸道,这种过程是低级的语言逐步的被隐藏在高级语言之下,设计程序的人慢慢的只要了解一些和自己日常认知相近的概念就能学到编程手段,实现自动化和控制,其实最终机器接受的语言还是机器码,只是有那么个叫做编译器的家伙不辞辛劳把高级语言翻译成机器码。

传统的编程和软件需要的是用户给出字符输入,比如源代码或者命令行(当然这两者是不同级别的手段,不能等量齐观)。用最普通的命令行来说,这其实不是一种编程手段,而是一种用户接口,在程序内部会有一种机制来理解用户的命令行,最终实现成机器的行为。命令行是所谓的用户接口的一种形式,软件和自动化行业发展到了现在,用户接口其实已经远远不止命令行这么简单,语音命令可以当做用户接口,手指触摸的动作可以当作用户接口,表情可以当作用户接口,甚至人体动作,都可以,只要是想象得到,都可以。

一般人应该都很容易理解从源代码到机器行为的过程,那么从用户接口到机器行为的过程,就只需要了解从用户接口到源代码(或者程序)的过程就可以了,因为从用户接口输入的信息是必须经过程序本身“理解”再实现成最终的机器行为的。如果从正式的角度来说程序可以理解从用户接口输入的信息的原因,有一个很冗长的名词:有限状态自动向量机。为什么叫这么个名字就不说了,有限状态自动向量机只是一个泛称,很多编程的人其实根本不在乎自己的程序是不是可以叫这个名字,这个名字只不过是归纳了程序的一种普遍功能。这种功能就是当程序捕捉到一个外部命令,会在内部找出与这个命令相对应的一种“状态”,这种“状态”其实只不过是一个符号或者代码,程序员爱怎么规定就怎规定,那么命令A就对应状态a,命令B对应状态b,依次类推,但是有一个条件,这种对应不能无止尽的延续下去,状态的个数必须是有限的。

在TED介绍的emotive技术里面,脑电波也成了一种用户接口,仅此而已。真正让人惊叹的是他们把脑电波用这么精简的设备采集出来,并对这些脑电波进行识别,最终转化成对应的状态。有了这种技术,不要说眉眼传神,心照不宣也不远了。

发现写成了科普贴。