[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