Capturing Full Body Scans in Color

by Mr Makes It in Workshop > 3D Printing

48924 Views, 313 Favorites, 0 Comments

Capturing Full Body Scans in Color

mike_textured.jpg
IMG_8882.jpg

This tutorial will teach you how to capture full body scans of people using photogrammetry and to prepare them for 3D printing. By utilizing a few DSLRs, lights, a turntable, a good pc, a couple relatively inexpensive software programs, and with patience and practice, you can capture professional quality scans with full color textures for 3D printing (or other uses). Let's begin...

Equipment

5449820eec8d833323000020.jpeg
14, 2:51 PM.jpg
54498244ec8d838e59000069.jpeg
2014-10-07 13.24.41.jpg
5449825fec8d833a95000018.jpeg
54497fadec8d83ff5d000003.jpeg
14, 2:51 PM.jpg
2014-10-07 14.08.25.jpg
5449802dec8d837a8b000017.jpeg

Hardware:

1 large turntable - Arqspin 24" Pro Turntable. $350.00 (Arqspin)

6 photo light fixtures and stands (minimum lighting) - 2 Top Lighting photo lighting kits. Color balanced CFLs for photography. Total of 1,080 Watts. $265.00 (Amazon)

4 DSLRs - Make sure they are of the same make and model. I used Canon EOS 1100D cameras with standard 18 - 55mm kit lenses. $1,800.00 (Amazon)

4 AC adapters for camera power - AC adapter CA-PS700. Model #WP-ACO7420. $37.00 (Amazon)

1 light stand. This is for the cameras. $10.00 (Amazon)

4 camera mounts. $40.00 (Amazon)

4 USB to miniUSB cable - 6' Amazon Basics. $6.00 (Amazon)

1 USB hub with 4 ports - Sabrent Model: HB-U3P4. $15.00 (Amazon)

1 remote shutter release - SHOOT remote switch. $24.00 (Amazon)

1 white vinyl backdrop 9' x 15' (or 6' x 12' minimum). $63.00 (Amazon)

6 clamps (or more) for backdrop. $9.00 (Amazon)

3 power strips. $20.00 (Amazon)

* 1 circuit board for connecting remote shutter to all 4 cameras. This was done for me and I don't have a cost associated with it. You will probably have to do this step yourself.

* Computer. You will also need a notebook or desktop computer. It may be helpful to have a dedicated computer for capture and another one for image processing and scan cleanup or a render farm, if you intend on doing a lot of scanning.

Software:

All the following programs are available for both Windows and Mac.

SmartShooter - To capture the images. $50.00 (SmartShooter)

Agisoft PhotoScan - This program analyzes the shot and positions them as virtual cameras in order to create the 3D model. $179.00 (Agisoft)

ZBrush - You'll need this to clean the PhotoScan model to make it ready for printing. (I already owned this software so it was free for me). $795.00 (ZBrush)

Recommended:

2 rolls of gaffers tape - 1 brightly colored for marking stand placements and gear 1/2" wide. 1 neutral roll (standard black or brown) 2" wide for taping down cords and cables. $35.00 (Amazon)
7 sandbags - 5 lb. sandbags should be sufficient for weighing down the light and camera stands. (Will need to add sand). $40.00 (Amazon)


Total Cost: $3,738.00

Note: Some prices are approximate and subject to change. You may find these or similar items for more or less than listed here.

While this system may seem expensive, it gets great results. Most 3D scanners that cost less than this can only scan small objects and get poor detail. Laser scanning systems that are comparable to the level of detail that my photogrammetry system can achieve cost around this much or more and can record surface detail but not color information. There are a number of ways to reduce the cost of the system, such as building a DIY turntable.

Setting the Stage

2014-10-10 18.43.51.jpg
2014-10-10 18.44.02.jpg
2014-10-10 18.44.09.jpg
2014-10-10 18.44.34.jpg
2014-10-10 18.44.43.jpg
2014-10-10 18.44.52.jpg
2014-08-25 18.14.32.jpg
2014-09-02 13.04.27.jpg
2014-09-02 13.04.55.jpg

Above are photos of two different implementations of the system and in different states of completion; different spaces require different orientations of the lights. A backdrop is essential to provide adequate reflected light and help the software separate the subject from the background. You will have to experiment with your setup to find what works best in your space.

The key is to get your subject lit well, get a good amount of light reflected off the backdrop and to minimize shadows. It is preferable to position the lights in such a way that the subject's shadow falls behind them and their body blocks the shadow from the cameras' collective view. The large backdrop will also allow you to lay part of it on floor. Place the turntable on top of it to reflect light up onto the subject. Reflectors and bounce boards (foil or foamboard) can also be used for this purpose.

