Agisoft Metashape

Agisoft Metashape => General => Topic started by: snacksthecat on November 28, 2019, 08:54:17 PM

Title: Workflow for reconstructing a relatively flat object (computer keyboard)
Post by: snacksthecat on November 28, 2019, 08:54:17 PM
Hi Everyone,
I'm coming from vintage computer keyboard hobby and have enjoyed working in Metashape to create 3D models of my collection pieces.  I have a workflow that "works" but I think can probably be improved by making some tweaks to how I'm running things through this tool.

My basic workflow is to set the keyboard I'm scanning against a green backdrop, so that the background of my photos is completely green regardless of the angle I'm shooting at.  I set my camera on a tripod set to a fixed angle and between pictures I rotate and re-position the keyboard in order to capture all the different details.  I rotate the keyboard one complete rotation, then re-angle the camera to a lower angle and repeat.  I then load all the photos into photoshop and manually remove the green background.  It's laborious but the only way I've gotten the best results so far.

My question is mainly around how I should be organizing the photos in Metashape.

Right now my approach is to dump all the photos into the tool and organize each set of rotation photos into separate camera groups.  I set the camera group type to "folder" since I'm just using them for organizational purposes.  Should I instead be setting the group type to "camera station" for each different group?  I ask because I wasn't able to discern the correct approach from the manual.

I do this for the top of the keyboard in one chunk.  Then I do the same for the bottom of the keyboard in another chunk.

Finally, I run "align chunks" on these two.  Sometimes it works out okay, sometimes I get a wacky result.  If the result is bad, then I manually align them the best that I can.

But I presume, as a result of my workflow, sometimes I get a whole sequence of photos that fail to align.  This combined with the manual alignment of the two chunks results in holes/cracks and poorly captured details in the finished model.  Or extra bits and pieces that I need to manually trim away.

Is there something I can be doing differently to improve my process?

Thanks and take care!  I will share a good example once finished uploading.
Title: Re: Workflow for reconstructing a relatively flat object (computer keyboard)
Post by: MikeZ on November 29, 2019, 12:04:23 AM
What I propose is to change your way of taking photos.

Place your keyboard on the table. Take the photos from the top. Then go around the table and take the photos of the sides. Flip the keyboard and repeat the process.

Create two chunks in metashape. Align them separately. Create low poly mesh and cut it just 1 mm above the table. In photo panel import mask and as a source use a mesh. You can place all photos in one chunk or you can align chunks by points. In align panel use "apply mask to key points". It should work. If not create two models with desired resolution and register then in external software. You can do it on the point cloud level or mesh. It depends on you.

If you want to do it in one chunk: put everything together in one chunk. Create a few masks. Use "apply the mask to the tie points" and align the model.

If overlaps between the bottom and top of the keyboard are not enough to align photos properly, place your keyboard horizontally and use the first method I mentioned. You can build for example a Lego holder. This will work for sure.

Good luck :)
Title: Re: Workflow for reconstructing a relatively flat object (computer keyboard)
Post by: snacksthecat on December 05, 2019, 12:28:37 AM
Thanks so much for the tips, particularly the one about creating masks from a model.  I wasn't aware that feature existed and it's certainly made things a lot easier for me.  Opens up a lot of options for how to work in this tool!