TPW Workflow Series: Structured Light Scanning with DAVID
This blog of the TPW workflow series describes the scanning procedure in 3D to capture as much detail as can be possibly reached. TPW uses the DAVID SLS-3 (purchased in 2017, now called HP Scan Pro 5) to scan both archaeological and experimental pottery, in order to enhance and enrich (technological) research to archaeological material. Every scanning procedure is tailored to different goals, requiring different levels of detail (LOD). For example, TPW does not aim to scan material in bulk, which is useful for excavation documentation, nor is this workflow designed for simple/low resolution object scanning for presentational ends, required by for example museums. The scanning of ceramics – specifically pottery fragments – is a distinct process as opposed to general object scanning. It has different limitations, hindrances and advances, especially if the highest quality is required. In this workflow, the process of scanning with a low budget scanner to a reach resolution up to 40 microns is described step-by-step. This enables to capture more data than visible with the bare eye, which is crucial in research to for example traces of pottery technology and use-wear traces. Ideally, this particular workflow is also useful for other material categories that require high resolution data.
There are several scanning techniques, such as laser, photogrammetry and structured light (SLS). These techniques can be airborne, handheld or stand-alone machines, and use blue or white light. 3D scanners greatly range in price too; from 400 to 80.000 euro. In a time that archaeological project budgets are predominantly tight while simultaneously research aims are increasingly technologically and digitally demanding, a need for low-budget but metrically precise solutions is met in this workflow. This blogpost describes the procedure pottery scanning with a not-a-too-expensive stand-alone structured light-based device: the DAVID SLS-3 (HP Scan Pro 5), costing approximately 4500 euro, including an automatic turntable – which is optional.
Update: Digital technology risks to fall in obsolescence fast. Unfortunately, the DAVID/HP Scan is no longer produced, after being acquired by HP. A good alternative was - same SLS technique, similar pricing - the Scan in a Box. Also the Scan in a Box is discontinued, after first being purchased by FARO. What you can do now is get a Polyga FlexScan3D license and build your own SLS scanner (= a set of machine vision cameras + lenses (= industrial web cams) and a projector with lots of lumens). FlexScan3D also works on other SLS systems. Although the software has a steeper learning curve and a tedious calibration procedure, it is way more versatile, with more functionality and options, reaches a greater resolution. Moreover, it allows to mount an additional DSLR camera to enhance texture quality.
A stand-alone scanner is set up in a fixed position and does not move during scanning. Therefore, the targeted object needs to rotate, enabling the scanner to record every part of the object’s surface. This results in a sequence of multiple scans. The software is theoretically able to automatically stitch (‘align’) the separate scans together into a complete representation, which works fine with non-archaeological material or simple shapes, but less so in the case of pottery scanning because the morphological complexity of archaeological material, and especially when an extreme LOD is required, the automatic alignment often fails (or in this case is not good enough) and the operator has to manually align the scans. In this workflow, focus is placed on ‘rough’ alignment only in order to determine the complete coverage of the scanned object. The process of fine alignment and fusing (meshing the pointcloud) is described in the TPW workflow series processing 3D scans.
Finally, it is imperative to document the path that lead to the creation of a workable 3D object, and to record what has been changed and manipulated compared to the raw scan. The resolution and amount of scans per sequence should be recorded as well, as do choices in decimation algorithms or what to cut away from the scans are important to document. The TPW workflow series Democratising 3D data is committed to this important process of keeping meta- and paradata records.
Scanning with DAVID
What is Structured Light Scanning
Optical 3D measuring devices are based on triangulation to determine the location of a point (or the object). Although the concept of triangulation has been known since at least the sixth century BC and it has been successfully applied in surveying to determine distances, it was not until the invention of advanced cameras in the 19th century and specifically the rise of the computer industry in the 1970s that the foundations of structured light scanning could be laid.
In its core structured light scanning is very simple: a projector projects a series of structured, horizontal and vertical light patterns of stripes of varying widths onto the targeted object, followed by three colors (RGB). The color enhances the information of the signal. The light pattern then distorts as it hits the surface of the object, and this is captured by the camera, so it takes pictures of every single projection. The recorded images of the distortions are then triangulated, enabling to calculate the exact dimensions and surface information of the object.
Triangulation is a method to determine the unknown location of a point, in this case the object, from two known points, which are in the case of SLS the projector and the camera(s). To measure the exact location of the distortion, that is the surface of the object, the system first needs to determine specific parameters. These parameters are the camera–projector distance, angles between the directions of both the camera and the projector with the camera–projector distance, and the coordinates of the centers of the camera and projector. These can be determined in the calibration of the system. The calibration is carried out by performing a set of measurements on two panels with a dot matrix printed on it, placed in an angle of 90 degrees, although this may differ per scanning system.
DAVID’s calibration plates
The DAVID SLS-3/HP Scan Pro 5 is a structured light scanner that can reach an resolution up to 40 microns. The modular scanner is comprised of one or two machine vision cameras (industrial web-cameras) and modified projector (according to some blogs elsewhere the lens has been modified - I couldn't verify this) mounted on a tripod. An additional DSLR camera (Nikon D3300) can be mounted next to the webcam to retrieve excellent color information, but the software no longer supports this functionality. It increases scanning time, but also enhances geometric quality. Another addition that is included in this workflow is the automatic turntable on which the object is placed (but this can be done with a non-automatic rotating plate as well, for example the cheese platter of IKEA, you then have to rotate the turntable manually). In some particular cases, however, the object must be rotated manually.
The DAVID SLS-3 is a user-friendly of-the-shelf 3D scanner by which good scan results can be reached fast and easy, especially in the case of simple shapes and if resolution is less of an issue. For pottery analyses, a very high-resolution is required, and as archaeological material is diverse and geometrically complex, additional skill and experience of the operator is essential. This workflow description guides you through the process of pottery scanning and provides tips and tricks for most materials, shapes and surfaces, and allows you to become a skilled operator yourself!
Despite the high accuracy structured light scanning offers, the structured light technology comes with some disadvantages as well due to the use of light and the fixed position of this particular device. The most logical but not less cumbersome is the black surface. Black absorbs light, with as a result that parts of the object cannot be scanned. The same counts for reflecting, shiny surfaces that reflect the light, leaving gaps in the scans. Glass or other transparent surfaces are also affected by the light, for it beams straight through the surface, and consequently the camera is not able to record the distorted surface. The happy advantage of scanning ceramics is that it’s not transparent. Vibrations (such as wobbly floors in old buildings, Greek tremors, line 14 passing by, and even breathing) are one of the greatest nuisances during scanning, for DAVID is really sensitive and records every pulsation it notices, producing horrid lines in the scan that are not present in the original object, which we dubbed ghost artefacts. See for examples of ghost artefacts TPW's Sketchfab collection with ghosts artefacts and learn how to recognise and tag these non-existent-in-reality traces.
Although there are some other disadvantages as well, ghost artefacts are not only produced by structured light technology but are more related to the processing software of scans (or photos). The alignment alogorithms find it hard to align homogeneous colored and finely textured material, symmetrical objects and thin-walled open vessels.
Now that the technology and the workings of the DAVID SLS-3 scanner has been explained, the scanning can begin!
Because the scans are made with the highest resolution possible, the meshed (‘fused’) outputs have an incredibly large filesize, frequently surpassing 1GB. Also, different filetypes are then saved and later decimated, resulting in a range of different files of the same object, taking space varying from 2 to 10 GB per object. Make sure enough space on the harddrive is reserved for scanning and processing sessions.
The DAVID SLS-3 might be a reasonably priced scanner, it benefits greatly from a fast processor (at least an i7 processor) and lots of RAM (>16), especially a videocard with lots of RAM on board. The better the hardware, the faster the processing, alignment and fusion will be. This requires some additional investment.
Make sure the computer has enough USB ports, for the DAVID needs at least three, and a fourth if an additional camera is needed.
The software: HP Scan Pro 5
The software is only accessible with the hardware key (memory stick) and can therefore only be used on one computer at the time. The software runs without the key, yet projects can’t be saved. Open HP Scan Pro 5. This is the scanning software for the DAVID SLS-3 and the HP scanners.
The Setup tab in HP Scan Pro 5
Make sure that under the Setup Type tab the correct software is selected and that the automatic turntable is switched on (if there is one). Frequently, under the Projection Setup tab, DAVID mentions that it cannot select the correct projector. Ignore this, unless the projector is actually not projecting, then check if the projector is set as ‘extended screen’ in the Windows Display Settings.
Don’t forget to turn on the DAVID CAM under the Camera Setup tab.
Hardware set up
For basic installation details about hardware specs (cables, camera, turntable etc.) the manual that DAVID/HP supplies is adequate. However, when it comes to high resolution precision scanning, it is advised to follow the actions and settings as described in the next sections.
Make a black box, in the most literal sense. All background should be black. One way to realise this is to purchase a mobile photo booth and over all sides with black fabric. A pitch black space is preferred. Absolutely no light should come in, because ambient light sources distort the scan output. As black has the property of absorbing light, it allows the scanning of exclusively the object, preventing scanning ‘noise’, i.e. recorded things unrelated to the targeted object. The object will be luminated by the light patterns projected from the projector.
Lastly, gather as much black fabric (towels, curtains, black foam and so forth) and black items (black clips, black tape, black lego blocks) as possible, to use as props to support the fragile objects that have to be scanned in various positions in order to capture every part.
Positioning the projector and cameras
Open HP Scan Pro 5. If the guidelines of the DAVID manual are followed precisely, the cameras and second screen (the projector) are installed correctly. Make sure the projector is adjusted as described in the DAVID manual accordingly (see image to the right for general settings of the projector; do not deviate from this!)! To focus the projector (sharpen the pattern), move the focus dial on top of the projector until the pattern is projected sharply on object. Although it is generally advised to leave the Brightness value by default (255) for the initial setup, it is in some cases necessary to adjust Brightness levels according the hue of the object. You can adjust Brightness in the Projector Control window on the right side of the viewport in the Setup Window.
Now the camera must be positioned. Slide the camera along the bar until the object appears exactly in the middle of the viewport. With small to medium sized objects (120 mm) this is usually between 200-230 on the bar. The camera angle works best when set to 22 degrees. For objects larger than 240 mm it is advised to mirror the setup and move the camera to the right of the beamer. However, if high resolution is desired, we advise to calibrate on 240 mm and scan the large object in parts and stitch (align) them together manually afterwards, to maintain best quality. If you have two cameras, slide the projector along the bar to create space on its right side, so that the two cameras can be placed on each side of the projector. Keep the settings as described above for both cameras.
The object should be centered and taking up almost the whole viewport by placing the tripod as close to the object as possible. Place the object in the middle of the turntable or analogue rotating device. Then move the tripod into the right position and adjust the height and the angle of the bar by using the screws on the tripod. When the tripod is in place, the cross in the middle of the projected pattern should fall on the center of the object. Now move the camera between the aforementioned range until the object is centered in the main viewport on the computer screen.
For larger objects (>120 mm), the camera slide along the bar and at some point the angle of the camera has to be set to a smaller angle. Lower than 20 degrees results in a decreased scan quality with noise and inaccuracies, whereas an angle higher than 30 degrees may increase scan quality, but only for rather flat objects, which is not the case when scanning curvy pottery.
Calibrating the camera
When the installation of the hardware is completed, the camera aperture and focus should be adjusted, which may take some time. The aperture (rear ring) and focus (front ring) are in a delicate balance and therefore need to be adjusted over and again. First focus the camera by unlocking the focus locking screw and pull the ring until the pattern projected on the object is sharp in the viewport. You can zoom in on the object in the viewport to obtain a more clear view on the pattern and level of focus. Lock the ring with the screw when the focus is right! The aperture has a ring and a locking screw as well. For the aperture you have to look at both the little viewport in the Projector Control window to the right of the main viewport. Here, the contrast must be set in such way that the background is as densely red as possible, but the object maintained a normal white, though not overexposed – it’s a delicate balance that needs time to master. Meanwhile, in the main viewport, the wavy red sine lines should be situated comfortably between the blue lines: they should not touch the blue lines too much but also should not remain too flat around the dotted line in the middle.
Archaeological material tends to be heterogeneously colored: dark interiors, bright exteriors or decorated with contrasting paint. To obviate this in the calibration, adjust the above settings to the most dark surface. In the next section about calibration the following action should be added: lower the Brightness value in the Projector Control until there is no red visible anymore on the calibration plate (visible in the little viewport in the Projector Control). Don’t forget to restore the Brightness to default (255) after calibration!
Mounting a DSLR camera
Additional DSLR cameras are no longer supported by the HP software. If you have FlexScan3D, then you can mount one, complementary to the industrial webcam. The DSLR provides a better and more naturalistic photo-texture than the webcam. It should be taken into account that this adds to the scanning time and it will increase file sizes tremendously.
Position the DSLR (TPW uses a Nikon D3300 and D60 and they both work with FlexScan3D) on the bar on the right side of the projector and align it exactly with the webcam. In case two webcams are used: align it with webcam 1. Connect it with a USB cable to the computer. The software will automatically identify the Nikon (when you choose DShow in the dropdown menu of the camera) and will use the Nikon as default camera to retrieve texture information.
DAVID/HP provides glass calibration plates of about A3 paper size on which are printed four matrices representing different sizes (<30mm, <60mm, <120mm, < 240mm). However, glass in not suitable for travelling to (remote) archaeological sites or museums across the world. Fortunately, DAVID/HP provides the vector files with the dot matrices on the hardware key (memory stick), which can be adjusted to any required size. Make sure you print the matrix on good quality, non-reflective paper or directly on some other inflexible material (metal, polycarbon) and in the highest resolution as possible. Moreover, keep the plates pristine, since every little stain or relief will have an effect on the registration.
DIY calibration panels
After printing the matrices, the paper should be glued without any ridges or folds onto plexiglass or another strong and waterproof type of board material, such as polycarbon. Cover all the edges of the board with sturdy black tape to prevent the edges from fraying. Then the separate panels should be connected to each other in exactly 90 degrees. Metal or plastic angle clamps for the larger sized panels can be found in any hardware store. For the smaller panels, the plastic angles provided by DAVID/HP are perfect.
Determining the size
Now that the the hardware is mounted and calibration panels ready, the size of the original object should be determined. Place the object in front of the calibration panel and determine the size to the scales accordingly (the lines flanking the matrix).
Replace the object with the calibration panel. Place the panel exactly where the object was positioned. Set the size of the calibration panel (for example 120 mm) in the Calibration window to the left of the main viewport. The bar with the projector and camera on the tripod can be lowered and rotated in order to beam in a more straight angle onto the panel. At least the three circles on each panel should covered by the projected pattern and visible in the viewport. To the right side of the main window is the small viewport of the Camera Control; if the panel is too red in the center, lower the Brightness in the Projector Control until the center is white (but not over exposed!) and only red in the corners of the viewport.
Make sure that the wavy red sine lines are not too dense but are loosely undulating around the dotted white line in the middle, and make sure they don’t touch the blue lines.
Hit the Calibrate button.
After half a minute or so, if the calibration is successful (which is notified in the progress bar below the main viewport) a chessboard-pattern is projected on the panels. The edges of the squares should be very sharp and must correspond to the dots. If they are not sharp in the center of the calibration plates (more to the sides of the plates is less important), fiddle a little with the settings such as the Brightness and moving the calibration panel a little to the back or front, or rotate it a bit, and press the Calibrate button again. Repeat this until a satisfactory result is reached and export the calibration settings by hitting the export button to the upper right of the main viewport. Now the calibration is saved.
Sometimes a message pops up stating that DAVID is unable to perform the calibration. This either means that the calibration panel or the Brightness should be adjusted as mentioned before, but most of the times it means that the aperture/focus balance of the camera regarding the object should be reconsidered and adjusted.
After calibration, don’t forget to set back the Brightness to 255and to place the height and rotation of the bar with the beamer and camera in the position it was before the calibration.
Caution: do not move the position of the tripod, nor the distance between the camera and the projector at all times, and don’t alter the rotation of the camera after calibration!
Setting scanning parameters
Go to the Scanning tab. Select under the Scanning tab the preferred scanning mode. If there is an automatic turntable available, then select this mode. If there is none, choose Manual Scan Sequence. Select the option Single Scan is if there are additional scans needed after a scan sequence.
Select the number of scans (in case of the automatic turntable) and leave the Total Scan Angle set to 360 degrees. The ideal number of scans – to secure enough overlap, meaning corresponding points between separate scans – is between 8 and 12 scans per object, completed with 2 to 4 separate single scans of to upper and lower sides of the object.
For fairly thin-walled or flat objects in might be worthwhile to increase the number of scans. This also counts for complex geometries such as pierced walls, holes/spouts, handles and sharp angles in vessel shapes.
Check the Auto Grab Texture box if a photo texture is required. This increases scanning time.
Leave the parameters as set under the Scan Result tab as they are. Under ‘Name’ a new name can be assigned to the scans and/or the numbering of the scans can be adjusted.
To the right of the main viewport is a Turntable Control tab. Here the turntable can be controlled from the computer. However, unless the object is very fragile, it is easier to move or rotate the object manually.
Hit the Scan button to start the scanning sequence.
When Automatic Turntable has been selected, the software will automatically rotate the turntable after each scan until a full rotation cycle is reached. During each scan a number of different patterns is projected on the object, followed by three colors. Each separate scan is then transferred to the Shape Fusion tab, where it is added to the List of Scans and roughly aligned with the other scans.
If Manual Scan Sequence is selected, the object must be slightly rotated manually. Hit Scan again until it has been rotated 360 degrees. When the the intended amount of scans has been reached, hit the Add to List button. Now the scans will be added to the List of Scans in the Shape Fusion tab and roughly aligned to each other.
Scanning mode selection
Irrespective the scanning mode, most probably not all parts of the object have been completely scanned after one scanning sequence, such as the bottom and upper parts. Therefore, additional Single Scan should be made.
Turn the object into the position where the unscanned part is luminated and the camera captures the part as well (as it has another angle than the projector). Hit the Scan button. If the resulting scan appears OK then hit the Add to List button and the scan will be added to the List of Scans in the Shape Fusion window. These single scans have to be aligned manually; this procedure is explained in the section below.
After scanning either manually or single scans, hit Add to List
Processing scans in Shape Fusion
In this section the processing of the scans will be treated only briefly, as focus is put here on checking if enough scans have been made to cover all the object. For full processing of the scans and actual Shape Fusion there is the TPW workflow series processing 3D scans of ceramics.
Interacting with the 3D object
In the scan window each different color refer to separate, single scans. To the left of this viewport with the colored vessel, is a window with tools. From top to bottom these tools are: Cleaning, Alignment, Fusion and Comparison. This workflow description is mainly concerned to the first three tools. To the right of the viewport is the List of Scans and above that Project, with the name of the project and options to delete (the red X), open/load projects (folder with green arrow) and two buttons to save as and save. If the project name shows an asterix to the right, then the project needs to be saved: press the save-button to the far right.
Interacting with the 3D object
Rotating the object:
When keeping pressed the right mouse button you can rotate the 3D object. You also see a sphere, or trackball. The object should fit exactly in the middle of this sphere, otherwise rotating the object will be off centered, which is extremely annoying. To move the object into the sphere, just use the left mouse button. To zoom on the object, use the mouse-wheel.
Other functionalities are:
Above the main viewport is a row of icons. The far left represents an eye, this enables to view all separate scans at once.
To the right of the eye is an icon displaying a little picture frame (with a sun). This button enables to display the texture (photo layer); or shortcut T. We usually work in the non-textured mode.
To undo something, press ctrl+z or hit the left green circular arrow button in the Alignment-tab. To redo something press ctrl+y or the right green circular arrow button.
In the List of Scans one can find an icon representing an eye. The icon above the List is to turn all scans on or off. With the eye-icons in the list you can turn on and off the scans separately. Next to the eyes in the List of Scans is a colored box. You can check and uncheck these boxes (i.e. single scans). When a box is checked, a blue box will appear around the designated scan in the main viewport.
To manipulate a single scan separate from the collection of scans, select the particular scan by checking the box in the List of Scans. Then hold shift while dragging the scan with the left mouse button.
Under the List of Scans there is a + and a –. With the + you can import scans. This sounds better than it actually is: you cannot import native scans, only meshes such as .obj. With the – button you can remove scans from the list (when checked, see above). To the right is an icon of floppy drive with red Aa, to export separate scans or fused results to .obj.
Below the viewport is an information banner. When aligning or fusing, a progress bar will appear. This means nothing and certainly does not reflect actual running time. The cancel button does not make much of a difference either.
‘Rainbow’ view: Alignment tab > under Alignment are two buttons: one with 6 squares in two rows and one with 3 squares. These buttons arrange the separate scans next to each other, similar to a rainbow.
Alignment is the actual stitching together of the separate scans. The software is technically able to perform this automatically, but usually this fails when dealing with complex objects such as archaeological ceramics. The fine alignment and processing of the scans takes considerable time if high resolution is required. However, when time is tight all attention should go out to the actual scanning of the pottery and the fine alignment of the separate scans and (post-)processing can be be done afterwards, ‘at home’, in the apothiki, or in the office, using the TPW workflow series processing 3D scans and post-processing scans. Therefore, during scanning, only rough alignment should be carried out to assess if the scan has enough overlapping to the other scans and to prevent that parts are left uncovered, leaving gaps in the scans.
The Alignment tab has a drop-down menu with four methods of alignment: Free, Around Axis, Pairwise Fine Registration and Global Fine Registration. The most common used are Free and Pairwise Fine Registration. These two methods are described below.
In Free there are two options: manual or automatic alignment. Start with automatic alignment. If this goes bad, then try the manual way.
1. Check the Use Texture (if there is a texture) and Use Surface Features boxes.
2. Then press the Align Scans (G) button with the little red magnet icon. Two fields with ‘Scan A’ and ‘Scan B’ will appear. Scan A will be the scan that needs to be aligned with the first one. So, in the List of Scans, select for example Scan 2 (this will appear in the Scan A field) and then Scan 1 (this will appear in Scan B). These scans will merge automatically.
3. Note that, in case of for example 12 scans, that you work in two directions: first start with aligning Scan 12 to Scan 1, and work backwards. 2>1, 3>2, 4>3, 5>4, 6>5 and then 11>12, 10>11, 9>10, 8>9, 7>8, but the numbers in the middle are tricky: try what fits best. Scan 12 is really close to Scan 1 because one scanning round of 360 degrees means that Scan 1 at the start is, say, at 0 degrees and Scan 12 at the end at 360 degrees. They therefore need to be aligned the best as possible.
In the Free environment, check Contact Pair Selection. The Use Texture box will be automatically unchecked, and cannot be checked when there is opted for manual alignment. A red circle and little magnet appear now at the cursor. Go to the desired two scans. Separate the two scans while pressing shift to create enough overview. The texture layer can be of good assistance now. Click on a feature that is present on both scans. A green dot with red line appears. Then click on that same feature on the other scan. Now the scans will be merged. If the this does not happen automatically and the line stays green: double click.
When they are almost perfectly aligned, you could opt to ‘fine’ align to improve the result by choosing Pairwise Fine Registration. Check the Use Texture and Use Surface Features boxes, press Align Scans and select the scans in the List of Scans. You can repeat this twice, but too much will reverse the process and causes a mess. Repeat this procedure for every scans, so 2>1, 3>2, 4>3 and so on.
Save project and export separate scans
DAVID produces HP 3D Scan Project files: .hp3dscanproj. Save the scan project as the original, unprocessed file, for example ‘15.6A_NativeFile’.
Then you should export all separate scans to .obj files. This is important in case you or future users would like to align and process the files in other software, such as Meshlab. To export all scans to .obj, select all scans and press the export button. File all separate scans (obj+mtl+jpg/png) in a dedicated folder and name it, for example, ‘15.6A separate scans obj’.
An .mtl file assigns the texture file (a jpg or png) to the .obj. It’s a file of less than 1KB and can be opened with Notepad. In case you rename the .obj and the texture file, or save the jpg to png, you should tell this to the mtl, otherwise it can’t find the texture file and your 3D model will subsequently be without a texture. To resolve this, open the mtl in Notepad and change the extension (last line, after map_Kd), as shown below in blue.
Congratulations, you’ve reached the end of this workflow. The next level is mastering difficult scanning issues, such as dark surfaces and sharply angled objects, such as spouts or oil lamps. You can find tips and tricks in this post in the TPW workflow series.