{"id":782,"date":"2019-02-28T20:51:45","date_gmt":"2019-03-01T01:51:45","guid":{"rendered":"http:\/\/sunapi386.ca\/wordpress\/?p=782"},"modified":"2023-02-06T19:58:08","modified_gmt":"2023-02-07T00:58:08","slug":"transforming-lidar-point-clouds","status":"publish","type":"post","link":"https:\/\/sunapi386.ca\/wordpress\/transforming-lidar-point-clouds\/","title":{"rendered":"Transforming Lidar Point Clouds"},"content":{"rendered":"\n<p>I was playing with datasets and wanted to share with what beautiful visualizations but wrong map alignment looks like.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1717\" height=\"1031\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image.png?fit=625%2C375\" alt=\"\" class=\"wp-image-783\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image.png 1717w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-300x180.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-768x461.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1024x615.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-624x375.png 624w\" sizes=\"auto, (max-width: 1717px) 100vw, 1717px\" \/><\/figure>\n\n\n\n<p>The different colors represent scans but merged improperly (not aligned).<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1643\" height=\"986\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1.png?fit=625%2C375\" alt=\"\" class=\"wp-image-784\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1.png 1643w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1-300x180.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1-768x461.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1-1024x615.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-1-624x374.png 624w\" sizes=\"auto, (max-width: 1643px) 100vw, 1643px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"2121\" height=\"1204\" src=\"https:\/\/i0.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2.png?fit=625%2C355\" alt=\"\" class=\"wp-image-785\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2.png 2121w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2-300x170.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2-768x436.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2-1024x581.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-2-624x354.png 624w\" sizes=\"auto, (max-width: 2121px) 100vw, 2121px\" \/><\/figure>\n\n\n\n<p>Looks like a mess.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"2417\" height=\"1181\" src=\"https:\/\/i0.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3.png?fit=625%2C305\" alt=\"\" class=\"wp-image-786\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3.png 2417w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3-300x147.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3-768x375.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3-1024x500.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-3-624x305.png 624w\" sizes=\"auto, (max-width: 2417px) 100vw, 2417px\" \/><\/figure>\n\n\n\n<p>But overall the coloring is important with debugging what this data represents.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Here&#8217;s what it looks like all merged together properly.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1608\" height=\"872\" src=\"https:\/\/i0.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4.png?fit=625%2C339\" alt=\"\" class=\"wp-image-787\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4.png 1608w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4-300x163.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4-768x416.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4-1024x555.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-4-624x338.png 624w\" sizes=\"auto, (max-width: 1608px) 100vw, 1608px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"731\" height=\"578\" src=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-5.png\" alt=\"\" class=\"wp-image-788\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-5.png 731w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-5-300x237.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-5-624x493.png 624w\" sizes=\"auto, (max-width: 731px) 100vw, 731px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Especially the truck<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1603\" height=\"857\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6.png?fit=625%2C334\" alt=\"\" class=\"wp-image-789\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6.png 1603w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6-300x160.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6-768x411.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6-1024x547.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-6-624x334.png 624w\" sizes=\"auto, (max-width: 1603px) 100vw, 1603px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1477\" height=\"904\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7.png?fit=625%2C383\" alt=\"\" class=\"wp-image-790\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7.png 1477w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7-300x184.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7-768x470.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7-1024x627.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-7-624x382.png 624w\" sizes=\"auto, (max-width: 1477px) 100vw, 1477px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Lidar map merging is a difficult task, and merging the data takes quite some time. So it is better to sample parts of a large data set and see if the algorithm is doing the right job.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"714\" height=\"786\" src=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-8.png\" alt=\"\" class=\"wp-image-791\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-8.png 714w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-8-273x300.png 273w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-8-624x687.png 624w\" sizes=\"auto, (max-width: 714px) 100vw, 714px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1256\" height=\"767\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9.png?fit=625%2C381\" alt=\"\" class=\"wp-image-792\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9.png 1256w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9-300x183.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9-768x469.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9-1024x625.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-9-624x381.png 624w\" sizes=\"auto, (max-width: 1256px) 100vw, 1256px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1740\" height=\"1069\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10.png?fit=625%2C384\" alt=\"\" class=\"wp-image-793\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10.png 1740w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10-300x184.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10-768x472.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10-1024x629.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-10-624x383.png 624w\" sizes=\"auto, (max-width: 1740px) 100vw, 1740px\" \/><\/figure>\n\n\n\n<p>At least the lidar above were all in the same 2D plane.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Here&#8217;s what it looks like if they weren&#8217;t &#8212; a blob of mess.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1318\" height=\"1183\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11.png?fit=625%2C561\" alt=\"\" class=\"wp-image-794\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11.png 1318w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11-300x269.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11-768x689.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11-1024x919.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-11-624x560.png 624w\" sizes=\"auto, (max-width: 1318px) 100vw, 1318px\" \/><figcaption class=\"wp-element-caption\"><strong>double <\/strong>roll = rtkMessage.roll();<br><strong>double <\/strong>pitch = rtkMessage.pitch();<br><strong>double <\/strong>yaw = &#8211; rtkMessage.heading();<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1775\" height=\"1065\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12.png?fit=625%2C375\" alt=\"\" class=\"wp-image-795\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12.png 1775w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12-300x180.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12-768x461.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12-1024x614.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-12-624x374.png 624w\" sizes=\"auto, (max-width: 1775px) 100vw, 1775px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"901\" height=\"718\" src=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-13.png\" alt=\"\" class=\"wp-image-796\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-13.png 901w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-13-300x239.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-13-768x612.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-13-624x497.png 624w\" sizes=\"auto, (max-width: 901px) 100vw, 901px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1545\" height=\"1090\" src=\"https:\/\/i0.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14.png?fit=625%2C441\" alt=\"\" class=\"wp-image-797\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14.png 1545w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14-300x212.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14-768x542.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14-1024x722.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-14-624x440.png 624w\" sizes=\"auto, (max-width: 1545px) 100vw, 1545px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1295\" height=\"939\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15.png?fit=625%2C453\" alt=\"\" class=\"wp-image-798\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15.png 1295w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15-300x218.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15-768x557.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15-1024x742.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-15-624x452.png 624w\" sizes=\"auto, (max-width: 1295px) 100vw, 1295px\" \/><figcaption class=\"wp-element-caption\"><strong>double <\/strong>roll = deg2rad(rtkMessage.roll());<br><strong>double <\/strong>pitch = deg2rad(rtkMessage.pitch());<br><strong>double <\/strong>yaw = deg2rad(rtkMessage.heading());<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1345\" height=\"995\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16.png?fit=625%2C463\" alt=\"\" class=\"wp-image-799\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16.png 1345w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16-300x222.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16-768x568.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16-1024x758.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-16-624x462.png 624w\" sizes=\"auto, (max-width: 1345px) 100vw, 1345px\" \/><figcaption class=\"wp-element-caption\"><strong>double <\/strong>roll = deg2rad(rtkMessage.roll());<br><strong>double <\/strong>pitch = deg2rad(rtkMessage.pitch());<br><strong>double <\/strong>yaw = &#8211; deg2rad(rtkMessage.heading());<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1088\" height=\"685\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17.png?fit=625%2C394\" alt=\"\" class=\"wp-image-800\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17.png 1088w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17-300x189.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17-768x484.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17-1024x645.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/02\/image-17-624x393.png 624w\" sizes=\"auto, (max-width: 1088px) 100vw, 1088px\" \/><\/figure>\n\n\n\n<p>I tried a bunch of different methods and it turns out that I was using degrees in place of radians. <\/p>\n\n\n\n<p>Here&#8217;s what after 5 days of working on this problem I finally solved <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1701\" height=\"1048\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image.png?fit=625%2C385\" alt=\"\" class=\"wp-image-803\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image.png 1701w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-300x185.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-768x473.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1024x631.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-624x384.png 624w\" sizes=\"auto, (max-width: 1701px) 100vw, 1701px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1624\" height=\"1223\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1.png?fit=625%2C471\" alt=\"\" class=\"wp-image-805\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1.png 1624w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1-300x226.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1-768x578.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1-1024x771.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-1-624x470.png 624w\" sizes=\"auto, (max-width: 1624px) 100vw, 1624px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1381\" height=\"710\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2.png?fit=625%2C321\" alt=\"\" class=\"wp-image-806\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2.png 1381w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2-300x154.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2-768x395.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2-1024x526.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-2-624x321.png 624w\" sizes=\"auto, (max-width: 1381px) 100vw, 1381px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"2070\" height=\"1117\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3.png?fit=625%2C338\" alt=\"\" class=\"wp-image-807\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3.png 2070w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3-300x162.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3-768x414.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3-1024x553.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-3-624x337.png 624w\" sizes=\"auto, (max-width: 2070px) 100vw, 2070px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1967\" height=\"459\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4.png?fit=625%2C146\" alt=\"\" class=\"wp-image-808\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4.png 1967w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4-300x70.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4-768x179.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4-1024x239.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-4-624x146.png 624w\" sizes=\"auto, (max-width: 1967px) 100vw, 1967px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Here&#8217;s what the Google Maps view looks like<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"844\" height=\"444\" src=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-5.png\" alt=\"\" class=\"wp-image-809\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-5.png 844w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-5-300x158.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-5-768x404.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-5-624x328.png 624w\" sizes=\"auto, (max-width: 844px) 100vw, 844px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>And here&#8217;s what the lidar point cloud data only looks like<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1389\" height=\"719\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6.png?fit=625%2C323\" alt=\"\" class=\"wp-image-810\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6.png 1389w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6-300x155.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6-768x398.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6-1024x530.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-6-624x323.png 624w\" sizes=\"auto, (max-width: 1389px) 100vw, 1389px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Different view<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1973\" height=\"809\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7.png?fit=625%2C256\" alt=\"\" class=\"wp-image-811\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7.png 1973w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7-300x123.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7-768x315.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7-1024x420.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-7-624x256.png 624w\" sizes=\"auto, (max-width: 1973px) 100vw, 1973px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"2018\" height=\"780\" src=\"https:\/\/i0.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8.png?fit=625%2C242\" alt=\"\" class=\"wp-image-812\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8.png 2018w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8-300x116.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8-768x297.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8-1024x396.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-8-624x241.png 624w\" sizes=\"auto, (max-width: 2018px) 100vw, 2018px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Construction crane can be seen here.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1229\" height=\"780\" src=\"https:\/\/i2.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9.png?fit=625%2C397\" alt=\"\" class=\"wp-image-814\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9.png 1229w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9-300x190.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9-768x487.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9-1024x650.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-9-624x396.png 624w\" sizes=\"auto, (max-width: 1229px) 100vw, 1229px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1355\" height=\"875\" src=\"https:\/\/i1.wp.com\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10.png?fit=625%2C403\" alt=\"\" class=\"wp-image-815\" srcset=\"https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10.png 1355w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10-300x194.png 300w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10-768x496.png 768w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10-1024x661.png 1024w, https:\/\/sunapi386.ca\/wordpress\/wp-content\/uploads\/2019\/03\/image-10-624x403.png 624w\" sizes=\"auto, (max-width: 1355px) 100vw, 1355px\" \/><figcaption class=\"wp-element-caption\">radians roll\/pitch<\/figcaption><\/figure>\n\n\n\n<p>Very interesting in the map stitch process!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I was playing with datasets and wanted to share with what beautiful visualizations but wrong map alignment looks like. The different colors represent scans but merged improperly (not aligned). Looks like a mess. But overall the coloring is important with debugging what this data represents. Here&#8217;s what it looks like all merged together properly. Especially &hellip; <a href=\"https:\/\/sunapi386.ca\/wordpress\/transforming-lidar-point-clouds\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Transforming Lidar Point Clouds<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34],"tags":[],"class_list":["post-782","post","type-post","status-publish","format-standard","hentry","category-thoughts"],"_links":{"self":[{"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/posts\/782","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/comments?post=782"}],"version-history":[{"count":5,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/posts\/782\/revisions"}],"predecessor-version":[{"id":1053,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/posts\/782\/revisions\/1053"}],"wp:attachment":[{"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/media?parent=782"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/categories?post=782"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sunapi386.ca\/wordpress\/wp-json\/wp\/v2\/tags?post=782"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}