Расчет количества пикселей в полигоне IDL
-
- Интересующийся
- Сообщения: 15
- Зарегистрирован: 16 авг 2016, 07:17
- Репутация: 0
Расчет количества пикселей в полигоне IDL
Доброго времени суток, начал заниматься программированием на IDL, руководителем поставлена простая задача, но не представляю как её выполнить. На вход дан растр и вектор(полигоны), необходимо подсчитать количество пикселей попавших в каждый полигон, ну и неплохо бы записать это значение в те же полигоны, ну или каким то образом запомнить.
-
- Участник
- Сообщения: 70
- Зарегистрирован: 16 апр 2012, 08:33
- Репутация: 16
Re: Расчет количества пикселей в полигоне IDL
Вам надо реализовать такой алгоритм:
1. Создать поле в векторном файле формата Integer или Long.
2. Цикл - итерация в массиве полигонов (берём по очереди каждый полигон):
2.1. Вырезать растр по контуру одного полигона.
2.2. Подсчитать количество пикселей не равных NoData в вырезанном куске (или к числу приравненному к NoData, например, 9999).
2.3. Записать число пикселей в поле соответствующего полигона.
1. Создать поле в векторном файле формата Integer или Long.
2. Цикл - итерация в массиве полигонов (берём по очереди каждый полигон):
2.1. Вырезать растр по контуру одного полигона.
2.2. Подсчитать количество пикселей не равных NoData в вырезанном куске (или к числу приравненному к NoData, например, 9999).
2.3. Записать число пикселей в поле соответствующего полигона.
-
- Интересующийся
- Сообщения: 15
- Зарегистрирован: 16 авг 2016, 07:17
- Репутация: 0
Re: Расчет количества пикселей в полигоне IDL
Хотелось бы наглядно увидеть как обратиться к полигону и им вырезать растр, в этом я не могу разобраться, поискал в хелпе и чет не дошло. И как хранить растр вырезанный, в двумерном массиве и как тогда размер вычислить не особо понимаю(просто мне с этой областью еще кое-какие манипуляции провести нужно, но она должна сохранить форму)?URIIT писал(а): 1. Создать поле в векторном файле формата Integer или Long.
2. Цикл - итерация в массиве полигонов (берём по очереди каждый полигон):
2.1. Вырезать растр по контуру одного полигона.
2.2. Подсчитать количество пикселей не равных NoData в вырезанном куске (или к числу приравненному к NoData, например, 9999).
2.3. Записать число пикселей в поле соответствующего полигона.
-
- Гуру
- Сообщения: 534
- Зарегистрирован: 30 ноя 2006, 13:31
- Репутация: 116
- Откуда: Moscow
Re: Расчет количества пикселей в полигоне IDL
Просто IDL или ENVI+IDL?
А так если только просто IDL, то смотрите help\pdf\image.pdf в папке установки IDL, Chapter 6, Image Processing in IDL
В каком формате растр/вектор? Какие проекции и есть ли вообще?Pilolin писал(а):На вход дан растр и вектор(полигоны)
А так если только просто IDL, то смотрите help\pdf\image.pdf в папке установки IDL, Chapter 6, Image Processing in IDL
Может ну его ? C Python по проще будетначал заниматься программированием на IDL
-
- Интересующийся
- Сообщения: 15
- Зарегистрирован: 16 авг 2016, 07:17
- Репутация: 0
Re: Расчет количества пикселей в полигоне IDL
Просто IDL, надо процедурку сделать, главное чтоб работала
Растр - tiff, вектор - shp и все прилагающее к нему файлы (хотя по сути только полигоны то и нужны)
Растр - tiff, вектор - shp и все прилагающее к нему файлы (хотя по сути только полигоны то и нужны)
Да вроде начал с этим копаться и времени нет особо начинать с другим языком разбираться Но если с питоном проще будет, то даже хз что и выбратьМожет ну его ? C Python по проще будет
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 7 гостей