一年独立研究的历程和感悟

    2010年5月,我辞职创业已经一年半了,公司业务仍然没有什么进展。我虽然还没有到吃喝都成问题的地步,但心里的压力已经日渐显现。当初创业的激情在18个月后逐渐褪去,不断变更的项目和没有进账的现实也让前途变得越来越渺茫。

    我清晰的记得那一刻,2010年5月19日早上,我在骑车上班的路上,刚出小区,突然想到,即便没有钱,我也要快乐地活下去。我至今也不知道当时为什么那么想,估计老天爷在当时应该是开眼了。这个想法让我多日以来的负面情绪一扫而光,脑子也突然变得灵光起来。

    那段时间我对鼠标的原理特别感兴趣,通过Google和Wikipedia,我了解了鼠标的历史以及机械鼠标和光电鼠标的原理。光电鼠标(不包含激光鼠标)每秒钟采样上千次,靠计算相邻帧图像的差别来计算鼠标在桌面上移动的方向和距离并映射成光标在屏幕上移动的矢量。从鼠标的历史可以知道,受当时条件的限制,机械鼠标的发明让鼠标在桌面上运动来控制光标在屏幕上运动是最容易实现的。后来的光电鼠标则把机械运动改为对图像差异的计算,从而提高了鼠标的精度、解决了鼠标易脏易磨损的问题。这在鼠标的发展史上应该是个大事件,但实际上只不过沿袭了机械鼠标的设计思想而已。它没有解决鼠标操作不直观这个问题。

    在路上我突然有了一个想法,为什么鼠标一定要在桌面上运动呢?难道不能用鼠标指向屏幕来操作光标吗?这个想法让我异常兴奋,来到办公室后,我用我的光电鼠标贴近屏幕移动,果然,光标动了。不过方向正确,移动的距离却不对。这个实验带来了两条信息,好消息是做一个装置,通过图像处理来控制屏幕上光标的移动是可能的;坏消息是光电鼠标的算法没戏。
   
    虽然消息一好一坏,但这个好消息已经足以让我来了兴致。我开始在闲暇时间思考这个装置应该是什么样的,它应该用什么样的原理、算法和硬件?首先,如果想接收到屏幕的图像,应该有镜头和图像传感器,鼠标的镜头和传感器分辨率太低,而且内部算法已经固化,很难做修改;摄像头是个不错的选择,分辨率和速度都可以满足一个研究的初期要求。于是我买了一个摄像头,搞定了硬件。
 
    接下来应该是要做一个最简单的原型,它可以有诸多的限制条件,只要展示出可能性就行。我的想法是只考虑在黑色的背景上控制白色的十字光标,剔除其它复杂的因素。这个0.1版的原型大概花了我几天的时间就搞出来了。我把程序发给我的一个好朋友看,得到的回答是想法很好,要做出来很难。是啊,这年头简单东西都被人做完了;再说了,难才有挑战嘛!
 
    之后就是正式的研究工作了。十几年前在大学时我搞过一点图形学的研究,用计算机画过一些点线和简单的分形图。当时在DOS上画出漂亮的图形的情景仍历历在目,那种好像发现了新大陆的感觉正和我现在的感觉很相似。不过那是图形学,我对图像处理可谓一窍不通。怎么办?学呗!

    对一门新学科,得要有一个完整的了解。于是我上网找了一些视频的教程来看,不管懂不懂,先有一个粗浅的全局的认识再说。其中中科院刘定生老师的《数字图像处理与分析》给了我莫大的帮助,不仅让我了解了图像处理的基础知识和全局概貌,而且让我对图像处理有了兴趣。真正的老师是在培养学生的兴趣,而不是灌输给他们知识。大脑是用来思考的,不是用来存公式的!
 
    在接下来的研究中,我的研究方向不可避免地指向了计算机视觉、模式识别和机器学习。这个领域是我多年以来一直想做而未做的。之前的一次试水是在闲暇的时候做了一个wiimote的手势识别程序,可以识别0-9的数字和一些简单的符号。当时很有成就感,觉得自己在新领域的拓展方面还是很有能力的。这次碰到的是类似领域,但在难度和深度上却又进了一大步,这激起了我的雄心和斗志,于是我的劲头更足了。

    随着对问题的认识的不断深入,我慢慢意识到我要做工作的就是让计算机模拟人类眼睛的功能,识别出屏幕上的光标,得到它的位置,从而控制它在屏幕上移动。这个领域有无数种算法,我只能根据我的目标有选择的尝试一些算法。这期间,我的闲暇时间基本上都用来看书、上网找资料、读论文并从中筛选我想要的算法的候选者,然后写程序来测试它们。遇到问题时,到网上搜索或论坛中提问。在黑暗中求索是困难的,有时甚至是迷茫的;然而,能够做自己喜欢做的事并且在新领域中驰骋又让我充满热情乃至欲罢不能。

    在2010年11月,我完成了第一版的原型。它可以工作,只是太慢了。这时我发现我已经迷上了这个领域,我无法只用业余时间来研究它。在2011年1月,我辞去了工作,全心全意地投入这项研究中。

    在2011年4月,我用多核方法实现了一个可用的版本,它比之前的版本快4-5倍,基本上可以满足原型的需求。之后我申请了专利,目前正在处理中。在申请专利时,我又想到了一种当屏幕没有光标时对屏幕定位的方法,并将两个方法合案申请。

    现在,我仍然会时不时在我的程序上试验新想法。同时,我把更多的精力放在怎样把这项技术转化为产品上。
   
     最后,谈谈独立做研究的感觉。说实话,如果没有internet,没有搜索引擎,独立做研究几乎是不可能的,有了网络和搜索,你要的知识基本上是唾手可得,就看你能不能学得进去了。就像电影《心灵捕手》里Will Hunting对哈佛大学的学生说的,“你花一万五所受的教育,用一块五就能在图书馆得到”。即便如此,独立研究也是很需要毅力和韧劲儿的。相比之下,和一批志同道合的人一块儿干,一块儿讨论、争吵、嘻嘻哈哈,心情会好很多。自己一个人搞,容易钻牛角尖,思路也不够开阔。我之所以这么做,是因为周围的朋友都不做这个,实在是没人可找了。我之所以能坚持下来,完全是因为兴趣。现在回头想来,这一年的生活并不轻松,半夜熬到一两点是家常便饭;每天猛看论文,满脑子公式,见谁都像一堆数字...... 但实际上当时并不觉得枯燥,反而觉得乐在其中。每一个小小的进展都会让我兴奋不已,如果修改了一个算法导致了更好的结果,那就足以高兴个两三天了。所以,我认为兴趣和热情才能引领一个人走向成功,因为它们会随着时间和研究的深入而越来越浓。再有就是怎样达到一个看似遥不可及的目标。其实还是分解,不管是刻意的还是无意的。比方说我有那个idea时,根本就没接触过这个领域。这时我做了两件比较有意义的事,一是做了一个最简单的原型,把所有复杂的东西都去掉,只是为了证明可行性。这件事情只花了几天时间,但是给了我信心,让我在之后的研究敢于很有底气的说,Yes I can。第二件事情是花时间把这个领域的知识过了一遍,通过Google、Wikipedia、视频教程、经典教材......,没看懂的就跳过,要的就是概貌。在这个过程中,慢慢对这个领域的知识就不再陌生和恐惧了。之后看论文也不再感觉像天书了。最后我想说的是,如果你真的想做一件事,Just do it!不要介意以前是否从事过这个,或是这个东西太难做不了。不管做不做,时间都会溜走,做了至少不后悔。



后记:
    在文章中我用比较符合逻辑的方式描述了发明从灵光乍现到大致成型的过程。实际的思考过程显然不是这样的,其中包含着大量的逻辑思维和潜意识层面的头脑风暴以及多年的生活经验和各式各样体验的片段的互相碰撞。当时的思维是跳跃的、零散的、而不是连续的,因此我很难还原出当时的思考过程,即便能把它还原出来拍成电影,观众能看到的也是一大堆看上去毫无联系的片段杂乱无章的排列在一个开放的空间里,然后似乎奇迹就这样出现了。
 
    我后来重新审视这一过程时,很多潜意识层面的东西都慢慢的浮出了水面。我可以为当时的一些跳跃性的思维找到逻辑层面的原因。比方当时为什么把鼠标指向屏幕,应该是显意识觉得鼠标用起来不舒服,不能直接对屏幕操作,而潜意识觉得光电鼠标的原理可能应用在从屏幕上获得的一系列图像上。这种事后诸葛亮式的思考,虽然不能解释创造性思维发生的过程,但理清头绪对培养创造性思维应该是很有用的。

附:
Quantum Phantom 视频
中文版
英文版


AGRE 视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值