Aragon's answer is good for generalization. Bryan's answer is good for smoothing but is a little convoluted. Here are two alternatives for smoothing:
Use the GRASS v.generalizer tool from the Processing toolbox. This is the module on which the QGIS Generalizer Plugin in Bryan's answer is built. The GRASS tool allows you to use polygons so you can avoid ...
I've also had luck using the QGIS Generalizer plugin (enable experimental plugins), and then:
Vector > Geometry Tools > Polygons to lines
Then use the Generalizer plugin to smooth the lines and vertices
Plugins > Generalizer > Generalizer
Algorithm: "Chaiken's Algorithm"
Then turn the lines back into a polygons
Vector > Geometry Tools &...
Here are some ideas.
With base plot you can do
You can also resample your data
y <- disaggregate(x, 5, method='bilinear')
Or indeed smooth it using a focal operation
y <- focal(x, w=matrix(1, 5, 5), mean)
Or a combination
y <- disaggregate(x, 5)
y <- focal(y, w=matrix(1, 5, 5), mean)
The question whether ...
You could try merging the rasters into one:
From the toolbar:
Raster > Miscellaneous> Merge
From the Processing Toolbox:
GDAL/OGR > Miscellaneous > Merge
From the GDAL console:
gdal_merge.py -o merged.tif input1.tif input2.tif
Or build a virtual raster:
Raster > Miscellaneous> Build Virtual Raster
It is now available the Smooth geometry algorithm via Processing Toolbox > QGIS geoalgorithms > Vector Geometry Tools.
Take jagged geometry objects
Set options (I changed the Iterations field to 5 and was satisfied with the result)
Get smoothed object
The best way is to first convert your polygon to lines using polygonToLines (NOT feature to line) so that you have a single line shared by 2 polygones. Then you can smooth your lines and convert them back to polygons. If you need to keep the attribute table, create center point (INSIDE) for your original polygons and use those when you convert back to ...
In my case, I have a DEM with continue values, going from 100 to 103 meters. The spatial resolution is 0.25 x 0.25 degrees, defined in EPSG:4326. The DEM is styled with a discrete color ramp with three classes:
To smooth it, first I will make a raster algebra. Because I want a raster with only three values. I am using the following formula:
I created a small, naive script which converts input LineStrings to CompoundCurves based on some heuristics.
What it does:
Cuts down sharp corners to create a visually more appealing results than the original data.
Uses plpgsql. No additional extensions required.
Accepts an optional "smoothing factor" between 0 and 100 besides a geometry.
What it doesn't ...
There is a difference in wording but I think the options from the Generalizer plugin exists in the v.generalizer interface. Using Google Translate (yes, not the best thing to use) for the Generalizer Homepage, we can find a description on each algorithms used and their corresponding parameters.
In terms of Hermite Spline Interpolation, the homepage tells ...
I came across a thread Smoothing a 2-D figure. The answers make reference to this paper Chaikin's algorithm for curves
For a given polygon with vertices as P0, P1, ...P(N-1), the corner cutting algorithm will generate 2 new vertices for each line segment defined by P(i) and P(i+1) as
Q(i) = (3/4)P(i) + (1/4)P(i+1)
R(i) = (1/4)P(i) + (3/4)P(i+1)
So, your new ...
The smoothing is actually a part of every hydrological analysis in gis (and in arcgis as well). The tool you may want to use is fill. This tool fills sinks and remove peaks, adding functionalities such as the z-limit factor. Shortly, z-limit allow to keep sinks / peaks that exceeds the parameter's value.
You cannot clip a vector file with a raster file. So you need to convert your raster to polygon first. In ArcGIS, you can use "raster to polygon" from the Conversion toolbox (no need for an extension). The problem is that you first need to create the mask, and there is no built in tool in ArcGIS without spatial analyst. So this step has to be done in ...
For visualisation purpose, you can select a resampling method from the display properties. right click on layer > properties, then display tab / resampling during display using : cubic convolution (cubic convolution yields the smoothest display, bilinear interpolation also works).
here is an example with a S2 image, with cubic convolution (top) and ...
Simplifying and smoothing operations are related to the QgsGeometry() Class: this means that you can run them when dealing with the geometry of the current feature.
As far as I know, the Simplify geometries algorithm literally simplifies the current geometry by reducing the number of vertices on the basis of a tolerance value (so, there isn't any particular ...
There are several tools that exist in qgis to smooth contour lines as opposed to smoothing the raster itself , including vector->geometry->simplify, the vector geometry tool "smooth", and the GRASS function v.generalize.
Personally, I like the results of the SAGA module line smoothing ("http://www.saga-gis.org/saga_tool_doc/2.2.2/shapes_lines_7.html), and ...
This could be a comment to MikeT's excellent answer, if it wasn't too long and too complex. I've played with it a lot and made a QGIS plugin named FFT Convolution Filters (in "experimental" stage yet) based on his function. Besides smoothing, the plugin can also sharpen edges by subtracting the smoothed raster from the original one.
I've upgraded Mike's ...
This effect could be a consequence of having different point densities within the flight line overlap regions. A possible solution would be to homogenize the LiDAR cloud.
With Fusion the command line to accomplish such task is ThinData:
ThinData allows you to thin LIDAR data to specific pulse densities. This capability is useful when comparing analysis ...
We recently stubled across this issue as well and it is documented here: The merged LiDAR shows the trouble you report. The reason is that one flightline is much brighter than the other flightline so that the LiDAR points cannot simply be merged and have their intensity processed together. In the same flightline you also notice the negative effects of clouds ...
Rather than looking for a specific package for raster time series you could look for functions for smoothing, and then use these with the calc function in the raster package. Here is an example for Savitzky-Golay:
If you use shapely, you can try the simplify(tolerance) method on LineString objects, which is based on the Ramer–Douglas–Peucker algorithm.
It's more of a simplifying algorithm than a smoothing one; but sometimes simpler linestrings happen to be smoother. Give it a try.
Similar to what @WhiteboxDev suggested, another filter type that could be used is a sieve filter. Instead of looking at whether the 0s or 1s "win" for a given region, it looks at the number of neighbours a given pixel has, that matches its starting value, and chains those neighbours together.
For example, the following case:
0 0 0
1 1 1
0 0 0
With a ...
In addition to the use of a majority filter, there is another alternative approach that I will list below. This approach is more involved than simply filtering the raster and should only be used when it is important that the polygons retain their original shape and you are only concerned with reducing the overall number of polygon features. This approach ...
Apart from geometry generator with expression smooth($geometry), there are different smoothing tools available in QGIS - best filter in the processing toolbox with the search-string smooth. There's a native QGIS tool as well as a SAGA line smoothing tool.
The following screenshot is made with the QGIS tool: red - original line, blue smoothed line. Adapt ...
If you do have ArcGIS and no SA: you might consider converting to points, deleting the values below 12, making the rest of the values a single integer, convert to raster, and then converting to polygon.That polygon would be used in the clips and advanced drawing layer masks, I tested this on an SRTM, and it worked well:
from arcpy import env
Following up on the Comment by @whuber, the Majority Filter (Spatial Analyst) documentation says (with my bolding):
The input raster to be filtered based on the the majority of
contiguous neighboring cells.
It must be of integer type.
You have to choose GRASS commands -> v.generalize. In parameters you need to choose Input polygon and one of the simplifications methods. Personaly I prefer snakes because it creates very nice smoothed border.