Aruco Markers Detection at Various Heights

Greetings from Balochistan!
Had flights with Phantom 4RTK from 70-110 meters with 10 meter interval. Selected 1Km stretch of road and placed 3 aruco markers (2.5x2.5 ft.) of 4X4 type. Mistakenly camera setting got brighter than default setting so don’t know if it affects burn rate in markers or not. Ran gcp_find.py but less number of markers got detected. From 80 to 110 m result is not good.
At advice of Z. Siki, experimented changing “minrate” and “ignore” parameters.
i) 70 m flight had 5 paths and 411 images. At minrate 0.02 and 0.018 and ignore 0.33, 25 instances of aruco markers got detected.
ii) 80 m flight had 3 paths and 213 images. at minrate 0.017 and ignore 0.33 got 16 instances detected
iii) 90 m flight had 3 paths and 191 images. At minrate 0.02 and 0.018 and ignore 0.33 only 4 instances of markers got detected.
iv) In some images markers appeared white due to sunlight reflection.
Need advice why at heights greater than 70 m, most markers are not getting detected while to naked eye it seems that these should get detected?
Can share data but don’t know if Wetransfer or other options can work uploading 1.7 GB data or I can share only those images which have markers-this will reduce upload size.
profound regards
Arif

1 Like

Hi,
We use a lot Find-GCP here, always with default parameters except for minMarkerPerimeterRate which is set to 0.01 but we always flight below 80m.
I could have a look, could you upload a subset for each flight with false-negative and correctly detected ones ?
No promise but I will try to understand and help as far as I can.

Also may I ask why using 4x4 markers ? Do you really need a lot of them ? Using 3x3 for samed dimensions allow better detection from higher altitude

1 Like

Thanks Bernarde!
I will upload images for you to check.
Didn’t really think of this point that 3x3 allow better detection. Will try 3x3 also.
Thanks again for your interest.
Warm regards
Arif

2 Likes

https://we.tl/t-ntxHyCTQdt
FALASE NEGATIVE

https://we.tl/t-BtosNGIFSh
DETECTED

1 Like

Could you also provide me with the gcp file needed by find-GCP ?
In particular the ids of the gcp used in the 4x4_50 dict I guess.

1 Like

4X4_100 Dict used and IDs of markers are: 1,3 and 4. File at
https://we.tl/t-HK245FY58Q

Warm regards,
Arif

1 Like

I ran few tests and think there are diverses things going on here.

Beginning with all default value except for minrate at 0.02 as in your example.

I went from 1/17 detected at 8/17 in the false negative sample you provided.

1035990.097 6323610.766 403.884 2775 1219 100_0008_0065.JPG 1

Firstly i measure one gcp in pixels, about 25 for the black part. With pictures of 5472px it means a rate of 0.0045 if I undestand correctly the perimeter rate. So i took 0.004 as my minrate parameter.
This bring me 3 new results:

1035938.724 6323561.475 400.863 4111 1301 100_0008_0160.JPG 4
1035938.724 6323561.475 400.863 4011 3178 100_0008_0163.JPG 4
1035911.022 6323572.121 402.061 4366 643 100_0008_0181.JPG 3

Then I looked at some of the undetected pictures and they seemed to me very difficult to detect because of a lot of burn/bright effect. Using a color picker in the “black” part i clearly obtain for the darker value a grey of 130. It means black is not black enough. So I ran some image processing in order to improve contrast. I do not have a lot of time to do this test so I use the Auto-Adjust colors feature of IrfanView.

This bring me 4 additional results:

1035938.724 6323561.475 400.863 1336 2922 100_0008_0016_2.jpg 4
1035911.022 6323572.121 402.061 1350 1689 100_0008_0036_2.jpg 3
1035911.022 6323572.121 402.061 2439 1456 100_0008_0109_2.jpg 3
1035911.022 6323572.121 402.061 2436 2160 100_0008_0110_2.jpg 3

I tried increasing the ignore value but with not a lot of success so I went back to the modified pictures and compare them with the original.
On the 100_0008_0014.JPG the black part goes from grey 130 to gray/blue (R:80, V:100, B:120) (i.e. still high luminance) whereas on 100_0008_0016.JPG it went from grey 60 to black/blue (R:0, V:0, B:30) (i.e. low luminance, almost black).
And guess what, 100_0008_0016_2.JPG is now detected and 100_0008_0014_2.JPG still not.

So my bet is that generally the undetected markers are to burned/bright. You could find a pre-processing to improve constrat correctly for most image (if you try a little more than me :wink: ) I guess.

Advice for future flight:

  • Use 3x3 markers, black part will be less affect by white ones (more surface so center of each black part should be darker) and additionaly allow better detection at higher altitude
  • Try to fligh on days/ours when sun is not to shiny (I have already read it somewhere in the general advice for good reconstruction I think but i was because of less shadow if I remember correctly)
  • It is unclear for me if you are using Black/White markers or Black/Grey markers because depending on the picture they appear white or grey. On our side we never had issue with the Pure White markers but I know that the Find-GCP authors recommend Grey markers to disminish the burn effect. If you are using white one try to make some greys and if they are already perhaps use a grey a little darker ?

Hopes this helps you,
Do not hesitate to comment or ask questions and of course any other advice or comments on my method is welcome

2 Likes

Thanks a lot Bernarde for detailed surgery: very educative for me. You are right that images are brighter as camera exposure was brighter than usual. The way you calculated minrate taking 25 for black part is interesting.
I will have 3x3 markers printed and take more test flights with proper camera exposure setting and ensuring placement-angle with slight adjustment in a way that sunlight does not reflect on markers.
Will share results with you here.

Once again thanks for leading to light!

profound regards

1 Like

Dear Bernarde
Greetings from Balochistan!
I tried 3X3 markers from 110 m and all got detected. My findings are: material on which markers are to be printed / painted should be totally non-reflective; and there should not be any stone or any other material disturbing the borders. small iron pegs / big nails can be used to hold the markers to the ground to prevent overturn due to wind. I was getting it difficult to get non-reflective print on durable material so I painted marker on board my self and it worked well. One piece of material which was color absorbing, in machine print, black color turned grey. I painted black oil color and it improved to the level that all instance of markers got selected.
In image 0007, there are 2 marker: upper one is 4X4 type and print is reflective and lower one is 3X3 type and totally non-reflective. In image 33, upper 4X4 type and lower 3X3 type that I painted on board: size 2.5x2.5ft. 1-2 inch white outer border should also kept.
Arif


3 Likes

When you mentioned a non-reflective material, what did you end up using for the 3x3?
What is the material you used to print on it?

I am struggling a lot with it. Using a cotton cloth works for been non-reflective, but there a lot of distortion, since is too soft and it wrinkles. I also tried printing on a tarp material, but it becomes very reflective, so in a sunny day, it does not recognizes it.

1 Like