Tag Info

Hot answers tagged

19

GRASS GIS has a tool to convert raster lines to vector. The procedure is: First open the map in an image editor (GIMP), select by colors with some tolerance and select the black color. Invert selection and delete non-black stuff. Save as Tiff WITH NO COMPRESSION. Then in GRASS: r.in.gdal - import raster r.thin - Thins non-zero cells that denote linear ...


7

Use GRASS with the native GUI or with the QGIS plugin or with the Sextante plugin and use the v.generalize tool, choosing the "Chaikens" algorithm.


7

Georeference the image and capture by hand. This is by far the best way as it is less prone to error.


7

If all you have is the jpg, then I would suggest georeferencing the jpg and then manually digitizing the roads/rivers/etc vectors. That will give you the best control over the result, I personally have never had good luck with using raster-vector conversions in a situation like this. Unfortunately, sometimes the best option is to just do it the hard way. ...


6

You can use GDAL tool inside Quantum GIS. Its free and it works fine. Install Quantum GIS and Gdaltools and you'll have a set of tool for raster/image processing. The one you want would be vectorize (gdal_polygonize). Cheers


5

To simplify the raster it might be worth looking at gdal_sieve, it's available under the "Raster" menu. See: http://www.gdal.org/gdal_sieve.html N.


5

From the point of view of population density, an "urban area" ought generally to satisfy just a few axiomatic criteria: Its boundary should not include any points of (relatively) high density compared to the maximum density within its interior. It should be simply connected (no "holes"). Its average population density should exceed some prespecified ...


4

I did some work on this for my MSc http://ian01.geog.psu.edu/papers/mscthesis.pdf - basically I worked on gradient changes but the discussion may help you with this.


4

I haven't used it, but you may want to try the gdal_polygonize script that comes with GDAL http://www.gdal.org/gdal_polygonize.html


4

I assume that your graphs came from a R-script and that you are capable of using R. Here is a solution in R, which finds local maxima and minima along a data sequence x <- rnorm(50,mean=1500,sd=800) # Example-Data r <- rle(x) # Generate run sequence object min <- which(rep(x = diff(sign(diff(c(-Inf, r$values, -Inf)))) == 2, times ...


4

To generalize, try running a majority filter. This is available in saga (and grass as well, check markusN his answer). An explanation for how it works from arcgis: http://edndoc.esri.com/arcobjects/9.2/net/shared/geoprocessing/spatial_analyst_tools/majority_filter.htm


4

In answer to my own question, I've written a program to "vectorize" an ArcInfo Grid ASCII files as an ESRI shapefile with a single layer containing oriented polygonal grid squares centered at the points of the grid, with an attribute value equal to the value at the coordinates of the centroid. The program (still under development) is available on GitHub. An ...


3

You can first use the "mode" operator of r.neighbors in GRASS GIS (via Sextante plugin), then vectorize with r.to.vect to obtain polygons. Perhaps the "mode" operator should be run more than one time.


3

you can use gdal_polygonize.py for converting raster to vector, if u previously use . some information is here. produces a polygon feature layer from a raster SYNOPSIS gdal_polygonize.py [-o name=value] [-nomask] [-mask filename] raster_file [-b band] [-q] [-f ogr_format] out_file [layer] [fieldname] beside this in qgis ...


3

If you have ArcGIS you could use the ArcScan extension if you have the license for it.


2

According to the comments below the question, you want to (a) classify the image into a small number of discrete categories and then (b) convert it into a polygon representation ("vectorize" it). There are many ways to do (a). Good choices in this application are either (a.i) drive the calculations with a reclassification table via the reclassify tools or ...


2

You can only vectorize lines, not continuous fields. Hence use r.mapcalc with a threshold to extract line structures from that map, then subsequently r.thin. Then it will work as expected. See also this Wiki page for more possibilities: http://grass.osgeo.org/wiki/R.stream.*


2

There is no need to clean a map to vectorize it. Printed raster maps have resolutions, scales. Editing and redrawing make much sense since you planning create a new map composition using data from another map source. If you do not have the original data used to create the map or if it is old and need be converted to digital format( raster, vector ) then the ...


2

I advise you could use Wintopo, sir :)


2

Because you said " Open source tools would be nice" try GRASS GIS ascii import v.in.ascii.


2

After my own related question received here a vague suggestion to use GRASS, I wrote an ArcInfo Grid ASCII to ESRI Shapefile conversion utility in python; see ArcInfo Grid ASCII to ESRI Shapefile conversion. I was motivated by the need to upload raster data in a format that CartoDB could support (they do not "officially" support raster files). The utility ...


2

Try gdal_polygonize.py, which produces a polygon feature layer from a raster. There is a good API too.


1

Similar to Italiano I use Scan2Cad for most of my simple stuff. When the raster gets as complicated as what your examples are there is a whole other level of work needed. This is a job for FME Here is an email from dmbaugh @Safe who helped me with this concept some time ago. But as you will see the work invloved would cause you to go to Simplexio's ...


1

While not an open source or QGIS utility, ArcGIS does have the ArcScan extension that can be used to help vectorize features from raster maps. ArcScan, of course, works best with 2 color images and hard edges, so I'm uncertain how the multicolor raster you showed would work. While it is not perfect, it may be another potential option. Starting with the ...


1

In GRASS 7 the processing of massive vector data has been implemented. While not yet officially released, you can download weekly binary snapshots (source code as well of course) from: http://grass.osgeo.org/download/ and tell Sextante in QGIS to use this installation instead of the existing one. You can install GRASS 7 in parallel to GRASS 6, it will not ...


1

The model below should get you started in the right direction. I used 4-band 1m NAIP imagery as the model input. The imagery below shows the CIR tiff on the left followed by the generalized raster in the middle and the final vector product with four vegetation zones is on the right. Unsupervised maximum likelihood classification was used on the CIR ...


1

I think what you're looking for is the stream output from r.watershed, rather than the flow accumulation. It's an optional output; you'll need to make sure when you run r.watershed that you have a line similar to "stream=output". From the help: stream Output map: stream segments. Values correspond to the watershed basin values. You may need to ...


1

You can use GRASS r.to.vect There is already a question (and answer) for that, here


1

It will depend on the type of information you have in the satellite image i.e. RGB (Red Green Blue) values or GRID type (value as in DEM). If you try to convert, to integer, a raster image in RGB format is very possible to get the value 0. However, if you convert the values ​​by classifying them into a series of numerical codes representing a scale of ...


1

With ArcGIS 9.3 and the Spatial Analyst Extension GridShape Converts a raster to a polygon (Type 5) shapefile. http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=gridshape Update: ArcObjects Code: ' Converts raster data to polygon feature data (FeatureClass or FeatureDataset). ' Member of esriGeoAnalyst.IConversionOp ' ' Function ...



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