[Rock-dev] MulitlevelLaserScan base type integration

Jakob Schwendner jakob.schwendner at dfki.de
Mon Jan 27 12:45:19 CET 2014


I guess you could see it as an extension of option 3, the image type, with
the additional information of having irregular scan angles. As I said, I
personally like this. But it should definitely merged with the distance
image then, because they are really similar. The difference is that one has
a polar projection and the other a pinhole model.

Cheers,

Jakob

> -----Original Message-----
> From: rock-dev-bounces at dfki.de [mailto:rock-dev-bounces at dfki.de] On
> Behalf Of Sylvain Joyeux
> Sent: Montag, 27. Januar 2014 12:30
> To: rock-dev at dfki.de
> Subject: Re: [Rock-dev] MulitlevelLaserScan base type integration
> 
> There is an option 4, which is having what information is currently stored
in
> the "laser scan header" as common information in the new type, one
> std::vector<base::Angle> for angle for each scan and just have a
> std::vector<float> (or <double>, but given the data rate of e.g. the
velodyne,
> <float> might really be a better idea ...) as data structure. One can then
get
> accessors to extract LaserScan structures if needed.
> 
> I personally feel that the overhead of using base::LaserScan is way too
big:
>   - we get identical scan header information in each scan
>   - we get as many std::vector (i.e. heap allocation and memcpy of
*disjoint*
> memory) as there are scans
> 
> Remember that we are talking about ~20 000 scans per second in the case of
> the velodyne! To give a comparison, the hokuyo gives 40 scans per second.
> 
> Even if I am personally such a big fan of the idea, we could factor the
> common header laser scan information in a LaserScanBase class that is
> inherited by both the MultiLevel and the plain LaserScan
> 
> Outline of this proposal
> 
> struct TheNameOfTheNewDataStructure
> {
>    // Some data that I forget
> 
>    /** The time per-scan */
>    std::vector<base::Time> scan_times;
>    /** The angle-per-scan */
>    std::vector<base::Angle> scan_angles;
>     /** Start angle of a single scan */
>    base::Angle start_angle;
>    /** Angular step in a single scan */
>    base::Angle step;
>    /** Number of samples in a single scan */
>    boost:uint32_t step_count;
>   /** The data itself. The data for scan n is in
>     * samples[step_count * n] .. samples[step_count * (n+1)]
>     */
>   std::vector<float> samples;
> };
> 
> 
> --
>  Dr. Ing. Sylvain Joyeux
>  Space and Security Robotics
> 
>  Besuchsadresse der Nebengeschäftstelle:
>  DFKI GmbH
>  Robotics Innovation Center
>  Robert-Hooke-Straße 5
>  28359 Bremen, Germany
> 
>  Postadresse der Hauptgeschäftsstelle Standort Bremen:
>  DFKI GmbH
>  Robotics Innovation Center
>  Robert-Hooke-Straße 1
>  28359 Bremen, Germany
> 
>  Phone:     +49 421 178 45-4136
>  Zentrale: +49 421 178 45-0
>  Fax:           +49 421 178 45-4150 (Faxe bitte namentlich kennzeichnen)
>  E-Mail:     sylvain.joyeux at dfki.de
> 
>  Weitere Informationen: http://www.dfki.de/robotik
>  -----------------------------------------------------------------------
>  Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
>  Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
>  Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
>  (Vorsitzender) Dr. Walter Olthoff
>  Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes  Amtsgericht
> Kaiserslautern, HRB 2313  Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
>  USt-Id.Nr.:    DE 148646973
>  Steuernummer:  19/673/0060/3
>  ---------------------------------------------------------------------
> _______________________________________________
> Rock-dev mailing list
> Rock-dev at dfki.de
> http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev



More information about the Rock-dev mailing list