Forum

Author Topic: Extremely large projects 1000+ photos  (Read 14839 times)

Mohabon

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
Extremely large projects 1000+ photos
« on: October 23, 2012, 05:58:59 PM »
Hello,

it has come to my attention that processing of 1000 Photos at 16Mpix and ULTRA resolution is actually impossible on any commercial hardware.

Agisoft support center suggests that reducing the BOUNDING BOX to a portion of the entire area is an effective work-around.

As it is always difficult for users to determine if Bounding Box redution is enugh or not, i suggest the following implementation:

1) a new tool that, once chunk is aligned, automatically creates a number of Bounding Boxes dependant on the desired resolution (MEDIUM, HIGH, ULTRA) and on the hardware which is running PS PRO.
2) Then Bulding Geometry tool can be executed separately on each bounding box at the desired resolution and being sure that hardware resources are enough to complete the processing, no matter how long it takes.
3) Repeat the point 2 for each of the bounding boxes created at point1 and you have fantastic mosaic of meshes at the desired resolution without purchasing the NASA computer! =)

I see many benefits in this approach, as aligning 1000 photos is performed in a single step which gives better accuracy than using many chunks, while the mesh modeling is performed separately.

thanks for your attention and kindest regards

Wishgranter

  • Hero Member
  • *****
  • Posts: 1202
    • View Profile
    • Museum of Historic Buildings
Re: Extremely large projects 1000+ photos
« Reply #1 on: October 23, 2012, 10:15:07 PM »
Heheheh Mohabon, THIS is what im think is the right way. Precisely this stuff was in our thinkbox with AGISOFT. So im glad that others come to same solution  8)

The remaining question is how it will be with seams, or better neighboring models from the chunks in resulting render.....

What you think people ?
« Last Edit: October 23, 2012, 10:18:17 PM by Wishgranter »
----------------
www.mhb.sk

Mohabon

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #2 on: October 24, 2012, 10:38:21 AM »
In my idea, the new TOOL "Bounding Box Splitter" should behave according to the following workflow:

1) User selects the desired resolution (MED, HIGH, ULTRA).
2) User selects the overlapping ratio between adiacent bounding boxes, from 0% to any%. So each resulting mesh is independant and there are no "holes"
3) Following point 1 and point 2 and taking in account computer resources (GFX, RAM, Processor etc) the new Bounding box splitter TOOL creates a number of Cell-Bounding-Boxes.
4) Following point 4, the new TOOL should also estimate the time needed for the BUILD GEOMETRY of each Cell-bounding-boxes.
5) If User wants a reduced processing time, then a factor can be applied to the number of Cell-Bounding-boxes, then the workflow restarts at point 3.
6) Cell-Bounding-Boxes can be manually resized/rotated in the same way they are handled in actual PS Pro UI.
7) Once everything is settled and the user is happy, then the TOOL is applied and bounding boxes are permanently saved.

Hope my feedback is appreciated.

Rgrds,


ajg-cal

  • Newbie
  • *
  • Posts: 42
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #3 on: October 25, 2012, 12:35:24 PM »
+1 sounds good to me

Although, for me at least, this tool is largely needed to mitigate this problem

http://www.agisoft.ru/forum/index.php?topic=773.0

you'd want the program to correctly judge the capabilities of the machine?
I wonder whether a system hardware test or some sort of profiler would be useful.

Alexey Pankov

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #4 on: October 25, 2012, 06:23:01 PM »
The remaining question is how it will be with seams, or better neighboring models from the chunks in resulting render.....
The partial models don't have to overlap.
What could be fantastic - is to 'glue' resulting separate meshes back into single one. And to implement LOD builder :)

RHenriques

  • Full Member
  • ***
  • Posts: 228
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #5 on: November 16, 2012, 04:48:07 AM »
+1

I think that a tool for building geometry with a bounding box with automatic migration, with a size optimized for available resources and chosen parameters, it's a very VERY good idea. Results from each bounding box rendering could be saved as a "virtual chunk" in the project file while all the resources are used for another consecutive rendering box. After the rendering of the all area, PScan could automatically merge the final model. I've noticed that if I render a huge model using small bounding boxes I take a lot less time than rendering it at once, but this is a painful manual work. PScan tends to take so much resources for rendering a complete model that after a while the system gets very very slow and the rendering takes a lot longer than it should. I've failed to read Mohabon's message from 24 October. It's a huge idea. And, as Alexey Pankov said, rendering results from the several boxes don't have to overlap, just have to share the same frontier. Most demanding rendering engines have variations of this technique. I think that this is a winning idea. "Bounding Box Splitter" seems to be a good name for such a tool. If Agisoft can make this feasible, this APS solution will be even more impressive, if not unmatched, and could do a great job even in modest hardware setups.
Cheers

