After importing CPs, new control points are misnumbered and conflict with existing CPs

Normally, clicking the ‘Create’ button in the control point menu auto increments to avoid conflicting with existing points.

After importing CPs into a scene, clicking the ‘Create’ button sometimes incorrectly creates a duplicate point, as in the case below where the system created a second ‘Point180’ in conflict with the first:

After saving and reloading, these conflicting point lists are combined, which of course destroys their coherence.  Running align in such a state seems to cause RC to core dump.

I’ve been manually renaming each new point to avoid these conflicts, but it’s easy to miss – with bad results.

Hey Kevin, it’s me again…    haha

I’ve had this issue as well. There was never a crash, so I think it’s related to your main problem.

I think that the name of CPs is only a name and each one has an individual internal ID.

I thought the name would be independent of the internal ID, but as I noted in my case the contents of the duplicate CPs were concatenated – which suggests that even if they have different IDs, they can combine when you don’t want them to!

Hmm, so maybe I’m wrong and it is only true for components?

I think problems with high numbers of CPs have been reported a while ago as well - or was that you too?

Good point – is ~200 CPs a high number for an image set of ~4,000?  I have no idea what people generally use…if anyone has any practical experience or guidelines I’m all ears!

Found the thread - I think I posted it before:

https://support.capturingreality.com/hc/en-us/community/posts/115000813071-Aligning-Images-with-Control-Points

Hey Kevin,

another thought: which version are you using? Demo, promo or full?

Thanks Götz for your link which does seem connected, and to answer your question, I’m using the full (CLI) version.

So it does seem that control points (at least for me) are closely linked to the outcome of alignment.

Starting with the same source image set and control points, I’ve found:

  • If we have more than 100 CPs and some with high error (> 5 pixel), RC reliably crashes during alignment
  • Culling just those CPs with higher error causes RC to hang, rather than crash
  • Culling to < 50 CPs, RC completes alignment but fails to register the views that I added control points for in the first place.  :wink:

 

Hey Kevin, that really is some difficult project!

Did you try to get in touch with RC directly?

I would really like to know if you find the cause or if it is a bug.

 

Dear Mr Cain,

if you own a RealityCapture CLI license, you are entitled to priority technical support during its validity. If this is the case, you need to write us (from the e-mail the license is assigned to) to the e-mail given with the license provision.

That’s what I thought, too…  :slight_smile:

Would somebody post the result if there is one?

I’m in touch with the RC support folks – due to the time offset between us we don’t have a resolution yet but of course I will post once the dust settles…

I’ve had a few crashes after adding CP - and while I can’t prove it, I suspect the auto-adjust of the CP during alignment is moving one outside the image boundary.

I was getting crashes when I was inserting CP outside the image in the RC window - hey it let me do it and I could get a good idea of some even where I was missing just that little bit of frame… Now it prevents you inserting images outside the frame, but I think some near an edge might slide off during adjustment and start crashing.  Since I’ve started putting them only closer to the middle of images I’ve had a lot less problems.

But only a guess - and happy to be having few crashes no matter if they came from revised workflow or improved stupid user prevention :slight_smile:

Also   “point180” is different than “point 180” which is probably different than “Point 180” 

Yay for case and whitespace sensitive code

Jennifer

Great points, Jennifer, I do see that control point name can be anything we want.  The trick with long lists of CPs is that you don’t always see that the auto-increment name RC proposes when you add a point is in fact a duplicate.  If you don’t catch that by manually renaming (to anything, as you say) then when you save and reload the project under some circumstances it concatenates the two duplicate names, even though the indexed point is distinct and RC should respect that.  And then, of course, having coordinates from two separate objects RC tries to compute the error between them and these impossible pixel errors then influence the next alignment.

So, at a minimum I suppose the lesson is:  don’t just take the auto-increment name at face value – we have to check for conflicts to avoid tripping ourselves up, and RC too as in the above case!

I’ve also suspected that RC is migrating CPs outside the image boundaries – of course, I don’t know if we’re right in suspecting that and would love RC’s support to weigh in.