Agisoft Metashape

Agisoft Metashape => General => Topic started by: dcobra on January 14, 2020, 06:58:25 AM

Title: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on January 14, 2020, 06:58:25 AM
I have processed the same project in 1.5 and 1.6 and the dense cloud in 1.6 takes longer to generate and the result is much noisier.  Have tried the max neighbors tweak = -1 with no improvement.  Anyone else experiencing similar issues?
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on January 14, 2020, 01:33:45 PM
Hello dcobra,

It would be helpful to have the processing logs from the both runs for the ame dataset processed with the same parameters. In case you can share the sample dataset that we can use to reproduce the difference in the processing time and in the quality of the processed results on our side, please send the download link to support@agisoft.com.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on January 15, 2020, 02:54:23 AM
Alexey,

Thanks for the response.  I emailed the logs as they to large to post.  I will look into getting you the dataset.  A few things to note between the two logs:

1.6.0
- The CPU is at 100% with very little if any variation for the duration of processing.
- The GPUs do not seem to be at 100% use very often.  I monitor them with ASI Afterburner.  They are much more active with 1.5.3.

1.5.3
- The CPU is quite active but not at 100% all of the time.  There is some variation.
- The GPUs are much more active and the fans are almost at max speed.

One thing I notice in the logs is that the "timings" are much higher with 1.6.0.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Mak11 on January 15, 2020, 03:21:25 AM
Alexey,

Thanks for the response.  I emailed the logs as they to large to post.  I will look into getting you the dataset.  A few things to note between the two logs:

1.6.0
- The CPU is at 100% with very little if any variation for the duration of processing.
- The GPUs do not seem to be at 100% use very often.  I monitor them with ASI Afterburner.  They are much more active with 1.5.3.

1.5.3
- The CPU is quite active but not at 100% all of the time.  There is some variation.
- The GPUs are much more active and the fans are almost at max speed.

One thing I notice in the logs is that the "timings" are much higher with 1.6.0.

GPU usage should normally be similar in both cases as it is only supposed to be working during the Depth Maps generation process. The Dense cloud generation is CPU based.

Metashape uses the GPU during the following stages: Camera Alignment (but not the estimating camera position part which is CPU based), Depth Map generation, Mesh generation when using Depth Maps as the source, Texture generation & the optional image based Mesh Refinement process).

Mak
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on January 15, 2020, 03:50:56 AM
Thanks Mak11.  The logs show GPU usage to be 100% during depth maps for both versions.  1.6.0 is just much slower.  Below are durations for both.  Attached is a screenshot showing the difference in noise.

1.6.0
depth map generation = 3:13
filtering = 1:41
Total ~5hrs

1.5.3
depth map generation = 1:04
filtering = 0:51
Total ~2hrs
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on January 15, 2020, 05:41:13 PM
Hello dcobra,

Thank you for sending the logs, we'll analyze them and try to understand, why the processing time is considerably different.

Are there any uncommon tweaks enabled for the version 1.6.0 and if you are using the same alignment?
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on January 15, 2020, 08:25:29 PM
Alexey,

Thank you.  The tweaks are the same in both versions.  The only one that is listed was there by default (main/refine_max_gpu_multiplier).

The alignment parameters are slightly different between them:

1.5.3
f, cx, cy, k1-3, p1-3

1.6.0
f, cx, cy, k1-3, p1-3, additional corrections

I enabled p3 in 1.6.0 in the console as it was removed from the GUI.

I noticed in the logs that the GPU driver/runtime is different:

1.6.0 is 10020/8000
1.5.3 is 10020/5050

I just finished a small test where I opened a project that was optimized in 1.6.0 with parameters noted above in 1.5.3 and processed the dense point cloud.  The speed has returned to normal but the resulting dense cloud is still noisy.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on January 15, 2020, 10:30:46 PM
Hello dcobra,

Thank you for additional information regarding the Additional Corrections. That is actually the factor that affects the processing time, as some operations for the cameras with these corrections are not yet fully GPU-supported, so some slow down may be expected. We'll check if it could be that considerable.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: rover on January 23, 2020, 03:31:25 PM
I was wondering the same. I ran 2 test sets, 56 images from P4 rtk. Dense cloud processing time more than doubled when fit additional corrections was on (18  vs 42 min). Just a few moments ago I finished processing a set of 800 images. Dense cloud on high quality took 14 hours. That could be 5-6 hours when not using additional fit.

So Alexey are you saying this will improve in the future?
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on January 23, 2020, 06:27:33 PM
Hello rover,

Yes, we have in plans to optimize the GPU processing support for cameras with additional correction.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dronesurveyconsultancy on January 31, 2020, 11:59:07 AM
Is this fixed in 1.6.1?
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on January 31, 2020, 03:15:57 PM
Hello dronesurveyconsultancy,

No it has not yet been implemented in the release version, so you may expect a slow down for the depth maps calculation for cameras with optimized additional corrections.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: mrc on February 02, 2020, 06:41:34 AM
Any information on what is creating the noise?

I'm getting similar surface noise in 1.6.1 compared to earlier versions (1.4)
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on February 04, 2020, 03:03:54 AM
I haven't gotten any updates from Agisoft on this, although I have made a few observations and have been able to reduce the noise significantly.  I'll try to summarize below.

On models that showed increased noise I noticed that the residuals looked quite systematic (fairly strong patterns) compared to those that did not have increased noise.  Parameter selection for models was done using the process described by James et al.  To reduce noise I chose the parameter set that gave the lowest RMSE without "fit additional corrections'.  Once this was determined I optimized with "fit additional corrections' enabled.  Finding a suitable parameter set first seemed quite important.  The resulting dense cloud was very close to what I was seeing in 1.5.3.  The accuracy with 'fit additional corrections' is also improved as verified by measurements extracted from the model and compared to 3rd party measurements. 

It became quite obvious if the dense cloud was going to have noise or not by the residuals.  If they were systematic the dense cloud ended up with significant noise and if they weren't the dense cloud was quite good. 

I do notice different results with different lenses.  I get better results, and better looking residuals, with my 21mm than I do with my 18mm.  Perhaps the 18mm is harder to model. 

Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: Alexey Pasumansky on February 04, 2020, 01:38:42 PM
Regarding the noise issue, it would be helpful to have a sample dataset that we can use for reproducing the problem: where the dense cloud is clean without additional corrections optimization and contain obvious noise with additional corrections.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on February 06, 2020, 07:24:29 PM
Alexey,

I'll email you a link to download a project.

Best,
Cody
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dcobra on February 14, 2020, 03:13:43 PM
Any updates on the noise issue? I am noticing it in many more models.
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dronesurveyconsultancy on July 17, 2020, 04:32:39 AM
Is this something that will improve in the future?

I have an I9 9900K with 32 gb ram and gtx1080Ti, but i want to create dense point clouds in ultra settings to combine with laser scanning, but since 1.6.x the time to create them have increased to much, more then a week to create a solid model with tweak: max neighbours = -1 or else the model looks rubbish.

Is it then better to downgrade to 1.5.X or even 1.4.X versions? I dont care about mesh i only make dense clouds and orthos.

Anyone got an idea?

Best regards

Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dpitman on July 18, 2020, 02:34:18 AM
It's interesting that this issue seems significant to processing with Metashape, especially from the perspective of those that have been using it for awhile.  Yet there is little reaction.  It seems like a lot of data was supplied to demonstrate the issue, yet the developer goes silent.  I'm new to this, but that is not encouraging unless most users haven't noticed this problem and just don't bother to comment or it was fixed already?
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: dronesurveyconsultancy on July 18, 2020, 10:01:03 PM
it's not fixed in the newer version
Title: Re: V 1.6.0 - Dense cloud generation time longer, increased noise
Post by: TXPE on July 31, 2020, 07:59:28 AM
I've been noticing the same thing using 1.6.3 
During generating depth maps phase, only seeing 25-40% load on GPU (occasional spikes to 60%) and CPU is at 100%.

i7-9700K w/ RTX 2080