Compact Encoding of Robot-Generated 3D Maps for Efficient Wireless Transmission Michael Kaess Ronald C. Arkin Jarek Rossignac College of Computing Georgia Institute of Technology Atlanta, Georgia, USA fkaess,arkin,[email protected] Abstract case the data has to be transfered from the robot This workfocusesonreal-timecompression oflaser to the host, typically over a wireless network con- data on board a mobile robot platform. Data is trans- nection. Wireless connections are restricted in band- mitted from the robot over low-bandwidth channels or width. Furthermore, the maximum bandwidth usu- incrementally in short bursts to a host, where it can ally cannot be achieved, due to distance between be further processed for visualization. For compres- senderandreceiver,walls,andinterferencewithother sion purposes, the data is represented as a gray scale radiosignals. Thisismadeevenworseinmilitarysce- depth image. Considered are existing lossless image narios,where countermeasuresmay be present or low and (cid:12)le compression schemes (Unix compress, gzip, bandwidthtransmittersareused[1]. Thisgivesriseto bzip2, PNG, Jpeg-LS), as well as wavelet transforma- the questionofhow to minimize the amountof trans- tions tailored to the speci(cid:12)c nature of the data. Test- mitted data. ing is done on several sets of indoor data acquired by The raw data from the laser range (cid:12)nder can be a robot moving through rooms and hallways. The re- representedasasequenceofgrayscaleimages. There- sults show that Jpeg-LS compression performs best in fore, in addition to compression methods speci(cid:12)c to this setting. the nature of the laser data, existing image compres- sion schemes may also be used. Anapplicationofthisworkisamobilerobotwhich 1 Introduction can move through a building while acquiring and Mobile robots can be used to acquire 3D models transmitting a 3D model of the environment. Data of the environment for a variety of military and com- is transmitted over a low bandwidth channel, allow- mercialapplications. Stereovisionorlaserrange(cid:12)nd- ing use of low cost hardware and coping with inter- ers can be used for acquiring the data. Laser sensors ferences, reducing the bandwidth. We show results providemoreaccurate3Dinformation,butvisionsen- fromourexperimentalsetup with a laser range(cid:12)nder sorsaresmallerandcheaper,andadditionallyprovide mounted on top of a mobile robot platform. texturemapsformorerealistic3Dmodels. Processing Adi(cid:11)erentapplicationisdatatransmissioninshort visiondata,however,isusuallyveryresourceconsum- bursts, to make detection of the robot more di(cid:14)cult. ingandcanoftennotbedoneinreal-time,whilelaser Thetransmittedmodelcanbeusedtofamiliarizepeo- data directly yields a 3D model. ple with a building before entering it, for example in The accuracy of models acquired with range (cid:12)nd- a hostage situation. The lifetime of the robot might ers[12]istypicallyhigherthanofthoseacquiredwith be reduced, since it could be destroyed by an enemy stereo vision [6]. Although vision systems not only whendetected. Thereforeallthedatapacketssentup provide geometry, but also color, which may be used to a speci(cid:12)c time must result in a complete model of as texture to enhance the acquired model, the on- the environment scanned until then. board processing and transmission of color informa- Furthermore, some compression schemes, like tion may be too expensive in mobile situations. Also, wavelets and octrees, allow for incremental transmis- in the absence of vision data, for example in dark en- sion. A progressive transmission of the model guar- vironments,the accuracyofthe modelitself is impor- antees that, even if the transmission were to be in- tant. Therefore the sensor chosen for this work is a terrupted, the recipient will have an approximating laser range (cid:12)nder. model suitable for use. Generation of the 3D model can either take place The next Section overviews related work. In Sec- on board the robot, or on a remote host. In either tion 3 the approach is discussed in detail. Section 4 Report Documentation Page Form Approved OMB No. 0704-0188 Public reporting burden for the collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington VA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to a penalty for failing to comply with a collection of information if it does not display a currently valid OMB control number. 1. REPORT DATE 3. DATES COVERED 2003 2. REPORT TYPE 00-00-2003 to 00-00-2003 4. TITLE AND SUBTITLE 5a. CONTRACT NUMBER Compact Encoding of Robot-Generated 3D Maps for Efficient Wireless 5b. GRANT NUMBER Transmission 5c. PROGRAM ELEMENT NUMBER 6. AUTHOR(S) 5d. PROJECT NUMBER 5e. TASK NUMBER 5f. WORK UNIT NUMBER 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 8. PERFORMING ORGANIZATION Defense Advanced Research Projects Agency,3701 North Fairfax REPORT NUMBER Drive,Arlington,VA,22203-1714 9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S) 11. SPONSOR/MONITOR’S REPORT NUMBER(S) 12. DISTRIBUTION/AVAILABILITY STATEMENT Approved for public release; distribution unlimited 13. SUPPLEMENTARY NOTES The original document contains color images. 14. ABSTRACT see report 15. SUBJECT TERMS 16. SECURITY CLASSIFICATION OF: 17. LIMITATION OF 18. NUMBER 19a. NAME OF ABSTRACT OF PAGES RESPONSIBLE PERSON a. REPORT b. ABSTRACT c. THIS PAGE 8 unclassified unclassified unclassified Standard Form 298 (Rev. 8-98) Prescribed by ANSI Std Z39-18 describes the implementation, followed by a compari- age format is an example. Another simple method is son of the results from di(cid:11)erent compression schemes Run Length Encoding (RLE), as used in the Tagged in Section 5. Section 6 concludes this work. Image File Format (TIFF). Moresuccessful,however,arestatisticalalgorithms 2 Related work based on non-linear predictors. Examples are JPEG- LS and CALIC. JPEG-LS is based on LOCO-I (Low 2.1 3D models Complexity, Context-Based Lossless Image Compres- Acquiringcompact3Denvironmentmodelswasap- sion Algorithm), which is described in [14]. E(cid:14)cient proached by di(cid:11)erent groups in very di(cid:11)erent ways. implementations of JPEG-LS exist, and also provide In [6] stereo vision information is used to generate a \near lossless mode", for which the maximal al- a 3D model while at the same time robot motion is lowed error can be speci(cid:12)ed. CALIC, in contrast, is estimated. Theresultingmodelsincludetexturemap- a complex predictive scheme, commonly only used as ping for realistic visualization. This algorithm works a benchmark. Thus it is not suited for real-time ap- undera\suitableplanarityassumption",whichisful- plication on robots with restricted processing power, (cid:12)lled for non-cluttered indoor environments like cor- and will not be considered here. ridors. The data is processed o(cid:15)ine, so the approach Wavelets,anotherfamilyofalgorithmsusedforim- is not suited for real-time applications. age compression, predict new values from the values Other groups used laser range (cid:12)nders to acquire of previously decoded neighbors. The image is sub- similar models. In [13] concurrent mapping and lo- stituted by a smaller average image and a set of val- calization for indoor environments is performed us- uesrepresentingthedi(cid:11)erenceoftheoriginalfromthe ing a horizontally oriented laser scanner, while a sec- predictedvalues. Thealgorithmcanbeappliedrecur- ond upward-pointed laser acquires 3D information of sively, resulting in a single average value and a set of the environment. The resulting 3D mesh is simpli(cid:12)ed mostly smalldi(cid:11)erence values. The overallnumber of using algorithms from computer graphics making no valuesneededtorepresenttheimagedoesnotchange, assumptions about the environment. With a similar but depending on the quality of the predictor, most setup for an urban environment, [3] describes map- valuesarenearzero,andcanthereforebe encodedef- ping with scan matching using additional sensors to (cid:12)cientlyusingHu(cid:11)man[5]orArithmetic[8]encoding. improve dead-reckoning. An additional camera pro- An accessible introduction to wavelets can be found vides images for texture mapping. in [11], a comprehensive tutorial is given in [10]. [7] in contrast describes an algorithm that identi- [9] compares a set of algorithms (UNIX compress, (cid:12)es planes in the acquired data using the probabilis- GZIP, LZW, old lossless JPEG, JPEG-LS based on ticmethodofexpectationmaximizationtoreducethe LOCO, CALIC, FELICS, S+P Transform, PNG and amount of data. Points which are not part of such a other non-gray-scale methods) based on the perfor- plane remain in the model, allowing for non-flat sur- mance when applied to scanned prints of standard faces with the drawback of increased complexity. An CCITT images as well as gray scale pictorial images. omni-cam provides texture maps for realistic visual- Forgrayscaleimages,CALICandJPEG-LSobtained ization. [12]givesacomprehensiveoverviewofrelated the highest compression rates, with text based com- work. pression (UNIX compress) and old JPEG performing 2.2 Compression worst. [2] arrives at a similar conclusion for medical gray There is a vast amount of literature on compres- scale images, favoring CALIC in almost all cases, di- sion available. Our search focused on standard text rectly followed by JPEG-LS. This comparison addi- based compression, lossless compression of gray scale tionally includes the lossless mode of the JPEG 2000 images, and wavelets. scheme, performing just below CALIC and JPEG-LS Text-based compression schemes are typically in most cases. basedonbuilding a dictionaryofsymbols andassign- ing codes to encode redundancy e(cid:14)ciently. Hu(cid:11)man 3 Experimental Design encoding [5] for example chooses the codes based on the frequencyofeachsymbol. Thetext,asequenceof 3.1 Acquiring Data symbols, is then substituted by the corresponding se- A SICK laser scanner is mounted on top of a No- quence of codes, and the dictionary itself compressed mad mobile robot platform, pointing upwards with with a di(cid:11)erent algorithm. Example implementations the scan plane perpendicular to the motion of the of text dictionary based encoders are UNIX com- robot, as shown in Figure 1. [13, 3, 7, 12] concen- press and GZIP, which implement Lempel-Ziv-Welch trate on acquiring accurate models, and simplifying (LZW) and Ziv-Lempel (LZ77) respectively. thecompletemodelforstorage,transmissionandtex- Imagebasedcompressioncanalsobe basedondic- ture mapping. We, in contrast, emphasize the com- tionaries, the Portable Network Graphics (PNG) im- pressionof incremental portions of the data, allowing of depth produces images similar to the one in Fig- ure 2(a). Thus, we can treat the raw data as an im- age. Forincrementaltransmission,successiveportions of the data need to be compressed, corresponding to strips of such depth images. Existing image compres- sion algorithms can be applied. The noise in the picture will reduce the perfor- mance of the compression algorithm, so smoothing of the image before compression might be appropri- ate. This also reduces the noise in the resulting 3D model, but it also causes loss of information. Since the data is processed on the host side, lossless trans- mission is preferable. Progressive transmission is de- sirable, providing lossless transmission whenever the connection allows. We concentrate on lossless com- pression schemes, but also mention some lossy com- pression methods for comparison. Figure 1: Nomad 150 mobile robot platform with Besides existing text and image compression soft- SICK LMS 200 laser range (cid:12)nder mounted on top. ware, di(cid:11)erent wavelet transforms were evaluated. Wavelets split the data into low- and high-frequency information. They use a prediction function to pre- for real-time transmission from the robot to a host. dictasamplefromitsneighbors. Thegoalisto(cid:12)nda Ifnecessary,simpli(cid:12)cationalgorithmscanthenbeap- suitablepredictor,sothatthedi(cid:11)erencesareminimal. plied o(cid:11)-line before visualizing the model. Thus com- Thetransformisappliedrecursivelyontheremaining plex processing is postponed until arrival of the data averages,(cid:12)nallyleavingoneaveragevaluefromallthe onthemorepowerfulhostmachine,requiringonlylow data, plus a set of small di(cid:11)erence values. The over- performance on-board processing for the robot. As a all number of values does not change. However, the result, the mobile part of the system can be smaller, set of near-zerovalues can be represented much more havelowerpowerconsumption,needsmallerbatteries, compactly than the original data, using Hu(cid:11)man or and become cheaper. Arithmetic encoders. Although we cannot perfectly locate the model in Wavelet transforms are related to Fourier trans- space,duetotheerrorinherenttodead-reckoning,we forms from signal processing. The main di(cid:11)erence is focus instead on transmitting the acquired 3D infor- that they are easier to handle, mainly in terms of an mation in robot coordinates to the host, which can easilyderivableinversetransform. Theycanalsohan- theneitherprocessthemorcorrelatethemwithother dle boundaries, typically encountered in the spatial calibration data, such as measurements from a sec- domain of images. ond, horizontally oriented laser scanner. Under the Thesimplestwavelettransform,theHaarWavelet, assumption of flat surfaces, it might also be possible predicts a constant function, and replaces two neigh- to use the 3D information only for localization. It boring samples a and b by their average s= a+b and needs to be noted that successive 3D scans generally 2 the di(cid:11)erence d=b−a. As describedin[10], this can do not overlap, and therefore only the orientation of be rewritten as the robot can be corrected, not the distance traveled alongahallwayforexample. Sincemostoftheodom- etry errors originate from rotations of the robot, this dn−1,l = sn,2l+1−sn,2l d approach seems to be interesting for future work. sn−1,l = sn,2l+ n−1,l, 2 3.2 Compression allowing for e(cid:14)cient in-place calculation and simple Although each measurement corresponds to a 3D derivation of the inverse transformation. locationandcouldberepresentedusing3coordinates, The Linear Wavelet Transform [10] extends the itisadvantageoustoencodeitasadistancemap,with Haar Wavelet from constant to linear functions. It one coordinate per sample, due to the resulting data needs to examine both, the left and the right neigh- reduction. Moreover, the raw data can be seen as a bors of a sample to predict its value, and is given by cylindricaldepthmapoftheenvironment,havingone ddiimmeennssiioonn ainlotnhgethraedpiaalthscoafnthdeirercotbioont.,Tanhde raawsecdoantda dn−1,l = sn,2l+1− sn,2l+sn,2l+2 2 omfetnhtes.laVseisrusaelnizsionrgcothnesisdtastoafu1s3inbgitadgisrteayn-lceevmelecaosduirneg- sn−1,l = sn,2l+ dn−1,l−1+dn−1,l. 4 Assumingthatflatsurfacesdominate,typicallythe casefor indoor environments,the waveletneeds to be able to predict lines. Therefore the Linear Wavelet shouldbewellsuitedalongthedirectionofmovement of the robot, that is the horizontal direction in Fig- ure 2(a). For the perpendicular laser scan direction, linesimply atrigonometricfunctiononthe radialdis- tance measure. The Linear Wavelet translated into Cartesian space given the radial distances is de(cid:12)ned by 2cos0.5(cid:14) dn−1,l = 1 1 + s s j,2l j,2l+1 sn−1,l = sn,2l+ dn−1,l−1+dn−1,l. 4 (a)Therawdataofthelaserscanner asdepthimage. Our Radial Line Predictor uses this wavelet for com- pression along the scan direction, and the Linear Wavelet along the movement direction of the robot. Carehastobetakentocorrectlyimplementbound- aries,allowingthecompressionofarbitrarilysizedim- ages,notrestrictedtopowersof2. Theresultingdata is compressed using an adaptive Hu(cid:11)man encoder. 4 Implementation The overall system architecture is shown in Fig- ure 3. 4.1 Hardware TheSICKLMS200laserrange(cid:12)nder,mountedon topofaNomad150mobilerobot(seeFigure1),scans 180(cid:14) in 0.5(cid:14) steps from one side over the top to the other side, returning a 13 bit integer value represent- (b)3Dmodelview ingthe distance tothe nextobjectforeachofthe 361 steps. About 38 complete 180(cid:14) scans are performed Figure 2: Raw data and 3D model view: Darker per second, but in the current implementation only 5 values in the depth image (a) represent shorter dis- are available because of restrictions of the standard tances from the robot. Each 180(cid:14) scan corresponds to serial RS232 interface. The robot moved on average one pixel column in the image. The ceiling is always with a speed of about 0.25m, that is one scan is per- s visible along a horizontal line through the center of formed every 5cm. In the perpendicular scan direc- the image, since the laser pointed upwards. The robot tion, the same resolution is achieved for objects at a drove along a corridor (left to right in the image), the distance of 6m. Since the calculations performed on right and left walls are visible in the upper and lower the robotare notcomplex, itis possible with a di(cid:11)er- part of the depth image, respectively. Near the center ent serial interface to use all available scans with the of the image, the robot turned 90(cid:14) near a glass door robot moving at 2.4m, resulting in the same model s entrance, and continued into another corridor. The quality. On the other hand, the model quality could white lines on the corridor walls are errors caused by be increasedby acquiringmoredata inthe sametime picture frames deflecting the laser ray. The 3D model period. It makes little sense to increase the horizon- in (b) shows a view from outside the glass door en- tal resolution above the vertical resolution for these trance. The robot turned from the left corridor into kinds of indoor environments. If objects on average the center corridor of the building. Note that the 3D are about 3m distant, an optimal value for the hori- model contains more data then shown in (a), and that zontal resolution is 3m(cid:1)tan(0.5) = 2.6cm, yielding a it was created after lossless transmission, that is from m robot speed of about 1 . s unmodi(cid:12)ed laser data. The laser scanner operates in the non-default mil- limeter mode. In this mode, the 13 bits returned for every single distance measurement represent dis- tancesfrom0to8.191meters,wherethehighestvalue Figure 3: System architecture: The mobile part of the system consists of a laptop and a laser scanner, both on board a robot. hserver is running on the laptop to control the robot and acquire data from the laser. laser server requests laser data and odometry from hserver, compresses the data, and sends it together with the position information over a wireless network connection to the remote host. On the host side, laser3d recovers the original data, converts it to a 3D model, and displays it. 8191representsalldistancesof8.191mandmore. Ac- 4.2 Software cording to the technical information of the scanner, To control the movement of the robot and record the statistical error in the range from 1m to 8m is thedatafromthelaserscanner, hserverandamod- at most (cid:6)15mm. Nevertheless, the resulting models i(cid:12)ed version of laserfit, called laser server, are show much more detail compared to the ones gener- used, both part of the freely available MissionLab1 ated in centimeter mode. Some experiments with the software from Georgia Tech. hserver can either be laserpointedataplanarsurfacerevealsthisstatistical used directly to teleoperate the robot, or be inter- error as shown in an example scan in Figure 4. The faced to MissionLab to allow autonomous execution distance to the wall is 270mm, the statistical error of missions. from the (cid:12)rst 30 points averaged over several frames The data from the laser together with odome- is in the order of (cid:6)8mm, where this value increases try and time stamps can be recorded to a (cid:12)le to slightly with the distance. simplify the testing of di(cid:11)erent compression algo- rithms. Recorded data can then be replayed with laser server in real-time, making it possible to test the software for time constraints. Additionally, laser server can be used to compress and trans- mit the data incrementally over network in real-time to the visualization software laser3d, which is de- scribed next. Themodi(cid:12)edversionof laser server,andthevi- sualizationsoftwarelaser3darealsofreelyavailable2 on the web. Compression and decompression are built into laser server and laser3d, respectively. This al- lows for real-time compression and transmission of the data over a (wireless) network connection from the robot to a host. A special mode allows for fast compression of the data, without actually displaying a3Dmodel,printingstatisticalresultsforcomparison Figure 4: The dots on the right represent a straight of the di(cid:11)erent algorithms. wall as seen by the laser scanner. A scale is shown with a distance of 1cm between adjacent lines. 1http://www.cc.gatech.edu/ai/robot-lab/research/ MissionLab/ 2http://www.cc.gatech.edu/ai/robot-lab/research/3d/ 1 Implemented and tested lossless compression z = HR+ d(cid:1)sin(α)+zO modesincludeuncompressed,bitstu(cid:14)ng,UNIXcom- 100 press, GZIP, BZIP2, JPEG-LS,and di(cid:11)erent kinds of To get the actual mesh, two adjacent scan points wavelets. Additionally, nearly lossless JPEG-LS with P1 andP2 takenat anglesα and α+0.5(cid:14) ofthe same speci(cid:12)able maximal error is provided as a lossy com- complete scan and the corresponding two points Q1 pression mode. andQ2 ofthenextscanareconnectedtoformtwotri- Each packet starts with one byte specifying the angles P1P2Q1 and Q1P2Q2. For each triangle ABC compression algorithm used. The next three bytes the corresponding normal vector contain the byte length of the complete packet. The AB(cid:2)AC nextbytespeci(cid:12)esthenumberofscansninthepacket, n= jjAB(cid:2)ACjj followed by 3n floats representing the poses of all scans. The pose information should also be com- iscalculated. Tosafetimethetrianglesarenotpassed pressed, but since it represents only about 2% of the separately to OpenGL but in strips, where a strip uncompressed data, this is omitted for now. The sec- consistsofalltrianglesbetweentwoscanplanes. n+2 ond part of the packet contains the compressed laser points are necessary to describe n triangles. Besides range data. the (cid:12)rst 2 points, each following point describes an- Uncompressed mode sends 361 measurements (2 other triangle and is passed together with the corre- bytes each)per scan. This sums to 722bytes foreach spondingnormalvector. Toavoidtransmissionofthat scan. Bit stu(cid:11)ed mode uses only 13 bits per mea- data for every updated view of the model, OpenGL surement, resulting in 361(cid:1) 13 = 587 bytes. UNIX listsareusedtostorethedataandthenecessarytrans- 8 compress3 , GZIP4 and BZIP25 call the correspond- formations are then performed on these lists. ing shell command on the 16 bit raw data (PGM im- Di(cid:11)erentdisplaymodesallowforshadedmodelsas age format without header). PNG calls ImageMag- well as visualization of underlying data by assigning ick6 on 16 bit raw PGM format. JPEG-LS is im- random colors to triangles, quads or strips. The pro- plemented by calling the 16 bit encoder and decoder gram also allows for di(cid:11)erent floor modes including a loco16e/loco16d7 and nloco16e/nloco16d for lossless checkerboardto allow better estimationof distances. and near lossless mode, respectively. Since the laser scanner is mounted on top of the The wavelet transforms are implemented in robotwithitscenterataheightof52cm,theresulting laser server/laser3d, while compression is done mesh starts at that height. Connection to the floor is by calling a command line Hu(cid:11)man encoder8 . done by projecting the (cid:12)rst and the last scan point of every 180(cid:14) scan down to height 0. This makes the 4.3 Visualization model look more realistic, but is also dangerous since After decompressionon the host side, the model is it may pretend a free space were obstacles actually displayed using OpenGL. The raw data of each scan are. isconvertedfromcylindricaltoCartesiancoordinates. At the beginning the observer is located in the The raw integer data d representing the distance to model at the same point the robot started, with the the next object in millimeters is scaled to meters and same orientation. The height of the eyes are assumed transformed to Cartesian floating point coordinates to be at 1.7m, more than a meter above the actual using the pose of the robot x, y, θ, the angle α de- location of the laser scanner. scribingthedirectionofthescanwithinthescanplane Thelightsourceusedtomakethemodelmorereal- from −π to +π, the height of the center of the laser istic is positioned in a height of 0.8m over the eyes of 2 2 scanner HR =0.52, and the o(cid:11)sets xO, yO, zO: the observer. Usage of the OpenGL two-sided light modelandthe front-and-backpolygonmodemakesit possible to see scanned surfaces also from the other 1 x = xR+ d(cid:1)cos(α)cos(θ)+xO side. 100 The user can navigate through the model in arbi- 1 y = yR+ d(cid:1)cos(α)sin(θ)+yO trary directions and orientations. 100 3Linuxcompress4.2.4 5 Results 4Linuxgzip1.3.3,2002-03-08 To compare the di(cid:11)erent algorithms,(cid:12)ve data sets 5Linuxbzip2,Version1.0.2,30-Dec-2001 6Linux ImageMagick 5.4.7, “convert -quality 100 x.pgm wererecorded. DataSet1and2wereacquiredmainly x.png” alongcorridors,Set3inamixtureofroomsandcorri- 7Linux loco16e/d, JPEG-LS Reference En/Decoder - dors,and4and5insiderooms. Foragivenbandwidth V.1.00X, freely available for testing and evaluation, see http: of 10 kBytes per second, the resulting transmission //www.hpl.hp.com/loco 8Compressors, Version 1.5, David Bourgin, dbour- times for a packet of 20 scans are compared in Ta- [email protected] ble 1. Table 1: Transmission times for packets containing 20 scans, including header and uncompressed odometry information. Assumed is a transmission rate of 10 kBytes per second. Evaluation is done on (cid:12)ve di(cid:11)erent data sets. DataSets1and2aremainlycorridors, 4and5areinsidearoom,and3isamixtureofroomsandcorridors. Data Set 1 2 3 4 5 Average Number of scans 5600 4500 800 800 1400 Size of raw data in bytes 4043200 3249000 577600 577600 1010800 Compression method Transmission time in seconds (rounded) Raw formats Raw data 1.469 1.469 1.469 1.469 1.469 1.469 Bit stu(cid:14)ng 1.197 1.197 1.197 1.197 1.197 1.197 Text based compr. Unix COMPRESS 1.112 1.149 1.222 1.382 1.326 1.238 GZIP 0.848 0.874 0.914 1.028 0.995 0.932 BZIP2 0.686 0.724 0.768 0.910 0.864 0.790 Image based compr. PNG 0.870 0.907 0.953 1.102 1.058 0.978 Haar Wavelet 0.854 0.891 0.904 0.985 0.948 0.917 Linear Wavelet 0.814 0.865 0.861 0.970 0.917 0.886 Radial Line Predictor 0.812 0.864 0.859 0.969 0.915 0.884 JPEG-LS 0.501 0.545 0.529 0.618 0.572 0.553 Lossy compression JPEG-LS, max err 1 0.350 0.395 0.385 0.475 0.428 0.407 JPEG-LS, max err 2 0.291 0.332 0.325 0.413 0.367 0.346 JPEG-LS, max err 4 0.237 0.277 0.264 0.346 0.303 0.285 Table 2: Transmission time in seconds for packets The results con(cid:12)rm [9] and [2] in JPEG-LS as be- of size 20 for Data Set 3. For the output of Linear ingthebestcompressionscheme,andtext-basedcom- Wavelet application, speci(cid:12)ed are results from Hu(cid:11)- pressionalgorithmsUnixCOMPRESSandGZIPper- man and Arithmetic encoders, as well as theoretical forming the worst. BZIP2 does signi(cid:12)cantly better limitsof compression given by theentropy of thedata. than the latter two, but is still far behind JPEG-LS. JPEG-LS performance is listed for comparison. ItalsoneedstobementionedthatBZIP2compression takes a multiple in time of the other algorithms. As Transmission onewouldexpect,lossycompressionschemesperform Compression Method time (in s) signi(cid:12)cantlybetter,evenforamaximumerrorofonly (cid:6)1mm. Linear Wavelet + 8 bit Hu(cid:11)man 0.861 As one would expect, the Linear Wavelet Trans- Linear Wavelet + Arithmetic 0.804 form performs better than the Haar Wavelet Trans- theoretical limit arithmetic, 8 bit 0.734 form. However,thedi(cid:11)erenceisrelativelysmall. Haar theoretical limit arithmetic, 16 bit 0.537 should not be a good predictor for the data, because JPEG-LS 0.529 at least in scan direction the data will in general not beconstant. Thesmalldi(cid:11)erenceinperformancesug- not addressed by our approach. gests that the Linear predictoris also notsuited. Ra- Beyondthecomparisonofdi(cid:11)erentalgorithms,Ta- dial Line Prediction performs only marginally better ble 1 also shows a di(cid:11)erence between corridor and than the Linear Wavelet, since a linear function in room data. Corridors contain less complex surfaces the measureddistanceisagoodapproximationtothe compared to rooms, the data can therefore be easier lines in radial space. All three algorithms perform compressed, speeding up transmission. better thanGZIP,butaresigni(cid:12)cantlybelowtheper- Another interesting view is provided in Table 3, formance of JPEG-LS. showing the dependence of compression ratio on the Table 2 shows results for Data Set 3, including packet size. Note that transmission time is given for theoreticaltransmissiontimescalculatedfromtheen- setsof20scans,eventhoughthepacketshavedi(cid:11)erent tropy values for Linear Wavelets before Hu(cid:11)man en- sizes. Forbigpackets,thepacketlengthhasnotmuch coding. Even the theoretically optimal encoding does influence on the time. For small packets, increasing not reach the JPEG-LS result. This suggests that byafewscansreducestransmissiontimesigni(cid:12)cantly. there are better predictors for the data. One possible The values suggest that packet sizes between 20 and explanation for the bad performance provides the in- 50shouldbe chosenasacompromisebetweenupdate herent noise of the data, visible in Figure 4, which is frequency and compression ratio. Table 3: Influenceofpacketsize(innumberofscans) State of the Art Approaches", SPIE Medical on transmission time (in seconds for 10 kBytes per Imaging, 2000. second transmission rate) for selected algorithms. For evaluation all (cid:12)ve data sets were used and the average [3] C. Frueh, A. Zahkhor, \Fast 3D Model Gener- is reported. ation in Urban Environments", In International Conference on Multisensor Fusion and Integra- Packetsize tion for Intelligent Systems, Baden-Baden, Ger- 10 20 50 100 many, pp. 165-170,August 2001. Compr. method Transmission time (in s) [4] J.-S. Gutmann, K. Konolige, \Incremental Map- BZIP2 0.888 0.790 0.702 0.659 ping of Large Cyclic Environments", In Interna- JPEG-LS 0.578 0.553 0.537 0.530 tional Symposium on Computational Intelligence Linear Wavelet 0.927 0.886 0.857 0.847 in Robotics and Automation (CIRA), pp. 318- 325, 1999. 6 Conclusion [5] D. A. Hu(cid:11)man, \AMethod for the Construction ofMinimumRedundancy Codes",Proceedings of This paper compared compression methods in the IRE, pp. 1098-1101,1952. terms of transmission time of laser generated 3D maps. The goal was compact incremental transmis- [6] L. Iocchi, K. Konolige, M. Bajracharya, \Visu- sion of the data, not simpli(cid:12)cation of a complete 3D ally Realistic Mapping of a Planar Environment model, as is commonly used for visualization pur- with Stereo", International Symposium on Ex- poses. Compared were transmission times using ex- perimental Robotics (ISER), pp. 521-532,2000. isting image and text based compression algorithms, [7] Y. Liu, R. Emery, D. Chakrabarti, W. Burgard, andwaveletalgorithmstunedtothespeci(cid:12)cnatureof S. Thrun, \Using EM to Learn 3D Models of In- the raw laser data. doorEnvironmentswithMobileRobots",InPro- For most such applications, the usage of lossless ceedings of the International Conference on Ma- JPEG-LS is recommended, resulting in lowest trans- chine Learning (ICML), pp. 329-336,2001. mission times compared to all lossless compression schemes tested. Since it is a complex predictor [8] W. B. Pennebaker and J. L. Mitchell, \An scheme, some demand of on-board processing can be Overview of the Basic Principles of the Q-Coder expected. Ifon-boardprocessingisseverelyrestricted, AdaptiveBinaryArithmeticCoder",IBMJ.Res. wavelets with Hu(cid:11)man encoding should be preferred. Dev., pp. 717-726,1988. If real-time is an essential part of the application, and certain minimum transmission rates cannot be [9] A. E. Savakis, \Evaluation of Lossless Compres- guaranteedatalltimes,thenprogressivetransmission sionMethods forGrayScale DocumentImages", methods should be used. Wavelets are suitable, but International Conference on Image Processing, this application was not further explored here. Vancouver, Canada, September 2000. If very small errors can be accepted, lossy JPEG- [10] P.Schroeder,\WaveletsinComputer Graphics", LS should be used to reduce transmission times sig- SIGGRAPH Course Notes, 1996. ni(cid:12)cantly. Of advantage is the guaranteed maximum error, speci(cid:12)able by the user. [11] E. J. Stollnitz, T. D. Derose, D. H. Salesin, \Waveletsforcomputergraphics: theoryandap- Acknowledgments plications",MorganKaufmannPublishers,1996. The authors would like to thank JonathanF. Diaz [12] S. Thrun, \Robotic Mapping: A Survey", In G. and Alexander Stoychev for their implementation of Lakemeyer and B. Nebel, editors, Exploring Ar- laserfit. The Georgia Tech Mobile Robot Labora- ti(cid:12)cial Intelligence in the New Millenium, 2002. tory is supported from a variety of sources including [13] S.Thrun,W.Burgard,D.Fox,\AReal-TimeAl- DARPA, Honda R&D, C.S. Draper Laboratory, and gorithmforMobileRobotMappingwithApplica- SAIC. tions to Multi-Robot and 3D Mapping", In Pro- ceedingsoftheIEEEInternationalConferenceon References Robotics and Automation (ICRA), 2000. [1] R. Arkin, R. Burridge, and T. Collins, \Control Systems for Semiautonomous Robot Groups",in [14] M. J. Weinberger, G. Seroussi, G. Sapiro, submission, 2003. \LOCO-I: A Low Complexity, Context-Based Lossless Image Compression Algorithm", IEEE [2] D.A.Clunie,\LosslessCompressionofGrayscale Data Compression Conference, 1996. MedicalImages-E(cid:11)ectivenessofTraditionaland