× New: Site Scan integration with Autodesk BIM 360

Drones Are Making As-Builts 5X More Efficient

Drones have become an essential tool throughout the lifecycle of a construction project. However, one area where they have sometimes fallen short is in conducting as-built surveys. This is for a simple reason: drones have been designed to effectively capture imagery and data from the top down, but not from the side. Surveying a groomed site for pre-construction, for example, is far easier than trying to capture taller, finished structures—the flight is more complex, and requires the correct altitudes and gimbal angle in order to ensure accuracy.

We cracked that code with perimeter scan, our newest flight mode. Perimeter scan is a first for the commercial drone industry: it enables automated scans of vertical structures, collecting far richer data than ever before. We’re excited to share how Argyle, one of our customers, has already put perimeter scan into use on one of their projects, saving significant time on-site and creating an impressive, BIM-ready deliverable.

The goal: fast, accurate as-built survey of mixed-use property

Argyle Asia is an integrated firm based in Southeast Asia that does real estate investment, property and infrastructure development, and design and construction delivery. James Hadden, Director of Property Development & Construction Management Services, led this project and set out to perform the as-built survey at a group of mixed-use buildings in Kuala Lumpur.

Argyle’s goal was to fast-track the collection of as-built data that could be used in the design development of the property assets. Since the client had limited historical records and had very little architectural drawings, Argyle needed to collect an accurate as-built for design.

The site itself also presented a number of challenges when performing a traditional survey. For example, it was densely populated with large trees that were in close proximity to the structure, making it difficult to capture the points on-the-ground. Also, the architectural features and alignment of the buildings required additional time to survey. “There’s also the disruption to commercial and residential tenants to consider,” James said, “in addition to the operational safety risks of a manual survey.”

Because of these factors, James thought that capturing the site with a drone would be a great alternative. However, Argyle needed a drone solution that would make it possible to scan the façade of the buildings without any gaps or major inaccuracies.

The solution: detailed 3D models using perimeter scan

Fly-through of the mesh in Autodesk ReMake

Fly-through of the mesh in Autodesk ReMake

Argyle decided to use the perimeter scan flight mode on Site Scan to capture the property and create a photorealistic model. He set 5 survey control points to lock in the survey data with the orthomosaic and point cloud, and then performed the flight. “In terms of workflow, it took minutes to set up the UAV and run the survey—it was fast, reliable, efficient and the registration of the scan was great.”

The polygons above the site represent the locations of the photos taken by Site Scan. The perimeter scan algorithm automatically calculates the best places to take photos, in order to capture the entirety of the site and ensure the resulting 3D model is accurate.

Given the complexities of the site, it was vital to capture the parts of the building that would be difficult to capture on the ground. “The drone worked well with getting into the confined spaces that I didn’t think would be possible to capture,” James said. “It picked up faces on the building that I thought would be obscured by the trees or the shadows.”

Point cloud of the site with a focus on Block B & C of the mixed-use development

Point cloud of the site with a focus on Block B & C of the mixed-use development

Key results

5X production of georeferenced CAD files

For James, the saved time and reduced manpower required on-site is one of the biggest benefits of perimeter scan. “A traditional as-built survey for this project could take 3-4 weeks with additional manpower, and that’s just for the survey,” he said. “Then, it may take 2 ½ weeks to interpolate the survey notes and prepare the CAD as-built survey and Revit model. In total, it would take approximately 7 weeks—49 days—to deliver Revit and AutoCad drawings.”

“I think perimeter scan is the first of its kind. No other drone solution provides the ability to autonomously scan vertical structures at this level of detail.” — James Hadden, Argyle

By collecting drone data, James said, “we are now in a position to provide that deliverable much quicker. In this project, we scanned the site, processed the data into a geotagged orthomosaic and point cloud, and converted them into CAD-friendly files in under 3 days. Then, about a week later, we finished the georeferenced CAD and Revit drawings, taking a total of just 10 days.”

This time difference—going from approximately 49 days to just 10—represents a near 5X increase in time to deliverable on this project. “While each as-built survey is different, and has its own unique time constraints to consider, there were considerable time savings by using a drone on this project,” James said.

BIM-ready 3D models

Traditional as-built data is usually kept in a spreadsheet, making it difficult to visualize and integrate with BIM workflows. As BIM continues to make its way into the AEC industry, this lack of 3D as-built data is starting to present some difficulties.

Case in point: In Europe, as-built BIM models are soon to be required in all construction projects. However, according to a survey in the JB Knowledge 2015 Construction Technology Report, less than half of U.S. companies would be able to comply with this as it stands.

Collecting drone data—especially with flight modes that are designed specifically for scanning vertical structures, not just topographical surveys—makes this easy. James was able to create rich 3D point cloud and meshes, and could use them to easily identify the infrastructure features of the building, which could then be incorporated in the 3D model for BIM integration. “We were able to run that survey, register the scans, and start modelling and taking the sections within hours of having done the scan.”

 

“With the point cloud tools in Revit,” James continued, “I could take sections of the building, establish the profiles, and start drawing perimeter walls and detailing windows. The beautiful thing about a project like this, for example, is that the windows are fairly standardized. This means I can create them in Revit as a family in the library, then easily use that for the other windows.”

