如果您将一些光学鼠标翻转过来时,会看到红灯或蓝灯。 光电引擎鼠标底部之所以会发光,是由于其成像原理所决定,鼠标引擎的CMOS成像芯片,需要通过近距离光照亮鼠标底部(通常是鼠标垫表面)成像表面, 对鼠标定位参照进行捕捉,然后通过捕捉到的信息判断鼠标的移动距离,这也是光电鼠标原理所决定的。现在有人在网上发布了一部视频《I Hacked a Mouse into a Camera! - YouTube》,介绍了如何将光学鼠标改造成网络摄像头。
视频从拆卸罗技鼠标开始。 卸下螺丝卸下上盖和下盖,其中的电路板仅用一个简单的卡扣固定,并且可以轻松地拆卸传感器。
传感器盖有一个小盖子,可以取下它看到内部。
以下是揭开盖子并用用显微镜放大露出的传感器部分的样子。左侧的白色矩形区域是控制电路,通过引线接合连接。看起来像右侧网状的是将光变成电信号的光电二极管阵列。
传感器安装在有机玻璃圆盘的顶部,如下图所示。 圆盘包含一个棱镜,用于将光线从 LED 引导到拖动鼠标的表面。 然后,一个小透镜将投影到光电二极管阵列上的图像。
为了直接访问鼠标电路,视频中使用示波器来检查电压的变化。 根据示波器的测量结果,可以知道鼠标的传感器通过提供什么样的信号来执行“捕捉鼠标的动作,将其传达给内部”的动作。
根据示波器测量结果,将用于电路之间的信号一致的控制时钟信号的引脚,以及发送和接收数据的引脚焊接在一起。
然后,将电路连接到微机板上。
这使可以直观地看到鼠标传感器接收和发送的是什么图形。 最终的目标是将鼠标传感器的光电二极管阵列接收到的信号显示屏幕上,使其像网络相机一样。 从理论上讲,可以通过向传感器的控制电路写入任意值,传感器捕获图像并传输数据。
作为测试,把鼠标放在20欧元的纸币上,轻轻地移动。因为距离太近,所以是马赛克图像,但是在屏幕上也能看到像素在移动。根据视频介绍,这个时候的分辨率是18像素×18像素。
对分辨率太低而无法识别的图像进行OpenCV的图像增强处理后,可以识别20欧元纸币左上角的欧盟旗帜中包含的小星星。但是,目前它就像鼠标“显微镜”,可以拍摄的范围太小,不能称为“相机”。
因此,在电路板上添加了一个新模块。
之后,更换有机玻璃盘。 通常的鼠标设计为聚焦在相当近的位置,以便聚焦在桌子或鼠标垫上。因此,需要改造成像照相机一样捕捉远处物体的形状。
研究了各种各样的镜头的结果,决定为Raspberry Pi相机用的广角镜头。
以下是将镜头连接到鼠标传感器板的状态。
用改造过的鼠标相机最初拍摄的时候,可以看到“一个人在挥手”的轮廓,但分辨率仍然很低,变成了马赛克。而且有时很难很好地对焦,为了成为更容易识别的图像,需要对拍摄的影像进行图像增强。
因此,使用3D打印机设计了一个聚焦镜头组件,以稳定镜头的焦距。
由此组件代替鼠标自带的有机玻璃盘,以提高稳定性。
现在所有部件都已完成,我们将所有改造后的电路板和组件装回鼠标中。
最后,将镜头连接到鼠标的光学传感器部分。
以下是固定鼠标相机,并尝试拍摄乐高玩偶。 虽然图像是单色的,而且相当模糊,但比开始时更清晰。 传感器的读取速度约为每秒3帧,如果高于此值,则会出现误码,因此不能用于拍摄发布网站的短片。
当我拍摄一个更简单的“点赞标记”时,即使没有图像增强也能清楚地知道形状。
把这玩意装在头部,能不能实现vr的头部追踪呢
我能把小便改成白痴。。。[得瑟]
我就想问一下,这玩意以后还能当鼠标用吗?
都这么高的改装成本了,还不如直接买个摄像头摁在鼠标里面
这个算个屁,我能把平板电脑改成网络摄像头[呲牙笑]
买的起示波器还差那几个鼠标?[呲牙笑]
感谢科普。很明显鼠标的激光对焦位置较近,如果能修改一下,或者只是拍一下桌上的蚂蚁,作为摄像头还是可以玩玩的。
下一集 如何把摄像头改成鼠标!![呲牙笑]