Forum

Author Topic: Aligning Point Clouds from Camera Positions  (Read 10485 times)

IanJohnson

  • Newbie
  • *
  • Posts: 33
    • View Profile
Aligning Point Clouds from Camera Positions
« on: May 06, 2011, 12:40:18 AM »
I've been using photoscan to align photos, then export the sparse cloud as bundle.out and using CMVS to create a dense cloud.  The advantage to this is once CMVS has split the job into parts I can divide the work between several computers.  This helps make up for the low amount of RAM I have (4GB) and distribute the processing.

For a large model of a building I thought it would help if I could run the alignment on a downsampled set of images to help run a lot of images without running out of memory.  Then use higher resolution images for the dense reconstruction in the areas that need more detail.

Using a test set of about 18 photos in a 180 degree view, I ran alignment on them at 10Megapixels, 5MP, and 3MP sizes.  I couldn't use the bundle.out from the 3MP set to reconstruct using the 10MP images.  The points were all wrong.  However if I used a 3MP bundle on a 3MP reconstruction, and 10MP bundle on a 10MP reconstruction, the two different point clouds lined up since they were based on the same images.

Suppose I align a large group of images covering a whole building facade, using images that I have downsampled to 3MP.  Then I take a smaller group of those images, which cover a decorated entrance, and align them using the 10MP versions.  The point cloud for that 10MP subset will probably be created at a different scale and orientation than the point cloud created from the whole set.

Would it be possible to add a feature which does this:  Create two chunks with a certain amount of images in common between them, and then base the scale and orientation of the point clouds on the camera calibrations derived from those shared images?

Also it would be nice if I could import a point cloud to be meshed within Photoscan, and have an opportunity to export the dense cloud created during the meshing process. 

I know there is alignment of meshes, and I haven't tried that yet.  I would like to be able to work on cleaning up the point clouds more before meshing, and having some kind of automatic alignment at that stage would be helpful.

Diego

  • Full Member
  • ***
  • Posts: 167
    • View Profile
Re: Aligning Point Clouds from Camera Positions
« Reply #1 on: May 06, 2011, 02:15:44 PM »
The distance scaling option can be performed with the pro version and works fine. You can make a dense grid from Photoscan, no need to bring cloud of points from CMVS.  If you have lots of pictures and little memory, then you work for different Chunks

Dmitry Semyonov

  • Agisoft Technical Support
  • Full Member
  • *****
  • Posts: 200
    • View Profile
Re: Aligning Point Clouds from Camera Positions
« Reply #2 on: May 08, 2011, 08:45:40 PM »
Hello Ian,

Alignment of point clouds based on positions of shared cameras is currently not available, but the problem you have described can be probably solved much more easily: just select the lower Accuracy setting in PhotoScan during photo alignment. This will require much less amount of RAM, similar to the manual process you have described. But the point coordinates in the exported file will be scaled properly and will correspond to the original resolution of the photos.

Quote
Also it would be nice if I could import a point cloud to be meshed within Photoscan, and have an opportunity to export the dense cloud created during the meshing process.

PhotoScan performs dense surface reconstruction based on source photos themselves, and not using the sparse point cloud alone. Thus importing point cloud alone is not sufficient for dense surface reconstruction. It is much more important to know camera internal and external calibration data.

If this data is available, it can be imported using "Import Cameras..." command from the Tools menu. But I don't see any way to obtain this data except processing the photos in some photogrammetric package.

For the same reason editing the point cloud will not affect the final mesh obtained during dense surface reconstruction.

With best regards,
Dmitry Semyonov
AgiSoft LLC
With best regards,
Dmitry Semyonov
Agisoft