For my setup the distance between the cameras and the center of the turntable (where the subject will be standing) is roughly 6'. This is the minimum distance needed if setting the camera lenses to 50mm. At least another 2' of distance between the backdrop and the center of the turntable will also be required. The opposing lights, to stage right and left, are around 7' from each other.

You will also need some room to position your lights, adjust camera settings and a small space for your workstation.

Plan on setting aside a 9' L x 9' W x 8' H space for the complete set; backdrop, turntable, lights, cameras and workstation.

Keep in mind that the turntable is 6" higher than the floor. (For DIY turntables the height may be greater). Therefore a 6' 2" subject will actually be 6' 8" from the floor to the top of the head. The top camera in your setup will need to be above that to shoot the top of the head properly.

Camera Setup

5457fb5dec8d83c885000038.jpeg
IMG_0665.jpg
IMG_0666.jpg
IMG_0676.jpg
IMG_0651.jpg
IMG_0641.jpg
IMG_0642.jpg
IMG_0643.jpg
IMG_0647.jpg
IMG_0650.jpg
543c41edd535cf8a55000076.jpeg
543c40fed535cf77b5000124.jpeg
543c4165d535cf1faf00006a.jpeg
543c4199c6ba5dce460000d8.jpeg
543c41bf9d29c9147000002d.jpeg

Mount the cameras on the camera stand at least 8" apart from each other. They will be mounted sideways as seen in the photos above.

Insert DC coupler into each camera's battery port and connect the AC adapter to an outlet, preferably through a powerstrip with surge protection. Insert one end of the remote shutter cord into the remote shutter port on the camera and the other end into the remote shutter board. Plug the remote shutter switch into the remote shutter board as well. Insert the small end of the miniUSB to USB cable into the miniUSB port on the camera and the full-sized USB end to the USB hub. Connect the USB hub to the computer through a USB port and power on the USB hub.

Choose the focal length for your setup. It may be preferable to use fixed local length camera lenses of 35mm or 50mm. 50mm is the better of the two. This is what is called a "normal" lens and it "sees" what a human eye would see. Since the cameras came with the standard 18mm-55mm kit zoom lens, I guesstimated where 50mm would be (by counting the rings between 35mm and 55mm) and marked it off with bright gaffers tape and a sharpie. At the distance my cameras were from the subject 50mm worked very well, just framing the subject without much extra space. Set the camera to manual operation and manual focus on the lens, i.e. turn the dial on top of the camera to full manual and flip the switch on the lens from AF to MF.

Go into the Menu Settings on the cameras. Make sure that Auto Power is set to OFF. The AC adapter will enable you to keep shooting without having to worry about power loss.

RAW files are too big to be handled over USB while continuously shooting with multiple cameras. High quality JPEGs work very well and will save you time and storage. (RAW files would need to be converted to JPEGs before being imported into PhotoScan and PhotoScan actually prefers unadulterated files). Make sure that Quality is set to Large JPEG.

Set Auto ISO to 3200. Enable Live View so you can easily check your shot and focus on your subject.

Capturing Photos in Smart Shooter

SS_camera_connect.jpg
SS_camera_view.jpg
SS_camera_rotate_view.jpg
544a8048ec8d838e59000141.jpeg
544a8060ec8d8336e3000039.jpeg
544a8079ec8d83e2f6000054.jpeg
544a8099ec8d836461000078.jpeg

Open SmartShooter. When all the cameras are connected to the computer through USB, SmartShooter should recognize all 4 cameras. If it doesn't or you encounter any other issues syncing the cameras, skip ahead to my troubleshooting steps.

When SmartShooter recognizes all 4 cameras, make sure "Multiple Cameras" from the pull down list under Camera Controls AND in the Viewer are selected and press the Connect button. You should be connected to all 4 cameras through Smart Shooter but you won't see the view from the cameras yet. To see the Live View from all 4 cameras, make sure "Multiple Cameras" from the pull down list under Camera Controls AND in the Viewer are selected and check Enable button under Live View in the Camera Controls panel. You will now see all 4 camera views but the view will be sideways since the cameras are mounted sideways on the camera stand. To correct for this press the rotate button in the Viewer until the cameras are right side up.

SmartShooter can control many of the camera settings through the USB connection to the cameras. Under Camera Controls set the cameras up as follows (some of this may change due to your available lighting): Aperture = 8, Shutter Speed = 1/40, ISO = 200, Exposure = 0, Quality = Jpeg Large Fine, Metering Mode = Evaluative, White Balance = AUTO, Focus Mode = Manual.

