基于Dragon Board410c 的智能机器人预研-语音识别及定位
转自: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 的智能机器人预研-语音识别及定位的更多相关文章
- [转] 前后端分离开发模式的 mock 平台预研
引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...
- 数据质量管理工具预研——Griffin VS Deequ VS Great expectations VS Qualitis
开源数据质量管理工具预研--Griffin VS Deequ VS Great expectations VS Qualitis. 概述 数据质量监控(DQC)是最近很火的一个话题,也是数据治理中 ...
- 基于jQuery页面窗口拖动预览效果
今天给大家分享一款基于Query页面窗口拖动预览效果.这是一款基于jQuery+HTML5实现的模拟页面窗口显示拖动窗口预览特效.这款实例适用浏览器:IE8.360.FireFox.Chrome.Sa ...
- 预研报告——MyBatis持久层的demo
一.预研任务介绍和预研目标 任务介绍: 与 Hibernate 相比, MyBatis 是一个半自动化的持久层框架,以轻量级.效率高.原生代而好评如潮.虽然有在分享会上大致讲解,但是还是重新梳理成文字 ...
- Nvidia NVENC 硬编码预研总结
本篇博客记录NVENC硬编码的预研过程 github: https://github.com/MarkRepo/NvencEncoder 步骤如下: (1)环境搭建 (2)demo编译,测试,ARG ...
- Blazor预研与实战
背景 最近一直在搞一件事,就是熟悉Blazor,后期需要将Blazor真正运用到项目内.前期做了一些调研,包括但不限于 Blazor知识学习 组件库生态预研 与现有SPA框架做比对 与WebForm做 ...
- 基于zipkin分布式链路追踪系统预研第一篇
本文为博主原创文章,未经博主允许不得转载. 分布式服务追踪系统起源于Google的论文“Dapper, a Large-Scale Distributed Systems Tracing Infras ...
- 基于geotools的(两个)SHP要素变化提取方法预研
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 我们用遥感的手段进行卫星特征提取.多幅影像间的特征变化提取的 ...
- android手势感应预研
1. 产品介绍 该产品可以通过传感器来侦测用户的手势变化进而执行一些操作.比如说信息预览(如短信息预览.日历预览等等),此外,还可以通过指向某一个时间点来预览视频内容.预览音乐播放器(下一首歌 ...
随机推荐
- (转)c++ typedef 函数指针详细说明
转自:http://blog.csdn.net/future200x/article/details/5350134 一个函数在编译时被分配一个入口地址,将这个入口地址称为函数的指针,可以用一个指针变 ...
- angularjs1-过滤器
<!DOCTYPE html> <html> <body> <header> <meta http-equiv="Content-Typ ...
- [实例]ROS使用OpenCV读取图像并发布图像消息在rviz中显示
思路: (1)使用opencv读取本地图像 (2)调用cv_bridge::CvImage().toImageMsg()将本地图像发送给rviz显示 一.使用opencv读取本地图像并发布图像消息 ( ...
- POJ 2771 最大独立集 匈牙利算法
(为什么最大独立集的背景都是严打搞对象的( _ _)ノ|壁) 思路:匈牙利算法 没什么可说的-- // by SiriusRen #include <cstdio> #include &l ...
- 初探MVC路由
文章目录: 1.认识理解URL,以及简单的路由 2.特性路由.传统路由.区域路由 3.路由生成URL&&绑定到操作&&路由约束 1.认识理解URL,以及简单的路由 默 ...
- Core Java(七)
面向对象特性整理 知识点:一. static修饰符 static修饰符可以用来修饰类的成员变量.成员方法和代码块. . 用static修饰的成员变量表示静态变量,可以直接通过类名 ...
- HTML5中canvas介绍
1.什么是Canvas canvas 是 HTML5 提供的一个用于展示绘图效果的标签 canvas 提供了一个空白的图形区域,可以使用特定的JavaScript API来绘画图形(canvas 2D ...
- Android 给WebView设置Cookie
最近项目中用到WebView访问新浪支付页面,有个要求是必须是登录状态,否则会报Token过期,然后我简单的将我从cookie中取得的ticket,即一串数字可以代表用户登录的唯一标识作为参数拼接到u ...
- Excel导入到DataTable ,DataTable导入到Excel
using System; using System.Collections.Generic; using System.Linq; using System.Text; using NPOI.SS. ...
- [原创]c语言中const与指针的用法
最近一直在准备笔试,补补大一大二欠下的课.复习c语言时碰见这么个题: 1 2 3 4 5 int a=248, b=4; int const c=21; const int *d=&a; ...