3D Scanner Accuracy, Performance and Challenges with a Low Cost 3D Scanning Platform
Total Page:16
File Type:pdf, Size:1020Kb
DEGREE PROJECT IN TECHNOLOGY, FIRST CYCLE, 15 CREDITS STOCKHOLM, SWEDEN 2017 3d scanner Accuracy, performance and challenges with a low cost 3d scanning platform JOHAN MOBERG KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF INDUSTRIAL ENGINEERING AND MANAGEMENT 1 Accuracy, performance and challenges with a low cost 3d scanning platform JOHAN MOBERG Bachelor’s Thesis at ITM Supervisor: Didem Gürdür Examiner: Nihad Subasic TRITA MMK 2017:22 MDAB 640 2 Abstract 3d scanning of objects and the surroundings have many practical uses. During the last decade reduced cost and increased performance has made them more accessible to larger consumer groups. The price point is still however high, where popular scanners are in the price range 30,000 USD-50,000 USD. The objective of this thesis is to investigate the accuracy and limitations of time-of-flight laser scanners and compare them to the results acquired with a low cost platform constructed with consumer grade parts. For validation purposes the constructed 3d scanner will be put through several tests to measure its accuracy and ability to create realistic representations of its environment. The constructed demonstrator produced significantly less accurate results and scanning time was much longer compared to a popular competitor. This was mainly due to the cheaper laser sensor and not the mechanical construction itself. There are however many applications where higher accuracy is not essential and with some modifications, a low cost solution could have many potential use cases, especially since it only costs 1% of the compared product. 3 Referat 3d skanning av föremål och omgivningen har många praktiska användningsområden. Under det senaste årtiondet har sjunkande priser och nya tekniker möjliggjort att större grupper fått tillgång till tekniken. Utrustningen är dock fortfarande relativt kostsam, populära skanners kostar mellan 300 000 - 500 000 kr. Syftet med denna uppsats är att utvärdera och granska noggranheten hos 3d skanning baserat på time-of-flight teknologi och jämföra resultatet med en billig platform baserad på konsumentprodukter. För att utvärdera processen konstrueras en 3d skanner som sedan genomgår flertalet tester i syfte att undersöka noggrannheten och förmågan att skapa en verklighetstrogen modell. Den konstruerade 3d skannern hade betydligt lägre noggrannhet och skanningen tog längre tid jämfört med en populär produkt på marknaden. Detta beror i huvudsak på den billigare lasersensorn och inte på den mekaniska konstruktionen. Däremot finns det många användningsområden där väldigt hög noggranhet inte är nödvändig. Med vissa förändringar skulle lågkostnadsplattformen kunna ha många användningsområden, i synnerhet då den bara kostar 1% av den jämförda produkten. 4 Acknowledgments I would like to thank my supervisor Didem Gürdür for good and efficient feedback. 5 Contents Abstract ii Sammanfattning iii Acknowledgments iv 1 Introduction 1.1 Background 1 1.2 Purpose 1 1.3 Scope 1 1.3 Method 1 2 Theory 2.1 3d scanning concept 2 2.1.2 Non-contact active methods 3 2.1.3 Non-contact passive methods 6 2.1.4 Typical use cases 7 3 Demonstrator 3.1 Hardware – Construction overview 9 3.1.1 Upper body 10 3.1.2 Lower body 12 3.2 Mechanical limitations/constraints 14 3.2.1 Dynamic properties 14 3.2.3 Belts, gears and pulleys 17 3.3 Device overview 18 3.3.1 Electronics overview 18 3.4 Software overview 22 3.4.1 Image mapping 23 3.4.2 Virtual points 24 3.4.3 Connectivity 26 4 Results 4.1 Single color results 27 4.2 RGB results 31 4.3 Comparison 32 5 Discussion and conclusions 5.1 Sample density 35 5.2 Scan overlap 36 5.3 Scan speed and beam divergence 37 5.4 RGB challanges 37 5.5 A good compromise 38 5.6 Conclusion 39 6 Recommendations and future work 6.1 Redesign 40 6.2 Multipurpose 3d scanner 41 6.3 Potential use cases 42 Bibliography Appendices A PCB design B C-code for micro-controller C Optional Python RGB point mapping D Main Python code for Raspberry Pi 6 Nomenclature Symbol Description d Axial offset distance from center of gravity F Friction force counteracting rotation g Gravity Izz Inertia around rotational axis Mv1 Torque reaction Mv2 Torque applied by motor Mdt Detent torque Mht Motor holding torque m Mass N Normal force µfriction Friction coefficient ω1 Angular acceleration of lower body ω2 Angular acceleration of upper body ρsteps Output torque factor per Micro step 7 List of Abbreviations Abbreviation Description 3d Three-dimensional AC Alternating current ADC Analog-to-digital converter CAD Computer-aided design CoG Center of gravity CPU Central Processing Unit DC Direct current I2C Inter-Integrated Circuit ICP Iterative closest point IR Infrared ISP In-System Programming LED Light Emitting Diode LIDAR Light detection and ranging PCB Printed Circuit Board PPR Pulses per revolution RGB Red, green, blue RPS Revolutions per second SD Secure Digital SLAM Simultaneous localization and mapping SPI Serial Peripheral Interface TOF Time of flight UART Universal asynchronous receiver/transmitter USB Universal Serial Bus 8 List of Tables Table Description 2.1 Product comparison between popular 3d scanners 3.1 Holding torque depending on micro step setting 3.2 Resulting torque with different micro step settings 3.3 Step motor accuracy test results 4.1 Product comparison between typical 3d scanners 4.2 Scanning time and accuracy depending on settings 9 Chapter 1 Introduction 1.1 Background 3d scanning of objects and the surroundings have many practical uses. During the last decade reduced cost and increased performance has made them more accessible to larger consumer groups. The price point is still however high, where popular scanners are in the price range 30,000 USD-50,000 USD. The objective of this thesis is to investigate the accuracy and limitations of time-of-flight laser scanners and compare them to the results acquired with a low cost platform constructed with consumer grade parts. 1.2 Purpose The purpose of this thesis is to answer two main research questions: Research Question 1: What accuracy can be achieved with a low cost platform that has been developed? Research Question 2: How does this implementation differs from comparable popular, high end devices on the market? 1.2 Scope A low cost device (<3,000 SEK) will be constructed out of parts available to the average consumer. The design and construction phase is limited to two months, part time for a single person. 1.3 Method Before the device is constructed, some estimations need to be made to see what ideal performance can be expected from the device. These estimations show that even the ideal platform based on cheap parts will be significantly slower and less accurate than a popular competitor, due to the lower performance of the cheaper laser sensor. So the main design goal for the platform is to maximize the performance of the laser sensor while being stable and easy to use. It is not an option to use a better laser sensor since it would roughly tenfold the costs. When the demonstrator is completed, its performance will be tested in static tests such as repeatability and accuracy tests, but also practical tests such as scanning rooms and entire buildings. The resulting 3d models should be usable in commonly used 3d software. 1 Chapter 2 Theory This chapter covers the concept and various techniques for 3d scanning. 2.1 3d scanning concept The purpose of 3d scanning is to collect data of a real-world object or environment and recreate it in the form a digital 3d model. This 3d model has many applications, ranging from movie productions to industrial design and production quality control. To create a 3d model, the first step is the 3d scan. This results in a pointcloud, often millions of points shaped like the scanned object and placed in a Cartesian Figure 2.1: coordinate system. These points are Concept image, 3d scanner sampling points often so densely packed that they might from its environment [Architecture Media] appear as solid 3d model (as seen in Figure 2.1). To capture the color of each sample point a camera can be used. This results in a “RGB pointcloud”, a point cloud where each point has a color in the RGB (red, green blue) color scale. When the 3d scan is completed, the pointcloud is analyzed in a computer program to create a surface model from the pointcloud. Simply put and very simplified it’s “connecting the dots” to Figure 2.2: create surfaces (Figure 2.2). Concept illustration, from pointcloud to surface. [Made in Illustrator] These surface reconstruction methods are generally very mathematically complex and are outside of the scope of this thesis. It is however relevant to note that the quality of the final surface model is very much dependent of the quality of the 3d scan. 2 3d scanning devices can generally be divided into two main groups; contact and non-contact scanners [Curless 2000]. Contact scanners probe the object using mechanical sensors to measure shapes and distances of smaller objects. Non-contact scanning in turn can be divided into active and passive scanners. Active scanners emit various kinds of light while passive scanners do not emit anything themselves but rely on ambient light. 3d scanning methods Contact Non-contact Active Passive Time-of-ight Stereoscopic Triangulation Silhouette Structured light Photometric Figure 2.3: Illustration of 3d scanning methods. [Made in Illustrator] 2.1.2 Non-contact active methods Time-of-flight (TOF)scanners pulse a laser beam onto an object and calculates the time between emitting the light and receiving the diffuse reflected light.The equation for the distance is therefore; ct⋅ d= distance d = c= speed of light (2.1) 2 t= time of flight There are several methods for transmitting and analyzing the reflected light, mainly to reduce noise and increase accuracy.