uas_info()
: addedpattern
argument to provide more options for specifying images to read in directories with data from mixed sensors; fixed a bug with the error trapping; updated help page.
Note: there's a slight chance this update could break existing code, because the ext
argument in uas_info()
now has a non-NULL default value. Moving forward, it is recommended to always specify the image file name extensions using ext
.
uas_toc()
: fixed an error that occurred if flight summaries were in different UTM zones (#13)uas_report()
: fixed a dependency bug in whentbm_use = TRUE
uas_info()
: make theext
argument a vector, changed the default value to common image extensions, updated checks for files with missing EXIF data (#12), added a check for multiple sensor types in one directoryggplot2
added to Suggests (used when creating whole flight thumbnails)
- added the XT2 RGB image to the camera database
uas_report()
: fixed a buguas_info()
: trapped errors when Make and Model tags are blank, or if there not enough images to compute a MCP
This is a fairly significant update. Key changes include:
- rotated thumbnail images in flight summary reports
- The ability to export individual images as pseudo-rectified GeoTIFFs
- Repairing the ability to download thumbnail images of flights from Google Maps or Stadia Maps (via ggmap) for flight summary reports, and several changes to the arguments in
uas_report()
that control this.
To use rotated thumbnail images for the flight summary reports, you must create the thumbnail images using uas_thumbnails_make()
(and set the rotate
argument to TRUE
). If you don't do this but ask for thumbnail images to be included in a flight summary report, uas_report()
will still create thumbnail images on-the-fly, but there isn't a rotation option (and in a future update uas_report()
will no longer generate thumbnails on-the-fly).
Changes were also made to several arguments in uas_report()
that control downloading a thumbnail image for the entire flight (aka thumbnail map). See the help page for the new arguments (pts_col
, tbm_use
, tbm_overwrite
, tbm_size
, tbm_src
, tbm_api_key
, and tbm_exp
) and deprecated arguments (png_map
, overwrite_png
, png_exp
, google_api
, and col
). Some of these are simply name changes, while others are new or have different behavior. In a future update, downloading thumbnail images of the flight area will be moved to a separate function.
Along the same lines, both Google Maps and Stadia Maps (which replaced the defunct Stamen Maps API) require passing an API key (see the uas_report()
help page for info about how to get an API key) . Your preferred service should be passed as tbm_src
, and your API key must be passed as tbm_api_key
. If you use Google Maps, you'll get a satellite image, while Stadia Maps will download a terrain image (similar to Stamen). Thumbnail maps are still downloaded using ggmap
, however you can no longer 'preload' your API key in .Renviron
; you must pass it in explicitly with tbm_api_key
. If this present problems contact the package author.
Other changes include:
uas_exp_geotiff()
: new function to create a pseudo-georectified image (using the modeled footprint) as a GeoTIFF (#7)uas_thumbnails_make()
: new argumentrotated
will create rotated thumbnails (FALSE by default for backward compatibility)uas_worldfile()
: added new argumentflt
for the flight index (because a uas_info object can contain metadata for multiple flights / image collections). Improved error messages.terra
added as a suggested dependency (to support the newuas_exp_geotiff()
function)magick
moved from imports to suggestsuas_convert()
: checks added to see ifmagick
is installedleaflet.extras
added to imports (to add a full screen control to the leaflet map on flight summary reports)lifecycle
package added to imports (to communicate renamed arguments)uas_exp_kml()
,uas_exp_shp()
,uas_thumbnails_make()
,uas_move()
,uas_rename()
,uas_report()
: argumentflt
added for consistency across functions;flt_idx
deprecated. Improved error messages (#6)uas_report()
:units
argument added to set whether to use imperial or metrics units for the flight area, altitude AGL, and GSD (#11). Several arguments related to downloading thumbnail images of flight areas have been deprecated, renamed, or added, for consistency and to deal with changes in ggmap.uas_report.Rmd
: modified so the thumbnail image height is automatically set by the browser (to accommodate thumbnail images with different aspect ratios, including rotated images); added a button to display the map full screen; added code to supportunits
argumentuas_info()
: the cache is auto-refreshed iffp=TRUE
andcache=TRUE
but the cache doesn't contain footprints (#6); added an extra sort by datetimeoriginal to deal with the odd case where sorting images by their filenames doesn't result in a sequential order (#9).cameras.csv
: added DJI Zenmuse P1 (#8), Autel Evo2 RGBuas_cameras()
: updated to import and view the flight-yaw tag column
uas_worldfile()
: updated function documentation (#6)
- cameras.csv: updated EXIF fields for Phantom 4 MS RGB (added tag_elev_agl) (#6)
uas_info()
: updated status message (to include the optional ext argument)
uas_rename()
: new function to rename images based on a name template with placeholders for image and flight metadatauas_info()
: updated documentationuas_metadata_make()
: updated default flight metadata templateuas_report.Rmd
: changed the default Window title to the short version of the flight name
uas_info()
: argumentext
added (filter by file type); minor code cleaning,- cameras.csv: Phantom 4 Pro RTK and Phantom 4 Multispectral added
uas_info()
: added argumentpath2name_fun
; modified to support newdate_time
column in cameras.csvuas_path2name_fun()
: new function that returns a function to parse a directory path and concatenate user-specified elements to form a flight name; designed to be passed as the value of thepath2name_fun
argument inuas_info()
to construct default flight namesuas_report()
anduas_toc()
: argumentsheader_html
andfooter_html
can now accept URLsmagrittr
package added to imports (needed to use the results ofuas_path2name_fun()
)cameras.csv
addeddate_time
column (to accommodate the cameras like the Airphen that don't have a DateTimeOrginal EXIF tag)uas_readcameras()
addeddate_time
column to import
uas_info()
: fix a bug that occurred when gpslatitude and gpslongitude were not found in EXIF data
- added Airphen to the camera database
uas_info()
: modified such that a generic camera is used if the camera is not detected
- added MicaSense Altum and MicaSence RedEdge-MX to the camera database
- added Phantom 4 Pro V2 (FC6310S) to the camera database
uas_toc()
: fixed a bug when output_dir = ".", gather_dir = NULL, and input reports are on a different volume
uas_report.Rmd
: fixed a bug whengroup_img = FALSE
- cameras.csv: added Mavic Air 2 (precision dimensions of sensor not available, hence footprints should be taken as estimates only)
uas_move()
: renamedoutdir_root
tooutdir_base
.- updates to Readme and vignettes
uas_report()
: fixed a bug parsing the results ofuas_thumbnails_make()
uas_report.Rmd
: added default value for parameter nomap
NOTE: AFTER INSTALLING THIS UPDATE YOU SHOULD RUN uas_clearcache()
uas_toc()
: added uas_report.css to the files that get gatheredstringr
added to imports (i.e. required)- cameras.csv and
uas_cameras()
: addedcamera_abbrev
columns uas_readcameras
: addedcamera_abbrev
uas_info()
: updated to find exiftool executable installed by exiftoolr;camera_name
andcamera_abbrev
added as an attribute fields to accommodate multi-sensor flightsprint.uas_info()
andreport.Rmd
: updated to report the number of images per camera for multi-sensor flightsuas_report()
: changed default filename suffix to_rpt
; updated for multi-folder flightsuas_move()
: overhauleduas_worldfile()
,uas_cropctr()
: updated for multi-folder flightsuas_exp_shp()
,uas_exp_kml()
: updated for multi-folder flights; argumentimg_dir
replaced withflt_idx
uas_thumbnails_make()
: argumentimg_dir
replaced withflt_idx
- hex logo added
uas_dirs_find()
: fixed a case where images in tb folders were not excluded
uas_dirs_find()
: path column in the tibble is now wrapped innormalizePath()
(primarily for readability with network paths)uas_report()
: returned HTML file names are now wrapped innormalizePath()
;show_gps_coord
deprecateduas_toc()
: fixed an error where the libs subfolder was not being gathereduas_toc.Rmd
: added error trapping code if metadata fields are missinguas_report.Rmd
: modified the balloon text to show GPS coords
uas_thumbnails_make()
: modified to automatically switch to the magick package functions (with a message) if thumbnails from TIFs are being created andimager:::has.magick()
is FALSE.
uas_thumbnails_make()
: enableduse_magick
argument
uas_report()
: added checks for directory existence and accessuas_metadata_make()
: argumentmd_template
can now be a URL- added Flight Metadata Vignette
uas_dirs_find()
: new function to find all sub-directories with imagesuas_thumbnails_make()
: addedstats
argument to display the amount of time taken per thumbnailuas_report()
: addeduse_tmpdir
argument to render the flight summary report in temp folder (can prevent Pandoc errors when images are on a network drive)
uas_cropctr()
: removed a leftover debugging statement
uas_metadata_make()
: addeduse_system_editor
argumentuas_report()
: addedheader_html
andfooter_html
arguments
uas_metadata_make()
: appendedfile:
to metadata files on network paths to get it to open in notepad; added more comments in template
uas_convert()
: this new function converts images between file formats (e.g., DNG to JPG), while preserving EXIF datamagick
andexiftoolr
added as dependent packages (as imports)uas_info()
: added argument forexiftoolr_use
uas_getoemflds()
: added 'uav' to the list of default flight metadata fields- updated camera database: (added senseFly Aeria X and DJI M100 X3Z)
uas_report()
,uas_exp_kml()
, anduas_exp_shp()
: added checks after dir.create()
uas_metadata_make()
: additional comments inserted when creating a brand new new metadata fileuas_getflds()
: exporteduas_thumbnails_make()
: increased the number of bytes read to create a unique filename from 500 to 2000uas_info()
: updated to always rename yaw field even when fp = FALSEuas_clearcache()
: created
uas_report()
anduas_report.Rmd
: argumentsreport_title
andkml_ctr
added; trapped an error if metadata exists but without an image collection name; thumbnails disabled for grouped images (until a better visualization is implemented); additional tags added to facilitate web scrapinguas_info()
: deafult value offp
changed toFALSE
; default value ofcache
changed toTRUE
; a flight id value saved in return value (used primarily to name files if metadata$name_short is missing)uas_flds_oem()
:name_short
andnotes
added to default fields;collection_name
removeduas_toc()
anduas_toc.Rmd
: check that html files exist added; all code migrated from XML to xml2uas_exp()
renamed (back to)uas_exp_shp()
;uas_exp_kml()
createduas_thumbnails_make()
created- xml2, tibble and imager added to Imports (required packages); XML and magick package removed
uas_toc()
anduas_toc.Rmd
updated - newsummary_map
argument displays an interactive mission footprint mapuas_report.Rmd
updated - flight MCP converted to base64 and encoded in a meta taguas_report.R
updated - argumentlocal_dir
renamedshow_local_dir
;gps_coord
renamedshow_gps_coord
uas_exp()
renameduas_exp_shp()
- added
kml_mcp
touas_report()
- improved help page for
uas_info()
anduas_cameras()
- added
name_only
argument touas_cameras()
- renamed argument
csv
toexif_csv
inuas_info()
- added argument
gps_coord
touas_report()
& modifieduas_report.Rmd
to show the GPS coordinates in the pop-up windows
- Added DJI ZenMuse X7 to camera database
uas_info()
edited to i) check the number of images in the directory before computing forward overlap, ii) add bullet characters to feedback messages
- Added a
NEWS.md
file to track changes to the package. geo2utm()
modified to return a EPSG number (to comply with recent changes to rgdal and proj4). After installing this update, users are advised to delete their old cache (seeuas_getcache()
) to prevent warning messages about unknown datums in a proj4string.uas_cropctr()
added - crops around the center of each image for a better photo mosaic
uas_report()
modified to return the file name of HTML files that already exist and overwrite = FALSE; corrected the extension for tif thumbnail files.- Added
uas_metadata_make()
. - Modified
uas_toc()
anduas_toc.Rmd
to supportgather = '.'
, handle duplicate HTML names, a description, and default footer. - Corrected a bug in
uas_info()
when no external metadata was found or passed as an argument. - Other minor fixes and enhancements.
- Added an option in
uas_report()
to create thumbnails previews that appear in the popup windows of the image collection catalog. - Added
combine_dirs
argument touas_grp_flt()
to support multi-directory flight parsing. - Added custom print functions for uas_info and uas_grp objects.
- Numerous small enhacements and bug fixes.
uas_info(()
modified to support file names metadata.txt expanded to metadata*.txt.
- Renamed
uas_getcache()
anduas_setcache()
. - Added
uas_grp_flt()
anduas_grps2col()
. - Added
uas_getflds()
anduas_setflds()
. - Added Mavic 2 Pro to camera database.
- renamed
meta_extra
argument tometadata
inuas_info()
.
- Added
uas_getcachedir()
anduas_setcachedir()
to manage cache directory for EXIF data. - Renamed cache arguments on
uas_info()
tocache
andupdate_cache
. - Added
uas_toc()
.
- Modified
uas_report()
and uas_report.Rmd, metadata now encoded in HTML. - Argument
toc_csv
deprecated. summary.uas_info()
replaced withprint.uas_info()
(generic print method).
- Added 'description' element to
meta_extra
argument touas_info()
. - Added
cache_dir
andcache_update
touas_info()
. - Split
overwrite
argument inuas_report()
intooverwrite_html
andoverwrite_png
.
- Added
meta_extra
argument touas_info()
. - Added
toc_csv
argument touas_report()
.
- Initial release of
uasimg
- Key differences from older
uavimg
:- All prefixes changed from
uavimg_
touas_
- Converted all functions to the
sf
package - Added
overwrite
argument touas_exp()
anduas_report()
- Added support for paths with spaces:
uas_info()
- Added
sf
,tidyr
andcrayon
packages as dependencies - Fixed a bug in
findonpath()
when path values had trailing slashes
- All prefixes changed from