单片AR眼镜Monocle揭秘:基于反射棱镜,重15g续航1小时
提问:一个戴近视眼镜的人,会愿意再同时戴一副AR眼镜吗?这个问题对于VR来说并不难,通常VR头显为镜框留出了空间(一些Pancake VR自带屈光调节机制),因此二者并不冲突。然而AR眼镜体积更紧凑,适眼距便短,再叠加近视镜框不仅笨重、不舒适,看起来也很奇怪。
目前有几种方法可以解决上述问题,AR眼镜厂商提供一个视力矫正镜片夹片(仅含镜框),有助于打造小体积设备,常见于各种BB、光波导产品上。然而,这无疑会增加用户的成本,因为还需要再额外佩戴一副镜片,使用起来也会稍有不便。

近期,一家叫Brilliant Labs公司公布了一款开源的AR眼镜:Monocle。该产品的灵感来自单片眼镜,用法只需要夹在眼镜框上,不需要外部供电,使用方式很简单。Monocle有几种功能,除了显示信息外,还可以拍照、录视频、玩游戏、训练计算视觉模型等等。像是一个专为戴眼镜用户设计的便携式AR硬件,因此不便之处就是,平时不戴眼镜的人需要自备镜框,才能使用它。

据青亭网了解,Monocle的售价349美元,面向人群为消费者、开发者和科研人员,目前正进入制造环节,第一批货将很快发出。经过一番搜索,我们了解到这款AR眼镜背后的技术、光学设计,以及Brilliant公司的来头,感兴趣就一起看下去吧。
Monocle细节
Monocle由AR眼镜和充电盒组成,AR眼镜部分采用一体式光学机械封装工艺,外观看起来具有一定厚度,重量仅15g。细节方面,该AR眼镜视场角约20°,搭载了索尼ECX336CN Micro OLED屏幕、电容触觉传感器、500万像素彩色摄像头(以720p分辨率拍摄)、FPGA、蓝牙5.2模组、Nordic MCU、70mAh电池。它可以通过蓝牙连接手机(iOS和安卓端均有配套app),续航达1小时。

这是一个完全开源、可自定义配置的AR眼镜,采用了一体式设计,光学模组兼作外壳来容纳电子元件,而没有配备镜框。

Monocle的主要功能之一是拍照/录视频,其摄像头支持自动曝光控制、自动白平衡。此外,还搭载了了LED闪光灯,不仅可以辅助拍照,还可以当做手电筒使用。在与手机app配对后,便可以控制眼镜拍照、录视频、查看照片和视频、放大照片(16倍变焦)、慢放视频等等。手机app上有Monocle的简易使用教程,上手过程很快。

值得注意的是,Monocle内置FPGA芯片,可在设备上运行计算机视觉、AI或图形加速算法。
另外,还在侧面配备了触控按钮/触控条(眼镜侧面),可捕捉手指靠近和触摸的动作,并识别轻敲(显示摄像头实时数据)、双击(拍照或录视频)、长按等手势(播放视频、上传至手机)。

而充电盒则为磁吸式设计,内置了450mAh电池,自身充电通过USB Type-C,也可以给Monocle供电(满电情况最多可充6次),相当于一个小巧便携的充电宝。充电盒通过磁力固定Monocle,并使用弹簧针来连接充电。
从专利看光学
Brilliant并没有为Monocle公布更多细节,尤其是光学方案等细节。要明确的是,这似乎并不是概念设计,而是基于专利光学技术的AR眼镜产品。从该公司在去年3月申请的专利分析,我们也许可以大概了解其光学原理。据悉,这项专利的编号为US11448879B1,发明者为Bobak Tavangar、Austin Wilson、Benjamin Heald等人。实际上,Tavangar(CEO)、Wilson(光学总监)、Heald(设计总监)也是Brilliant Labs创始人,该公司成立于2019年,总部位于中国香港。

结合专利来看,Monocle的光学元件可能包括Micro OLED微显示、折叠棱镜组(由透光棱镜和反射棱镜粘合而成)、分束器和组合器。其中,棱镜组的下半部分包含了半反半透涂层,以及底部反射涂层,目的是将上半部分透镜传来的光线反射入人眼。

