全手势识别发展编年史——从“空间手势输入”到通用输入设备 - huawords/huawords.com GitHub Wiki
2019年,我提出了一个判断:未来通用人机交互的核心形态,很可能不是键盘、鼠标,也不是今天意义上的触摸屏,而是全手势识别。所谓全手势识别,并不只是识别几个简单的手势,例如“比个OK”“竖起大拇指”或者挥挥手,而是持续、完整地理解人的整只手,让手指、关节、手掌和手腕的运动都可以成为输入信息。人不需要把手放在某个固定的物理界面上,也不需要事先学习一套固定的按钮,而是可以直接通过自己的手与数字世界进行交互。2019年的时候,这个想法看起来仍然有些遥远,但如果回头看过去六七年的发展,会发现一个非常值得注意的事实:全手势识别本身的技术路线其实正在快速成熟。
过去几年,我们已经看到越来越多基于计算机视觉的手部追踪和空间手势输入应用。普通摄像头已经可以实时捕捉双手的大量关键位置,并将人的手部运动转换成数字空间中的连续控制。有人用它控制3D物体,有人将它用于互动艺术、时装秀和现场发布会,也有人进一步把手势与虚拟物理、视觉效果和数字场景结合起来。甚至已经出现了这样的案例:独立创作者仅凭普通摄像头、成熟的手部识别工具以及AI辅助编程,就能够完成过去需要专业团队才能实现的空间交互作品,并将这种能力直接用于商业演出。这类案例真正值得关注的,并不是某一个具体作品,而是它说明了一件事情:手势识别已经越来越不像一种遥远的未来技术,而正在变成一种普通开发者也可以调用的基础能力。
因此,今天再讨论全手势识别,问题已经和2019年有所不同。过去我们首先会问“算法能不能识别人手”,而现在这个问题正在逐渐失去悬念。随着计算机视觉、机器学习以及AI辅助开发工具的发展,识别手部、理解手指运动、建立连续的空间输入已经越来越容易实现。真正的问题开始变成:我们能不能把这种能力进一步变成一个稳定、自然、随时可用的通用输入系统?这也是我从2019年开始真正关注全手势识别的原因。因为如果手势识别最终只是用于某些展览、游戏或者视觉特效,它只是一个应用技术;但如果它能够成为所有数字设备都可以调用的输入方式,那么它的意义就完全不同了。
早期的手势交互往往是一种命令式交互。张开手代表一个动作,握拳代表另一个动作,挥手代表返回或者切换,本质上仍然是在模拟传统图形界面中的按钮,只不过把“点击按钮”换成了“做一个手势”。但全手势识别真正有意义的地方并不在于替代几个按钮,而在于系统能够持续理解整只手的空间状态,把人的手本身变成一个连续输入设备。手指可以分别运动,也可以协同运动;手腕和手掌可以改变方向和姿态;两只手之间还可以产生大量相对运动。过去我们需要通过键盘上的几十个固定按键来表达信息,是因为计算机只能接受有限的离散输入,而当系统能够理解整个手的连续运动之后,输入就不必再被限制在固定按键上。由此产生的变化,不是“手势替代键盘”这么简单,而是输入设备本身开始从一个固定的物理产品变成一种可以由软件定义的能力。这也是近年来各种空间手势输入项目不断出现的真正意义:它们正在逐渐证明,人手本身就可以成为一种非常通用的数字控制器。
如果从这个角度看,全手势识别未来真正需要解决的问题,其实已经发生了变化。过去最大的障碍是算法,现在越来越明显的障碍反而是硬件和其部署方式。摄像头虽然可以识别人手,但视觉识别天然存在视野范围和遮挡问题,手移动到摄像头看不到的位置,或者两只手彼此遮挡,都会影响识别效果,环境光线和人与设备之间的位置关系也会进一步增加不确定性。因此,如果我们真正想把全手势识别变成一种日常使用的通用输入方式,就不能永远依赖“让摄像头看着你的手”。我们需要的是一种能够更加全面地感知手部状态,同时足够小、足够自然,并且不会给使用者带来明显负担的设备。到了这里,问题实际上已经从“手势识别能不能实现”变成了“什么设备最适合成为全手势识别的载体”,而这个问题最终很容易指向一个已经存在、并且人们长期以来已经接受的穿戴设备:手表。
穿戴设备一直存在一个矛盾:设备越接近人体,就越容易获得稳定的信息,但设备本身又不能给使用者带来太强烈的存在感。头显、手套、专用控制器以及各种身体追踪设备都可以实现空间交互,却很难成为所有人每天都愿意使用的通用设备。手表则不同,它本来就是一种已经被社会接受的日常穿戴设备。如果未来手表能够持续感知手部和手指的位置,那么它的意义就可能发生根本变化:它不再只是一个显示时间、接收通知或者运行简单应用的“小手机”,而可能成为一个始终跟随人的通用输入端。这里真正重要的并不是“手表可以识别手势”这一个功能,而是手表有可能成为人与整个数字世界之间的输入接口。一旦这种能力成熟,手表本身就有机会从一个终端设备,变成整个操作系统生态的上游基础设施。
从这个角度再回头看Vision Pro,我认为它代表的是另一条路线。Vision Pro当然展示了非常先进的空间计算能力,也证明了计算机视觉和空间交互已经可以做到非常惊人的程度,但如果站在“通用人机交互”的角度来看,它的问题恰恰在于它试图首先解决一个专用计算设备,而没有首先解决通用输入问题。第一,VR/AR头显本身并不是一个真正意义上的通用设备,它可以成为游戏、设计、娱乐以及专业生产领域的重要设备,却很难成为所有人每天都会使用的基础输入设备;第二,依赖头显视觉系统进行手势识别,本身又存在由设备形态带来的感知边界,只要手离开设备能够稳定观察的区域,或者发生遮挡,识别就可能受到影响。这并不完全是算法优劣的问题,而是设备形态本身决定的。如果乔布斯今天仍然在做苹果,我反而认为他很可能会首先追问一个更基础的问题:为什么要急着制造一个新的专用计算设备,而不是先解决人与计算机之间最基本的输入问题?在我看来,如果通用输出设备还没有真正成熟,那么首先建立一个通用输入设备反而更加重要。因为输出设备可以随着技术不断变化,未来可以是手机、电脑、电视、投影、眼镜或者其他我们今天还无法想象的设备,但无论计算机最终以什么形态存在,人始终需要一种方式告诉它自己想做什么。
如果全手势识别最终成熟,那么键盘并不一定会消失,但它的性质可能会发生变化。今天的键盘是一件固定的物理产品,按键在哪里、数量多少、排列方式如何,都是制造完成之后就固定下来的,而在全手势输入时代,键盘完全可以变成一种软件定义的输入方式。人可以在空中定义一套自己的键盘,也可以让不同的软件拥有不同的输入方式。再结合人工智能对个人行为习惯和上下文的理解,很多过去必须通过明确按键输入的信息,都可能不再需要以传统键盘的形式完成。甚至可以进一步设想,人只需要做出一个自己熟悉的动作,AI就能够结合当时的上下文理解这个动作所对应的意图,并完成相应的输入。这意味着未来的变化可能并不是“用手势模拟今天的键盘”,而是随着人工智能越来越能够理解人的意图,键盘本身都可能逐渐变成全手势输入系统中的一种特定应用场景。
过去六七年出现的大量手势识别案例,目前还远远没有形成一个真正意义上的通用系统。它们分别服务于艺术展示、游戏、影视、VR、展览、工业设计或者现场互动,不同项目使用不同的设备,也拥有不同的交互逻辑,它们甚至还没有形成一个统一的商业概念。但我认为,这恰恰是技术发展早期经常出现的状态。互联网早期并不是一开始就拥有今天的互联网,触摸屏也不是一出现就意味着智能手机,图形界面同样经历了从实验室技术到通用操作系统的过程。今天我们看到的这些“空间手势输入”案例,真正重要的不是它们最终做出了什么,而是它们正在不断降低一个概念的技术门槛:全手势识别已经可以工作。因此,接下来的关键问题已经不是“能不能识别手”,而是“如何把这种能力变成人人都能够使用的通用基础设施”。只要未来能够解决硬件的小型化、全面感知以及环境适应问题,全手势识别就可能从今天的空间交互技术,进一步发展成为一种真正的通用输入方式。到了那个阶段,触摸屏也可以被重新理解为全手势输入体系中的一个子集——它只是手指与平面发生接触时的一种特殊输入形式,而键盘、鼠标、游戏控制器以及未来出现的其他输入方式,也都可以成为这个更大的输入体系中的具体应用。
所以,回看我在2019年提出全手势识别之后这六七年的发展,我反而更加确信当时判断的方向。今天越来越多的案例正在证明,手势识别本身已经不再是一个遥不可及的问题,甚至一个普通开发者都可以借助成熟工具和AI,在很短时间内做出具有实际交互效果的空间手势应用。这意味着技术正在快速成熟,但真正意义上的通用全手势输入设备仍然没有出现,而这恰恰意味着巨大的商业机会可能还没有被真正开发出来。现在的各种手势识别项目,更像是在不断证明“这条技术路线是可行的”;真正具有基础设施价值的产品,则应该是把这些分散的能力收敛成一个普通人每天都愿意佩戴、能够持续理解人的手部状态,并且可以被整个操作系统直接调用的通用输入系统。我仍然认为,这个通用输入设备最可能指向手表,但手表本身并不是最终的商业核心,真正重要的是手表背后的全手势输入能力以及由此形成的通用输入层。一旦这种输入层建立起来,它所处的位置将不是某一个应用软件的下游,而是整个操作系统生态的上游:操作系统可以建立在它之上重新定义交互,开发者可以基于它设计新的应用,AI可以利用它获得更加丰富的人的行为输入,游戏和数字内容也可以因此产生新的交互方式。换句话说,今天我们看到的空间手势输入,也许只是一个巨大产业的早期应用形态;真正值得争夺的,并不是某一个手势应用,而是下一代操作系统的通用输入基础设施。谁能够建立这个输入层,谁就有可能掌握未来数字设备与人之间最核心的一道接口,而这也可能是全手势识别真正巨大的商业价值所在。