Я хотел преобразовать растр в точечный вектор в QGIS. Является ли это возможным? У QGIS есть возможность конвертировать его в полигон, но я не нашел никакого инструмента для конвертации в точку. Может кто-нибудь мне помочь?
Я хотел преобразовать растр в точечный вектор в QGIS. Является ли это возможным? У QGIS есть возможность конвертировать его в полигон, но я не нашел никакого инструмента для конвертации в точку. Может кто-нибудь мне помочь?
Ответы:
Сохранение в виде сетки ASCII и импорт в виде текста с разделителями может сделать то, что вы хотите.
Смотрите этот урок:
http://www.slideshare.net/shencoop/qgis-raster-to-point
Если вам нужен файл с меньшей плотностью, попробуйте этот урок:
QGIS 3.4
Там есть инструмент Растр пикселей на точки , недавно добавленный в QGIS 3.4 (октябрь/2018).
Этот инструмент работает с удивительной скоростью. Когда я преобразовал 11-мегабайтный растр с одной полосой в точечный слой (который в итоге получил 6 миллионов точек), время обработки было:
Растровые пиксели в точки ............................................. | 10,35 сек
Обработка - растровые значения SAGA в точках .......... | 380 сек.
GUI SAGA - значения сетки в баллах ........................... | 130 сек
(На данный момент я не смог запустить) GRASS r.to.vect ...... | не рассчитано
(Это может быть неправильное сравнение, потому что инструменты SAGA возвращают координаты x и y вместе со значениями растра).
REM English
REM Tested in QGIS console version 2.18 (OSGEO4W Shell)
REM Tested in Windows Operating System
REM Folder where the image is (replace with your file directory): C: / Users / Administrator / Documents / ruts /
REM Name of the dsm file: dtm_phase1_vm_15m_inside.tif
REM Name of the output file csv: dtm_phase1_vm_15m_inside.csv
REM Name of output file shp: dtm_phase1_vm_15m_inside.shp
REM eye that some directions (path) has separator / (bar) and other \ (backslash), respect them so you do not have problems
REM spanish
REM Probado en consola de QGIS version 2.18 (OSGEO4W Shell)
REM Probado en Sistema Operativo Windows
REM Carpeta donde estan la imagen (sustituya por su directorio de archivos): C:/Users/Administrator/Documents/surcos/
REM Nombre del archivo dsm: dtm_phase1_vm_15m_inside.tif
REM Nombre del archivo de salida csv: dtm_phase1_vm_15m_inside.csv
REM Nombre del archivo de salida shp: dtm_phase1_vm_15m_inside.shp
REM ojo que algunas direcciones (path) tiene separador / (slash) y otras \ (backslash), respetelos para que no tenga problemas
REM converts the dsm image (surface model) from TIF format to CSV format
REM convierte la imagen dsm (modelo de superficie) de formato TIF a formato CSV
gdal2xyz.bat -band 1 -csv C: \ Users \ Администратор \ Documents \ surcos \ dtm_phase1_vm_15m_inside.tif C: /Users/Administrator/Documents/surcos/dtm_phase1_vm_15m_inside.csv
REM removes the null values from the csv file (Z = 0)
REM elimina los valores nulos del archivo csv (Z = 0)
sed -i '/, 0 \ s * $ / d' C: /Users/Administrator/Documents/surcos/dtm_phase1_vm_15m_inside.csv
REM adds header to file with column names x, y, z
REM agrega encabezado al archivo con nombres de columna x,y,z
sed -i '1 i \ x, y, z' C: /Users/Administrator/Documents/surcos/dtm_phase1_vm_15m_inside.csv
REM converts the csv file to shp format
REM covierte el archivo csv a formato shp
ogr2ogr -s_srs EPSG: 32749 -t_srs EPSG: 32749 -dialect SQLite -sql "ВЫБЕРИТЕ CAST (z AS с плавающей точкой) как z, MakePoint (CAST (x AS с плавающей точкой)), CAST (y AS с плавающей точкой)) FROM dtm_phase1_vm_15m_inside" C: / Users /Administrator/Documents/surcos/dtm_phase1_vm_15m_inside.shp C: /Users/Administrator/Documents/surcos/dtm_phase1_vm_15m_inside.csv
Растр -> Преобразование -> Полигонизация (Растр в вектор) - это создаст шейп-файл полигона с квадратами, представляющими каждый пиксель из вашего растра. - Добавьте поля x и y в таблицу атрибутов. - Рассчитать геометрию для х и у центроидов. - Экспортируйте свою таблицу атрибутов в Excel. - Сохранить как CSV. - Импортируйте CSV в ArcGIS и отобразите данные x и y, чтобы создать новый шейп-файл точек со значениями пикселей.
Растр -> Преобразование -> Полигонизация (Растр в вектор)
http://hub.qgis.org/wiki/17/Raster_to_vector_conversion
Сделаю это.