Draft Alignment usable for further Workflow?

Unfortunately the following Alignment settings cause the alignment process to be stuck forever (Max features mpx 10000, Max features per image 60000, Images Overlap Low, Preselector features 40000, Force component rematch True), using approx. 2000 images.

Using Draft Alignment I seem to get higher number of aligned images. What are the disadvantages of using Draft Alignment for the subsequent workflow steps?

fhernand wrote:

Unfortunately the following Alignment settings cause the alignment process to be stuck forever (Max features mpx 10000, Max features per image 60000, Images Overlap Low, Preselector features 40000, Force component rematch True), using approx. 2000 images.

Using Draft Alignment I seem to get higher number of aligned images. What are the disadvantages of using Draft Alignment for the subsequent workflow steps?

And what settings do you use for draft alignment?

Hi,

the default draft alignment settings (Medium overlap, Downscale factor 2; Final model optimization False)

BR
Felipe

Is there an answer to this important question - “What are the disadvantages of using Draft Alignment for the subsequent workflow steps?”

To my knowledge none, as it can be improved by a second run on normal alignment.

But I might be wrong. It’s easily tested though, just run one alignment on normal first and save the project. Then a new project with the same images - one run draft, one normal. Then compare the mean and median errors…

Thanks Gotz - showing me a new set of criteria to judge by. With the same 55-pic set I’m running numerous comparisons on:

Run 1: Default Align: 5 components of 25,11,4,2,3 imgs. The 25 one:

    Total projections 36K, Av track length 2.8, Max error 2.0, Med error .54, Mean error .67

Run 2: Default Draft Align: 3 components of 40,5,3 imgs. The 40 one:

    Total projections 40K, Av track length 3.4, Max error 85.0!, Med error .89, Mean error 1.3

Run 2 continued, re-run with Default Align: 3 components of 4,3,39 imgs. The 39 one:

    Total projections 67K, Av track length 2.8, Max error 2.0, Med error .50, Mean error .63

Run 3: Align but with Wishgranter’s generally preferred settings i.e. Max features per image 80K, Background thread priority Normal, Preselector features 40K: 3 components of 4,41,2 imgs:

    Total projections 49K, Av track length 2.8, Max error 2.0, Med error .61, Mean error .72

I can compare mean and median errors - all 3 runs look close - but have no idea whether those are good or poor in the scale of things - as well as the other figures reported (total projections, track length, max error).

Any guidance/interpretation would be much appreciated.

Next thing to puzzle over - Inspect!

   

Hi Tom,

thank you very much, that is quite interesting. Could you add the processing times? They are stored in the component…

What I read from this is that the end-result is the same, but with A LOT more projectons if you run draft first.

That’s quite intriguing. I bet, that the overall processing time is also faster than only a normal alignment.

Run 3 seems to be a little worse.

Did you empty the cache in between too?

I read repeatedly (I think it’s in help somewhere) that mean and median errors of around 0.5 are ok, so you are not far off with rund 1 and 2.

You can improve that by reducing the max reprojection error (in 0.5 increments), which is more promising with run 2 because you have much more projections (and by extension features, I believe), so there is more room to tighten it down firther since you will lose an incresing number of features.

 

Thanks.

Yes, cleared cache temp folder before each Run.

Processing times (because I noted all on paper). Watching the pre-emptied cache temp folder as Align processed, a+b+c means: a = secs before first temp file is created; b = secs to create 55 temp files i.e.1 file per 12mpx photo; c = secs to finish the Align process (curious to know what’s happening during each of these 3 stages - CPU on 100% throughout, GPU zero)

Run 1 (Default Align): 7+33+19 = 59sec - 55 temp files - total 82MB

(NB Run 1 continued (Align but with Force rematch) changed nothing)

Run 2: (Default Draft Align): 3+7+5 = 15sec - 55 temp files - total 10MB

Run 2 continued (Default Align): 53sec - added 55 more temp files - total 92MB (82+10)

Run 3: (Align but with Wishgranter’s generally preferred settings): 7+32+45 = 84sec - 55 temp files - total 82MB

New Run 4: (Default Draft Align then Align but with Wishgranter’s generally preferred settings): same result as Run 2

To generalise:

i) Draft first then Align (whether default Align or with added Wishgranter) is best, and high Total projections. Total processing time is simply typical Draft time + typical Align time.

ii) Wishgranter’s preferred settings, and Force rematch, make no difference, for this (small - 55 - and difficult) photo set. Except Wishgranter’s settings significantly increased stage c) of processing time.

iii) Align alone (whether default Align or with added Wishgranter) is worst - but just now I did Run 1 (Default Align) again and it gave 4 components of 2,5,3,35 instead of 5 of 25,11,4,2,3 yesterday - that mysterious steady improvement again! - but still not as good as Draft then Align.