Have your subject stand in the center of the turntable so you can manually focus each camera. Press the magnification button on the upper right corner of the camera to zoom in the Live View to 10x. Rack the focus until the image is tack sharp and then press the magnification button again to return to normal view.

When you are ready to capture have the subject strike a relaxed pose with them standing towards the center of the turntable. Turn on the turntable. Have the subject remain very still as the turntable spins. It may be helpful for them to focus on an imaginary point in space that rotates with them in order to keep their eyes focused in one position. When they are facing the backdrop, with their back to you, beginning shooting with the remote shutter switch. Try to press the switch about 1.5 seconds apart to get 60 shoots, which Smart Shooter will resolve as 60 virtual cameras. Stop shooting just before the subject faces the backdrop again. If you end up with your last shots being identical or very similar to your first shots, throw those last shots out. If the shots are the same or very similar it will confuse PhotoScan and get a poor result.

Above are some shots of me, from my scan. (Someone else had to press the shutter release). While the images may seem similar, they are from different cameras; 1) high angle camera looking down to get the top of my head and getting another angle on my face and torso, 2) My head and torso from a more or less level view, 3) A camera with a slight low angle on my lower body, 4) A high angle shot of my lower body.

You need at least 2 angles of the same parts of the body to have the software make a mesh. Note that the photos of my upper body and lower body have a little overlap; you can see my hands and the top part of my pants in the upper body shots and the lower body shots. This is essential for PhotoScan to create a full body 3D model.

Aligning Cameras in PhotoScan

545838caec8d83f00e000012.jpeg
545838edec8d833b5e000039.jpeg
54583905ec8d8373d9000015.jpeg

In PhotoScan start a new project and import all the photos from your scan. When all the photos are loaded, go to Workflow - Align Cameras. Change the settings for aligning cameras under General to Accuracy: High, and under Advanced to Point Limit: 40,000. Press OK.

It will take some time to for PhotoScan to align the cameras, probably a few hours. When it is done, carefully check to make sure all the virtual cameras are in the correct positions. If the scan was a complete failure then PhotoScan will lump all the cameras on top of each other and only project points in one direction. If it was a good shoot the cameras should be in the correct position.

Often a few cameras may be out of alignment. It this occurs, select the affected cameras individually and right-click. In the pop-up menu select Reset Camera Alignment. Complete for all misalign cameras. These cameras will now show up in the Workspace window with NA next to them. Select one of these cameras, right-click and select Align Selected Cameras. Repeat until all cameras are positioned properly. If it is still a problem, try reseting and aligning the misaligned cameras again.

Generating the Dense Point Cloud

545839dfec8d8395190000d2.jpeg
mike_dense_point_cloud.jpg

When the camera were aligned they create a sparse point cloud. If the sparse point cloud looks good, you will generate a dense point cloud. First select rotate around the sparse point cloud to double-check. Then, select the bounding box rotation icon. Rotate the bounding box so it is aligned with the model, then select the bound box size icon and conform the bounding box until it fits just around the subject. When that is completed select Build Dense Cloud under the Workflow menu tab. Change the Dense Cloud settings under General to Quality: Medium, and under Advanced to Depth Filtering: Aggressive and press OK.

Cleaning Up the Dense Point Cloud

mike_removing_points.jpg
mike_removing_points2.jpg
removing_points_1.jpg
54583a05ec8d83fb71000123.jpeg
54583a23ec8d83fb71000124.jpeg

When PhotoScan creates the Dense Point Cloud there will be some garbage, attached to the model, primarily bits of backdrop. Use the lasso tool to select as many of these extra point as possible and delete them. Make sure not to delete good point from your scan. It is helpful to rotate around the model to get different angles while doing this. Generally you will see the most garbage points in between the legs, around the feet and about the head. Once you've removed these bad points you are ready to proceed to generating the mesh.

Building the Mesh

54583b2dec8d83467f0000b3.jpeg
545810b7ec8d83906200018a.jpeg
mike_solid_model.jpg

Once the Dense Point Cloud is cleaned up, the next step is to generate the mesh, which will give you a wireframe mesh and model. Under Workflow select Build Mesh. Adjust the settings under General to Surface Type: Arbitrary; Source Data: Dense Cloud; Polygon count: 5,000,000 and press OK. The mesh should generate within minutes.

Building the Texture

mike_textured.jpg

Go to Workflow - Build Texture. Set it to General to Mapping mode: Generic; Blending mode: Mosaic (default); Texture size/count: 4096 x 1 and press OK. This will render very quickly and you can export the textured model as an .obj for cleanup.

Cleaning Up the Model in ZBrush (and Maya)

