Forum MicMac

This forum is dedicated the the community of MicMac users


All times are UTC + 1 hour



Post new topic Reply to topic  [ 13 posts ] 
Author Message
Offline

Joined: Apr 2014
Posts: 53
Gender: None specified
Posted: 24 Feb 2015, 16:01 

Dear all,

I write to ask about GCP residuals after GCPBAscule and Campari. If I check GCP coordinates on the 3D cloud I get very good matches on x-y coordinates, but big differences on elevation, although residuals in Campari where quite low.

Here are the commands I run:
Code:
"mm3d" "GCPBascule" ".*JPG" "Orient3" "Orient4" "GCP.xml" "GCP_meas.xml"
"mm3d" "Campari" ".*JPG" "Orient4" "Orient5" "GCP=[GCP.xml,1,GCP_meas.xml,2]"


and I get, with GCPBascule:
Code:
==== ADD Pts tp1 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt tp1 Ec Estim-Ter [0.200057,-0.343413,-0.358618]           Dist =0.535315 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 0.00425303
      ErrMoy 3.4596 pixels  SP=5
     ErrMax = 7.15371 For I=DSC01417.JPG,  C=tp1 pixels
  - - - - - - - - - - -
==== ADD Pts tp10 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt tp10 Ec Estim-Ter [-0.0280552,0.315901,4.042]           Dist =4.05442 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008,1e+008,1e+008,1e+008,1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 0.00086007
      ErrMoy 1.80588 pixels  SP=9
     ErrMax = 4.50053 For I=DSC01430.JPG,  C=tp10 pixels


and with Campari:
Code:
==== ADD Pts tp1 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt tp1 Ec Estim-Ter [7.48592e-005,-0.00165352,-0.00487488]           Dist =0.00514822 ground units
Inc = [0.01,0.01,0.02]PdsIm = [0.25,0.25,0.25,0.25,0.25]
    Ecart Estim-Faisceaux 1.3081
      ErrMoy 32.9027 pixels  SP=5
     ErrMax = 47.9779 For I=DSC01417.JPG,  C=tp1 pixels
  - - - - - - - - - - -
==== ADD Pts tp10 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt tp10 Ec Estim-Ter [0.0014809,0.000827848,0.0237134]           Dist =0.023774 ground units
Inc = [0.01,0.01,0.02]PdsIm = [0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25]
    Ecart Estim-Faisceaux 2.74581
      ErrMoy 61.6096 pixels  SP=9
     ErrMax = 114.819 For I=DSC01430.JPG,  C=tp10 pixels


Then I launch Malt, Tawny and Nuage2Ply. Finally I check GCP coordinates directly on the ply file and I see, as I told before, that planimetric coordinates are exact while elevations differ from those expected by some meters.

I can't figure out why Campari estimates very low residuals, while I get much higher residuals on the cloud.

I can post my pictures (about 90 at 16Mpx) and the exact commands I run, should someone want to look deeper on this subject.

Best regards,
Sergio


Top
  Profile 
 
Offline

Joined: Jul 2011
Posts: 1050
Gender: Male
Age: 31
Posted: 24 Feb 2015, 20:13 

Hi,

Good XY and bad Z (and very good residuals) is often caused by bad focal calibration. It happens on "flat" surfaces. I am guessing that you are flying n UAV? You might want to try calibrating your camera independently from the survey, and on a "very 3d" object on the ground (close range, converging view angles).

_________________
Join the MicMac community on Reddit : /r/MicMac/
Don't forget to check the wiki : http://micmac.ensg.eu


Top
  Profile 
 
Offline

Joined: Apr 2014
Posts: 53
Gender: None specified
Posted: 25 Feb 2015, 09:05 

Thank you, Luc. Yes, I'm processing an UAV flight.

You mean to try choosing different pictures for a first call of Tapas, and then feed the resulting orientation to the call of Tapas with all the pictures, right?

By what you say, a bad calibration cannot be detected by looking at Campari residuals on GCPs... In my case, I get very low residuals on GCPs , so I would expect low errors on the final coordinates of the GCPs in the ply file. Instead, as I said, I get errors of some meters on Z coordinates, varying from point to point, while xy coordinates are quite precise (errors of some centimeters).

Thus, is there an alternate way to detect that calibration is not adequate, if Campari resduals on GCPs look not so reliable?

Best regards,
Sergio


Top
  Profile 
 
Offline

