Страница 1 из 2
Обработка данных методом скользящего окна
Добавлено: 12 дек 2011, 16:36
Variant
Добрый день!
Хочется понять возможности свободных средств для обработки данных методом скользящего окна. С упором, в первую очередь, на простоту и удобство пользования, широту настроек. В идеале - с удобным графическим интерфейсом. Как минимум, чтобы умело считать количество значений и медиану (или хотя бы среднеарифметическое) в окне заданного размера с заданным шагом. Есть ли какие-то зарекомендовавшие себя решения?
Re: Обработка данных методом скользящего окна
Добавлено: 12 дек 2011, 21:07
KolesovDmitry
Variant писал(а):
Хочется понять возможности свободных средств для обработки данных методом скользящего окна. С упором, в первую очередь, на простоту и удобство пользования, широту настроек. В идеале - с удобным графическим интерфейсом. Как минимум, чтобы умело считать количество значений и медиану (или хотя бы среднеарифметическое) в окне заданного размера с заданным шагом.
В GRASS GIS очень большие возможности для подобной обработки, но насчтет графического интерфейса там туго. Вам нужно для собственного использования или хотите кому-то дать готовый инструмент?
Re: Обработка данных методом скользящего окна
Добавлено: 12 дек 2011, 22:46
Александр Мурый
Странно, когда для обработки данных нужен "удобный графический интерфейс" (это ж не привязка и не оцифровка)..
Упомянутая уже GRASS -- модуль
r.neighbors, в SAGA --- куча фильтров (ищите нужное), а также ILWIS и SEXTANTE (хоть и "отпрыск" SAGA, но функционально своеобразный).
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 08:25
novia
Variant писал(а):Добрый день!
Хочется понять возможности свободных средств для обработки данных методом скользящего окна. С упором, в первую очередь, на простоту и удобство пользования, широту настроек. В идеале - с удобным графическим интерфейсом. Как минимум, чтобы умело считать количество значений и медиану (или хотя бы среднеарифметическое) в окне заданного размера с заданным шагом. Есть ли какие-то зарекомендовавшие себя решения?
Свободный продукт
ImageJ. Смотрите пункт 26 в хелпе по ссылке.
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 09:09
Variant
KolesovDmitry писал(а):Вам нужно для собственного использования или хотите кому-то дать готовый инструмент?
Хочется найти что-то пригодное и для себя, и на раздачу. Чтобы и самому было удобно, но и в освоении не слишком сложно. GRASS, на мой взгляд, находится где-то на границе допустимого: что-то ещё более сложное скорее всего вызовет отторжение у неподготовленного пользователя. Если только "для себя" - может быть, на нём бы и остановился
amuriy писал(а):Странно, когда для обработки данных нужен "удобный графический интерфейс" (это ж не привязка и не оцифровка)..
Понимаю, но когда сам не программируешь, свободного программиста рядом нет, но хочется, чтобы результат мог использовать любой пользователь без специальной подготовки - это видимо единственное, что остаётся
Насчёт ILWIS и SEXTANTE - спасибо за наводку, посмотрю. Я как-то с ними раньше не пересекался, теперь будет повод познакомиться
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 09:21
Variant
novia писал(а):Свободный продукт ImageJ. Смотрите пункт 26 в хелпе по ссылке.
Спасибо, выглядит довольно заманчиво
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 11:17
Александр Мурый
Variant писал(а):amuriy писал(а):Странно, когда для обработки данных нужен "удобный графический интерфейс" (это ж не привязка и не оцифровка)..
Понимаю, но когда сам не программируешь, свободного программиста рядом нет, но хочется, чтобы результат мог использовать любой пользователь без специальной подготовки - это видимо единственное, что остаётся
Для исп-я GRASS не обязательно программировать (хотя элементарное программ-е там значительно облегчает жизнь), надо понять основную логику работы: один модуль -- одна задача (в основном); главная работа -- в командной строке; читаем мануал --> пробуем сделать то же с нашими данными. Замечание: крайне желателен опыт работы в Unix-системах (тогда всё понятнее и проще).
Данные на входе --> работа модуля(ей) --> данные на выходе -- всё как обычно, как в аркгисах, эрдасах и т.п. Только есть своя специфика (а где её нет

?)
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 12:04
Variant
amuriy писал(а):
Для исп-я GRASS не обязательно программировать (хотя элементарное программ-е там значительно облегчает жизнь), надо понять основную логику работы: один модуль -- одна задача (в основном); главная работа -- в командной строке; читаем мануал --> пробуем сделать то же с нашими данными. Замечание: крайне желателен опыт работы в Unix-системах (тогда всё понятнее и проще).
Данные на входе --> работа модуля(ей) --> данные на выходе -- всё как обычно, как в аркгисах, эрдасах и т.п. Только есть своя специфика (а где её нет

?)
Эта специфика иногда достаточно сильно усложняет дело: захочешь дать неподготовленному товарищу инструмент для решения конкретной задачи, а вместо этого придётся учить его логике и всяким особенностям среды, в которой этот инструмент можно использовать. А он (товарищ) ещё и сопротивляться будет. В остальном же GRASS мне исключительно симпатичен
А по поводу программирования, я имел в виду не работу в GRASS, а способ решения проблемы, когда просишь знакомого программиста, он бросает все дела и пишет тебе специализированный инструмент. Способ довольно приятный, но сейчас, увы, мне недоступный. Да и не факт, что хорошо это - плодить такие вот специализированные инструменты, даже если они будут свободными
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 12:18
Максим Дубинин
да нет, это как раз факт
а вот что не факт, так это использовать такой аргумент как повод не делать ничего
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 15:54
Variant
Максим Дубинин писал(а):да нет, это как раз факт
а вот что не факт, так это использовать такой аргумент как повод не делать ничего
Я вовсе не предлагаю таким образом оправдывать безделье. Речь о том, чтобы более полно использовать существующие свободные решения вместо создания ещё одного нового, узкоспециализированного, да ещё и преимущественно дублирующего возможности уже имеющихся. Конечно, я ни разу ни программист, и может быть, чего-то не понимаю, но, по-моему, создание под каждую задачу нового инструмента – не всегда лучший выход, когда есть готовые универсальные средства. Даже если не учитывать затраты, уходящие на его создание, как любой объект, он будет оттягивать на себя какую-то часть общего внимания: пользователь мог бы потратить время на изучение чего-нибудь стоящего, а вместо этого ему придётся разбираться в очередной незнакомой программе, пока он не поймёт, что она ему не подходит. Может быть, иногда всё же стоит попытаться выжать соки из уже существующих средств?
Re: Обработка данных методом скользящего окна
Добавлено: 13 дек 2011, 20:04
Максим Дубинин
велосипеды с открытым исходным кодом - прекрасны
давайте не будем философию тут разводить, мне не стоило вклиниваться, если интересны мнения на эту философскую тему - создайте новую тему, обсудим.
Re: Обработка данных методом скользящего окна
Добавлено: 14 дек 2011, 08:32
KolesovDmitry
Variant писал(а):KolesovDmitry писал(а):Вам нужно для собственного использования или хотите кому-то дать готовый инструмент?
Хочется найти что-то пригодное и для себя, и на раздачу. Чтобы и самому было удобно, но и в освоении не слишком сложно.
Как раз в случае "на раздачу" GRASS довольно удобен: достаточно просто написать графическую обертку вокруг нужного модуля/модулей (практически на любом языке программирования) и получаете узкоспециализированную визуальную среду для вашей задачи. При этом можно даже "вырезать" из дистрибутива все лишнее, оставив в конечном продукте только необходимые модули.
Re: Обработка данных методом скользящего окна
Добавлено: 28 дек 2011, 13:41
Variant
Медианный фильтр, как растровая операция действительно много где реализован. И GRASS, и ImageJ, и многие другие средства с этим отлично справятся. А вот с подсчётом значений всё сложнее. Интерес же именно в том, чтобы для одного и того же окна можно было подсчитать не только медиану, но и количество значений, по которому она была рассчитана. Пикантности придаёт то, что данная операция в принципе может быть реализована и как растровая, и как растрово-векторная (например, когда по векторному слою набирается растр), и даже как полностью векторная, и даже не как одна операция, а их комбинация, в том числе, и с использованием разных программных продуктов. Это существенно осложняет поиски
Re: Обработка данных методом скользящего окна
Добавлено: 28 дек 2011, 13:46
novia
можно было подсчитать не только медиану, но и количество значений, по которому она была рассчитана
а что мешает в один проход посчитать медиану.
а во второй проверить логическое условие "причастности числа" к подсчету медианы.
Re: Обработка данных методом скользящего окна
Добавлено: 28 дек 2011, 14:05
Variant
Тоже один из вариантов
Проблема исключительно в том, что способов решения слишком много. Проверять все возможные способы - нереально. Тем более, что многие потенциально возможные решения могут быть нигде не реализованы
Тот же медианный фильтр: почти везде он есть, но в большинстве случаев реализован, только как растровая операция. А далеко не всегда исходные замеры можно без потерь перевести в растр