垃圾佬营救超级飞侠:奥比中光体感游戏机 作者:蓬岸 Dr.Quest 编号:24078248784 创建于:2025-02-17 01:33:07 修改于:2025-02-17 15:17:58 -------------------- 2023年10月,我在准备《如何将复古电脑元素运用到内容创作中? (Link: https://zhuanlan.zhihu.com/p/665391465)》讲座期间,曾经和几位艺术家的讨论中提到,是否有一款便宜又容易买到的体感摄像头,来取代已经停产的Kinect用于交互艺术教学?当时我就注意到闲鱼上出现大量贴牌的奥比中光摄像机顶盒,最常见的是“超级飞侠”体感游戏机,此外也有若干相同型号但不同主题的“体感学习机”或“体感游戏机”。 (Image: https://pengan1987.github.io/images/picx/v2-c03dbdf85ebde10bf20b501ff2d6049a_720w.jpg) 这些设备价格通常很便宜,通常在百元以内,直到今天仍然很容易买到。但国内的使用资料非常少。许多人并不知道它们除了内置的体感游戏之外还能做什么用途。 “超级飞侠”的真面目Orbbec Persee 实际上,上面所有这些体感游戏机都是Orbbec Persee的贴牌版,在2015年时通过Indiegogo众筹成功,在海外开发者中有一定影响力:Orbbec Persee: World's First 3D Camera-Computer (Link: https://www.indiegogo.com/projects/orbbec-persee-world-s-first-3d-camera-computer/#/) 只是由于渠道和营销的关系,国内大多数开发者接触到的往往只有Astra系列,Persee系列的使用资料很少。 Persee的硬件规格: CPU RK3288 RAM 2GB DDR3 存储 4GB内置+TF卡槽 网络 2.4Ghz 802.11n,蓝牙 彩色相机 1280x720@30fps (支持UVC) 深度相机 640x480@30fps 操作系统 Android 4.4(仅OEM)Android 5.1(可刷)Ubuntu 14.04(可刷)/16.04(可刷) “营救”超级飞侠 由于跟国内各类定制版Persee配合的云服务早已停止工作,如果按照正常操作,往往会卡在激活流程无法正常使用。 (Image: https://pengan1987.github.io/images/pic1/v2-adb9d05fb1abf9895664a2711a088333_720w.jpg) 幸运的是超级飞侠版的Persee ROM如果连接Micro-USB线而非外接电源开机,ADB(Android调试桥)会自动打开,这为我们不刷机绕过设置向导提供了可能,本文不会细讲ADB的基础使用方法,对ADB使用感兴趣可以参考:免 root 玩转 Android 设备:如何从零开始使用 adb - 少数派 (Link: https://sspai.com/post/57427) 绕过设置向导的窍门在系统语言设置里,如果在设置向导开启的情况下修改系统语言,就可以跳过设置向导而继续操作。在安装有ADB的电脑上使用下面的命令调出语言设置 adb shell am start -a android.settings.LOCALE_SETTINGS 默认的语言设置是简体中文,我们随便换一种设置,比如改成繁体即可绕过设置向导。没有原装遥控器的话,使用Persee机身后面的USB接口外接键盘或鼠标就可以操作,鼠标右键即是安卓系统的返回键。 (Image: https://pengan1987.github.io/images/picx/v2-7a8edb98468f9dd245dddbb5b550572c_720w.jpg) 然后就可以进入超级飞侠主界面了 (Image: https://pengan1987.github.io/images/picx/v2-7331aa1976b88b531aae2985072d3647_720w.jpg) 当然这个游戏机启动器(Launcher)并不好用,我们可以用其他启动器来替换它,比如Nova Launcher,下载好Nova Launcher的APK安装包,可以使用“adb install”命令来安装 adb install C:\Downloads\com.teslacoilsw.launcher_5.5.4-59400_minAPI16(nodpi)_apkmirror.com.apk 之后使用刚才进入语言设置的命令回到设置界面 adb shell am start -a android.settings.LOCALE_SETTINGS 选择“主荧幕”,将Nova Launcher勾上 (Image: https://pengan1987.github.io/images/picx/v2-1b81b888057c31ea20f027475c1aa7cf_720w.jpg) 然后在“应用程式”→“全部”→“O-BABY-Launcher” (Image: https://pengan1987.github.io/images/pica/v2-161f4f36d33be77bb93daa76425e56c0_720w.jpg) 将其强制停止,之后返回就会进入到Nova Launcher (Image: https://pengan1987.github.io/images/picx/v2-afd30c6533b54733daf7d4389515a4f4_720w.jpg) 完成以上设定后,即使重新开机Nova Launcher也还会是该机顶盒的默认界面,可以正常安装自己的软件了。 (Image: https://pengan1987.github.io/images/picx/v2-15e67111020df5c26c63e5619e920d58_720w.jpg) 刷Android 5.1 有些型号的OEM版Persee,比如黄/紫配色的“儿童版”并没有默认开启ADB,这让它并不像超级飞侠那样容易“解救”。但在奥比中光的英文论坛里,提供了适用于Persee的另外几个固件,Android 5.1、Ubuntu 14.04和Ubuntu 16.04:Universal Download Thread for Persee (Link: https://3dclub.orbbec3d.com/t/universal-download-thread-for-persee/694) 刷机包中提供的Persee Image Installation Guide比较详细的介绍了刷机的过程,这里只简要描述: - 先安装瑞芯微驱动助手DriverAssitant_v4.3 - 运行Android Tool刷机工具 - 用手机取卡针压住DC接口旁边的小孔,连接MicroUSB到电脑 (Image: https://pengan1987.github.io/images/pic1/v2-28cea2992a2cf1e84ace8163199045d3_720w.jpg) - 看到Android Tool显示“Found One LOADER Device” - 在Android Tool中选择Update Firmware选项卡 - 按Firmware按钮,选择刷机镜像路径 - 按Upgrade开始刷机,等待直到刷机完成 (Image: https://pengan1987.github.io/images/pica/v2-311d0f16cbb2596f9b1ee1df054ae1a8_720w.jpg) 刷入Android 5.1后,除了可以不再需要绕过各种定制启动器,得到更加纯净的系统外,也可以支持scrcpy遥控等更现代的Android辅助工具外,还支持更新的Unity版本 系统版本 Unity(最后版本) Unity(最后LTS版本) (超级飞侠默认版本)Android 4.4, API 19 2021.1 2020.3 Android 5.1,API 22 2023.1 2022.3 如果你感兴趣更多在Persee/Android上开发Unity程序的细节,可以参考:Getting started with Orbbec+Unity development with Astra Pro and Persee (Link: https://i2-network.com/consulting/orbbec/getting-started-with-orbbec.html) (Image: https://pengan1987.github.io/images/picx/v2-986aff977b67926f35983fce5eb0e212_720w.jpg) 刷Ubuntu 刷Ubuntu的方法和刷Android 5.1的方法基本一致,默认的sudo密码都是一个空格 (Image: https://pengan1987.github.io/images/pic1/v2-8cfe1e521aa6c62b16dea8c0b89d85c4_720w.jpg) Linux下主要的深度摄像头开发API都是OpenNI,如果遇到USB权限不足的问题,可以使用OpenNI2的脚本将对应的USB设备权限设置为666 https://github.com/OpenNI/OpenNI2/blob/master/Packaging/Linux/install.sh (Link: https://github.com/OpenNI/OpenNI2/blob/master/Packaging/Linux/install.sh) (Image: https://pengan1987.github.io/images/picx/v2-c2166ed4ea36b7543e600e5b73e2561a_720w.jpg) 另外由于Persee使用的是Astra Pro传感器,RGB彩色视频无法通过OpenNI获得,而需要通过UVC以类似普通摄像头的方式取得,可以参考奥比中光英文论坛上的帖子:Persee Ubuntu 14 Cannot get RGB image (Link: https://3dclub.orbbec3d.com/t/persee-ubuntu-14-cannot-get-rgb-image/690) Github上的一些项目展示了利用奥比中光Persee在网络上传输深度图像的方法: GitHub - fusefactory/ofxDepthStream: OpenFrameworks addon for working with image streams from remote depth sensor (Link: https://github.com/fusefactory/ofxDepthStream) https://github.com/underdoeg/persee-depth-image-server (Link: https://github.com/underdoeg/persee-depth-image-server) 更多的开发资源 奥比中光目前提供三种不同的SDK: - 较旧的Astra SDK,仍然可以下载并且兼容Persee硬件,但已经EOL阶段不再更新:Astra SDK - ORBBEC - 3D Vision for a 3D World (Link: https://www.orbbec.com/developers/astra-sdk/) - 开放的OpenNI SDK,仍被支持,但功能偏底层:OpenNI SDK - ORBBEC - 3D Vision for a 3D World (Link: https://www.orbbec.com/developers/openni-sdk/) - 新的Orbbec SDK,但不再支持Persee:Orbbec SDK - ORBBEC - 3D Vision for a 3D World (Link: https://www.orbbec.com/developers/orbbec-sdk/) 此外,Nuitrack也对Persee提供较完整的支持 GitHub - 3DiVi/nuitrack-sdk: Nuitrack is a 3D tracking middleware developed by 3DiVi Inc. (Link: https://github.com/3DiVi/nuitrack-sdk) 目前来看,对于教学、演示、概念验证等用途,可以优先使用Astra SDK和Nuitrack的试用授权已经基本足够。如果团队开发能力较强,基于OpenNI深度开发也是可以尝试的路径。