PS: As an example, a terrain model rendered in 8 bounding boxes, using "High" quality, took 2 hours for each selected box (about 16 hours total). The same model it's impossible to render at once in High quality in my hardware and, even using medium quality, it took almost 2 days (48 hours). This is a real world example of how such a tool could be impressive. If you plan to implement such a tool it's better to erase this forum entry to avoid giving ideas to other APS developers ;-)
« Last Edit: November 16, 2012, 05:02:22 AM by RHenriques »

arthurb

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #6 on: November 16, 2012, 05:53:00 PM »
Just sharing an idea:
This division on multiple bounding boxes can make it simple to run Photoscan on a computer cluster.

tezen

  • Jr. Member
  • **
  • Posts: 68
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #7 on: November 18, 2012, 05:34:04 PM »
+1

Besides an "Bounding-Box-Splitter" (like split bounding-box a few times on x, y or z-axis) it would be awesome if PhotoScan would be able to manually create multiple bounding-boxes inside one chunk. Those should be able to generate multiple 3D-Models with different UV-Maps (instead of one big Model and one big texture) which could improve the texturing&UV-problems which are happen to multimillion-faces objects. Btw: PhotoScan does a good job on automatic UV-unwrapping but you?ve to retopologize the models for very clean UVs imho.

If an "Automatic Bounding-Box-Splitter" would be implemented into the Model-Generating-Algorythms it would speeden up PhotoScan many times as RHenriques mentioned.
F. E.: A relative quadratic bounding-box around a pointcloud of a statue could be splitted into 1000 boxes (10*10*10). Boxes without any pointcloud-data nearby could be deleted (automatically) - usually more than half (up to 9/10 at objects like statues) of one bounding-box is covered without any data. The calculation of 100-500 really small bounding-boxes should be veeery fast even in ultra-high-quality. To weld the border-seams of those boxes shouldn?t be the biggest problem on those triangulated meshes depending on the same depth-maps. One side-effect is to use every box for UV-Generating. That will end up in many seams&isles on the UV-Map but the texture-space would be used better. It would be a little bit like PTex. And there won?t be any overlapping issues because of the smaller polygon-count of every box. For an one-million-object with 100 boxes the polygon-count of every box is ~10000.

One step further: With a very lowpoly-creation or decimation of those boxes-data (let?s say about max. 6 polygons per box) you could generate a simple retopology-mesh. Because of the orientation (same direction and in this statue-example allmost quadratic) of the multiple boxes it would result in a mesh looking like Dynamesh (ZBrush).
Two steps further: If PhotoScan could handle subdivision surfaces and displacements-maps (I requested it sometime before in this forum) in combination with simple LOD (switch between HiPoly and LowPoly-View of each box) this could be a solution for aerial photogrammetery of very large areas inside one chunk.
Three steps further: The techniques described above in combination with the Animation-feature (PhotoScanPro), an uv-mapped static object (in this example a polygon plane with 600 faces = 6 polygons multilplied by ~100 boxes), the MDD-Animation-Fileformat*, texture & displacementmap-sequences would generate 3D-animations in HiQuality without the huge amount of memory used right now. *Via MDD you could export liquids out of Blender.

But I`m still dreaming and it?s amazed by the increasing speed of computers and whats possible right now.

Greetings
tezen

Wishgranter

  • Hero Member
  • *****
  • Posts: 1202
    • View Profile
    • Museum of Historic Buildings
Re: Extremely large projects 1000+ photos
« Reply #8 on: November 18, 2012, 08:38:56 PM »
Tenzen, any ide that describes solution is good, have writen with agisoft team about it as one of the first ones, and is pleasure for me that many of us think same way how to deal with it ( this solution is not used in any sw as far im know ). But, its not so easy to implement, its about the problematic of paralel programing and lot of synchronization stuff around it, so it wil take "few" moments before it will be implemented. But as i know agisof team they think about every good possibility - feature that we need.....
----------------
www.mhb.sk

Maharg

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #9 on: December 02, 2012, 10:58:57 PM »
I'm teeming with anticipation for the implementation of all of this.

StevenF

  • Newbie
  • *
  • Posts: 39
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #10 on: November 15, 2014, 11:42:44 PM »
This is a very old topic but seems to me like an excellent idea. Has anything like this been implemented yet in Photoscan? I'm currently trying to implement my own "bounding box splitter" in the Python API, but I would love it if there was already a good solution.

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 15086
    • View Profile
Re: Extremely large projects 1000+ photos
« Reply #11 on: November 16, 2014, 12:10:02 AM »
Hello StevenF,

We have a sample script that duplicates original chunk (with the sparse cloud and aligned cameras) multiple times, thus creating a grid of bounding boxes, then you can generate a dense cloud and mesh in the individual smaller chunks and merge them back.
If you are interested in such script, let me know
Best regards,
Alexey Pasumansky,
Agisoft LLC