31

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 ...


23

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; ...


13

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 ...


9

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 ...


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

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 ...


9

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 ...


8

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....


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

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 ...


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 ...


6

The result from NDVI will be continuous (i.e. decimal) values between -1 to +1, therefore the raster must be able to store these values, and will use signed pixel depth. If you truly want 8-bit unsigned, you will need to adjust the expression in the raster calculator by linearly scaling to values between 0-255 and then applying the int() function on the ...


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 ...


5

Vegetation extraction is a bit more complex than running the spatial analysis tools that you named. For better results I would suggest the following: run analysis on a 4 band image (e.g. R,G,B,NIR) change image to be symbolized as 432 for RGB not 321 create training samples that represent vegetation and run a supervised classification These steps will ...


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

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. ...


5

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 ...


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

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 ...


4

Changes in vegetation over the month between your scenes could be part of the issue. It is also possible that there is some haze over areas of your scene outside of your dark object location(s), and therefore this haze is not being removed during your atmospheric correction. Another reason that you see contrast between the two scenes could be due to ...


4

There seems to be two camps about this one. Some prefer to mosaic before classification, others prefer to classify the images before mossaicking. Personally, I would classify the images first, then mosaic them. Have a look at the discussions on this page and you'll find arguments for and against both methods. Generally, they state that you should ...


4

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.


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

You appear to be looking at a suite of software options. A way of doing it in ArcMap model builder using off the shelf tools could be: point to raster (ensure snap to raster environment is set.) Expand (by 1 pixel to create your block of nine) Extract by mask. This method assumes that your points are not so close that their masks overlap. If overlap is ...


4

I am a developer of the open-source GIS Whitebox GAT, which contains several image processing tools including a tool called Mosaic With Feathering. I doubt that it is as sophisticated as ERDAS or ENVI tools, but it will create a seamless mosaic using a feathering scheme. A detailed description of the process can be found in the linked tutorial. You can use ...


4

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 ...


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