转自:http://www.csdn.net/article/a/2016-01-06/15833642

一、前言

机器人是一种可编程和多功能的。用来搬运材料、零件、工具的操作机,智能机器人则是一个在感知、思维、效应方面全面模拟人的机器系统(外形不一定像人)。

在当前技术环境下,智能机器人一般都应包括人机交互、环境识别、核心计算、多功能本体等。

二、概述

得益于Qualcomm 骁龙 410处理器的强大,我们能够尝试基于Dragon Board 410c 去搭建一个机器人平台。

当中,由语音前端处理模块构建人机语音交互场景。摄像头和各类传感器构成环境识别系统。

核心计算则基于Dragon Board410c。多功能本体包括电机等机动构件,整体框图例如以下:

三、具体说明

本次内容将先介绍语音处理模块。完整的语音处理系统如图所看到的:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" style="vertical-align:middle; border:none; max-width:100%">

模块主要功能是完毕4麦克风阵列、降噪、回声消除、语音唤醒等语音前端处理,输出降噪后的音频信号、声源角度数据、唤醒触发信号、通讯等。

3.1 麦克风阵列

麦克风阵列由4个φ9.5mm的ECM麦克风构成。

3.1.1 麦克风选型

市场上常见麦克风有两类:数字麦和模拟麦。

数字麦採用MEMS技术,灵敏度高、体积小、耐高温可过炉,但成本较高。

模拟麦也就是ECM驻极体电容麦,灵敏度较差但成本较低。

在此次机器人应用中,因为机器人头部採用拟人化球面设计。数字麦仅仅能贴片于PCB板上无法贴合内壁。所以选用传统驻极体麦克风。

3.1.2 麦克风摆放

依赖于音源定位算法的原因。麦克风整列摆放需满足:直线排列,间距35mm,水平高度落差小于20mm,拾音面呈45度角斜向上。

3.2 回声消除

回声消除的核心思想是将麦克风採集到的混合声音(包含上位机播放的声音、有效人声、环境噪声等)与參考信号(上位机播放的声音)进行“减法”运算,消去或削弱參考信号。

具体參见“回声消除原理框图”(当中全部标注的信号均为模拟信号)。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" style="vertical-align:middle; border:none; max-width:100%">

3.3 音源定位

音源定位就是通过分析在不同位置上的麦克风所收到的信号来确定声源的空间位置。主要有三种方法:基于最大输出功率的可控波束形成技术,基于高分辨率谱预计的定位技术,基于到达时间差技术。

本次选用的模组採用的是到达时间差技术。涉及算法专利,细节如图所看到的:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="vertical-align:middle; border:none; max-width:100%">

基于Dragon Board410c 的智能机器人预研-语音识别及定位的更多相关文章

  1. [转] 前后端分离开发模式的 mock 平台预研

    引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...

  2. 数据质量管理工具预研——Griffin VS Deequ VS Great expectations VS Qualitis

    开源数据质量管理工具预研--Griffin VS Deequ VS Great expectations VS Qualitis. 概述 ​ 数据质量监控(DQC)是最近很火的一个话题,也是数据治理中 ...

  3. 基于jQuery页面窗口拖动预览效果

    今天给大家分享一款基于Query页面窗口拖动预览效果.这是一款基于jQuery+HTML5实现的模拟页面窗口显示拖动窗口预览特效.这款实例适用浏览器:IE8.360.FireFox.Chrome.Sa ...

  4. 预研报告——MyBatis持久层的demo

    一.预研任务介绍和预研目标 任务介绍: 与 Hibernate 相比, MyBatis 是一个半自动化的持久层框架,以轻量级.效率高.原生代而好评如潮.虽然有在分享会上大致讲解,但是还是重新梳理成文字 ...

  5. Nvidia NVENC 硬编码预研总结

    本篇博客记录NVENC硬编码的预研过程 github:  https://github.com/MarkRepo/NvencEncoder 步骤如下: (1)环境搭建 (2)demo编译,测试,ARG ...

  6. Blazor预研与实战

    背景 最近一直在搞一件事,就是熟悉Blazor,后期需要将Blazor真正运用到项目内.前期做了一些调研,包括但不限于 Blazor知识学习 组件库生态预研 与现有SPA框架做比对 与WebForm做 ...

  7. 基于zipkin分布式链路追踪系统预研第一篇

    本文为博主原创文章,未经博主允许不得转载. 分布式服务追踪系统起源于Google的论文“Dapper, a Large-Scale Distributed Systems Tracing Infras ...

  8. 基于geotools的(两个)SHP要素变化提取方法预研

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 我们用遥感的手段进行卫星特征提取.多幅影像间的特征变化提取的 ...

  9. android手势感应预研

    1.     产品介绍 该产品可以通过传感器来侦测用户的手势变化进而执行一些操作.比如说信息预览(如短信息预览.日历预览等等),此外,还可以通过指向某一个时间点来预览视频内容.预览音乐播放器(下一首歌 ...

随机推荐

  1. 【翻译自mos文章】怎么startup/shutdown PDB?

    怎么startup/shutdown PDB? 来源于: 12c: How to Startup/Shutdown PDB's? (文档 ID 1592247.1) 适用于: Oracle Datab ...

  2. 程序猿的量化交易之路(18)--Cointrader之Event实体(6)

    转载需注明: 事件,是Esper的重要概念. 这里我们定义个事件类.它是Temporal实体的派生类. 不过对Temporal简单的包装.其代码例如以下: package org.cryptocoin ...

  3. vijos- P1385盗窃-月之眼 (水题 + python)

    P1385盗窃-月之眼 Accepted 标签:怪盗基德 VS OIBH[显示标签] 背景 怪盗基德 VS OIBH 第三话 描写叙述 怪盗基德第三次来到熟悉的OIBH总部.屡屡失败的OIBH这次看守 ...

  4. DB-MySQL:MySQL 索引

    ylbtech-DB-MySQL:MySQL 索引 1.返回顶部 1. MySQL 索引 MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度. 打个比方,如果 ...

  5. Vmware VM共享

    打开虚拟机,设置,选项点击共享文件夹 点击启用,将电脑windows的目录添加过来 进入终端即可以进入

  6. 5. Longest Palindromic Substring[M]最长回文子串

    题目 Given a string s, find the longest palindromic substring in s. You may assume that the maximum le ...

  7. Redis学习笔记(六) 基本命令:List操作

    原文链接:http://doc.redisfans.com/list/index.html lpush key value[value...] 将一个或多个value插入到列表的表头:例:lpush ...

  8. Spark standalone运行模式(图文详解)

    不多说,直接上干货! 请移步 Spark standalone简介与运行wordcount(master.slave1和slave2) Spark standalone模式的安装(spark-1.6. ...

  9. GreenDao 3.X之基本使用

    在GreenDao 3.X之注解已经了解到GreenDao 3.0的改动及注解.对于数据库的操作,无异于增删改查等四个操作.下面我们将了解GreenDao 3.X如何使用? AbstractDao 所 ...

  10. Object-oriented programming

    Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects&qu ...