What’s next?

Now that this kind of data collection is possible, James is looking at different ways in which it can be used to drive value in his projects across Asia. For example, he would like to collect indoor laser scan data of the site, and integrate it with the point cloud in order to get a complete model of existing conditions.

“I think perimeter scan is the first of its kind,” James said, “no other commercial drone solution provides the ability to autonomously scan vertical structures at this level of detail. I look forward to continue on even bigger, more complex projects in the future.”

Want to learn more about Site Scan?

Sign up for our newsletter

Get our latest stories on drones and construction.

Thanks for signing up. Now, check out some stories while you're here!

tag * ppcUrlCookiePart1 and ppcUrlCookiePart2 must be called, see bottom of script * update ppcUrlCookiePart2 and ppcUrlCookiePart2 to match your querystring and form field names * */ //Leave this as true to always use querystring values if they exist, if no querystring will attempt to get cookie values var ppcUseLatestValues = true; //set this to false to use cookie values if they exist (if false, will not check querystring first). //function to grab params from cookie function getCookie(param_name) { var i, x, y, cookie = document.cookie.split(";"); for (i = 0; i < cookie.length; i++) { x = cookie[i].substr(0, cookie[i].indexOf("=")); y = cookie[i].substr(cookie[i].indexOf("=") + 1); x = x.replace(/^\s+|\s+$/g, ""); if (x == param_name) { return unescape(y); } } } //function to create cookie function setCookie(param_name, value, exdays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + exdays); //CHANGE DOMAIN BELOW TO MATCH SITE var c_value = escape(value) + ((exdays == null) ? "" : "; domain=.3dr.com; path=/; expires=" + exdate.toUTCString()); document.cookie = param_name + "=" + c_value; } //function to check if cookie exists and, if so, run the setCookie function function checkCookie(param_name, param_url_name) { var param_value = getCookie(param_name); if ((param_value != null && param_value != "" && param_value != "undefined") && ppcUseLatestValues == false) { //this means the param name/value pair exists - and we don't want to use latest } else { //this means the param name/value pair does not exist - so create it //grab values from URL var pageURL = window.location.search.substring(1); var URLVariables = pageURL.split('&'); for (var i = 0; i < URLVariables.length; i++) { var parameterName = URLVariables[i].split('='); if (parameterName[0] == param_url_name) { //filter out "#" in case that is in the last URL param param_value = decodeURIComponent(parameterName[1].split("#")[0]); } } if (param_value != "undefined" && param_value != "" && param_value != null) { //create cookie setCookie(param_name, param_value, 365); } } } //function to setup the parameters and save the cookie values function ppcUrlCookiePart1() { //setup list/array of parameters desired. names on right should match querystring names var param_names = new Array( 'utm_source;utm_source', 'utm_medium;utm_medium', 'utm_campaign;utm_campaign', 'utm_term;utm_term', 'utm_content;utm_content' ); //loop through all params and create cookie for (i = 0; i < param_names.length; i++) { var param_object = param_names[i].split(";");//split out the cookie name and url name var param_name = param_object[0]; var param_url_name = param_object[1]; //start the cookie creation checkCookie(param_name, param_url_name); } } //function to grab cookie params function mGetCookie(param_name) { var i, x, y, cookie = document.cookie.split(";"); for (i = 0; i < cookie.length; i++) { x = cookie[i].substr(0, cookie[i].indexOf("=")); y = cookie[i].substr(cookie[i].indexOf("=") + 1); x = x.replace(/^\s+|\s+$/g, ""); if (x == param_name) { return unescape(y); } } } //function to check if cookie exists and, if so, fill out the corresponding form fields function mCheckCookie(param_name, param_field_name) { var param_value = mGetCookie(param_name); if (param_value != null && param_value != "" && param_value != "undefined") { try { var obj1 = document.getElementsByName(param_field_name); obj1[0].value = param_value; return true; } catch (err) { return false; } } return false; } //function to setup parameters and begin cookie value insertion into marketo form function ppcUrlCookiePart2() { //setup list/array of parameters desired. names on right should match hidden form field names var param_names = new Array( 'utm_source;Lead Source Name (Last Touch)', 'utm_medium;Lead Source Last Touch', 'utm_campaign;Lead Campaign (Last Touch)', 'utm_term;Lead Campaign Term (Last Touch)', 'utm_content;Lead Campaign Content (Last Touch)' ); //loop through all params and create cookie for (i = 0; i < param_names.length; i++) { var param_object = param_names[i].split(";");//split out the cookie name and url name var param_name = param_object[0]; var param_field_name = param_object[1]; //start the cookie creation mCheckCookie(param_name, param_field_name); } } //ppcUrlCookiePart1 will grab values from the querystring and save them in cookies ppcUrlCookiePart1(); //ppcUrlCookiePart2 will retrive values from the cookies and populate the hidden form fields - should be in the onload try { //attempt for Marketo form MktoForms2.whenReady(function (form){ ppcUrlCookiePart2(); }); } catch (err) { //if error on Marketo form, try loading for regular form. ppcUrlCookiePart2(); }