Статистика: Добавлено TrofimovSergey — Вчера, 20:35
Статистика: Добавлено gamm — 02 дек 2024, 07:57
Статистика: Добавлено bladlex — 01 дек 2024, 11:43
Статистика: Добавлено TrofimovSergey — 30 ноя 2024, 20:13
не вектора, а растра. С вектором слишком много проблемКакой командой в сделать генеализацию вектора? Кроме как упростить геометрию ничего не увидел.
Код:
library(rgdal)library(raster)library(sf)tmp.dir = "c:/temp"fn = sprintf("%s/class_-1.shp",tmp.dir)v = readOGR(fn)v.src=vmin_area = 1000area_list = c()first=TRUEfor(i.obj in 1:nrow(v)) { v1 = v[i.obj,] polygons.list = v1@polygons for(i.poly in 1:length(polygons.list)) { cur.poly = polygons.list[[i.poly]] ring.list = cur.poly@Polygons new.ring.pos = c() for(i.ring in 1:length(ring.list)) { cur.ring = ring.list[[i.ring]] if(cur.ring@hole) area_list = c(area_list,cur.ring@area) if(!cur.ring@hole || cur.ring@area > min_area) { new.ring.pos = c(new.ring.pos,i.ring) } else { # print(c(i.obj,i.poly,i.ring)) } } v1@polygons[[i.poly]]@Polygons = ring.list[new.ring.pos] v1@polygons[[i.poly]]@plotOrder = 1:length(new.ring.pos) } v2 = foo=new("SpatialPolygonsDataFrame",data=v1@data,polygons=v1@polygons,plotOrder=v1@plotOrder,bbox=v1@bbox,proj4string=v1@proj4string) if(first) { first = FALSE v.new = v2 } else { v.new = rbind(v.new,v2) }}fn1 = sprintf("%s/class_-1_filtered.shp",tmp.dir)foo=st_as_sf(v.new)st_write(foo, fn1, "test",delete_dsn=TRUE)
Статистика: Добавлено gamm — 29 ноя 2024, 18:04
Вот только собрался об этом писать, что командой растеризация с нужным для меня разрешением, мелочевка убралась...посмотрю.
Но по хорошему, все это надо делать на растре...
Какой командой в сделать генеализацию вектора? Кроме как упростить геометрию ничего не увидел.либо запустив генерализацию (лучше MRF, поскольку классификатор выдает обычно вероятности классов), либо морфологией типа erosion/delution, либо отсукая мелочь на этапе векторизации. Иначе все это классическая отечественная забава - борьба с искуственно созданнми трудностями
Статистика: Добавлено _taras_ — 29 ноя 2024, 16:28
Статистика: Добавлено gamm — 29 ноя 2024, 16:04
Статистика: Добавлено _taras_ — 29 ноя 2024, 12:14
Возможно, не в сложной геометрии дело, а в топологических ошибках границ, таких как петли. Нужен пример.Скорее всего сложную геометрию он обрабатывает плохо
Статистика: Добавлено AlexRomantsov — 29 ноя 2024, 05:28
выложите пример полигона, на котром не работает, и порог по площади - я гляну.Скорее всего сложную геометрию он обрабатывает плохо.
Статистика: Добавлено gamm — 28 ноя 2024, 14:48
Эту хохмочку я знаю... (С) И у меня система метрическая и эту команду пользовал... И мультипиолигон на отдельные составляющие и слои разносил... Но у меня срабатывала если параметр Меньше чем равен нулю.QGIS, Анализ, Вектор-геометрия - Удалить отверстия - параметр Меньше чем. СК слоя для тестов - метрическая, отработало корректно. На градусных не пробовал
Статистика: Добавлено _taras_ — 28 ноя 2024, 10:40
Статистика: Добавлено AlexRomantsov — 28 ноя 2024, 09:23
Статистика: Добавлено AlexRomantsov — 28 ноя 2024, 09:16
Статистика: Добавлено Константин Силкин — 27 ноя 2024, 17:58
Это заготовка для ландшафтного анализа.... Для него желательно убрать мелкие полигоны (например до 0,5 га), т.к. это явные ошибки, артефакты. На рисунках показал, что хочу получитьВ вашем случае поиск дырок вероятно может быть полезен. Но по-прежнему суть вашей проблемы от меня ускользает.
Статистика: Добавлено _taras_ — 27 ноя 2024, 17:50
Статистика: Добавлено Константин Силкин — 27 ноя 2024, 17:31
Статистика: Добавлено Константин Силкин — 27 ноя 2024, 17:10
Мультиполигон построен командой полигоны изолиний. Затем каждому диапазону значений был присвоен свой класс и затем командой объединение по признаку сгруппированы по классам. В таблице атрибутов были удалены полигоны площадью менее 1 га. Вот эти дырки и надобно включить в окружающий ее полигон.Добрый день! Можно уточнить суть вопроса? А то "понятно – не понятно", а что понятно – не понятно
Буду очень признателен. Я пытался сделать в R, но не получилось.Писал такие вещи для бразильского проекта. Могу поделиться
Статистика: Добавлено _taras_ — 27 ноя 2024, 16:57
Статистика: Добавлено Константин Силкин — 27 ноя 2024, 15:45
Статистика: Добавлено gamm — 27 ноя 2024, 15:30
Статистика: Добавлено Константин Силкин — 27 ноя 2024, 15:25
Статистика: Добавлено _taras_ — 27 ноя 2024, 14:59
Статистика: Добавлено kirara — 27 ноя 2024, 06:15
Статистика: Добавлено tikhpetr — 26 ноя 2024, 19:25
Статистика: Добавлено Boris — 26 ноя 2024, 19:24
ГОСТ есть. И даже не один. Поэтому, кто во что горазд. Как и все у нас. Поэтому, если Вам для работы, железно уточняйте у заказчика. А если просто, для личных надобностей, пробуйте любой. Я так понимаю, Вам нужно, чтобы точки не отлетали. Ну, в зависимости от точности, сверяйтесь со снимками, данными GPS или съемочными данными.Так вроде есть ГОСТ и т.д и т.п, смещения и способы перевода вроде общедоступны... Пытался поиграться с первыми двумя параметрами(но это всё баловство), да, можно получить что-то похожее на тот же PHOTOMOD на который все ровняются, но неизвестно на сколько оно повлияет на другие точки.+towgs84 везде разные
Статистика: Добавлено tikhpetr — 26 ноя 2024, 13:10
в каком виде это представлено (формат данных)? не исключено, что проще сдвинуть внутри этого представления, наверняка редактор какой-то есть у вашей софтины. Особенно, если координаты отдельно, видеосъемка отдельно.У нас видеосъемка с координатами вродь дороги и точки начинаются раньше, чем начинается видео.
Статистика: Добавлено gamm — 25 ноя 2024, 18:28
Статистика: Добавлено AlexRomantsov — 25 ноя 2024, 13:55
Так вроде есть ГОСТ и т.д и т.п, смещения и способы перевода вроде общедоступны... Пытался поиграться с первыми двумя параметрами(но это всё баловство), да, можно получить что-то похожее на тот же PHOTOMOD на который все ровняются, но неизвестно на сколько оно повлияет на другие точки.+towgs84 везде разные
Статистика: Добавлено SEModer — 25 ноя 2024, 12:23
Статистика: Добавлено trir — 25 ноя 2024, 11:58