Работа с растрами при помощи GDAL и Python

Обсуждение материалов сайта: вопросы, замечания, предложения
updates-bot
Bot
Сообщения: 276
Зарегистрирован: 03 фев 2008, 23:13
Репутация: 3

Работа с растрами при помощи GDAL и Python

Сообщение updates-bot » 01 апр 2010, 07:56

Обсуждение статьи "Работа с растрами при помощи GDAL и Python"

http://gis-lab.info/qa/gdal-python.html

Aleksander
Участник
Сообщения: 60
Зарегистрирован: 12 май 2009, 13:03
Репутация: 0
Откуда: Минск

Re: Работа с растрами при помощи GDAL и Python

Сообщение Aleksander » 14 июн 2010, 16:06

Есть ли в составе gdal функции для уменьшения разрешения растра (не передискретизации с изменением разрешения, а именно уменьшения разрешения путем усреднения в пределах квадратов пикселей, например, 4*4) ?

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Работа с растрами при помощи GDAL и Python

Сообщение Дмитрий Барышников » 14 июн 2010, 16:35

В самом GDAL в чистом виде нет.
Можно посмотреть http://www.gdal.org/gdal__alg_8h.html#4 ... 009078426f но цель его другая - апроксимация для уменьшения кол-ва вычислений.
И еще в Google нашел http://www.jenningsplanet.com/fileadmin ... lter3x3.py

Aleksander
Участник
Сообщения: 60
Зарегистрирован: 12 май 2009, 13:03
Репутация: 0
Откуда: Минск

Re: Работа с растрами при помощи GDAL и Python

Сообщение Aleksander » 14 июн 2010, 16:51

Спасибо!

Aleksander
Участник
Сообщения: 60
Зарегистрирован: 12 май 2009, 13:03
Репутация: 0
Откуда: Минск

Re: Работа с растрами при помощи GDAL и Python

Сообщение Aleksander » 14 июн 2010, 17:42

Нашел данную функцию в R (пакет raster, функция aggregate)

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 14:05

Всем привет. Я импортирую модули:

Код: Выделить всё

import gdal
import _gdal
from gdalconst import *
from _gdal import ptrcreate
Но питон ругается на ptrcreate:
AttributeError: 'module' object has no attribute 'ptrcreate'

Этот компонент нужно отдельно скачивать чтоли?

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Работа с растрами при помощи GDAL и Python

Сообщение Александр Мурый » 06 июн 2013, 14:17

ilmir35 писал(а):...питон ругается на ptrcreate:
AttributeError: 'module' object has no attribute 'ptrcreate'
Откуда вы взяли "_gdal" и "ptrcreate"? В API такого не находится.
Редактор материалов, модератор форума

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 14:19

Я много где видел использование _gdal, например, http://svn.osgeo.org/gdal/tags/gdal_1_2_0/pymod/gdal.py
И у меня его питон принимает.

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 14:21

И в вашей ссылке он есть. Если нажать на osgeo.gdal и прокрутить вниз.

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Работа с растрами при помощи GDAL и Python

Сообщение Александр Мурый » 06 июн 2013, 14:24

ilmir35 писал(а):Я много где видел использование _gdal, например, http://svn.osgeo.org/gdal/tags/gdal_1_2_0/pymod/gdal.py
И у меня его питон принимает.
А у меня не понимает.Вы видели дату последнего изменения в указанном вами скрипте?
# Revision 1.58 2004/02/25 09:04:33
Что-то мне кажется, что с 2004 года много воды утекло :)
Редактор материалов, модератор форума

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 14:27

У меня есть источник 2009 года, но там работают через FWTools. Возможно что эти компоненты туда встроены. Но я сомневаюсь что их нет в osgeo4w.

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 14:30

Вообще мне нужно реализовать вот эту функцию:
def GetBlockSize(band):
x = _gdal.ptrcreate('int', 0, 2)
_gdal.GDALGetBlockSize(band._o, x, _gdal.ptradd(x, 1))
result = (_gdal.ptrvalue(x, 0), _gdal.ptrvalue(x, 1))
_gdal.ptrfree(x)
return result

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Работа с растрами при помощи GDAL и Python

Сообщение Александр Мурый » 06 июн 2013, 14:32

ilmir35 писал(а):У меня есть источник 2009 года, но там работают через FWTools. Возможно что эти компоненты туда встроены. Но я сомневаюсь что их нет в osgeo4w.
Надо посмотреть, что запаковано в OSGeo4W. У меня GDAL 1.9.0 на Linux, там никаких "ptrcreate" нет.
Но "_gdal" импортируется, да.
Редактор материалов, модератор форума

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Работа с растрами при помощи GDAL и Python

Сообщение Александр Мурый » 06 июн 2013, 15:14

ilmir35 писал(а):Вообще мне нужно реализовать вот эту функцию:
def GetBlockSize(band):
Такая функция уже есть. Вам надо переписать её заново "с нуля"? В чём состоит задача?
Редактор материалов, модератор форума

ilmir35
Интересующийся
Сообщения: 26
Зарегистрирован: 18 апр 2013, 11:24
Репутация: 0

Re: Работа с растрами при помощи GDAL и Python

Сообщение ilmir35 » 06 июн 2013, 15:22

Переписывать не надо. Она мне нужна для считывание полей из .img файла (get the band and block sizes).

Ответить

Вернуться в «Материалы сайта»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 19 гостей