From b34966e6f6c20861526f50a1da9c29287e3d3c4f Mon Sep 17 00:00:00 2001 From: Maurice Fallon Date: Tue, 21 Feb 2017 09:25:57 +0000 Subject: [PATCH] readme --- README | 20 ------------------ README.rst | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 20 deletions(-) delete mode 100644 README create mode 100644 README.rst diff --git a/README b/README deleted file mode 100644 index 1ac8377..0000000 --- a/README +++ /dev/null @@ -1,20 +0,0 @@ -This is a default README file, please replace its contents with information -relevant to your project. - -This software is constructed according to the Pods software policies and -templates. The policies and templates can be found at: - - http://sourceforge.net/projects/pods - -==== - -Name: maps -Maintainers: FILL-ME-IN -Summary: FILL-ME-IN -Description: - FILL-ME-IN - -Requirements: - FILL-ME-IN - -License: FILL-ME-IN diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..879199b --- /dev/null +++ b/README.rst @@ -0,0 +1,62 @@ +*********** +Maps Server +*********** + +The maps server is a request-respond application for collating local LIDAR (or stereo) data into a point cloud and the serving outputs from that point cloud such as heightmaps, depthmaps or octrees. + +Care is take to make the application: +* Minimal: except for the standard libararies mentioned below +* Data-efficient: an support transmission of local maps at 5KB/sec - sufficient for a very very weak wireless link +* Stateless: all content output by the server is self enclosed + +The software was developed for the MIT DARPA Robotics Challenge entry + +**Details about message flow** + +TODO: put flow chart here + +1. DATA_REQUEST: tiny message requesting a high level type of map (a few bits in size). Made by UI e.g. Director. (A) +2. MAP_REQUEST: specific details of map of interest (a few bytes). Made by the data-request-server. (B) +3. MAP_DEPTH: actual height/depth map data stream. Published by maps-server (C) + +MAP_OCTREE: as for MAP_DEPTH above except an Octree, messages 10x larger + +***(A) enum types supported by data request*** +- short range, detailed height map (for footstep planning) +- long range, coarse height map (for navigation planning) +- short range depth map (for manipulation) +- long range depth map (for situational awareness) +- octomap (for manipulation) +- stereo depth map + +***(B) information in the maap request*** +- which data type to use (depth image, point cloud, octree +- time window to accumulate +- virtual camera to use to project data +- quantization level, resolution +- height estimation mode e.g. median, mean, nearest + +***(C) details about the actual maps produced*** + +The maps is entirely self contained e.g. it doesn't use bot frames or tf, or joint angles. It contains: +- id to identify it +- resolution, compression (e.g. Zlib usually) +- projective transformation matrix for data +- data blob + +example data rate for short range height map: 5KB at 1Hz + + +**Dependencies** + +* Required: PCL, Octomap +* Optional: LCM, libbot + +**Pods** + +This software is constructed according to the Pods software policies and +templates. The policies and templates can be found at: + +* http://sourceforge.net/projects/pods + +