Good to know that mean and median error around 0.5px is OK.

But what does that mean? It’s a 0.5px deviation from what? How does RC know what the ideal should be, that it’s deviating from?

And what does Reprojection error mean? First, in idiot terms, what does Reprojection mean?

And what are we doing by setting Reprojection error? saying that any result even with high error, is better than no result by insisting on low error?

Which way does the scale go - can I confirm it’s 1 = low error, 3 = high error - or other way round?

Understanding grows, with this excellent forum’s help.

Hey Tom,

excellent results again! How do you read out the times? By “hand” or did you write some script?

I’m a bit surprised that the alignment after draft is not faster, since if you repeat any alignment, it will be much faster, even if you remove the time benefit by reusing feature detection. Maybe it would be more pronounced with larger scenes? Because with your handful of images one must consider that the results are probably not representative.

All this terminology can be looked up on various photogrammtry sites.

Reprojection Error: https://support.pix4d.com/hc/en-us/articles/202559369-Reprojection-Error

Mean/Median: http://www.diffen.com/difference/Mean_vs_Median

By setting the MAXIMUM reprojection error, you define a threshold above which RC rejects the points.

How high you allow the error to be depends on your needs for accuracy - higher error, more noise but also more possible features. So yes, an alignment can be better with a higher error, meaning there will probably be fewer and larger components. There are some threads about this - you can start with a higher error (you are correct about the scale, it is measured in pixels, btw.) and then tighten it down. That might give you more aligned images in the end.

Thanks for the praise!  :slight_smile:

I’m still learning from many question, and your questions (especially the very specific, recent ones) contribute quite a lot…

By ‘hand’ - RC on one screen, counting up the seconds; cache temp folder open in W Explorer on the other screen; when new files start to appear, and when they reach 55 and stop, I jot down the second count.

Time taken - in Draft, 55 files are created, total 10MB. Then in Align, another 55 are created, adding 82MB. Looks like RC starts stage b) all over again when Downscale factor changes. Then running Align again is only 11secs, not needing to do stage b) again - unless cache temp had been cleared meanwhile.

So looks like one can’t afford to clear cache, if planning to run Align again, or it will do stage b) all over again. However the *results* of Align (Reconstruction?) are stored in the Project and don’t need to refer to the cache temp files.

So I guess stage a) is EXIF sorting of images, b) is obviously detecting and caching points, c) is Reconstruction?

BTW I can see no cache temp numbering pattern that links any file to a particular photo image filename, a pity, as the individual files differ greatly in size, presumably due to #pts found for each.

I assume #pts in the Images list means, or is same as, ‘number of identifiable features’ in ea photo, which get used in ‘number of tie points’ in the Component>Camera poses list.

In the above Draft>Align>Align Run, I notice that in the second Align>Component>Camera poses list, three are redlined, 0 tie points, but one click on Enable brings them back with plenty of tie points. What’s that about?

I was threatened with expulsion when I mentioned that *competitor* by name. Maybe it’s OK if included in a link. I hope so, as the quality of advice there deserves to be referred to.

I know mean from median - and now I recall that ‘error’ in statistics means only ‘internal discrepancy’ not ‘deviation from absolute truth’!

 

Hi Tom,

I know they are a bit touchy about mentioning competitors. I guess it depends on the context. It says in the code of conduct not to advertize or highlight any name, strictly speaking that should allow straightforward discussion or links if in a general context. I have tried to discuss this issue a couple of times but never got anywhere - they loosened the rules a while back only to bring them back a few months ago. I don’t agree with this strictness, but I try to adhere to it whenever possible. In most cases it is clear to insiders what people are talking about since there aren’t too many different solutions out there. And it seems to be all right to replace some letters in the name, e.g. Phot**can. Just use your imagination…  :slight_smile:

In Align>Alignment report, Maximal error precisely follows the Max feature reprojection error setting; but in Draft it’s uncontrolled - like 85 or 115! This suggests that the 3 settings offered for Draft are all there is - everything else is ‘unset’, or allows the algorithm full rein?

Strangely though, experimentally setting Max feature reprojection error down to 0.5, Alignment report gives Maximal error 0.55.

Hi Tom,

I guess that is why it’s called “draft”!  :slight_smile:

Probably so that as much as possible will be aligned in the shortest possible time.

I encountered that as well, that the max repro error is not adhered to 100%. But it’s rare enough. Keep your total features in mind though when you go down with the setting - the number will decrease rapidly and there might be areas where you won’t have any left, so check the model thoroughly before you continue. I have tried once and got the best results (in my case) with 1.5 error.