Screen Shot 2014-10-03 at 1.23.32 PM.png
Screen Shot 2014-10-03 at 1.27.08 PM.png
Screen Shot 2014-10-03 at 1.24.22 PM.png

If you were able to produce a successful model in PhotoScan you still have some work to do in ZBrush to make it suitable for 3D printing. You'll definitely has some scanning errors/problems that will need repair. The images above are of a model being cleaned in ZBrush. Note the missing chunk of ear that needs to be fixed.

The common issues you will run across are as follows:

Lumpiness, or bumps across the the surface of the model. These can be resolved using the flatten brush for even them out, followed by the smooth brush for final cleanup. You don't want to just use the smooth brush or you will lose all your nice scanned cloth folds, skin texture, facial features, etc.

Webbing and bit of backdrop attached to model. You will need to cut out webbing in between the legs, between the arms and the body, extra material attached to the face or head, etc.

Holes in the mesh or missing features. You may have some holes in the mesh, either from the scan itself or when you remove the additional material and webbing from your model. PhotoScan can only create models based on what is in the photos you give it. If in your scan the subject's arm blocks part of his/her torso so that part of the arm or body is not visible in enough shots for example, then PhotoScan will either mesh the arm to the body or leave a hole in the mesh where the one part occluded the view of the other. Some of this can be fixed in ZBrush but you may need another 3D program to help repair the mesh.

Long or flyaway hair or other small projecting features. Hair will possibly need to be re-sculpted especially if it is long. This is one instance where baldness is a blessing. Small features that project from the surface of the model will either not print or will break off when printed. For example, a hanging strap that is not flush/embedded on the model will not work. Best to cut these small pieces off.

Lester Banks published a great video tutorial on cleaning up AgiSoft PhotoScan models in ZBrush, that will very clearly show you the steps to prepare your model.

http://lesterbanks.com/2014/01/how-to-convert-and-...

Tips, Tricks & Troubleshooting

The following steps will help with best practices to prepare for a successful shoot, potential problems, addressing software issues, etc.

What Not to Wear

PhotoScan works best when there is a good amount of variation between adjacent pixels.

Here are some things that you should avoid...

1) Solid black clothing.

A black suit, dress, skirt, etc. will probably not scan well.

2) Tight patterns, especially stripes.

This will confuse the software when it tries to align the photos. (It will also make fixing the textures very difficult).

3) Very bright or very dark colors could be problematic.

4) Reflective surfaces.

This means no watches, jewelry or glasses. Glasses are especially bad because they will also distort facial features.

If you must have these items in the scan or on the model you can lightly dust them with baking powder. You may want to shoot this as a second pass or scan the items separately from the main subject. Alternatively, these items can be individual 3D models added to the main model in post.

Problems With Syncing Cameras

If the cameras start going crazy and fire their shutters, go dark or won't turn off...

Or if the remote switch doesn't release the shutters on all the cameras or work at all...

Or if Smart Shooter won't recognize all the cameras or won't live view all the cameras, etc.

Don't Panic.

If you do the following, in the order described, it should resolve all these issues:

1) Turn off all cameras, shutdown the computer, disconnect all cables and the USB hub and turn the power off on the hub, too.

2) Restart the computer.

3) Open Smart Shooter.

4) Turn on all cameras and press Live View button on each camera.

5) Connect one camera at a time to the remote shutter board and to the unpowered and untethered USB hub.

6) Plug the remote switch into the remote shutter board. Test fire. All cameras should fire.

7) Plug USB hub into the computer with the hub still powered off.

8) Turn on the USB hub. Cameras may all go dark, with only one activated by remote switch. Don't worry. Move on to next step.

9) Smart Shooter should recognize all 4 cameras. Make sure "Multiple Cameras" from the pull down list under Camera Controls is selected and press the Connect button.

Now all 4 cameras should fire again with the remote switch. Test fire.

10) With "Multiple Cameras" selected under camera controls AND in the viewer, check off the Live View - Enable box under Camera Controls.

All cameras will probably go dark and the remote shutter may not work either. Don't worry, move on to next step.

11) Go to each camera and press the Live View button on the back of each camera until all 4 camera displays are active again.

12) Remote should work again. Test fire. Everything should be working now. You're ready to roll!

Final Print

IMG_8882.jpg
IMG_8884.jpg
IMG_8878.jpg
IMG_8861.jpg

And there you go...

My model was printed at 12" tall on a Z Corp 3D printer in full color by iMakr. (A proprietary finishing method was used to make the colors pop and give it a light glossy finish).

If you like this tutorial please vote for it in the tech contest and formlabs contest! If I get a form1 I'll print my scans on it and share the results with the community.

Please post images of your setups, scans and printed models, too. I'd love to see your results!