搬家啦!请去goldengrape.org找我
  • 创意:用听觉辅助感知障碍物 - [创意]

    2008-08-31

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://goldengrape.blogbus.com/logs/28360464.html

    首先建议先听一段“人头录音”。人头录音的立体感比普通的立体声要强得多。双耳对空间中的一个音源发声的立体定位,远远不是简单的靠左右耳的声音强弱不等来判定的,因为头颅对传来的声波起到一定的阻挡作用,左耳听右边的声音,其实是声波衍射绕过鼻子才被听到的。

    我之前曾经搜索过相关的内容,原理是Head Related Transfer Function,其实也是一种传递函数,不过包含了空间坐标。

    这个创意利用的就是这样的原理。如果能够用两个摄像头拍摄前方的物体,然后转换成双耳不同的声音,就可以使人感知到前方的物体位置。可以帮助盲人不依靠触觉来感知前方的障碍物。

    左眼看到的东西其实与右眼无关,左耳也是一样。立体感的产生是在大脑,经过大脑的后期处理获得的,而不是在感觉器官。所以只要把左眼获得的信息转化成左耳听到的信息,右眼的转化成右耳就可以了。这样不涉及到图像的识别,计算量应该大大减轻。


    先不考虑解析计算,先直接给出一个可行实现的方案:
    材料:
    1。功能强大的电脑,还必须足够安静。
    2。两个摄像头,其实分辨率、刷新率不需要很高,甚至手机用的小镜头都可以,视角越大越好,预实验的话,普通的摄像头就够了。
    3。两个话筒
    4。一个人头的模型,不知道哪里有卖的,也许可以去服装批发市场找买衣服的小贩或者眼镜店要一个塑料模特。我这里倒是有个比例合适的模拟人。有兴趣的来找我。
    5。一个小灯泡
    6。一个音频发生器。有点难度,首先发声的装置要小,一个大音箱显然是不合适的,它的移动和大小相比不成比例。感觉耳机大小的最好,不过功率又受限制。远了就听不见了。没想好用什么。还有需要一个重要的功能,就是发出的声音要能够给定频率和功率。比如需要5kHz的声音,就应该给出5kHz。也许一个小的带有外放功能的mp3播放器就可以满足上述的要求吧。
    7。一个黑暗而且没有杂音干扰的屋子。屋子的周围最好隔音,而且有隔绝声音反射的墙壁处理。如果能够租用到录音棚最好。

    方法:
    1. 把摄像头装在人头模型眼睛的位置上。把话筒固定在耳朵的位置上。拍摄、录音
    2. 在人头模型前方点亮灯泡,把音频发生器和灯泡固定在一起,播放声音,多播放几个频率的声音,每个频率持续一段时间。
    3. 更换位置,点灯、发声

    如果有兴趣,可以自己带个监听耳机,实际感受一下

    声音与图像相互对应的定义:
    简单起见,不考虑物体的色彩,一律转换成灰度,不同的灰度对应不同频率的声音,比如0->0, 128->500Hz, 255->1000Hz
    物体的亮度和声强正相关,还没有想好使用线性相关还是用对数。
    注意亮度和灰度似乎有联系,没想好怎么处理,也许可以放弃声强的参数。

    数据准备:
    其实双眼是对称的,互相并不影响,不失一般性,以左眼左耳为例。
    1. 用图像处理的方法先获得灯泡的二维坐标,黑屋子,一个亮灯,应该很容易,没什么好说的。
    2. 左耳的音频,应该有几个频率的录音文件。注意,录制下来的可不一定就是原始的一个频率的声音,脑袋的遮挡不比透镜,应该不是线性系统,比如500Hz的声音,也许经过鼻子的遮挡,有个250Hz的谐振。但不管怎么样,用傅立叶变换,总可以把频谱、能量谱分析出来。因为录了几个频率,做个插值,把中间的频率对应的左耳接收音频找到。推荐使用野蛮的神经网络强行拟合。
    3. 右眼、右耳相同
    4. 于是获得了单眼图像中点位置与单耳音频之间的对应关系。而且可以赋予对应的灰度,以对应的频率,对应的亮度以对应的声强。
    5. 最终,对于单眼一个点P(x,y,RGB),可以有一组音频与之对应。可以看作是一个“点-音频传递函数”。

    应用时的处理:
    1. 双眼同时拍摄图像,转成灰度,降低色彩数。过一个低通滤波器,把图像的细节抹掉,听音辨位就不错了,不指望能够靠耳朵认字。
    2. 将单眼图像与各自的“点-音频传递函数”卷积,获得单耳的音频。其实就是把每个点对应的音频叠加起来。我想是不会乱作一团的,毕竟我们可以闭着眼睛分辨出周围的几个人说话的位置。
    3. 播放结果
    4. 对了,没考虑时间,声音是要需要时间来播放的,可以很短,比如1/24秒,如果物体没动,就可以持续播放下去了。

    如果要做成产品,那么“点-音频传递函数”可以是固化在硬件里的。

    好了,综上所述。
    最终的产品可能是这样的:
    一只乌黑的墨镜,镜框上隐藏着两只摄像头。镜架末端连出一对耳机。使用者带着墨镜,耳朵里听着耳机里发出轻微的低频嗡嗡声。不用看,就可以感觉到身边的物体,前方路上的障碍。如果加以训练,也许还能感知到路面是否平坦。

    参考:

    HRTF: http://en.wikipedia.org/wiki/Head-related_transfer_function

    在这里有HRTF的实例http://recherche.ircam.fr/equipes/salles/listen/index.html

    居然又有关于HRTF的matlab程序http://recherche.ircam.fr/equipes/salles/listen/tools.html

    ===========
    这么详细的写出来,是因为:
    1. 这个产品能够帮助很多人。对待残障人士,并不是给予同情和怜悯,而是需要利用工具,提供平等的生活条件,让盲人能够跟正常视力人一样,可以轻松安全的走在路上
    2. 可以申请今年的863计划中现代医学部分的基金或者“视觉听觉认知计算”的基金
    3. 兴冲冲的向LP汇报,本来想讨论一下,结果居然被泼了冷水。LP只对“熊熊大火”感兴趣,对这种“小火苗”不屑一顾。哼——,既然LP看不上,那我就把它开源了。

    ====

    除了盲人,对于正常人也有很大作用,本来开玩笑说可以一边开车一边看电影。转念一想,倒是可以“感觉”到车后的情况,把扬声器安放在座椅头部的两侧。感官上比倒车雷达可精确多了。还有就是如果能够解决头部定位和噪音的问题,放在赛车上就很牛了。360度感知角,还是实时的。


    历史上的今天:


    随机文章:

    花钱买健康 2009-03-27
    人头录音diy 2008-10-26
    答辩通过 2008-08-01

    收藏到:Del.icio.us




    评论

  • 按摩棒还需要电池,
    音乐腕带就可以直接用电脑的usb供电.
  • 淘宝上有女生用的音乐按摩棒销售,
    要是有厂家生产音乐按摩腕带就好了.
  • 这是把视觉转换成声音,
    触类旁通, 我想到把声音转换成触觉,
    如果能把这种佩戴在儿童手腕上用于音乐教学的设备做得更精细一点就可以实现用皮肤听音乐了, 毕竟思维用的语音和音乐的声音还是有冲突, 把音乐分配给皮肤, 声音归思考, 就两种好处都有了
    金色葡萄回复diyism说:
    不知道触觉的精度怎么样,是否能够反应音乐所带有的信息量。不过也许是另一种音乐的辅助设备,增加了一个信息输入,让人们听音乐的时候,获得另一种享受。
    2008-09-20 09:46:49
  • 又一个使用相同模板的朋友。
  • 这个东东做成的可能性非常大。原来看过一篇报道,是说我国的一位科学家(或者是日本的)直接用电信号刺激听觉神经,来帮助某些听力障碍的病人重新听到声音。
    金色葡萄回复amao说:
    2008-08-31 16:07:10