37

Panchromatic images are created when the imaging sensor is sensitive to a wide range of wavelengths of light, typically spanning a large part of the visible part of the spectrum. Here is the thing, all imaging sensors need a certain minimum amount of light energy before they can detect a difference in brightness. If the sensor is only sensitive (or is only ...


28

I propose two solutions: the first one using QGIS, the second one using Python (GDAL). Solution using QGIS In QGIS you may create a VRT mosaic. Please follow this procedure (see the image below): Load the raster in the Layers Panel; Right-click on it and choose Save As...; Check the Create VRT option; Choose the folder where your outputs will be saved; ...


14

For images of the same location but different dates, I would rather talk about compositing than mosaicing (which combines images from different extents into a larger image). You will find a lot of details if you search "compositing" keyword, but here is a short summary: There are two main approaches for the compositing of time series: Best available pixel ...


10

I've had to map ditches from 1 m LiDAR derived DEMs of agricultural landscapes before. It's certainly a challenging task to come up with a workflow that is suitable. You're ability to successfully extract a ditch network will depend on a number of factors. For example, are you only interested in roadside ditches? If so, are the roads on embankments (as is ...


10

Fundamentally the question here is "what does 'scientifically valid' mean". If you are looking to do spectral modelling on the data, then the answer is possibly different than if you are looking at doing classification / image segmentation. Pansharpening (depending on the method) is simply going to change the range of the values a fairly small amount and ...


10

For the most part not an ArcGIS answer but you could try it anyway since it is completely free software. You could try using scikit-image. You will get it if you install Anaconda (with Anaconda you also get jupyter-notebook which is a great python ide and lots of other useful python libraries). I followed this tutorial, with very limited experience of ...


9

Ok, I'm sorry to post a question and then answer it myself so quickly, but I found a nice set of course slides from Utah State University that has a lecture on opening raster image data with GDAL. For the record, here is the code I used to open the PRISM Climate Group datasets (which are in the EHdr format). def ReadBilFile(bil): import gdal gdal....


9

I hacked together a solution for this and wrote a blog article a while back on a very similar topic, which I will summarize here. The script is intended to extract a river from a 4-band NAIP image using an image segmentation and classification approach. Convert image to a numpy array Perform a quick shift segmentation (Image 2) Convert segments to raster ...


9

The intensity image should be used for calibration and subsequent classification of geophysical features. To radiometrically calibrate the intensity, use the Calibrate tool in the Sentinel-1 Toolbox (SAR Processing > Radiometric > Calibrate). The S-1 Level 1 GRD product includes several Look-Up Tables (LUTs) to convert intensity values into sigma or gamma ...


8

Save result array (rf_array) as in the following lines: rf_array = df_join['Prediction'].values # returns numpy.ndarray rf_array = rf_array.reshape(img.shape[0], img.shape[1]) # rf_array = rf_array.reshape(869, 1202) with rasterio.open('path/to/new.tif', 'w', driver='GTiff', height=rf_array.shape[0]...


7

Scikit-learn has some excellent unsupervised classification/clustering algorithms. The batched K-means algorithm works quickly with large datasets. Here is an example using the KEA file format. You will have to modify this slightly to work with whatever raster format you use. import rsgislib from rsgislib import imageutils from osgeo import gdal import ...


7

You could look at clustering in scikit-learn. You will need to read the data into numpy arrays (I'd suggest rasterio) and from there you can manipulate the data so that each band is a variable for classification. For example, assuming you have the three bands read into python as red, green, and blue numpy arrays: import numpy as np import sklearn.cluster ...


7

I am the main developer of MGET. The first step in your problem is to obtain values of the covariates that you will use to fit the model to your 90 GPS points. It sounds like you want to use the 8 bands as your covariates. You need to add 8 fields to your shapefile (one for each band) and populate them using a tool such as Extract Multi Values to Points ...


7

The three sensors are all slightly different. However the OLI/TIRs setup is a marked departure from the TM/ETM+ sensors. The changes are succintly summarised by Li et al. 2013 as the: replacing of whisk-broom scanners with two separate push-broom OLI and TIRS scanners, an extended number of spectral bands (two additional bands provided) and narrower ...


7

Atmospheric correction is particularly usefull if you need consistency between dates and/or adjacent tiles. Some studies showed that the use of atmospherically corrected images improve the subsequent use of the data. In addition, L2A images also contain flags for unusable data (e.g. clouds, snow...). The drawback is that the flags may contain some errors and ...


6

Answer for others so confused people as I am: To know how to deal with downloaded raw Landsat data - what else in pre-processing do I need? Firstly check their processing level in_MTL.txt file (included in downloaded Landsat image: http://landsat.usgs.gov/Landsat_Processing_Details.php) Processing level = DATA_TYPE L1T - terrain corrected processing. ...


6

Your question is two-fold. With regards to the actual atmospherically corrected data: there is no simple method for testing if the calculated reflectance values are right. However, the simplest approach is to compare the resulting spectras to known spectras from the literature. Which bit of literature you need to find depends on your area / local ecosystem ...


6

Otsu's method does not really care about actual values since it tries to minimize the total variance within classes while maximizing the distance between the classes. So, you could just run Otsu on your original data (no need to rescale) and it will provide you with the optimal threshold to use to achieve the goal listed above. I don't know what is your ...


6

Don't split You gdalbuildvrt, you can create virtual tiles that will only use a few bytes on your disk. Then you can use most softwares that will take your vrt's as input to perform your processing. Alternatively, I would rather look for a tool that can work with a 1Gb image than split and merge an image. For instance, OTB has most of the capabilities for ...


6

Another solution using GDAL is the gdal_retile.py tool: mkdir image_tiles gdal_retile.py -v -r bilinear -levels 1 -ps 20000 20000 -co "TILED=YES" -co "COMPRESS=JPEG" -targetDir image_tiles big_input_image.tif For more Information see: http://www.gdal.org/gdal_retile.html


6

I know that you have tried to frame this as a general question, rather than specific to SPOT 6/7, but it's really a little of both. The naive answer to the "general" question "what is lost when transforming 12-bit raster data to 8-bit?" is "4 bits of precision." This answer may not be terribly useful though because there are ...


5

I am the author of the R package gapfill, which is a flexible tool to predict missing values in spatio-temporal remote sensing data sets. https://CRAN.R-project.org/package=gapfill It could be helpful in your case. For an overview of published methods to predict missing values in remote sensing data sets see Table 1 of the corresponding publication https://...


5

I had some success by changing the target directory to which I saved the signature file. Rather than using the server space I had been alloted, I chose the local desktop, and it worked without a hitch. Not sure why.


5

I guess you have gdal and the bindings installed, and some coding ability, so I'll just provide an outline: import org.gdal.gdal.gdal; import org.gdal.gdal.Band; import org.gdal.gdal.Dataset; ... Dataset dataset = gdal.Open(filename); Band band = dataset.GetRasterBand(1); ... // Do some band operation, like band.ReadRaster() to get the data, whatever you ...


5

Yes, there are free object-oriented (segmentation) software available. A few that come to mind are Spring, ITK, Orfeo toolbox and GRASS GIS. I would however point out that image segmentation is a poor direction to peruse when trying to model fractional cover. A segmentation algorithm is designed to minimize within unit variance and maximize between unit ...


5

I would follow as below in version 9: Use sample selection algorithm(use brush and set class) and select samples and save these layer as TTA mask Then you can generate TTA mask from sample Now you can perform AC.


5

I think you can do some thresholding if you stretch your histogram. In the example below, I streched it between percentile 2 and 98 and set a treshold at 250. It looks like a start. import numpy as np import matplotlib.pyplot as plt from scipy import ndimage as ndi from skimage import exposure # rebuilding your image from capure noisy = ndi.imread('img/...


5

You can mosaic a collection of pan-sharpened images as follows: // Function to mask clouds using the quality band of Landsat 8. var maskL8 = function(image) { var qa = image.select('BQA'); /// Check that the cloud bit is off. // See https://landsat.usgs.gov/collectionqualityband var mask = qa.bitwiseAnd(1 << 4).eq(0); return image.updateMask(...


4

The first thing you will want to do is look at the Google Terms of Use and Licensing. Google is very particular on how their data and software can be used. I would look at this first as it may be a show-stopper. The second thing I would consider is that the imagery in Google isn`t raw imagery; they are chips or tiles of data saved in a web tiling format. ...


4

Probably the easiest thing to do is use gdal_translate to create the resized image with something like: gdal_translate -outside 50% in.tif in.small.tif But if you do need to use ImageMagick, try translating your raster to a VRT first: gdal_translate in.tif in.vrt The resulting XML document should include all the relevant metadata, including the ...


Only top voted, non community-wiki answers of a minimum length are eligible