How can we compel RC to reconcile locally aligned groups of views?

It seems that RC likes us to launch alignment with all CPs below the ‘red’ error threshold of ~4 pixels.  Launching alignment with larger errors, I see RC fail to complete alignment.  From the console, I see that RC clears the initial feature search and ostensibly begins global view matching.

But RC seems to get trapped in a false (local) minima during alignment while solving for global pose convergence – that is, alignment has enough misleading neighbor views agreeing with each other in each pass to effectively drag the global alignment off course, prevent convergence and hang.

But unless I’m missing something, sometimes there’s no way around it – we need to launch alignment with high error when RC doesn’t properly align components.

For instance, in my project RC correctly aligns two large sets of images in two separate components, and it aligns the two as well – but misaligns them vis-a-vis each other.  Most of the scene is aligned correctly but some elements are off registration.

Increasing the feature sampling helps a little but doesn’t close the gap between the misaligned image sets.  So, I added control points to each component; two snapshots are below but I’ve added many more points.

Unfortunately, launching alignment now either fails to complete (stops the thermometer bar between 1/3 and 2/3 of the process) or crashes outright.  I’ve uploaded many error logs to RC on this point.

If I’m correct, RC is trying to reconcile the misalignment using the control points I’ve supplied, but is falling into a local minima in the global registration step.

After many days of trying everything I can (reverting and adding new points, changing alignment values, starting from source images and importing CPs), I can’t get RC to complete an alignment:  it either crashes or stalls.

Can anyone suggest a way to coax RC into bringing misaligned elements into registration?

 

 

 

Nice pics - that’s my kind of ‘architectural’ building

I suggested it in a couple of threads with you present lately but I can’t remember you confirming:

Have you tried lens/exif grouping?

Also, is it possible there might be some image auto rotation involved?

Yes, I tried the EXIF grouping option on import, but that caused the straight walls in the interior scene to bow with a strong camber in the reconstruction.  It was a pretty striking result – and it went away when I turned EXIF grouping off.

There shouldn’t be any image auto-rotation either, but I’ll check that again…is that capable of stalling/crashing alignment in your experience?  I would be surprised if it wasn’t a problem earlier, since the image set is the same and the only difference is more CPs.

I would think the answer is to create more CPs, but since adding CPs created this trouble, it seems the wrong direction to go.

It occurs to me that changing the CP weight from the default of ‘10’ may help, but Wishgranter has elsewhere discouraged using any weights values aside from the default.  I can try to half or double those values but as the documentation is absent it would be a shot in the dark…

I’m still not able to figure why the scene aligned fine with fewer CPs.

Hmm, it is suspicious that you got that kind of problem with grouping. Did you zoom wildly? Because if not, that kind of error should not happen. Never seen it before. I figure from your image name you use DxO - but you do not correct any geometry, right? Can’t imagine but trying to rule everything out. However, the rotation could be involved, because I think most of this kind of software would have that as standard setting.

The weight of a CP simply means how many images are simulated - with 10, RC pretends there are 10 images with the information given by that CP. Raising it should not be a problem at all, just try it out. It might give you a clue if there is any one CP causing trouble or if there is something wrong generally. I’ve used 200 and even 1000 I think. Also no crashes.

Did you do a reconstruction with the low CP components? Might there also be some weird geometry showing?

Good thoughts about geometry correction/image rotation in DxO, but I am careful to ensure that’s always off, and check to make sure.  :wink:

I feel we’re steering a bit away from the main question I pose in this thread:  when RC sees ambiguous surfaces and can’t automatically align everything in a scene correctly, how does RC then use CPs to try to reconcile this?

Parts of the scene are simply not aligning and adding CPs to the relevant source images is for some reason stalling/crashing RC rather than resolving this.

So any insight on the matter of best practices in such a case is what I’m hoping for…or a better understanding of the sequence that RC uses during alignment to consider matches.  For instance, does anybody know if RC uses a sequential or global solver for MVS?  

E.g. – does RC traverse the component list from top down?  If so the first components may well have an advantage in weighting the global alignment; the starting image in sequential SfM/MVS is very meaningful, while in a global approach like 1DSFM its irrelevant. 

Hey Kevin,

I know you are a professional with much more knowledge of the theories behind it. I just can’t imagine that you will get that kind of in-depth information here in the forum (from my past experience). So I would suggest you contact RC directly via Contact Form to at least draw the attention to your question(s). Response in Bug Reports is also better in general.

All I can say is that from my experience this should not happen, so there must be a reason which can either be the image set or a bug. I fear that trying to fix this on a CP level is waisted effort at this point. I am absolutely certain that if the images are (near) perfect, RC will align them on the first try. High error numbers in CPs were never an issue, and I mean really large ones.

One more (practical) suggestion: Try to align in small batches, starting in areas with no problem. Either keep adding or create several smaller components and then unite them later.

Over and out.

You guys are much more knowledgeable about RC than I, but could it be that a good percentage of your CPs are using the metallic duct surface?  Even though it’s not exactly mirror-like sometimes those surfaces don’t make for the best alignment.

As for me, I’m guilty many times of over tinkering with the settings.  I had a similar issue with a patch of grassy terrain that wouldn’t complete.  Did a shift launch/reset and the problem went away.   Sometimes you gotta clear out the gremlins. :slight_smile:

Thank you Ronnie, I would have said the same thing about the duct surface!  In fact there are plenty of other points, I was just using those as ready examples.  I’ve also reset settings, which is always a good suggestion.  :wink:

Thanks too Götz for all your help.  I wanted to relay that I did build this project up in successive passes as you suggest – but after bringing in all available photos RC would not align a great number of them, so I was forced down the CP path.

Hi Kevin Cain

Can you please make screenshots of the CP details -> so we can see how much iamges per CP are used and few more details. 

Are you deleting last ALIGNMENT results ( COMPONET )  from the scene 

RC get in issues  here if the CPs are too badly distributed, placed and etc. 

Would it  be possible to setup TeamViewer session so i can check the  whole project for possible issues ? 

Hello, Wishgranter,

After many more trials, I think I’ve isolated the problem to the distortion model.  Anything but ‘Brown3’ will reliably crash RC in this set of project files.

The good news is that with Brown3 I’m at least able to complete alignment!

To answer your question, yes, I have been deleting all components from the scene – and tried with only the largest component as well.  Both variants reliably crashed.

 

I spoke too soon.

After one successful alignment (it didn’t crash), I added a few control points and tried again – that crashed.

I reset all RC settings, tried again, and that hung at 57% complete alignment.

I can give you TeamViewer access; you can reach me by my e-mail from my support request.

Fingers crossed!

Any result yet?

Hi Kevin Cain 

Please contact me directly on milos@mhb.sk