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 ...
随机推荐
- Dotfuscator类重命名方法解析
Dotfuscator是专业的.NET程序代码混淆工具,拥有重命名.字符串加密.流程模糊.自定义规则和水印等功能,倍受开发人员喜爱.其中类重命名的使用方法非常普遍,涉及到既要保护代码信息,又要在以后能 ...
- C#中float的取值范围和精度
原文:C#中float的取值范围和精度 float类型的表现形式: 默认情况下,赋值运算符右侧的实数被视为 double. 因此,应使用后缀 f 或 F 初始化浮点型变量,如以下示例中所示: floa ...
- C#可扩展编程之MEF
C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻 前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在 ...
- [转]How To Use CSS3 Media Queries To Create a Mobile Version of Your Website
CSS3 continues to both excite and frustrate web designers and developers. We are excited about the p ...
- centos安装及配置
centos安装 从网上下载最新的版本,用ultraiso做好系统盘,启动.安装过程没有什么可以说的,与其他发行版有点不同的是需要将安装包放到u盘根目录下(u盘容量最好大点,8~16G最好).开始没注 ...
- 何为分类,UIImageView举例
终于开始自己这个“聚水成洋”的路程了. 经过近一年的iOS学习和开发,遇到很多困难,一开始的陌生和畏惧,中途的困惑和纠结,解决问题后的豁然开朗和总结提升,自己就在这样一个不断的循环中逐渐成长起来了. ...
- soket.io.js + angular.js + express.js(node.js)
soket.io.js + angular.js + express.js(node.js) 今天搭建个soket.io.js + angular.js + express.js的环境, 采坑无数,特 ...
- IIS配置PHP环境
IIS配置PHP环境(快速最新版)(转载+自创) (参考转载的) 我们知道php配置有几种: 1.CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使用较少. ...
- DevExpress 学习使用之 TreeList
1. 必须先添加列,否则不能显示任何节点内容 2. 如果是代码添加列时,一定要写明 VisibleIndex = 几,没有这句,不显示 3. 顶级结点用 TreeList.AppendNode 来添加 ...
- What's New in Core Data in iOS 7
What's New in Core Data in iOS 7 该文档主要描述coredata 在ios7的新功能特性. Core Data and iCloud 我们添加改进了对Core Data ...