具体光路:Micro OLED光源位于透镜顶部,光源直接向下发射光线,并穿过棱镜,穿过半反半透涂层,到达底部反射面,反射到组合器中,组合器再将光线重定向至人眼视网膜上。这种光学设计会在AR眼镜前方形成一个虚像,视场角大概20°。这个光路可根据用户定制调整,以实现更好的显示效果。
而为了省电,Monocle在不使用时可关闭摄像头、FPGA和显示屏。该AR眼镜的供电分为四个部分,相机和显示器可以独立于FPGA断电,这样就可以快速启动。
未来应用场景
单片式AR眼镜只是Brilliant的第一部,接下来计划研发含框架的AR眼镜,让本来不戴眼镜的人直接就能使用。此外,第一批出货Monocle侧面为透光设计,能看到内部电子元件,后续计划采用磨砂饰面来掩盖。

功能方面,Monocle容易让人联想到米家AR眼镜、Snap Spectacles等拍照眼镜,相比于这些产品,Monocle的设计更加简洁,而且方便穿脱,可以快速在AR眼镜和普通眼镜之间切换,灵活且便携。

Brilliant指出,与现有的AR眼镜相比,Monocle主打两大卖点:
1)机身小巧、设计精美、轻便,且价格实惠;
2)开发者平台为开源,设备原理、应用代码等都是公开的,方便开发者自定义。
它有多种潜在的应用场景,比如拍照、显示文字、识别人名、显示通知、导航、AR图像增强、二维码/条码扫描、穿戴式遥感、AR应用和游戏设计、播放视频/照片等内容。此外,还适合一些直接使用摄像头、麦克风作为输入源的AI任务,比如计算机视觉。
相关文章:
单片AR眼镜Monocle揭秘:基于反射棱镜,重15g续航1小时
提问:一个戴近视眼镜的人,会愿意再同时戴一副AR眼镜吗?这个问题对于VR来说并不难,通常VR头显为镜框留出了空间(一些Pancake VR自带屈光调节机制),因此二者并不冲突。然而AR眼镜体积更紧凑&#…...
计算机视觉框架OpenMMLab开源学习(五):目标检测实战
✨写在前面:强烈推荐给大家一个优秀的人工智能学习网站,内容包括人工智能基础、机器学习、深度学习神经网络等,详细介绍各部分概念及实战教程,通俗易懂,非常适合人工智能领域初学者及研究者学习。➡️点击跳转到网站。…...
SpringIOC推导IOC初步
了解准备 什么是Spring? Spring是一款轻量级的控制反转(IOC)和面向切面编程(AOP)的非入侵式开源框架 2002年Spring的前身interface21发布,随后在2004年3月24日正式更名发布Spring1.0版本Spring Frameword缔…...
Linux(centOS7)虚拟机中配置 vim
👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者 📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶 Ǵ…...
消息中间件-RocketMQ入门 消息发送的三种方式
消息中间件-RocketMQ入门 消息发送的三种方式消息中间件简介应用场景常用消息中间件RocketMQ核心概念入门案例-生产者和消费者代码逻辑消息发送的三种方式同步发送异步发送一次性消息消息中间件简介 应用场景 假设现在有订单微服务和积分微服务,正常请求流程之后是不是一个订…...
【FLASH存储器系列十九】固态硬盘掉电后如何恢复掉电前状态?
掉电分两种,一种是正常掉电,另一种是异常掉电。不管是哪种原因导致的掉电,我们都希望,重新上电后,SSD都需要能从掉电中恢复过来,继续正常工作。正常掉电恢复,这个好理解,主机通知SSD…...
Java知识点细节简易汇总——(7)面向对象编程(高级部分)
一、类变量、静态变量static static访问方式: public class VisitStatic {public static void main(String[] args) {//方法一://类名.类变量名//说明:类变量是随着类的加载而创建,所以即使没有创建对象实例也可以访问System.out.println(A.…...
阻塞式队列-生产者消费者模型
1.阻塞队列是什么 阻塞队列是一种特殊的队列. 也遵守 "先进先出" 的原则. 阻塞队列能是一种线程安全的数据结构, 并且具有以下特性: 当队列满的时候, 继续入队列就会阻塞, 直到有其他线程从队列中取走元素.当队列空的时候, 继续出队列也会阻塞, 直到有其他线程往队…...
引导滤波code
文章目录1. 原理概述2. 实验环节2.1 验证与opencv 库函数的结果一致2.2 与 双边滤波比较2.3 引导滤波应用,fathering2.3 引导滤波应用,图像增强2.4 灰度图引导,和各自通道引导的效果差异2.5 不同参数设置影响3. 参考引导滤波1. 原理概述 引导…...
Leetcode.2353 设计食物评分系统
题目链接 Leetcode.2353 设计食物评分系统 Rating : 1782 题目描述 设计一个支持下述操作的食物评分系统: 修改 系统中列出的某种食物的评分。 返回系统中某一类烹饪方式下评分最高的食物。 实现 FoodRatings类: FoodRatings(String[] foo…...
C语言学习_DAY_2_变量的定义_输入与输出
高质量博主,点个关注不迷路🌸🌸🌸! 目录 I. 变量的定义 II. 变量的赋值 III. 输出 IV. 输入 I. 变量的定义 首先,我们新建一个.c文件在Dev C中,并把之前定义好的程序框架放进去。 此时我…...
mac 安装navicat
由于各种原因发布不了链接,这里记录下,保存在了阿里云里...
RocketMQ快速入门
2.1 消息生产和消费介绍使用RocketMQ可以发送普通消息、顺序消息、事务消息,顺序消息能实现有序消费,事务消息可以解决分布式事务实现数据最终一致。RocketMQ有2种常见的消费模式,分别是DefaultMQPushConsumer和DefaultMQPullConsumer模式,这…...
【虚拟仿真】Unity3D实现从浏览器拉起本地exe程序并传参数
推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 最近有项目需求,从浏览器调起来本地的exe程序&…...
Intel中断体系(1)中断与异常处理
文章目录概述中断与异常中断可屏蔽中断与不可屏蔽中断(NMI)异常异常分类中断与异常向量中断描述符表中断描述符中断与异常处理中断与异常处理过程堆栈切换错误码64位模式下的中断异常处理64位中断描述符64位处理器下的堆栈切换相关参考概述 中断是现代计…...
财报解读:四季度营收超预期,优步却越来越“不务正业”了
“公司第四季度的业绩表现将是强劲的”。 公布2022年第三季度财报时,优步的高管给出了这样的预告,给资本市场打了一针“强心剂”。然而有人对此表示质疑,后疫情时代,带着新模式、新车型的全新网约车公司层出不穷,车企…...
C语言-程序环境和预处理(14.2)
目录 预处理详解 1.预定义符号 2. #define 2.1 #define定义标识符 2.2 #define 定义宏 2.3 #define 替换规则 注意事项: 2.4 #和## 2.5 带副作用的宏参数 2.6 宏和函数对比 3. #undef 4. 条件编译 4.1 单分支条件编译 4.2 多分支条件编译 4.3 判断是…...
VHDL语言基础-时序逻辑电路-计数器
目录 计数器的设计: 计数器的作用: 计数器的实现: 1、用“”函数描述: 用T触发器级联构成的串行进位的二进制加法计数器的仿真波形: 计数器的仿真: 计数器的设计: 计数是一种最简单基本的…...
MySQL数据库07——高级条件查询
前面一章介绍了基础的一个条件的查询,如果多条件,涉及到逻辑运算,and or 之类的。就是高级一点的条件查询。本章来介绍复杂的条件搜索表达式。 AND运算符 AND运算符只有当两边操作数均为True时,最后结果才为True。人们使用AND描述…...
《Terraform 101 从入门到实践》 第四章 States状态管理
《Terraform 101 从入门到实践》这本小册在南瓜慢说官方网站和GitHub两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看。 军书十二卷,卷卷有爷名。 为什么需要状态管理 Terraform的主要作用是管理云平台上的资源ÿ…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...
保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!
目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...
【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...
Windows 下端口占用排查与释放全攻略
Windows 下端口占用排查与释放全攻略 在开发和运维过程中,经常会遇到端口被占用的问题(如 8080、3306 等常用端口)。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口,帮助你高效解决此类问题。 一、准…...
【多线程初阶】单例模式 指令重排序问题
文章目录 1.单例模式1)饿汉模式2)懒汉模式①.单线程版本②.多线程版本 2.分析单例模式里的线程安全问题1)饿汉模式2)懒汉模式懒汉模式是如何出现线程安全问题的 3.解决问题进一步优化加锁导致的执行效率优化预防内存可见性问题 4.解决指令重排序问题 1.单例模式 单例模式确保某…...
机器学习复习3--模型评估
误差与过拟合 我们将学习器对样本的实际预测结果与样本的真实值之间的差异称为:误差(error)。 误差定义: ①在训练集上的误差称为训练误差(training error)或经验误差(empirical error&#x…...
