I am reflecting on a data structure that will allow us to perform all kinds of spectral operations we normally do in remote sensing. Due to lack of an appropriate data structure supporting spatially based spectral data, right now we have to keep our data in non-georeferenced N-dimensional arrays. As for extending spacetime, for now, I can think of an ability to:
* store in the same spacetime object both the spectral and the non-spectral products (a spectral radiance image cube+computed image layers); * easily subset ranges of wavelengths (hopefully both by wavelength and band indexes) and be able to easily perform all kinds of space-time operations on the subsets; * select pixels and extract full (or partial) spectra * easily plot different spectral images in lattice panels (with stplot?) for a given time * some channels are usually too noisy so we would need ability to flag some unwanted channels at some pixels * store spectral data for point and trajectory measurements * incrementally import high volumes of data without having to load at once all the data in memory. Size of spectral image times series can be very large. On-disk storage can be sought with the use of netcdf technology for extremely large databases. and ability to easily implements methods like : * band-ratio (or all kinds of other arithmetic) operations to compute new image layers. * computation of things like spectral derivatives, spectral unmixing as well as classification algorithms that use spatial/spectral information together etc. * overlay ground truth data (ship trajectory/ground truth points/polygons) onto image time series to match image pixels with ground truth data based on spatial coordinates and time information (ship trajectories will coincide with satellite images only at some given days) * easily plot different spectra (graph of measurement wrt wavelenth) for a given pixel in panels (or in the same graph) for different times (with stplot?) * spectrally interpolate images with a high spectral resolution to estimate non-existing channels There will certainly be dimensions other than "spectral" that people from other disciplines will want to add in a spacetime object. So, to my mind, it all boils down to the ability of adding custom dimensions into a spacetime object (with numeric/string attributes addressable as in st[pixel,time,wavelength,otherdimension] If the upcoming versions of the spacetime package can be designed in such a way, we could start implementing methods on spacetime objects for our tasks in hand and the package would very fast become popular. Are any these ideas feasible? Servet PS: I am definitely ready to help if you think this is a good direction to go. I never created new object/methods myself but I am committed to learn pretty fast if some initial directions are given. -- View this message in context: http://r-sig-geo.2731867.n2.nabble.com/spacetime-adding-a-fourth-spectral-dimension-tp6306599p6329040.html Sent from the R-sig-geo mailing list archive at Nabble.com. _______________________________________________ R-sig-Geo mailing list R-sig-Geo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo