Perception(0-1.1)
The perception modules run in the context of the process Cognition. They detect features in the image that was just taken by the camera. The modules can be separated into four categories. The modules of the perception infrastructure provide representations that deal with the perspective of the image taken, provide the image in different formats, and provide representations that limit the area interesting for further image processing steps. Based on these representations, modules detect features useful for self-localization, the ball, and obstacles. All information provided by the perception modules is relative to the robot’s position.
感知模块在认知进程中运行。他们检测到相机拍摄图像中的特征。该模块可分为四类。这个感知基础架构模块提供表示(?),来处理采集的图像的角度,提供不同格式的图像,并提供表示,限制用于进一步的图像处理的感兴趣区域。基于这些表示,模块检测有用特征来自我定位,以及球和障碍的检测。所有提供的感知模块信息是相对于机器人位置的。
4.1Perception Infrastructure
4.1.1Using Both Cameras
The NAO robot is equipped with two video cameras that are mounted in the head of the robot.The first camera is installed in the middle forehead and the second one approx. 4cm below. The lower camera is tilted by 39.7 ◦ with respect to the upper camera and both cameras have a vertical opening angle of 47.64 ◦ . Because of that, the overlapping parts of the images are too small for stereo vision. It is also impossible to get images from both cameras at the exact same time, as they are not synchronized on a hardware level. This is why we analyze only one picture at a time and do not stitch the images together. To be able to analyze the pictures from both the upper and lower camera in real-time without loosing any images, the Cognition process runs at 60Hz. Since the NAO is currently not able to provide images from both cameras at their maximum resolution, we use a smaller resolution for the lower camera. During normal play the lower camera sees only a very small portion of the field, which is directly in front of the robot’s feet. Therefore, objects in the lower image are close to the robot and rather big. We take advantage of this fact and run the lower camera with half the resolution of the upper camera, thereby saving a lot of computation time. Both cameras deliver their images in the YUV422 format. The upper camera provides 640 × 480 pixels while the lower camera only provides 320 × 240 pixels. As the perception of features in the images relies either on color classes (e. g. for reqion building) or the luminance values of the image pixels (e. g. for computing edges in the image), the YUV422 images are converted to the “extracted and color-classified” ECImage. The ECImage consists of two images: the gray scaled image obtained from the Y channel of the camera image and a so-called “colored” image mapping each image pixel to a color class. Cognition modules processing an image need to know from which camera it comes. For this reason, we implemented the representation CameraInfo, which contains this information as well as the resolution of the current image.
NAO机器人配备了两个摄像头在机器人的头部,第一摄像机安装在前额中间,第二个约偏下4cm。较低的相机是相对于上相机倾斜39.7◦,双摄像机有47.64◦垂直张角。正因为如此,重叠的部分的图像对于立体视觉而言太小。同时从两台相机获取图像也是不可能的,因为它们不是在硬件级别上同步的.。这就是为什么我们一次只分析一幅图片,而不是将图像拼接在一起.。为了能够实时地分析上下摄像头的图像,而不丢失任何图像,认知进程运行在60Hz。由于NAO目前无法从两个相机以最大分辨率提供图像,我们对低相机使用较低分辨率。在正常比赛中,低摄像头只看到一小部分的区域,这是在机器人脚前的区域。因此,在低相机的图像中的物体是靠近机器人且相当大的。我们利用这一事实,以上摄像头一半的分辨率运行低摄像头,从而节省了大量的计算时间。两个相机提供YUV422格式图像。上相机640×480像素,而下摄像头只有320×240像素。因为图像特征感知是依赖颜色类(例如内建),和图像像素的亮度值(例如图像中计算的边缘),YUV422图像被转换为“提取和颜色分类”的ECImage。ECImage包含两幅图像——从摄像机图像的Y通道获得的灰度图,和一个所谓的“彩色”图像(每个像素点匹配到一个颜色类)。处理图像的认知模块需要知道它来自哪个摄像机。为此,我们采用了CameraInfo标识,包含此信息以及当前图像的分辨率。
(representations 到底应该翻译成什么?表示,标识?希望大家可以留言)
Perception(0-1.1)的更多相关文章
- 【编程题目】n 个数字(0,1,…,n-1)形成一个圆圈,从数字 0 开始
第 18 题(数组):题目:n 个数字(0,1,…,n-1)形成一个圆圈,从数字 0 开始,每次从这个圆圈中删除第 m 个数字(第一个为当前数字本身,第二个为当前数字的下一个数字).当一个数字删除后, ...
- 将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m
给定两个数m,n,其中m是一个素数. 将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m. 输入 第一行是一个整数s(0<s<=100),表示测试数据的组数 随后 ...
- 经典面试题:n个数字(0,1,…,n-1)形成一个圆圈
题目: n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字). 当一个数字删除后,从被删除数字的下一个继续删 ...
- HDFS(0.20.2)运营中急救方案
这段时间折腾的都是hadoop和lucene,总结了hadoop在运营过程中出现问题时的解决方案,请大家指教! HDFS(0.20.2)运营中急救方案 1 Namenode 挂掉( ...
- (0.2.6)Mysql安装——编译安装
(0.2.6)Mysql安装——编译安装 待完善
- (0.2.7)Mysql安装——多实例安装
(0.2.6)Mysql安装——多实例安装 待完善
- (0.2.3)Mysql安装——二进制安装
Linux平台下二进制方式安装卸载mysql 本章节:二进制安装mysql 目录: 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 3.如何下载mysql数 ...
- 淘宝网触屏版 - 学习笔记(0 - 关于dpr)
注:本文是学习笔记,并不是教程,所以会有很多我不理解或猜测的问题,也会有不尽详实之处,望见谅. 对于pc端网页设计师来说,移动端的网页制作,我之前只是简单的加了一个 <meta name=&qu ...
- (0.2.1)mysql数据库环境-操作系统配置
目录 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 2.1.如何查看官方文档了解环境要求 2.2.安装虚拟机环境与操作系统 2.3.操作系统最优配置9大步 ...
- (0.2.4)Mysql安装——yum源安装
转自:https://www.cnblogs.com/jimboi/p/6405560.html Centos6.8通过yum安装mysql5.7 1.下载好对应版本的yum源文件 2.安装用来配置m ...
随机推荐
- WinFrom打开一个窗体关闭另一个窗体
在写Winform程序的时候,经常会遇到“打开一个新的窗体然后关闭本窗体”之类的问题.最常见的就是登陆界面和主窗体了.而最常见的处理方法就是表单判断正确后 new MainForm().Show(); ...
- px/em/pt区别和转换
老是被人问到px.pt和em的区别,自己有时候也会纠结到底该用什么单位,今天特意查了一些文章,下面这篇虽然很久远了,但解释的比较全面,转载收藏之.点击查看原文 这里引用的是Jorux的“95%的中国网 ...
- 【转载】如何让Chrome浏览器允许本地环境支持Ajax
转载自:http://www.bewxx.com/news/news_89.html 对于网站前端人员来说,我们在本地开发程序的时候如果用到Ajax的话,通常会使用Firefox来测试,因为Firef ...
- Effective C++(18) 让接口更容易被正确使用,不易被误用
问题聚焦: 从这个条款开始,我们把注意力转移到软件设计和声明上来,具体的说就是,C++接口的设计和声明. 所谓软件设计,就是以一般习惯的构想开始,演变成细节的实现,最终开发针对性的特殊 ...
- C#通过模板导出Word(文字,表格,图片)
C#通过模板导出Word(文字,表格,图片) C#导出Word,Excel的方法有很多,这次因为公司的业务需求,需要导出内容丰富(文字,表格,图片)的报告,以前的方法不好使,所以寻找新的导出方法, ...
- c#中的对象
字段,属性,方法 对象初始化过程 如果没有继承,顺序如下: 静态变量 静态构造函数 非静态变量 非静态构造函数 如果类有基类,那么基类和子类的初始化顺序如下: 继承类静态成员变量初始化 ...
- bios和dos中断
1.字符功能调用类(Character-Oriented Function)01H.07H和08H —从标准输入设备输入字符02H —字符输出03H —辅助设备的输入04H —辅助设备的输出05H — ...
- C#socket通信1
.net平台下C#socket通信(上) 完全是基础,新手可以随意看看,大牛可以关闭浏览页了,哈哈. 在开始介绍socket前先补充补充基础知识,在此基础上理解网络通信才会顺理成章,当然有基础的可以跳 ...
- CSS盒模型和定位的类型
此文根据Steven Bradley的<How Well Do You Understand CSS Positioning?>所译,整个译文带有我自己的理解与思想,如果译得不好或不对之处 ...
- 企业架构研究总结(43)——企业架构与建模之ArchiMate详述(下)
2.7 关系模型元素 企业架构模型包括了各种概念元素以及他们之间的关系,这其中的概念元素已经在前面几节中进行了阐述,而这些概念元素之间的关系则是本节的叙述重点.虽然ArchiMate中具有种类繁多的概 ...