View source: R/brapi_post_images.R
brapi_post_images | R Documentation |
Create new image meta data objects
brapi_post_images( con = NULL, additionalInfo = list(), copyright = "", description = "", descriptiveOntologyTerms = "", externalReferences = "", imageFileName = "", imageFileSize = as.integer(NA), imageHeight = as.integer(NA), imageLocation = list(), imageName = "", imageTimeStamp = "", imageURL = "", imageWidth = as.integer(NA), mimeType = "", observationDbIds = "", observationUnitDbId = "" )
con |
list; required: TRUE; BrAPI connection object |
additionalInfo |
list; required: FALSE; Additional arbitrary information. If provided use the following construct list(additionalProp1 = "string", additionalProp2 = "string", additionalProp3 = "string"). The Examples section shows an example on how to construct the
|
copyright |
character; required: FALSE; The copyright information of this image, e.g. "Copyright 2018 Bob Robertson". |
description |
character; required: FALSE; The human readable description of an image. |
descriptiveOntologyTerms |
vector of type character; required: FALSE; A list of terms to formally describe the image to search for. Each item could be a simple Tag, an Ontology reference identifier, or a full ontology URL.; default: "", when using multiple values supply as c("value1", "value2"). |
externalReferences |
data.frame; required: FALSE; A data.frame of
external reference ids. These are references to this piece of data in an
external system. Could be a simple string or a URI. The
The Examples section shows an example of how to construct the
|
imageFileName |
character; required: FALSE; The name of the image file,
e.g. "image_0000231.jpg". Might be the same as |
imageFileSize |
integer; required: FALSE; The size of the image in Bytes. |
imageHeight |
integer; required: FALSE; The height of the image in Pixels. |
imageLocation |
list; required: FALSE; One geometry as defined by GeoJSON (RFC 7946). All coordinates are decimal values on the WGS84 geographic coordinate reference system. A coordinate position MUST be two or more elements. The first two elements are longitude and latitude, or easting and northing, precisely in that order and using decimal numbers. Altitude or elevation MAY be included as an optional third element and is specified in meters. The
The easiest way in R to construct the |
imageName |
character; required: FALSE; The human readable name of an
image. Might be the same as |
imageTimeStamp |
character; required: FALSE; The date and time when the image was taken. Coded in the ISO 8601 standard extended format, where date, time and time zone information needs to be provided (check for example https://www.w3.org/TR/NOTE-datetime). |
imageURL |
character; required: FALSE; The complete, absolute URI path to the image file. Images might be stored on a different host or path than the BrAPI web server. |
imageWidth |
integer; required: FALSE; The width of the image in Pixels. |
mimeType |
character; required: FALSE; The file type of the image, supply using the pattern: "image/", e.g. "image/jpg", "image/jpeg", "image/png", "image/svg", etc. |
observationDbIds |
vector of type character; required: FALSE; A list of unique observation database identifiers this image is associated with, if applicable; default: "", when using multiple values supply as c("value1", "value2"). |
observationUnitDbId |
character; required: FALSE; The unique database identifier of the related observation unit, if relevant. |
Create new image meta data objects. Implementation Notes:
imageURL
should be a complete URL describing the location of the image.
There is no BrAPI call for retrieving the image content, so it could be
on a different path, or a different host.
descriptiveOntologyTerms
can be thought of as Tags for the image. These
could be simple descriptive words, or ontology references, or full
ontology URI's.
The /images
calls support a GeoJSON object structure for describing their
location. The BrAPI spec for GeoJSON only supports two of the possible
geometries: Points and Polygons.
With most images, the Point geometry should be used, and it should indicate the longitude and latitude of the camera.
For top down images (i.e. from drones, cranes, etc.), the Point geometry may be used to indicate the longitude and latitude of the centroid of the image content, and the Polygon geometry may be used to indicate the border of the image content.
data.frame
Maikel Verouden
Other brapi-phenotyping:
brapi_get_events()
,
brapi_get_images_imageDbId()
,
brapi_get_images()
,
brapi_get_methods_methodDbId()
,
brapi_get_methods()
,
brapi_get_observationlevels()
,
brapi_get_observations_observationDbId()
,
brapi_get_observations_table()
,
brapi_get_observations()
,
brapi_get_observationunits_observationUnitDbId()
,
brapi_get_observationunits_table()
,
brapi_get_observationunits()
,
brapi_get_ontologies()
,
brapi_get_scales_scaleDbId()
,
brapi_get_scales()
,
brapi_get_search_images_searchResultsDbId()
,
brapi_get_search_observations_searchResultsDbId()
,
brapi_get_search_observationunits_searchResultsDbId()
,
brapi_get_search_variables_searchResultsDbId()
,
brapi_get_traits_traitDbId()
,
brapi_get_traits()
,
brapi_get_variables_observationVariableDbId()
,
brapi_get_variables()
,
brapi_post_methods()
,
brapi_post_observations()
,
brapi_post_observationunits()
,
brapi_post_scales()
,
brapi_post_search_images()
,
brapi_post_search_observations()
,
brapi_post_search_observationunits()
,
brapi_post_search_variables()
,
brapi_post_traits()
,
brapi_post_variables()
,
brapi_put_images_imageDbId_imagecontent()
,
brapi_put_images_imageDbId()
,
brapi_put_methods_methodDbId()
,
brapi_put_observations_observationDbId()
,
brapi_put_observationunits_observationUnitDbId()
,
brapi_put_scales_scaleDbId()
,
brapi_put_traits_traitDbId()
,
brapi_put_variables_observationVariableDbId()
Other Images:
brapi_get_images_imageDbId()
,
brapi_get_images()
,
brapi_get_search_images_searchResultsDbId()
,
brapi_post_search_images()
,
brapi_put_images_imageDbId_imagecontent()
,
brapi_put_images_imageDbId()
## Not run: con <- brapi_db()$testserver con[["token"]] <- "YYYY" ## Create function argument values additionalInfo <- list(dummyData = "TRUE", example = "post_images") copyright <- "Copyright 2021 Bob Robertson" description <- "This is a picture of a tomato" descriptiveOntologyTerms <- c("doi:10.1002/0470841559", "Red", "ncbi:0300294") externalReferences <- data.frame(referenceID = c("doi:10.155454/12341234", "http://purl.obolibrary.org/obo/ro.owl", "75a50e76"), referenceSource = c("DOI", "OBO Library", "Remote Data Collection Upload Tool")) imageFileName <- "image_0000231.jpg" imageFileSize <- 50000 imageHeight <- 550 ## Create the imageLocation argument ## Load geojsonR package library(geojsonR) ## Create a imageLocation list object ## Point geometry init <- TO_GeoJson$new() imageLocation <- list() pointData <- c( 5.663288, # longitude 51.988720, # lattitude 0) # altitude imageLocation[["geometry"]] <- init$Point(data = pointData, stringify = FALSE) imageLocation[["type"]] <- "Feature" ## or ## Polygon geometry with an exterior and one interior ring init <- TO_GeoJson$new() ## Individual polygon points are provided as c(longitude, latitude, altitude) polygonData <- list(list(c(5.663176, 51.988506, 0), # exterior ring (rectangle) c(5.663601, 51.988626, 0), c(5.663405, 51.988904, 0), c(5.662976, 51.988788, 0), c(5.663176, 51.988506, 0))) imageLocation <- list() imageLocation[["geometry"]] <- init$Polygon(data = polygonData, stringify = FALSE) imageLocation[["type"]] <- "Feature" imageName <- "Tomato Image 1" imageTimeStamp <- "2021-10-11T14:11:28.672Z" imageURL <- "https://wiki.brapi.org/images/tomato" imageWidth <- 700 mimeType <- "image/jpeg" observationDbIds <- c("observation1", "observation4") observationUnitDbId <- "observation_unit1" ## Add new image meta data brapi_post_images(con = con, additionalInfo = additionalInfo, copyright = copyright, description = description, descriptiveOntologyTerms = descriptiveOntologyTerms, externalReferences = externalReferences, imageFileName = imageFileName, imageFileSize = imageFileSize, imageHeight = imageHeight, imageLocation = imageLocation, imageName = imageName, imageTimeStamp = imageTimeStamp, imageURL = imageURL, imageWidth = imageWidth, mimeType = mimeType, observationDbIds = observationDbIds, observationUnitDbId = observationUnitDbId) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.