关于
首先,熟悉我的朋友通常会叫我侃爷,如果你不介意的话,我会非常开心你能这样和我“say hi”。具体第一个这样称呼我的伙伴我已经记不清了,但是似乎每到一个新环境,经过一段时间的熟悉过后,都会有朋友或者同事这样称呼我,我也就理所应当的接受了这个绰号。具体原因我觉得有三:一是我的名字里面就有一个“侃”字;二是我相对的口齿伶俐,表达也算清晰;三是我做事态度一直不紧不慢,似乎情绪也很稳定。其后二者也是我自己一直比较想追寻的工作态度:有计划且平稳的把工作完成,同时把自己的工作简明扼要的介绍给别人,这个绰号也算是我自己追寻的一个目标了。
如果想直接了解我的工作而不是下面碎碎念,请拼命滑动你的鼠标直到最后。
我2006年进入西北工业大学教育实验学院开始本科学习,由于特殊的学制规划,我们需要在本科前三年在一个试点学院完成相关的学习,并在本科第四年达到保研要求后在西工大内选择一个自己愿意深造的专业以及一个自己愿意跟随的导师进行硕士阶段的学习。在本科阶段的学习,我的表现实在是过于平庸,以至于我甚至很难找到自己的亮点在哪里。有好几次我甚至非常接近于失去那种特殊的保研资格,其中让我印象深刻的是我那差劲到极致的材料力学,力学背景的差距这也让我在后来和机器人结构方面同事沟通起来显得底气颇为不足。在教改班的三年让我有收获的地方有二:一是很多基础课的学习让我在后来硕士以及博士期间进行跨学科沟通的时候显得“游刃有余”,为数不多的亮点学科比如计算机也成了我后来要频繁使用的工具以及我现在的谋生技能。回想我如果一进入大学本科就进入了航天或者航空专业学习,我应该就没有机会接触到包括电子,自动化,计算机等等方面的诸多专业了。另一个收获更是无疑影响了我后半生,那就是我认识了我曾今的女朋友,现在的老婆和孩子妈。作为曾今的学院前几名和诸多奖项获得者的她,每天拉着我上自习尽管我心不在焉,回想当初我也不知该哭该笑。
在2009年的夏天,我选择进入了西北工业大学航天学院开始了“硕士”阶段的学习。我有幸在大四就开始了某种程度上的科研工作,尤其是在跟随着实验室里面两位优秀的前辈,其中一位很多年没有联系,现在应该在欧空局从事着航天方面的研究工作,另一位则是在MIT/哈佛做了很久的博士后工作后,即将加入清华大学继续机器人方面的科研工作。除了认识到更多的牛人之外,我非常幸运能够在2010年的时候就开始研究视觉SLAM的相关工作,尽管当初做的工作现在看来简单到可笑,我仍然感到十分幸运。在2010-2012年前后,其实在视觉SLAM相关领域能跟随的工作并不多,现在很多都广为人知的开源代码在当时并不存在。那是一个从opencv-1.x
跨入opencv-2.x
的时代,很多现在的主流算法甚至数据格式在当时并不存在,例如现在使用广泛的cv::Mat
以及各种特征点检测子和描述子等等。你甚至要自己手动去写一个二进制描述子去实现特征点的提取和匹配,而我也有一份幼稚的工作就是和这个相关。我甚至花了很多时间去编译A. Davison的MonoSLAM的工作,为了降低系统的gcc版本,当年花了很多时间用一个新的gcc去编译一个老的gcc版本。尽管当时的学习效率实在是低的可怕,我已经很难记清楚为了写简单的几个多视角矩阵以及姿态分解我花了多长时间,但是在此过程中对于Linux系统,编译器学习所带来的进度确实实打实的。得益于我的导师并不十分关注我的日常科研工作,我有大把的时间去玩弄包括Ubuntu, Arch, Fedora, Redhat各种Linux发行版,去学习各种Linux系统上的奇技淫巧,包括grep, awk, regex
等等,以及阅读各种当时非专业相关的Linux系统,设计模式等等书籍。直到我工作乃至自己创业或者指导团队工作时候,当我搜索自己的武器库时候,从脑海的深处翻出过去学到的东西让我受益匪浅。
得益于西工大尤其是实验室的灵活政策,我有幸花了两年零三个月便结束了自己的硕士学习,并在袋鼠国开始了自己的博士阶段学习。在悉尼科技大学的整整四年时间是我个人成长最明显,我工作强度最大也是让我最开心的四年。这里可以充分证明,高强度的学习工作并不会让人感到疲劳,没有收获感和成长性的高强度工作才是让人乏味的罪魁祸首。能够在Dissanayake教授的指导下进行我的博士科研工作是我截止目前最幸运的事情之一。在博士期间的一年半,我的工作也难言优秀,尤其是和实验室内其他的小伙伴相比,直到2015年我有了自己的第一篇ICRA文章并且后续在2016、2017年都有文章陆续发表。与预期的想象不同,在博士期间我的工作并非严格和视觉SLAM挂钩,那个时候Dissa认为SLAM问题已经基本解决了,尤其是考虑到激光雷达作为主传感器的条件下。考虑到最近三五年来,SLAM尤其是视觉SLAM的论文依然是各个机器人以及视觉顶会上的热点内容,Dissa的观点放到现在有待商榷,但是我仍然认为他说的是对的。视觉SLAM的论文已经越来越难以让人兴奋了,最近几年来开源工作虽然颇多,但是我确实很难找到当初看包括参数化,图模型等工作的兴奋感了,大家做的看上去更多的是系统的集成与测试。插上一句,我非常喜欢包括Frank Dallaert, Luca Carlone在Rotation average, guaranteed convergence上面的工作,我也是gtsam的忠实拥趸。在博士期间,我的工作更多的和主动感知(active perception)相关,所对应的实际问题和当年的一个热点领域相关,那就是如何让服务型机器人在室内自主的完成物体操作。通过对于环境的初步感知,机器人需要综合各种因素,规划出一条轨迹,使得运动后能够准确的识别与定位物体,并保证在运动后自己定位的误差不至于离谱。为了解决这一问题,需要了解更多关于物体识别,姿态估计,路径规划等等方面的知识,考虑了自己过往在相关领域的知识欠缺,我确实花了很多时间去弥补自己技术栈的不足。当然,在补齐了所有欠缺的知识,我看上去更不像一个博士生了,而是一个全栈的工程师,工程师思维也贯穿了我博士与工作的始终。在博士工作快要结束的时候,我第一次意识到似乎我可以做很多事情,从传统的物体识别与抓取,视觉与激光SLAM到机械臂上的简单规划与控制,似乎我在博士期间都完整做过或者参与过简单的demo。当然,这一现象带来的负面则是除了视觉SLAM与VIO,我对其他的所有领域似乎都很难谈上精通,我更多擅长的是快速利用手里的工具搭建出一个原型的系统。
博士期间的工作也伴随了很多遗憾,如果非要从中挑一个的话,我觉得我没有充分认识到深度学习这个2012年出来的新玩意,对于视觉以及机器人在后续十年内带来的翻天覆地的变化。在我跟踪包括Dieter Fox以及Liefeng Bo在2011-2012年的工作时候,我已经开始接触到了类似Hierarchical Sparse Coding这样的概念,但是我显然没有继续深挖下去,对于CNN这一领域进行更深的钻研。我在博士期间也有幸和很多国内外的老师建立了联系,包括浙大CSC的很多老师和同学,他们中的很多人至今也是我的好友,包括南加大的Sukhatme教授以及在使用gtsam期间沟通多次的Luca。
工作的内容从这里开始:P
我的第一份工作开始于大疆,作为最早加入大疆车载的几位工程师,我在大疆很短的时间里,主要在进行草稿版本的车载多传感器融合与多传感器标定算法的开发。直到现在,尽管在大疆不到一年的时间短之又短,我依然认为大疆的技术团队,尤其是机器人方面,是我接触过的实力最强的技术团队,这也和他们的港科大教授技术负责人不无关系。我偶尔也会假设,如果我在大疆多工作一段时间,完整的待上两年到三年,我的职业生涯是不是会更平坦和容易一些。如果按照假设的话,我应该会在职业生涯开始的第一年,就踏入自动驾驶这一方向,并在这个方向深挖下去,直到成为自动驾驶高精定位与建图方面的专家。时钟倒回到四五年前,回忆我做出离职创业的这个决定主要有这么几个:一是我加入大疆无疑是想做无人机相关的,当年的我心中的执念是如果我去做自动驾驶相关,我大可以去一家专门做自动驾驶的平台,而不是在一家无人机公司做,而在这一点上我显然低估了大疆在这方面投入的决心和人力;二是我当初并不是非常看好自动驾驶的前景,当初对于信息并没有了解充分的我,认为自动驾驶的落地时间是要远落后于机器人相关垂直应用的,这里面的原因很多。考虑到最近几年自动驾驶领域的商业化速度,我犯了第二个错误;最后因为各种原因,没能去美国工作的我,当时天真的想着想在国内创业做出一些东西,尤其是考虑到还有实验室老师的支持以及自己的技术栈,我决定利用自己年轻的时间去试一下。我不觉得创业是一个弯路,但是我觉得对于技术和商业化的判断在当年确实欠缺自己独立的思考,这也是我创业三年最大的成长和体会。创业确实如很多人所说,找到合适的方向远比做出努力要重要,这句话并不是对机会主义者的认可,对努力付出者的贬低,而是创业需要在更多非技术的层面思考其他的问题。
从2017年到2020年,我作为联创建立了Tianfu Robotics,因为各种原因,你很难在公开渠道搜索到这家公司的任何信息,我也在试图整理过去的工作,并把其中适合公开的部分发布在我的个人网页上。作为一家创业公司,在2017年,我们首先瞄准想要切入的领域是建筑机器人,尤其是建筑任务中的砂浆喷抹作业。对于场景不熟悉的同学进行一个简单的介绍,砂浆的喷抹作业现在几乎是建筑任务重成本最高,从事意愿度最低的工作之一。仅就四川地区而言,相关的工人根据熟练度不同,一对协同工作的工人,一个月所得就接近一万多元。针对这个场景,在TR,我们对包括建筑环境,砂浆类型,装配式建筑等等相关课题进行了充分的研究,最终还是决定去啃一啃这个硬骨头。为了实现在建筑场景内机器人的自主工作,我们自主设计了高承重且稳定性强的移动底盘,高同步性的升降机构,可快速切换的末端立体相机与操作机构等等。我们开发的算法包括室内环境下的移动机器人定位与导航算法,机械臂规划与控制算法,墙面覆盖规划算法,结构光三维重建算法,室内场景的三维重建算法,末端执行机构轨迹跟踪算法等等,我也会在我的网页后续对这方面的工作进行部分的展示。从技术角度而言,我们整个系统框架和同时开展的来自南洋理工大学的Iming Chen教授的工作非常接近,感兴趣的同学可以阅读论文了解一下。很遗憾的是,因为各种各样的原因,无论是墙面喷抹机器人还是后续室内环境三维重建机器人的前景都不理想。首先,系统的硬件成本过高,考虑到六自由度机械臂以及六自由度力传感器的使用,整个系统的硬件成本过于高昂;随之带来的第二个问题就是对于系统的效率无法兑现本身高昂的成本,在存在技术员协助的情况下,整个机器人的工作效率仅仅能够替代一到两个人的工作。最后,复杂多变的建筑场景给机器人的部署提出了极大地挑战,这些都是大规模商业化中的极大障碍。在后续的工作中,我们思考了很多,最终决定将结构光三维重建技术进行深入研发,从基于格雷码的方向切换到基于相移的方案,缩减图像数量与拍摄时间,并将产品落地领域转换到医美领域。利用结构光重建用户面部信息,吸引用户并提高获客的比例,与此同时对于术前建议提供更多的参考。利用一些深度学习算法,我们也做了一些面部斑点,皱纹检测的相关工作,提升整个产品的可用性。在这个新的应用领域,我们在一些省级规模的医美连锁公司进行了不错的推广。幸运的话,你会在一些湖南,广西与重庆的一些医美机构看到我们的设备。
在成都的三年创业经历当然难言成功,因为各种原因,我决定离开创业公司,加入广州视源中央研究院进行包括视觉SLAM,多传感器融合,三维重建等等我熟悉的专业方向进行研发。自从2021年开始,我有机会和十几位小伙伴针对AR/VR眼镜这一产品方向,进行很多核心算法的开发和落地。截止目前,我们开发并落地验证了包括头部六自由度估计,头部三自由度估计,手势识别与跟踪,三维物体识别与跟踪,手柄六自由度估计,头手协同状态估计等等。我们最终可以在我们自研的硬件平台上进行上述绝大多数算法的验证,部分的结果是令人印象深刻的。除了这些,我也有机会了解并学习了不少在安卓系统上进行很多底层功能开发的机会,相对于SLAM相关算法的开发,类似的领域也同样又有可玩性。在广州的工作经历里,很庆幸我能接触到除了之前机器人和自动驾驶之外的应用领域,AR/VR作为最近的热点领域,进行相关算法与系统的开发无疑是让人十分兴奋的。除了SLAM之外,我似乎也对更多之前没有深入了解过的领域产生了兴趣,尤其是手势识别与跟踪以及头手的协同状态估计。在当前这个时刻而言,我对这两个问题的兴趣已经超过了视觉SLAM本身(等将来我的兴趣切换回来的时候,偷偷删除掉这一句)。除此之外,我们还有机会和集团层面的其他部门进行合作研发,对于智能投影,汽车电子,机器人等相关场景下的算法功能进行开发。
在进入我职业生涯的第五年的时候,相比博士毕业的懵懵懂懂,无论从技术还是管理,沟通等等方面,我还是非常开心能在过去经历中所获得的成长。尽管走了很多崎岖的弯路,但截至目前,还能够做自己擅长的事情,并在这个充满不确定性的世界里从事一个未来的方向,感觉还是内心安慰的。这五年里,我做过自动驾驶,做过机器人,现在正在做AR/VR方向,有些方向自己还能做的让自己满意,这是最让我开心的事情。对于将来的规划的发展,经过这么长时间,我也终于能把一些事情想明白了一些。正如这个网址的标题,我始终认为自己还是一个roboticist,对于机器人这个方向十年多的研究和发自内心的热爱,尤其是当看到一个机电集成的物体在你面前按照你想要的方式动起来的时候,那种成就感带来的兴奋是难以忘却的。相对于单纯的视觉SLAM,激光SLAM或者多传感器融合等等,我对Mobile Manipulation的更加兴奋,除了让机器人在环境中准确的定位导航,还有什么能比让机器人在环境中完成了一个操作更让人激动的呢!然而,这样一个理想的场景似乎还举例我们比较遥远,规划控制算法,复杂的环境结构等等都是找到一个合理应用并稳定工作所要面临的障碍。AR/VR这个行业最近一年多的热度无疑让我们这样的从业者感到兴奋,描绘的场景似乎真的可以把虚拟世界和物理世界结合到一起。然后相关的热度却让我觉得很不现实,从技术方面考虑,尤其是AR,找到一个落地场景的时间会在将来的什么时刻,大家都难以预计。在错过了自动驾驶的这一波浪潮后,我确实也很难回头去继续做这方面的工作了,这也并不会让我感觉有什么遗憾。
最后,我希望能把自己工作中的一些笔记和经验分享到这个网址,希望对你们有用!
如果你对我的工作感兴趣,欢迎发送信息到我的邮箱(given name).(family name)@gmail.com
Good Luck!