Laser obstacles

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(New page: RANSAC based obstacle detection that prioritises lines All obstacles are converted to points, lines or convex polygons. The obstacles are saved in the obstacle database 'obst' that is a r...)
 
(Functions commands (for both SMR and SMRCTL resource))
 
Line 35: Line 35:
 
From the on-line help
 
From the on-line help
  
* device=N  Use scanner device N (else default)
+
device=N  Use scanner device N (else default)
* fake=F    Fake data from this device - F=1..4
+
fake=F    Fake data from this device - F=1..4
* any        Use any scan (ignore already used flag)
+
any        Use any scan (ignore already used flag)
* make      Make obstacles from scan
+
make      Make obstacles from scan
* obst      Send findings to obstacle resource
+
obst      Send findings to obstacle resource
* silent    Do not send obstacles to client
+
silent    Do not send obstacles to client
* list      list newest ransac lines
+
list      list newest ransac lines
* help      This message
+
help      This message
  
 
===Configuration example===
 
===Configuration example===

Latest revision as of 09:37, 27 September 2010

RANSAC based obstacle detection that prioritises lines

All obstacles are converted to points, lines or convex polygons. The obstacles are saved in the obstacle database 'obst' that is a resource created by the plug-in module ulmspassable.so.0.

Author: Christian Andersen

(for svn version 1100)

Contents

[edit] Configuration variables

  • maxToLineDist=0.05 (r/w) max distance to line for members
  • minPointsInLine=8 (r/w) Minimum number of measurements in a line
  • maxLineIterations=25 (r/w) Max number of iterations to allign line to members
  • maxSamples=100 (r/w) Number of samples to determine best supported line
  • splitDist=0.15 (r/w) distance to split long line into two (or more)
  • minSplitCnt=2 (r/w) if a line is grouped by 'splitDist', then each group must have at least this number of supporting point (set to 0 to disable).
  • enableSplit=1 (r/w Enable split, i.e. reduce line to group with most measurements
  • lineEatDist=0.03 (r/w) after line generation, regard measurements this close to the line as false measurements
  • ignoreIfFixed=0 (r/w) ignore produced obstacles that overlap mapped fixed obstacles
  • debugDumpScanOn=0 (rw) at this scan-number will the debugDump flag be set true
  • debugDumpScanOff=0 (rw) at this scan-number will the debugDump flag be set false
  • noObst=0.33 0.17 -0.2 -0.17 (rw) Area where obstacles are ignored (below robot) front-left (x,y) and back-right (x,y) in robot coordinates

[edit] Result/status variables

  • scan=0 (r) latest scan number processed

[edit] Functions calls

none

[edit] Functions commands (for both SMR and SMRCTL resource)

From the on-line help

device=N   Use scanner device N (else default)
fake=F     Fake data from this device - F=1..4
any        Use any scan (ignore already used flag)
make       Make obstacles from scan
obst       Send findings to obstacle resource
silent     Do not send obstacles to client
list       list newest ransac lines
help       This message

[edit] Configuration example

Configuration used for indoor smr use.

module load="./aulobst.so.0"
var lobst.minSplitCnt=2
; splitDist defines minimum opening
var lobst.splitDist=0.15
var lobst.maxLineIterations=25
var lobst.maxSamples=100
var lobst.noobst="0.33 0.17 -0.2 -0.17
var lineEatDist=0.03
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox