UCANR-IGIS / uasimg

The uasimg R package provides utilities for managing drone imagery, including creating data catalogs and utilities for single-image analysis.
https://ucanr-igis.github.io/uasimg/
GNU General Public License v3.0
16 stars 10 forks source link

Can not generate world file(s). .... does not have footprints. #6

Closed sbonaime closed 1 year ago

sbonaime commented 2 years ago

Following #5 I am now not able to generate estimated world files

>uas_worldfile(hast_ft1_info)
Done.
Message d'avis :
Dans uas_worldfile(hast_ft1_info) :
  Can not generate world file(s). /Volumes/data/images/2022_06_mayotte/100_0097/ does not have footprints.
ajlyons commented 2 years ago

Thanks @sbonaime for the feedback and apologies that the error message from uas_worldfile() isn't very helpful. You've identified a key piece of information missing from the documentation. Essentially, to generate world files you have to run first run uas_info() with fp = TRUE. That will generate the parameters for the estimated footprints, and save them in the object returned by uas_info(). uas_worldfile() requires these parameters to generate the XML files that allow the images to 'pop into place' in your GIS software.

Let me know if you have any questions or problems and I can send a reproducible example. I'll improve the documentation in the next update.

RaulMartinezRincon commented 1 year ago

I have the same problem. I'm analyzing DJI phantom 4 images. I tried to generate the footprints but I couldn't.

This is my R code and the warning message:

hast_ft1_info <- uas_info("/Users/raulmartinezrincon/Documents/Dron/DJI/20221101_img_cib_biohelis/RGB/", fp = TRUE)

uas_worldfile(hast_ft1_info)

Warning message: In uas_worldfile(hast_ft1_info) : Can not generate world file(s). /Users/raulmartinezrincon/Documents/Dron/DJI/20221101_img_cib_biohelis/RGB/ does not have footprints.

Additionally I check the structure of the object and I notice this: str(hast_ft1_info) ..$ fp : logi NA

Suggesting nothing in this part of the object

ajlyons commented 1 year ago

Hi Raul. At a first glance your code looks fine. If you send me a link to one of your images I can have a go at it. Perhaps you've hit an unknown bug.

RaulMartinezRincon commented 1 year ago

Thanks so much for your quick response,

You will find the images in the following link:

https://drive.google.com/drive/folders/119qHKmtWJFQBnj0KXXphTjIq7Ed4HRa8?usp=sharing

Thanks in advance for your help

ajlyons commented 1 year ago

Thanks Raul, that helped me find the problem. There was a missing entry in the camera database for RGB images from the Phantom 4 MS. If you reinstall / update the package to version 1.8.2, it should work. If not, let me know.

remotes::install_github("ucanr-igis/uasimg")

RaulMartinezRincon commented 1 year ago

Thanks for your time and effort. But still not working...

When I run uas_info() for phantom 4 pro images I got the following:

When I run uas_info() for phantom 4 MS images I got the following:

Footprints for phantom 4 pro were generated, not for the phantom 4 MS.

Perhaps is related with the cached data. It is posible to remove the cached data?


library(uasimg) Loading required package: magrittr uasimg (version 1.8.2) Bug reports: https://github.com/ucanr-igis/uasimg/issues

R.version _
platform x86_64-apple-darwin17.0
arch x86_64
os darwin17.0
system x86_64, darwin17.0
status
major 4
minor 2.1
year 2022
month 06
day 23
svn rev 82513
language R
version.string R version 4.2.1 (2022-06-23) nickname Funny-Looking Kid

ajlyons commented 1 year ago

That's exactly right. You can tell uas_info() to refresh the cache with the update_cache argument. This worked for me using some of your images:

packageVersion("uasimg") ## verify its 1.8.2 or later p4ms_rgb_dir <- "D:\\Data\\DroneData\\phantom4"; file.exists(p4ms_rgb_dir) p4ms_rgb_info <- uas_info(p4ms_rgb_dir, update_cache = TRUE, fp=TRUE, ext = "jpg") uas_worldfile(p4ms_rgb_info)

If you still get errors let me know and I'll put it in a R Notebook.

RaulMartinezRincon commented 1 year ago

Dear @ajlyons, thanks so much for your time and help. Updating the cache did the trick.

uas_worldfile() is now working for phantom4 MS photos.

ajlyons commented 1 year ago

Glad the update worked. I also expanded the documentation for uas_worldfile() highlighting the need to compute footprints earlier in the workflow. Thank you for helping improve the package.