V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Felldeadbird
V2EX  ›  分享发现

Microsoft HoloLens 实现原理猜想

  •  1
     
  •   Felldeadbird · 2015-01-24 22:03:37 +08:00 · 4933 次点击
    这是一个创建于 3600 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚才逛视频站,无意中点入了Microsoft HoloLens的介绍。我没有看微软前几天的直播,只知道有这样的产品存在。然后看着看着,我突然间灵光一闪,得到Microsoft HoloLens的实现原理猜想。
    核心:把虚拟世界坐标与现实世界的坐标结合起来。
    就是我开机后,Microsoft HoloLens在当前视野进行一个出生点设置,0,0 ;镜头左右移动焦点坐标也跟着发生变化。
    假设我现在眼前的为电脑,左边为床,右边为电视机。现实和当前Microsoft HoloLens开机后生成的坐标为:0,0,0; -300,-200,50; +300,+150,20 ;
    我戴着Microsoft HoloLens镜头往床边-300,-200,50 某一位置放一个 播放器,在电脑位置放一个图片播放器。
    当我的视野看不到上述放置程序的坐标时,则不再眼前显示。反之则显示出来。
    恩,在集合微软独有的手势捕捉能力,Microsoft HoloLens诞生了!
    好吧,我太过激动了,大家可能没看懂我的。如果你玩过MC应该知道吧,刚进入游戏,地图只生成一小部分,随着不断探险,地图不断增加。我猜Microsoft HoloLens也是基于这样的原理。把放置的虚拟数据都存放在虚拟地图,根据当前Microsoft HoloLens计算出该显示的虚拟地图。。
    有点像平衡世界,当然了。我这些都是猜想。微软是否这样实现只有他们才知道了。
    我相信依据我上述的猜想,绝对可以山寨出Microsoft HoloLens出来。唯一难点应该在于 手势捕捉,图像处理,还有计算能力。

    第 1 条附言  ·  2015-01-24 23:02:47 +08:00
    其实和PS的图层一样。现实世界就是最底的图层,每一个虚拟窗口都是上层图层。
    我觉得这技术 win,linux,osx都可以实现。
    22 条回复    2015-04-16 14:22:49 +08:00
    abelyao
        1
    abelyao  
       2015-01-24 22:31:49 +08:00   ❤️ 2
    楼主你错了,真正的难点在于哪里来这些数据,跟现实结合起来。

    无论是微软多年沉淀下来的数据,还是结合用户设备上的数据,来为 HoloLans 提供模拟数据,这才是最重要的。

    没有数据,你让我戴个山寨的,有手势捕捉,有图像处理能力,但是没有数据,我戴着干嘛?

    这也是苹果这几年壮大的重要原因之一,它将 iPhone / iPad / Mac / AirPort Extreme / TV 甚至以后 Watch 它构建了一套自己的生态系统,而且相对其它平台来说是非常完善的,同时它还不断在完善和增强,生态系统中的各设备互相提供了数据,让你感受到科技带来的便利。

    相比之下,所谓的 4K 屏幕的手机、几千万像素的摄像头,能让你真正感受到科技改变生活吗?
    abelyao
        2
    abelyao  
       2015-01-24 22:35:40 +08:00   ❤️ 1
    以上回复仅仅是关于最后一段话,有感而发。
    然后说说你想的实现原理那段,我认为到时候坐标不仅仅是 x,y 了,而是 x,y,z 了,不然电视挂多高怎么记录呢?
    laobubu
        3
    laobubu  
       2015-01-24 22:36:18 +08:00   ❤️ 2
    呃,首先你怎么确定你的当前坐标?(有同学拿光流计做这个室内定位,但是那烧钱烧硬件哗啦啦的)
    然后就是房间内部信息,这个还是得扫描/构建一下,或者用户刚开始就手动输入“我的音乐播放器在xxx坐标”么?
    图像处理,这个不用想了,微软那个在水管上的箭头也是够猛的了。

    (最后来一句:据说 HoloLens 用的是 ASIC 来着
    reeco
        4
    reeco  
       2015-01-24 22:41:35 +08:00 via iPhone   ❤️ 2
    “唯一难点应该在于 手势捕捉,图像处理,还有计算能力。”这都三点了,怎么还唯一呢。
    看花容易,绣花难
    txlty
        5
    txlty  
       2015-01-24 22:43:19 +08:00   ❤️ 1
    科普层面的原理,电视都播了。细节上的原理,一本书都讲不完。
    Felldeadbird
        6
    Felldeadbird  
    OP
       2015-01-24 23:06:11 +08:00
    @laobubu 不考虑地点保存的情况下,如果不是长时间戴着,每次使用都得重置初始坐标。否则之前放置的程序都乱了。当然了,这些都是我的猜想。
    Felldeadbird
        7
    Felldeadbird  
    OP
       2015-01-24 23:08:26 +08:00
    @txlty 想肯定容易,实现才是最难的。
    @reeco 电视有播吗?

    @abelyao 肯定是 三位坐标的。可以联想一下PS软件,或者商品图片的查看放大镜。
    joshryo
        8
    joshryo  
       2015-01-24 23:44:43 +08:00   ❤️ 1
    在不考虑移动的前提下,在当前位置把坐标生成出来然后投射出去,问题是,如果你处于不断的移动转台下,这玩意的坐标修正怎么搞得过来,又是动,又是视野不断变化,同时视野里面的物体也在不断的变化。这个模型没那么容易建立的吧。
    7colcor
        9
    7colcor  
       2015-01-25 00:28:14 +08:00   ❤️ 1
    kinect不是白搞的,这个Microsoft HoloLens应该是在xbox项目下的衍生品。
    本来准备在xbox实现的,现在单独提了出来。
    javaluo
        10
    javaluo  
       2015-01-25 00:37:51 +08:00 via Android   ❤️ 1
    AE多点跟踪
    soulteary
        11
    soulteary  
       2015-01-25 00:39:44 +08:00   ❤️ 1
    @reeco 好句子。
    sennes
        12
    sennes  
       2015-01-25 00:50:50 +08:00   ❤️ 1
    我做过"双目摄像头"的项目,
    深知想获得质量高的深度图都不是一件容易的事情。
    而这个项目我认为最重要的就是要获得一个精度比较高的深度图。
    手势方面可以参考Leap Motion(不过说白了还是折腾深度图...)
    Robling
        13
    Robling  
       2015-01-25 00:50:53 +08:00   ❤️ 1
    靠这么一个头戴仪器进行3d场景的重构才是关键,以我的了解想象不出来怎么做到实时且高精度的。
    sennes
        14
    sennes  
       2015-01-25 01:07:16 +08:00   ❤️ 1
    现在微软这个技术是3D的。如果我们只考虑2D的情况
    其实就是做SLAM(但是也不简单)
    通过这个"装置"获取所在平面的"深度"从而建立地图,然后在这个地图的基础上叠加一个图层.
    假设我们是二维生物的话,那微软的这个"装置"可能就是这样的:
    http://a.36krcnd.com/photo/2014/75e439d1fcf2253d68df3d93ca1cb7e3.gif
    (不知道能不能看到这个gif)
    (图中是RoboPeak的激光雷达:RPLidar)←这个挺好玩的
    ==================================
    但是去到三维的现实世界,想要做出这个类似于SLAM的效果就更加难了.
    而且还要区分这是墙、还是用户的手。
    然后通过判断用户的手势来叠加"虚拟图层"

    然后其实不是很同意楼主所说的,需要直接确定Microsoft HoloLens的坐标。
    其实可以这样做,
    首先"画出"室内的情况,这样MH就有"墙"、"xx物品"这种概念了,然后只需要在发现这面墙的时候就覆盖一个虚拟的图层上去。
    (嗯 就是我的想法,大家继续讨论~)
    surfen
        15
    surfen  
       2015-01-25 03:48:42 +08:00   ❤️ 1
    VFX的制作过程里面将前期拍摄的二维画面用软件模拟出三维的技术已经很成熟了。
    不然你觉得好莱坞特效大片为何如此真实。
    AE自带的Tracker已经很好地实现了点跟踪,mocha之类的民用摄像机跟踪反求软件也很好地实现了面跟踪。
    我认为HoloLens是把这些影视后期软件里Camera Tracking技术搬到了VR设备上了, 所以这一点不算什么黑科技。如果成品真的如广告里一样如此地实时和高精度,那如此低功耗高解算的芯片才是黑科技了。
    wecan
        16
    wecan  
       2015-01-25 07:37:38 +08:00 via Android   ❤️ 1
    @sennes 说的没错,这里涉及到SLAM,主要的问题之一是重建拍到的3D场景。还原出点云以后,还需要理解场景,至少需要判断一下各个平面的性质,比如哪些是水平面等等,这样做AR的时候才不会出现一些违背物理现象的情况。以MSR的水平不是那么容易山寨的
    windirt
        17
    windirt  
       2015-01-25 08:14:53 +08:00 via iPhone   ❤️ 1
    我觉得实际上是在各个平面上放置了不同的识别特征

    如同现在的手机AR App需要打印一张图片来实现基础定位,微软可以把识别二维码以肉眼不可见的方式布置到房间的各个地方
    armysheng
        18
    armysheng  
       2015-01-25 08:49:28 +08:00   ❤️ 1
    http://www.zhihu.com/question/27716801 知乎上这个帖子猜中了很多,用到的SLAM,点云三维重建图像识别等等,有微软员工确认的
    secondwtq
        19
    secondwtq  
       2015-01-25 09:30:45 +08:00   ❤️ 1
    "唯一难点应该在于 手势捕捉,图像处理,还有计算能力。"

    笑死了。
    jings
        20
    jings  
       2015-01-25 10:02:12 +08:00 via Android   ❤️ 1
    有一点就是它模拟出来一定很慢。要重建图像以现在的技术电脑还没办法想要什么图就画什么图。还有一点,这货需要网络。
    invite
        21
    invite  
       2015-01-25 10:22:25 +08:00   ❤️ 1
    原来那么简单呐, 微软这下又麻烦了.
    sammo
        22
    sammo  
       2015-04-16 14:22:49 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3079 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 14:29 · PVG 22:29 · LAX 06:29 · JFK 09:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.