Joined: Apr 2012
Posts: 213
Gender: None specified
Posted: 25 Feb 2015, 10:43 

Dear Sergio,

Actually, the residuals of Campari that you got are not good at all. If you inspect them in details, you will see that

-residual in ground geometry is good:

Code:
--NamePt tp1 Ec Estim-Ter [0.200057,-0.343413,-0.358618]           Dist =0.535315 ground units


-but residual in image geometry is (very, very) bad:

Code:
     ErrMax = 47.9779 For I=DSC01417.JPG,  C=tp1 pixels


It means that the weighting of observation in campari is not adaquate. You have to give more weigth on GCP images measurements and less weight on GCP ground measurement. An easy way to do so is to is to increase the ground measurement uncurtainty (GrUncertainty) and to decrease the GCP image measurements uncertainty (ImUnc). In addition, Luc is right; you may test to perform a re-calibration of your camera. I advice you to just release the calibration parameter in Campari with the additionnal parameter AllFree=1.

I tested a bit the functionning of Campari (see french congress papers : http://orbi.ulg.ac.be/handle/2268/171616) and in brief, I endded with the conclusion that the weighting of heteroneous measurements of campari was not optimal and should be set manually by trial and error. It means you should test differents values of GrUncertainty and ImUnc in order to achieve a low residual both in ground and image geometry. then your model will be good ;-)

Good work to you.

Jo


Top
  Profile 
 
Offline

Joined: Jul 2011
Posts: 1050
Gender: Male
Age: 31
Posted: 25 Feb 2015, 11:36 

Hi,

Wooops, Jo is right, I had not seen the image residuals!

Releasing all parameters should help indeed, but a good internal calibration is always a big reliable help (from images NOT taken from the air but directly on the ground with the camera -- if your camera is somewhat detachable from the drone).

Luc

_________________
Join the MicMac community on Reddit : /r/MicMac/
Don't forget to check the wiki : http://micmac.ensg.eu


Top
  Profile 
 
Offline

Joined: Apr 2014
Posts: 53
Gender: None specified
Posted: 26 Feb 2015, 17:29 

Thank you very much for your suggestions.

I'll try run Campari with AllFree=1 and changing ground and image uncertainties.

What I can't still understand well is the true relationship between Campari residuals and real coordinates on the ply file...

With another UAV flight I got, after Campari, good residuals both in ground and image geometry
Code:
==== ADD Pts mira13 Has Gr 1 Inc [0.005,0.005,0.01]
--NamePt mira13 Ec Estim-Ter [0.000154239,-6.31785e-005,-8.22725e-007]           Dist =0.000166679 ground units
Inc = [0.005,0.005,0.01]PdsIm = [4,4,4,4,4,4,4]
    Ecart Estim-Faisceaux 0.00954226
      ErrMoy 0.720515 pixels  SP=7
     ErrMax = 1.14706 For I=IMG_3732.JPG,  C=mira13 pixels
  - - - - - - - - - - -
==== ADD Pts mira15 Has Gr 1 Inc [0.005,0.005,0.01]
--NamePt mira15 Ec Estim-Ter [0.000165409,-0.000158763,-6.35994e-005]           Dist =0.00023793 ground units
Inc = [0.005,0.005,0.01]PdsIm = [4,4,4,4,4]
    Ecart Estim-Faisceaux 0.012699
      ErrMoy 0.512454 pixels  SP=5
     ErrMax = 1.40142 For I=IMG_3715.JPG,  C=mira15 pixels
  - - - - - - - - - - -
==== ADD Pts mira16 Has Gr 1 Inc [0.005,0.005,0.01]
--NamePt mira16 Ec Estim-Ter [-8.77843e-007,0.000437487,-5.617e-006]           Dist =0.000437523 ground units
Inc = [0.005,0.005,0.01]PdsIm = [4,4,4]
    Ecart Estim-Faisceaux 0.0378263
      ErrMoy 1.52341 pixels  SP=3
     ErrMax = 1.6364 For I=IMG_3700.JPG,  C=mira16 pixels


but I still get errors of many centimeters (ranging between 15 and 30 cm) on the GCPs in the ply file generated after Malt, Tawny and Nuage2Ply. They are really not big errors, but I need to know in advance the errors I can get on the GCPs after Campari, without generating the 3d cloud.
Thus, is there a way to estimate the true errors on the ply, after Campari?

Best regards,
Sergio


Top
  Profile 
 
Offline

Joined: Jan 2014
Posts: 149
Gender: Male
Posted: 26 Feb 2015, 18:42 

Hi,

It's not normal to have this ranging of errors on GCPs. Are you talking about check points or GCPs ?
Could you please tell us how do you manage to measure in the ply file ?
Is there any "truncation" in the last coordinates ?

Mehdi


Top
  Profile 
 
Offline

Joined: Apr 2014
Posts: 53
Gender: None specified
Posted: 27 Feb 2015, 10:19 

Dear Mehdi,

please find attached a report of ground control points (named GCP in the table) and Check points (named CP in the table). On the left I wrote the known coordinates and on the right the ones I got by picking directly on the ply file and the differences. To get coordinates on the ply file I use CloudCompare, that allows to pick coordinates of single points of the cloud with a reasonable degree of precision.

Image

As you can see from the last column, I get errors ranging between 3,7 and 26 cm, mostly on the Z coordinate (elevation).

These are the residuals computed by GCPBascule
Code:
"mm3d" "GCPBascule" "*.JPG" "Orient4" "Orient41" "GCP_puntiInc001.xml" "GCP_misure.xml"

Code:
==== ADD Pts mira13 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira13 Ec Estim-Ter [0.11234,-0.0502258,-0.428421]           Dist =0.445744 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008,1e+008,1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 0.000375128
      ErrMoy 0.732323 pixels  SP=7
     ErrMax = 1.42412 For I=IMG_3732.JPG,  C=mira13 pixels
  - - - - - - - - - - -
==== ADD Pts mira15 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira15 Ec Estim-Ter [0.227171,-0.0246012,-0.286195]           Dist =0.366223 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 0.000181424
      ErrMoy 0.601762 pixels  SP=5
     ErrMax = 1.19414 For I=IMG_3715.JPG,  C=mira15 pixels
  - - - - - - - - - - -
==== ADD Pts mira16 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira16 Ec Estim-Ter [-0.00949304,0.098531,0.0652587]           Dist =0.118563 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 3.90497e-005
      ErrMoy 0.166452 pixels  SP=3
     ErrMax = 0.243277 For I=IMG_3699.JPG,  C=mira16 pixels
  - - - - - - - - - - -
==== ADD Pts mira17 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira17 Ec Estim-Ter [-0.120409,-0.117826,0.203415]           Dist =0.264119 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 8.11989e-005
      ErrMoy 0.382151 pixels  SP=3
     ErrMax = 0.56842 For I=IMG_3661.JPG,  C=mira17 pixels
  - - - - - - - - - - -
==== ADD Pts mira2 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira2 Ec Estim-Ter [-0.209309,0.0936019,0.445776]           Dist =0.501286 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1e+008,1e+008,1e+008,1e+008,1e+008]
    Ecart Estim-Faisceaux 0.00042736
      ErrMoy 0.704518 pixels  SP=5
     ErrMax = 1.38346 For I=IMG_3775.JPG,  C=mira2 pixels


and Campari
Code:
"mm3d" "Campari" "*.JPG" "Orient41" "Orient43" "GCP=[GCP_puntiInc001.xml,1,GCP_misure.xml,1]" "AllFree=1"

Code:
==== ADD Pts mira13 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira13 Ec Estim-Ter [0.00049999,-5.47261e-005,-0.000175514]           Dist =0.000532719 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1,1,1,1,1,1,1]
    Ecart Estim-Faisceaux 0.0227953
      ErrMoy 1.05818 pixels  SP=7
     ErrMax = 1.68735 For I=IMG_3729.JPG,  C=mira13 pixels
  - - - - - - - - - - -
==== ADD Pts mira15 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira15 Ec Estim-Ter [0.000568305,-0.000368796,-0.000233363]           Dist =0.000716547 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1,1,1,1,1]
    Ecart Estim-Faisceaux 0.0372748
      ErrMoy 1.48039 pixels  SP=5
     ErrMax = 3.23361 For I=IMG_3715.JPG,  C=mira15 pixels
  - - - - - - - - - - -
==== ADD Pts mira16 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira16 Ec Estim-Ter [-1.38599e-005,0.000788172,-0.000103397]           Dist =0.000795046 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1,1,1]
    Ecart Estim-Faisceaux 0.0803857
      ErrMoy 2.73499 pixels  SP=3
     ErrMax = 3.28863 For I=IMG_3700.JPG,  C=mira16 pixels
  - - - - - - - - - - -
