Zmieniasz wartości pojedynczych pikseli w QGIS?

18

Chciałbym zmodyfikować raster (wartości pikseli) w QGIS.

Wtyczki „narzędzia wartości” mogą łatwo dostarczyć mi wartość piksela mojego rastra. Nie wiem jednak, jak to zmienić.

Znalazłem pytanie zatytułowane Ręczna korekta rastra DEM (OpenSource)? który mówi, że można to zrobić w GRASS. Spędziłem kilka godzin, próbując zrozumieć, jak trawa działa bez powodzenia.

Nie mogę znaleźć narzędzia d.rast.edit we wtyczce sextante.

Czy jest inny sposób na to?

Renaud
źródło

Odpowiedzi:

13

Ponieważ jest to obecnie wynik nr 1 w Google do „edycji qgis rastrowej”, pomyślałem, że dodam, że jest teraz wtyczka „Serval”, która pozwala modyfikować piksele podobnie jak w Paint.

Roel
źródło
7

Aktualizacja: istnieje ten prosty sposób:

  1. utwórz warstwę punktową z punktami nad pikselami, które chcesz zmienić. Z kolumną o nazwie „nowa wartość”
  2. Użyj Raster / Conversion / Rasterize
    • wybierz swoją warstwę punktową, pole „nowa wartość”
    • jako cel użyj rastra / siatki.
    • zachowaj istniejący rozmiar i rozdzielczość

Gotowy!

Jeśli obowiązują zasady inne niż wspomniane w innych odpowiedziach, dostępny jest kalkulator rastrowy .

Jeśli nie możesz użyć d.rast.edit (jak wspomniano w łączonym wątku), nie znam żadnego wizualnego narzędzia do robienia tego ręcznie . Obejściem tego problemu jest wyeksportowanie rastra do ASCII Gridded XYZ (* .xyz) (lub innego formatu tekstowego), aby można było edytować go w edytorze tekstu, w którym znajduje się x / y i zmienia się z.

Istnieje również płatne oprogramowanie o nazwie Leveler ( http://www.daylongraphics.com/products/leveller/ ) - edytor wizualny raster / grid, który pozwala modyfikować powierzchnię w stylu „Simcity”. Nie znalazłem do tego darmowego narzędzia.

Miro
źródło
Jakiś czas temu poprosiłem o oprogramowanie do modyfikacji stylu DEMs Simcity :) Dzięki za to! gis.stackexchange.com/questions/30453/…
p85 85
2

Możesz użyć kalkulatora rastrowego w QGIS. Ten samouczek był dla mnie dużą pomocą:

http://spatialgalaxy.net/2012/01/25/using-the-qgis-raster-calculator/

HeyOverThere
źródło
1
Dziękuję za ten samouczek. Jednak użycie tego narzędzia może być nieco trudne do zmodyfikowania kilku pikseli!
Renaud
2

Jeśli chcesz to zrobić za pomocą kodu, możesz użyć biblioteki GDAL:

http://gdal.org/classGDALRasterBand.html#a5497e8d29e743ee9177202cb3f61c3c7

QgisTn
źródło
Nie mogę się doczekać, aż wtyczka użyje tego polecenia biblioteki gdal, aby uzyskać interfejs użytkownika do modyfikowania rastra. Zabawnie jest zobaczyć, ile narzędzi istnieje do modyfikowania warstwy wektorowej i nic dla rastra!
Renaud
2

SAGA GIS umożliwia edycję wartości pikseli w rastrze, pojedynczo. Jest to bardzo przydatne do niektórych celów, np. Teledetekcji, gdzie możesz wybrać konkretny piksel do analizy spektralnej. Jeśli wybierzesz siatkę, którą chcesz edytować w panelu „menedżera”, wybierz kartę „atrybuty” w panelu właściwości i możesz wybrać pojedynczy piksel lub przeciągnąć i zaznaczyć blok pikseli na ekranie, a następnie wpisać w swoich wartościach w macierzy, która będzie wyświetlana pod atrybutami.

Opcją modyfikującą jeden piksel za pomocą QGIS jest użycie eksperymentalnej wtyczki Serval do ustawienia innej wartości dla określonego piksela.

Steven Pawley
źródło
2

Spróbuj tego: Wtyczka Serval dla QGIS umożliwia edycję wartości pojedynczej komórki rastrowej.

http://www.lutraconsulting.co.uk/blog/2016/09/05/serval/

Ale szukam narzędzia do modyfikowania wartości rastrowych wzdłuż linii / polilinii za pomocą wartości na końcach linii / polilinii pobranych z rastra.

Arkadiusz Środula
źródło
2
Witamy w GIS SE! Czy to odpowiedź, pytanie, czy jedno i drugie?
Aaron
1

Za pomocą kalkulatora rastrowego można mapować tylko jedną wartość na raz i nie pozwala to określić typu wartości rastra; używa float 32 Myślę, że marnotrawstwo, jeśli wymagany jest tylko bajt. Rastercalc jest lepszy, ale nadal pozwala na mapowanie tylko jednej wartości na raz.

DanM
źródło
-2

Lub używając nowej wtyczki Qgis zaprojektowanej do tego: ThRasE

Ujawnienie: Opracowałem tę wtyczkę i nie chcę jej promować, chcę tylko udostępnić inną opcję

XavierCLL
źródło