==== ADD Pts mira17 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira17 Ec Estim-Ter [-0.000279634,-0.000578213,0.000372183]           Dist =0.000742325 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1,1,1]
    Ecart Estim-Faisceaux 0.0939729
      ErrMoy 2.31719 pixels  SP=3
     ErrMax = 2.77503 For I=IMG_3663.JPG,  C=mira17 pixels
  - - - - - - - - - - -
==== ADD Pts mira2 Has Gr 1 Inc [0.01,0.01,0.02]
--NamePt mira2 Ec Estim-Ter [-0.000576311,0.0001435,0.000397914]           Dist =0.000714886 ground units
Inc = [0.01,0.01,0.02]PdsIm = [1,1,1,1,1]
    Ecart Estim-Faisceaux 0.0441279
      ErrMoy 1.56617 pixels  SP=5
     ErrMax = 2.95252 For I=IMG_3731.JPG,  C=mira2 pixels
  - - - - - - - - - - -


While I can undestand the errors on East and North, that could come from an imprecise picking of coordinates on the cloud, I cannot explain why errors on elevation are not negligible, as I expected by the negligible Campari residuals. In fact, GCPs and CPs lay on flat areas and I checked that DEM is actually flat around those points, so there are not errors on picking elevation values from the cloud.

Sorry for the lenght of this post, I tried to give more details I could...

Thank you all again,
Sergio


Top
  Profile 
 
Offline

Joined: Feb 2013
Posts: 101
Gender: None specified
Posted: 05 Mar 2015, 11:48 

Hi,

I don't know if this applies here, but we found a bug in SaisieAppuisInitQT and SaisieAppuisPredicQT, which lead to bad image measurements for some image formats (especially .CR2).
This bug is corrected from rev. 5138


Top
  Profile 
 
Offline

Joined: Jan 2014
Posts: 149
Gender: Male
Posted: 06 Mar 2015, 11:02 

Dear Sergio,

I answered to you at the begining of the week but I can see now that my answer is not any more there. I can't understand why ...

What I wrote is : I can't get your file attached. So I don't know what is written in your file report.

I also said that picking points in a 3D points cloud is not a good way to measure points. A better way is to measure your Check Points in 2D, and then perform a pseudo intersection to estimate your 3D coordinates and then compare them to your reference coordinates.

Your residuals on GCPs are too high. You can have a case where your residuals are low but if there is a translation in this coordinates, you will have high differences in your check points. If you analyse your residuals, you can see that there is a constant difference in your data ?

Best regards,

Mehdi


Last edited by daakir.mehdi on 06 Mar 2015, 11:16, edited 1 time in total.

Top
  Profile 
 
Offline

Joined: Jul 2011
Posts: 1050
Gender: Male
Age: 31
Posted: 06 Mar 2015, 11:12 

Medhi's method sounds more robust than measuring in a point Cloud (especially an AperiCloud).

Also, all messages from the "Pastis-Apero-Micmac" section where deleted so I had to restore the database and we lost a few days, sorry...

_________________
Join the MicMac community on Reddit : /r/MicMac/
Don't forget to check the wiki : http://micmac.ensg.eu


Top
  Profile 
 
Offline

Joined: Jan 2014
Posts: 149
Gender: Male
Posted: 06 Mar 2015, 11:19 

Dear Luc,

I now understand why my message is gone :)
I hope it's ok with recovering of the section.

Mehdi


Top
  Profile 
 
Offline

Joined: Apr 2014
Posts: 53
Gender: None specified
Posted: 09 Mar 2015, 17:17 

Thank you for your answers,

I tried to measure GCP and CP accuracy in a different way, but I get almost the same results. I pick planar coordinates directly on the orthomosaic generated by Tawny, after putting it in metric coordinates through its tfw file. As for elevation, I get it in the same way from the DEM file (Z_Num....tif) and its tfw file.

@Mehdi: You say that GCP errors are too high. Do you refer to residuals from GCPBascule or the errors I get from the orthomosaic? And what are usual/correct values, according to your experience?

Sorry for the insistence but, as far as you know, how can I estimate true errors on GCPs from GCPBascule/Campari residuals?

Best regards,
Sergio


Top
  Profile 
 

Who is online

Users browsing this forum: No registered users and 0 guests

Permissions of this forum:

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
Post new topic Reply to topic  [ 13 posts ] 


cron
Créer un forum | © phpBB | Entraide & support | Forum gratuit