Daha çox

GDAL, arcpy-də ExtractByMask üçün hər hansı bir əvəzetmə funksiyasına malikdirmi?


İndi arcpy istifadə edirəm: arcpy.sa.ExtractByMask (weight_raster, elev) həm weight_raster, həm də müxtəlif ölçülü raster məlumatlardır.

Bu arcpy metodlarını əvəz etmək üçün GDAL-da funksiyalardan istifadə etmək istəyirəm. Bunu necə edəcəyini bilən varmı?


GDAL_Calc bu əməliyyatı həyata keçirəcək:

gdal_calc.py -A ağırlıq_raster -B elev --outfile = result.tif --calc = "B * (A> 0)" --NoDataValue = 0

Bu, B (yüksəltmə) -i A> 0-a vurur ki, bu 0-dan az və ya bərabər olduqda, 1-dən çoxdur (boolean 0 = False, 1 = True), beləliklə raster B-nin sınağından keçdiyi və B-nin keçdiyi A-nın 0 olmasıdır. sınaq. Qeyd edək ki, bu, etibarlı aralığın içərisində olan 0-a problem yaradır, çünki girişdən hər hansı bir 0 dəyər artıq nodata olacaq, bunu əvvəlcədən hesablamaqla süzə bilərsiniz:

gdal_calc.py -A elev --outfile = elev_offset.tif --calc = "A + 0.00001 * (A == 0)"

Həqiqəti 0 olan hüceyrələrə 0.00001 əlavə edən (onları ofsets), daha çox 0 etməməsi üçün, bu milimetrin 1/10 hissəsi olduğu üçün bu, rasteri çox təsir etməməlidir.

Normalda çıxarış əməliyyatları bir shapefile və ya digər OGR formatından GDAL_Rasterize ilə yaradıla bilən ikili bir rasterlə aparılır.

GDAL_Calc-ın başqa bir məhdudiyyəti, rasterlərin eyni ölçüdə və mənşəli olmasıdır, onları GDAL_Translate ilə eyni dərəcədə klip edə bilərsiniz.-projwin(veri koordinatlarında) və ya-srcwinseçimlər (hüceyrələrdə).


İşləyən bir nümunə təqdim etmədiyiniz üçün başlanğıc nöqtənizin bir az aydın deyil. 1 çoxbucaqlı bir verilənlər bazası yaratdım, əgər çoxsaylı bir verilənlər bazanız varsa, ancaq SQLStatement və ya gdal.Rasterize zənginə əlavə edə biləcəyiniz müəyyən bir çoxbucağı hədəf almaq istəyirsinizsə.

Nümunə çoxbucaqlı

Rasterizasiya

Rasterizasiya gdal ilə edilə bilər. Hədəf şəbəkəsinin xüsusiyyətlərini göstərməlisiniz. Əvvəlcədən təyin edilmiş bir şəbəkə yoxdursa, bunlar poliqonun özündən çıxarıla bilər

İndekslərə çevrilir

Rastlaşdırılmış poliqondan indekslərin alınması Numpy ilə edilə bilər:

Aydındır ki, Rutger-in yuxarıdakı həlli bununla getmək üçün bir yoldur, amma həllimi tərk edəcəyəm. Aşağıdakılarla lazım olanı həyata keçirən bir ssenari hazırladım:


Qarışdırıcıya gdal necə qurulacağı 2.82

Blender 2.82 quraşdırdım. İndi blendergis addon ilə problemim var. Artıq Blender-də quraşdırılıb, lakin istifadə edə bilmirəm. İtkin GDAL və ya Yastıq haqqında bir mesaj var. https://github.com/domlysz/BlenderGIS/wiki/How-to-install-GDAL bu iş üçün lazım olan addımları göstərir. Blender python, 3.7.4 mit 64 bit AMD işlədiyini göstərir, numpy ‑ 1.18.1 + mkl ‑ cp37 ‑ cp37m ‑ win_amd64.whl və ya numpy ‑ 1.17.5 + mkl ‑ cp37 ‑ cp37m ‑ win_amd64 seçməli olduğumu başa düşürəm. whl və həmçinin GDAL ‑ 3.0.4 ‑ cp37 ‑ cp37m ‑ win_amd64.whl və ya GDAL ‑ 2.4.1 ‑ cp37 ‑ cp37m ‑ win_amd64.whl. Təəssüf ki, hansı versiyanı seçsəm də, səhv mesajını alıram: Təkər bu platformada dəstəklənmir. Mən nəyi itirirəm? Kömək üçün əvvəlcədən təşəkkür edirəm.


ATTA çeviricisi: ArcGIS və TerrSet arasında məlumatları çevirmək üçün proqram

ATTA Converter, Palacky Universitetində GIS (Coğrafi Məlumat Sistemi) məhsullarının ArcGIS və TerrSet yerli məlumat formatlarını konvertasiya etmək üçün hazırlanmış yeni bir proqramdır. Bu proqram açıq mənbəli kitabxanaların üstündə qurulmuşdur və bu səbəbdən pulsuz təklif olunur. ATTA Converter-in dönüşüm funksiyası, mütəxəssis olmayan istifadəçilər üçün çətin olduğunu sübut edə bilən geniş yayılmış və güclü bir məlumat çevirmə kitabxanası olan GDAL (Geospatial Data Abstraction Library) üzərində qurulmuşdur. Bu problemi azaltmaq üçün ATTA Converter, məlumatların konvertasiyasını asanlaşdıran Python kitabxanası Tkinter istifadə edərək sadə, istifadəçi dostu bir GUI (Qrafik İstifadəçi İnterfeysi) təklif edir. Üstəlik, ATTA Converter, GDAL-in dönüşüm məhdudiyyətlərini yüngülləşdirən əlavə funksionallıq da ehtiva edir. Bu sənəd ilk olaraq ArcGIS və TerrSet məhsullarını yerli məlumat formatları və mövcud dönüşüm alətləri ilə birlikdə qısa bir şəkildə təqdim edir və sonra ATTA Converter-in detallarını təsvir edir.

Bu abunə məzmununun önizləməsidir, təşkilatınız vasitəsilə giriş.


Sffyju

Yansıtılmış port vasitəsilə paket keçid portu məlumatı əldə edirsiniz?

Niyə oyun aparatında diskret x86 CPU-lar istifadə olunmadı?

Astronavtların torpağı öz bədənləri ilə dölləməsi haqqında qısa hekayə

LaTeX Köməkində Sadə Xətt!

Sabunun əsas yuyucu təsiri köpükdən gəlirmi?

Tək üçəm sayını bir ölçüdə yerləşdirin?

İki nəfər eyni fotonu görə bilərmi?

Prezidentlə və maneə ilə əlaqəli olaraq, Müllerin nəticələri əvvəlcədən təyin edilmişdi?

Java 8 standart metodları lambdas ilə necə işləyir?

İndiki problar niyə bu qədər bahalıdır?

İnsanları qaldırmağa imkan verən bu qəribə metal aparata nə deyərdiniz?

Jonathan Swiftin "Gulliver's Travels" (1726) əsərindəki iki rəqəmli ədədlər niyə "alman üslubunda" yazılmışdır?

BSD3 Lisenziyalı Layihə üçün Yamaq Sənədinin yayımlanması

.bashrc təxəllüsü sabit ikinci parametrli bir əmr üçün

Bir semestr üçün LaTeX təqdimatlarının təşkili üçün göstərişlər

Advaitins Müqəddəs Kitab əbədiyyətinə qarşı mübahisəni necə müdafiə edir?

Bir məsafədə tutun sehrini silahlandırmaq

Poun dəbilqəsindəki yazı nə deyir?

Normal (orta, dispersiya) mod x hələ də normal paylanmadır?

Datecode niyə çip istehsalçıları üçün bu qədər vacibdir?

Verilənlər bazası tempdb üçün giriş mövcud deyil

QGIS versiyası 3.0 üçün SWAT plagininin quraşdırılması,

Məndən qswat quraşdırmasını və swat redaktorunu qurmağım istənir. Swat redaktoru .net framework plaginini qurmağımı tələb edir.

Tədbir alınmadı. Swat redaktoru yenidən işləməyən və əməliyyat yenidən təkrarlanan .net çərçivəsində işləməyən .net çərçivəsində plaginini qurmağımı tələb edir.

Bəlkə də əlaqəlidir: gis.stackexchange.com/questions/278438/…

Məndən qswat quraşdırmasını və swat redaktorunu qurmağım istənir. Swat redaktoru .net framework plaginini qurmağımı tələb edir.

Tədbir alınmadı. Swat redaktoru yenidən işləməyən və əməliyyat yenidən təkrarlanan .net çərçivəsində işləməyən .net çərçivəsində plaginini qurmağımı tələb edir.

Bəlkə də əlaqəlidir: gis.stackexchange.com/questions/278438/…

Məndən qswat quraşdırmasını və swat redaktorunu qurmağım istənir. Swat redaktoru .net framework plaginini qurmağımı tələb edir.

Tədbir alınmadı. Swat redaktoru yenidən işləməyən və əməliyyat yenidən təkrarlanan .net çərçivəsində işləməyən .net çərçivəsində plaginini qurmağımı tələb edir.

Məndən qswat quraşdırmasını və swat redaktorunu qurmağım istənir. Swat redaktoru .net framework plaginini qurmağımı tələb edir.

Tədbir alınmadı. Swat redaktoru yenidən işləməyən və əməliyyat yenidən təkrarlanan .net çərçivəsində işləməyən .net çərçivəsində plaginini qurmağımı tələb edir.


2 Cavab 2

Feature Vertices to Points alətini icra edə bilərsiniz (Advanced lisenziyası tələb olunur) və Point Type parametri üçün END seçimini edə bilərsiniz. Bu, başlanğıc / bitmə nöqtəsinin bir nöqtə xüsusiyyət sinifini verəcəkdir. Ardından, raster məlumat dəstindən yüksəkliyi çıxarmaq üçün Dəyərləri Nöqtələrə Çıxarın alətini (Məkan Analisti uzantısını tələb edir) icra edin.

Bu cavab ArcGIS üçündür, sual QGIS ilə bağlıdır.

Əlinizdəki məlumatlarla edə bilərsiniz təxmini hər yolun sonunda yüksəklik aşağıdakı kimi:


  1. Nöqtə qatınızdakı başlanğıc və bitmə nöqtələrini seçin və (istəyə görə) ayrı bir təbəqə kimi saxlayın.
  2. RefFunctions plaginini quraşdırın.

Sahə Kalkulyatorunda bu ifadədən istifadə edərək ('contourLayer', 'elevationField') nöqtə qatının atribut cədvəlinə ən yaxın kontur xəttinin yüksəkliyini əlavə edin.


  • ifadənin 'contourLayer' deyildiyi kontur qatınızın adını dəyişdirin
  • yüksəklik bir atribut cədvəli sahəsi kimi saxlanılırsa, ifadənin 'elevationField' dediyi atributun adını əvəz edin
  • yüksəklik atribut kimi deyil, Z dəyəri kimi saxlanılırsa, $ z ifadəsini istifadə edin

Reevesii-nin təklif etdiyi kimi, raster formatında yüksəklikdən istifadə edərək daha yaxşı dəqiqliyə sahib olacaqsınız. Kontur xətləri yalnız xətt boyunca yüksəkliyi təmsil edir, buna görə də yollarınız kontur xəttində tam bitməzsə, ən yaxın kontur xəttinin yüksəkliyi həmin nöqtə üçün dəqiq olmayacaqdır.

Hər yolun sonu üçün daha dəqiq yüksəkliyi hesablamaq üçün:



  1. Maraqlandığınız bölgə üçün DEM (rəqəmsal yüksəklik modeli) raster əldə edin. DEM'lər Natural Earth və Amerika Birləşmiş Ştatları Geoloji Araşdırması kimi bir çox mənbədən pulsuz olaraq əldə edilə bilər.
  2. Nöqtə qatınızda yolun başlanğıc və bitmə nöqtələrini seçin.
  3. DEM-dən seçilmiş nöqtələrə yüksəklik dəyərləri əlavə etmək üçün Nümunə raster dəyərlər alətindən istifadə edin.

Salam, hər kəsin girişinə görə təşəkkür edirəm. Yüksəklik məlumatları bir formadır, onsuz da yüksəkliyə (m) malikdir. Şeffile 10 m aralıqdadır, çünki digər sərbəst təbəqələrlə müqayisədə daha yüksək qətnamə tələb olunur.


1 Cavab 1

Kürə planetində ən qısa məsafəni Sfera verir. Düz bir xəritədə düz bir xətt kimi görünən, bir təyyarənin uçacağı ən qısa məsafə deyil, xüsusilə London kimi Tokio kimi uzun məsafələrdə.

Bəli, bu məntiqlidir. Ancaq mənim nümunəm çox qısa və ekvatorda. Bunu necə izah edirsən? Avropada 150 km-ə qədər daha uzun marşrutlarla, eynidir. Dünyanı "keçə" bilmərəm, amma yer səthində sürməliyəm, yəni daha uzun bir yoldur.

"Kürə" yalnız daha uzun məsafələr üçün, "PointRes" isə qısa məsafələr üçün daha çoxdur?

Düz proqnozlar ümumiyyətlə uzun məsafələr üçün uyğun deyil. EPSG: 3857, Yerin ekvator radiusunun 6378137 metr təşkil edir. ol.sphere Yerin orta radiusundan 6371008.8 metr istifadə edir. EPSG ekvatorunda: 3857 ol.sphere-dən daha dəqiq olardı. UTM kimi bir eninə merkator proyeksiyası, marşrutunuzun bir meridianı yaxından təqib etməsi halında yaxşı olardı. Əlavə dəqiq hesablamaya ehtiyacınız varsa, həm ekvatorial, həm də qütb radiusundan istifadə edən Vincenty ellipsoid metoduna ehtiyacınız var.

Vay vay, nə funksiya! nəyi həqiqətən başa düşmədim, amma biraz. Yuxarıdakı sualıma bir nümunə şəkil əlavə etdim. Zəhmət olmasa nəyi nəzərdə tutduğumu başa düşmək üçün oxuyun və zəhmət olmasa mənə cavab verin ki, nəticələr nöqtə 3 (qırmızı) olsun.


Anesteziya ilə əməliyyatdan əvvəl burun və ağız boşluğuna oksigen maskası qoyulduqda çaxnaşma / nəfəs almaqda çətinlik çəkirsiniz?

Dünən 17-ci əməliyyatımı etdim, buna görə "xəstəxana" blokunun ətrafında bir neçə dəfə olduğumu və işlərin xəstə tərəfində nə gözlədiyini bildiyimi söyləmək ədalətli.

Əməliyyat masasında yatana qədər və məni yatdırmaq üçün ümumi anesteziya tətbiq etdikdə və ağzımı və üzümü örtmüş oksigenlə dolu bir tənəffüs maskası qoyana qədər hər şey gözlənildiyi kimi getdi. (Bu, bütün digər əməliyyatlardan əvvəl baş verdiyini xatırladığım kimi gözlənilən idi). Ancaq bu dəfə oksigeni burnumun və ağzımın üstünə qoyduqları anda nəfəs ala bilmədiyimi hiss etdim. Nəfəs almaqda çətinlik çəkdim və maskanı qoparmaq istədim, çünki əslində nəfəs almadığımdan çaxnaşmaya başladım (məntiqi olaraq üzərimdə oksigen maskası olduğunu bilsəm də). Ancaq maska ​​məni əvəzinə hiperventilasiya etdi və ağciyərlərim ağrımağa başladı. Şükürlər olsun ki, yuxuya getməmişdən əvvəl bu təcrübə yalnız 30-40 saniyə çaxnaşma idi.

Niyə ümumi anesteziya tətbiq edilərkən birini əməliyyatdan çıxarmaq üçün ağız və burun burnuna oksigen maskası tətbiq olunur? Ağız və burun üstünə qoyulduğunda nəfəs ala bilməyəcəyinizi hiss etmək adi bir şeydir?

Bəzi xəstələrin anesteziya induksiyasının ilk anlarında nəfəs almaqda çətinlik çəkə bilməsi səbəbindənmi? (Nəfəs almağı hiss etməmək hissi kimi, oksigen maskası yox, bədənə daxil olan, tənəffüs sistemini təsir edən ümumi anesteziya idi).

Yoxsa oksigen maskalarında o qədər oksigen var ki, bədənin nəfəs almaqda çətinlik çəkir. (Ağciyərlərdə birdən çox Oksigen içərisinə atılan oksigenin miqdarı /% kimi və ağ ciyərlər ağrıyır?)

Və ya. sadəcə instinkt burun və ağız üzərindəki bir şeyi qiymətləndirmədiyi və maskanı atmaq istədiyi üçün mini çaxnaşma hücumları başlaya bilər. Və bu insanın narahat olmasına və hiperventiliyaya səbəb olur?

Əsasən niyə tənəffüs maskasına ehtiyac var? Və nəfəs almağın çətinləşməsi adi bir şeydir?


Windows-da Python üçün FileGDB Driver ilə GDAL / OGR qurulması

Dünyasına girməyə qərar verdim GDAL / OGR ilə Piton bəzi alətləri təqlid etmək üçün əsas motivasiyamla Masaüstü üçün ArcGIS. Ümid edirəm ki, bu, bir neçə cəbhədə inkişaf etməyimə kömək edəcəkdir Piton kodlaşdırma, açıq mənbəli yerleşim kitabxanaları ilə əlaqəli məlumatların artırılması və GUI əsaslı bir GIS-də bir düyməni basdığınızda və bir növ geo-işləmə və ya məlumat təhlili apardığınız zaman pərdə arxasında qaçan alqoritmləri daha yaxşı başa düşmək.

Mən əsasən işləyirəm ESRI Fayl Geodatabases və bunun açıq mənbəli olmadığını bildiyim halda ESRI vasitəsilə bir gdb-yə oxumaq və yazmaq üçün bir API var GDAL / OGR. İlk addım öyrənmək üçün səyahətə başlamaq üçün lazım olanı qurmaqdır GDAL / OGR ilə Piton üçün Windows. Daha səmərəli geosessil üçün bəzi hesablamaları sürətləndirməyə kömək edəcək bir neçə kitabxana da quraşdıracağam.

& # 8230 istifadə edirəm
Windows 7 Professional'da Python 2.7.13 32bit

1. Microsoft Visual C ++ 2008 Service Pack yükləyin və quraşdırın

Yükləmək və yükləmək üçün buraya vurun.

2. Christoph Gohlke & # 8217s veb saytına gedin və GDAL çarxını yükləyin.

GDAL whl faylını götürün. Yüklədim GDAL ‑ 2.1.3 ‑ cp27 ‑ cp27m ‑ win32.whl
Komanda təklifini açın, kataloqu whl-in endirildiyi yerə dəyişin və istifadə edin tırtıl qurmaq.

3. ESRI-dən File Geodatabase API alın (bir ESRI hesabına ehtiyacınız olacaq)

ESRI Dowloads-a gedin və Windows üçün File Geodatabase API 1.3 versiyasını yükləyin (Visual Studio 2008). Bu bir zip qovluğu olacaq. API sıxılmış qovluğunun içindəkiləri açın və FileGDBAPI.dll faylını zibil qutusundan çıxarın

C: Python27 Lib site-packages osgeo

və ya sayt paketinizin yerləşdiyi yerdə. Yalnız osgeo-ya çıxardığınızdan əmin olun.

4. Ətraf Dəyişənlərdə Yeni Dəyişən Yaradın

İldə Ətraflı Sistem Ayarları yeni yaratmaq Ətraf Dəyişən çağırdı GDAL_DRIVER_PATH və addım 5-də osgeo qovluğuna gedən yolu təyin edin.

5. osgeo & # 8230'dan __init__.py açın

6. Quraşdırmanı sınayın

& # 8230 istifadə edərək bir Python tərcüməçi açın və test edin

Yuxarıdakı ekran görüntüsü kimi bir səhv əldə etməsəniz, quraşdırma müvəffəq olmuşdur.

7. Christoph Gohlke'nin parlaq veb saytından numpy + mkl təkərini yükləyin

Buraya vurun və lazımi whl faylını yükləyin. Quraşdırma üçün yüklədim səssiz ‑ 1.11.3 + mkl ‑ cp27 ‑ cp27m ‑ win32.whl
Komut istemini açın və endirilən sənədin yerləşdiyi qovluğu dəyişdirin. İstifadə edin tırtıl qurmaq.

8. SciPy quraşdırın

Geri Gohlke deposuna və SciPy Wheels-ə gedirik. Budur, yüklədim scipy ‑ 0.19.0 ‑ cp27 ‑ cp27m ‑ win32.whl
Addım 1-dən sonra bağlamısınızsa, əmr istasyonunu açın və qovluğu yüklənmiş sənədin olduğu yerə dəyişin.
İstifadə edin tırtıl qurmaq.

9. Shapely quraşdırın

Bildin, Gohlke-yə qayıdın və Shapely whl faylını yükləyin. Mən tutdum Formalı ‑ 1.5.17 ‑ cp27 ‑ cp27m ‑ win32.whl . Addım 7 və 8-ə bənzər bir quraşdırma üçün pip istifadə edin.

İndi özümü öyrənmə rejiminə salmaq və qoymaq GDAL / OGR bəzi istifadə üçün. İlk cəhd üçün OSGP # 1.1: Coğrafi Dağılımların Ölçülməsi və Orta Mərkəzə baxın.


Mdhntd

Kartofu soyutma, karbohidratların təbiətini dəyişdirirmi?

Avtomatik olaraq bir terminal pəncərəsini açın və möhkəm bir əmr işə salın

Bir istifadəçinin başqa bir sabit diskdə sənədləri kopyalamasını necə qarşısını ala bilərəm?

Bütün sehrli tökmə fitri, lakin hələ də nadir hala gətirmək üçün necə etmək olar?

Legacy rejimindən istifadə etmək pis bir şeydir?

Sixers ardıcıllığında ilk meydana çıxma

Kabellərin bir-birinə qarışmasının qarşısını necə almaq olar

Etnik mənsubiyyəti barədə soruşmağın nəzakətli bir yolu varmı?

Niyə Yeni Asgard bu yerdə yaradıldı?

7805 5v tənzimləyici 9v batareyanı boşaltacaqmı?

Bu, A = B-nin A & # 8745 B = A & # 8746 B verildiyini təsdiqləyən etibarlı bir dəlil mi?

sessiyam daxil ola bilmir

Xətti impuls dairəvi hərəkətdə necə qorunur?

GRE imtahanı nə qədər faydalıdır?

Hilbert məkanında qeydlərlə bağlı bir problem var

Avropa Birliyi, icazə verilən maksimum kəsir olaraq% 3 rəqəminə necə çatdı?

Yudum və məxluq Baleful Polimorf oldu Nə olur?

İnsanın oxunaqlı ölçüsü necə sıralanır

Zəng edən şəxsiyyəti necə saxta etmək olar?

Sadə nəzarətlə mübarizə aparan oyunçulara necə müraciət etmək olar?

Balıq olmayan bir balıqda

R-dən istifadə edərək rasterdən çıxarılan poliqonlarla nöqtələri necə bağlamaq olar

R-dən istifadə edərək çoxbucaqlı və nöqtələr arasında məkan məsafəsi birləşir? R-də bir SpatialPolygonsDataFrame-i daxil edin? Çoxbucaqlılar qrupunda üst-üstə düşən çoxbucaqlıların olub-olmadığını necə səmərəli hesablamaq olar? R - NA dəyərləri olmayan böyük rastrdan randomRandom () necə alınır? Çoxbucaqlı qat yaratmaq konveks tamponu olan nöqtə qatından kateqoriyalara ayırma nöqtələri çoxluqlu raster məlumatlarından çoxbucaqlar üçün orta dəyəri çıxarın, R (velox, raster -package) dismo :: randomPoints, raster yığın maskası ilə NA nöqtələri yaradır ArcPy istifadə edərək çoxbucaqlılarla kəsişən rasterləri köçürmək? Çoxbucaqlı hesablama nöqtələri ArcGIS Desktop istifadə edirsiniz?

Mənim böyük tiff var və raster istifadə edərək yükləyin:

Sonra, bütün poliqonları sənəddən çıxara bilərəm (maraqlı qat dəyərinin bəzi P dəyərindən istifadə edərək):

Beləliklə, uyğunluq baxımından dəyişdirə biləcəyim obyektlər var, yəni hər qrupdan ayrılmış bütün çoxbucaqları qruplaşdırın. Mən asanlıqla edə bilərəm, çünki bitdiyini yoxlaya və daha böyüyünü götürə bilərəm.

Bununla yanaşı, başqa bir təbəqədən üstünə nöqtələr əlavə etmək istərdim, nə edə bilərəm:

amma bu nöqtələri (qrup şəklindədir) bu çoxbucaqlı qrupu ilə bağlamağın yolunu tapa bilmirəm. Mənim koordinatlarım var, buna görə bir seçim var, amma bir-birinə düzgün şəkildə qoşulmaq üçün çətinlik çəkirəm, çünki rth-dən gələn koordinatlar tif ilə uyğun gəlmir. (Üçüncüdə yarım tam ədədlərdir). Buna qalib gəlsəm də, yenə də onlarla uyğunlaşa bilmirəm.

Nə etdiyimi yaxşı başa düşdüyündən əmin deyiləm, ancaq fikir barədə soruşuram - daha sadə edə bilərəmmi?

Yəni üst-üstə düşdükləri təqdirdə, bu rth və rtp qruplarını (eyni qrup) bir araya gətirmək lazımdır. Daha dəqiq desək, bəzi nöqtə qrupları çoxbucaqlıların içərisində tamamilə deyil, yalnız qisməndirlər, buna görə hansının olduğunu bilmirəm, çünki istinadları yoxdur, lakin bu çoxbucaqlılar qrupu altında qismən (ikinci hissə) olan bu qrupa aid olmalıdırlar. .

Problemi gördüyüm yerdə tifin rth-dən 1000: 1000 olduğunu desək böyük ehtimalla ölçüləri daha az olacaq, çünki onu necə saxlayacağımı bilmirəm, buna görə də onları indekslərlə müqayisə edə bilmirəm (koordinatlarla uyğunlaşa bilmirsinizsə) bir növ anlaşılmazlıq və ya buna görə).

Başqa sözlə: rth aldığımda bəzi çoxbucaqlı alt çoxluğu yerinə yetirin və ondan bir nöqtə götürdüm, rth-in alındığı tif faylına necə müraciət edə bilərəm? İndekslərə ehtiyacım var.

Yuxarıdakıları unut. Təkrarlana bilən bir nümunə təqdim edirəm: bir matrisam var:

və oxu a = raster (M) kimidir. Sonra poliqonları aşağıdakılardan istifadə edə bilərəm:

2 çoxbucağım var: daha böyük çöldə, daha kiçik - içəridə. Ancaq burada vacib deyil. Sonra ikinci təbəqədə yatan nöqtələri tapıram:

İndi bu nöqtələrə sahib olduğum üçün çoxbucağın içərisində olanları bilməliyəm (daha böyük bir deyək):

lakin kənarda olan 2 nöqtənin orijinal matrisim M-də harada yerləşdiyini bilməliyəm. Bu indekslərə ehtiyacım var (9,1) (10,2). Bu 2 obyekti necə bağlamaq olar. Birləşdirmə və ya başqa bir şey necə istifadə olunur?

Btw. sual. Niyə nöqtə koordinatları x -0.5 və y-də 0.5 dəyişir? Bu, proyeksiyalı məlumatlarda da görünür.

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki bu mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə onu itirirəm. Nədən daha böyük?

Mənim böyük tiff var və raster istifadə edərək yükləyin:

Bundan sonra, bütün poliqonları sənəddən çıxara bilərəm (maraqlı qat dəyərinin bəzi P dəyərindən istifadə edərək):

Beləliklə, uyğunluq baxımından dəyişdirə biləcəyim obyektlər var, yəni hər qrupdan ayrılmış bütün çoxbucaqları qruplaşdırın. Mən asanlıqla edə bilərəm, çünki bitdiyini yoxlaya və daha böyüyünü götürə bilərəm.

Bununla yanaşı, başqa bir təbəqədən üstünə nöqtələr əlavə etmək istərdim, nə edə bilərəm:

amma bu nöqtələri (qrup şəklindədir) bu çoxbucaqlı qrupu ilə bağlamağın yolunu tapa bilmirəm. Mənim koordinatlarım var, buna görə bir seçim var, amma bir-birinə düzgün şəkildə qoşulmaq üçün çətinlik çəkirəm, çünki rth-dən gələn koordinatlar tif ilə uyğun gəlmir. (Üçüncüdə yarım tam ədədlərdir). Buna qalib gəlsəm də, yenə də onlarla uyğunlaşa bilmərəm.

Nə etdiyimi yaxşı başa düşdüyündən əmin deyiləm, ancaq fikir barədə soruşuram - daha sadə edə bilərəmmi?

Yəni üst-üstə düşdükləri təqdirdə, bu rth və rtp qruplarını (eyni qrup) bir araya gətirmək lazımdır. Daha dəqiq desək, bəzi nöqtə qrupları çoxbucaqlıların içərisində tamamilə deyil, yalnız qisməndirlər, buna görə hansının olduğunu bilmirəm, çünki istinadları yoxdur, lakin bu çoxbucaqlılar qrupu altında qismən (ikinci hissə) olan bu qrupa aid olmalıdırlar. .

Problemi gördüyüm yerdə tifin rth-dən 1000: 1000 olduğunu desək böyük ehtimalla ölçüləri daha az olacaq, çünki onu necə saxlayacağımı bilmirəm, buna görə də onları indekslərlə müqayisə edə bilmirəm (koordinatlarla uyğunlaşa bilmirsinizsə) bir növ anlaşılmazlıq və ya buna görə).

Başqa sözlə: rth aldığımda bəzi çoxbucaqlı alt çoxluğu yerinə yetirin və ondan bir nöqtə götürdüm, rth-in alındığı tif faylına necə müraciət edə bilərəm? İndekslərə ehtiyacım var.

Yuxarıdakıları unut. Təkrarlana bilən bir nümunə təqdim edirəm: bir matrisam var:

və oxu a = raster (M) kimidir. Sonra poliqonları aşağıdakılardan istifadə edə bilərəm:

2 çoxbucağım var: daha böyük çöldə, daha kiçik - içəridə. Ancaq burada vacib deyil. Sonra ikinci təbəqədə yatan nöqtələri tapıram:

İndi bu nöqtələrə sahib olduğum üçün çoxbucağın içərisində olanları bilməliyəm (daha böyük bir deyək):

lakin kənarda olan 2 nöqtənin orijinal matrisim M-də harada yerləşdiyini bilməliyəm. Bu indekslərə ehtiyacım var (9,1) (10,2). Bu 2 obyekti necə bağlamaq olar. Birləşdirmə və ya başqa bir şey necə istifadə olunur?

Btw. sual. Niyə nöqtə koordinatları x -0.5 və y-də 0.5 dəyişir? Bu, proyeksiyalı məlumatlarda da görünür.

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə onu itirirəm. Nədən daha böyük?

Mənim böyük tiff var və raster istifadə edərək yükləyin:

Bundan sonra, bütün poliqonları sənəddən çıxara bilərəm (maraqlı qat dəyərinin bəzi P dəyərindən istifadə edərək):

Beləliklə, uyğunluq baxımından dəyişdirə biləcəyim obyektlər var, yəni hər qrupdan ayrılmış bütün çoxbucaqları qruplaşdırın. Mən asanlıqla edə bilərəm, çünki bitdiyini yoxlaya və daha böyüyünü götürə bilərəm.

Bununla yanaşı, başqa bir təbəqədən üstünə nöqtələr əlavə etmək istərdim, nə edə bilərəm:

amma bu nöqtələri (qrup şəklindədir) bu çoxbucaqlı qrupla bağlamağın yolunu tapa bilmirəm. Mənim koordinatlarım var, buna görə bir seçim var, amma bir-birinə düzgün şəkildə qoşulmaq üçün çətinlik çəkirəm, çünki rth-dən gələn koordinatlar tif ilə uyğun gəlmir. (Üçüncüdə yarım tam ədədlərdir). Buna qalib gəlsəm də, yenə də onlarla uyğunlaşa bilmərəm.

Nə etdiyimi yaxşı başa düşdüyündən əmin deyiləm, ancaq fikir barədə soruşuram - daha sadə edə bilərəmmi?

Yəni üst-üstə düşdükləri təqdirdə, bu rth və rtp qruplarını (eyni qrup) bir araya gətirmək lazımdır. Daha dəqiq desək, bəzi nöqtə qrupları çoxbucaqlıların içərisində tamamilə deyil, yalnız qisməndirlər, buna görə hansının olduğunu bilmirəm, çünki istinadları yoxdur, lakin bu çoxbucaqlılar qrupu altında qismən (ikinci hissə) olan bu qrupa aid olmalıdırlar. .

Problemi gördüyüm yer tifin rth-dən 1000: 1000 olduğunu desək böyük ehtimalla ölçüləri daha az olacaq, çünki onu necə saxlayacağımı bilmirəm, buna görə də onları indekslərlə müqayisə edə bilmirəm (koordinatlarla uyğunlaşa bilmirsinizsə) bir növ anlaşılmazlıq və ya buna görə).

Başqa sözlə: rth aldığımda bir çox çoxbucaqlı alt hissəni yerinə yetirin və ondan bir nöqtə götürdüm, rth-in alındığı tif faylına necə müraciət edə bilərəm? İndekslərə ehtiyacım var.

Yuxarıdakıları unut. Təkrarlana bilən bir nümunə təqdim edirəm: bir matrisam var:

və oxu a = raster (M) kimidir. Sonra poliqonları aşağıdakılardan istifadə edə bilərəm:

2 çoxbucağım var: daha böyük çöldə, daha kiçik - içəridə. Ancaq burada vacib deyil. Sonra ikinci təbəqədə yatan nöqtələri tapıram:

İndi bu nöqtələrə sahib olduğum üçün çoxbucağın içərisində olanları bilməliyəm (daha böyük deyək):

lakin kənarda olan 2 nöqtənin orijinal matrisim M-də harada yerləşdiyini bilməliyəm. Bu indekslərə ehtiyacım var (9,1) (10,2). Bu 2 obyekti necə bağlamaq olar. Birləşdirmə və ya başqa bir şey necə istifadə olunur?

Btw. sual. Niyə nöqtə koordinatları x -0.5 və y-də 0.5 dəyişir? Bu, proyeksiyalı məlumatlarda da görünür.

Mənim böyük tiff var və raster istifadə edərək yükləyin:

Sonra, bütün poliqonları sənəddən çıxara bilərəm (maraqlı qat dəyərinin bəzi P dəyərindən istifadə edərək):

Beləliklə, uyğunluq baxımından dəyişdirə biləcəyim obyektlər var, yəni hər qrupdan ayrılan bütün çoxbucaqları qruplaşdırın. Mən asanlıqla edə bilərəm, çünki bitdiyini yoxlaya və daha böyüyünü götürə bilərəm.

Bununla yanaşı, başqa bir təbəqədən üstünə nöqtələr əlavə etmək istərdim, nə edə bilərəm:

amma bu nöqtələri (qrup şəklindədir) bu çoxbucaqlı qrupu ilə bağlamağın yolunu tapa bilmirəm. Mənim koordinatlarım var, buna görə bir seçim var, amma bir-birinə düzgün şəkildə qoşulmaq üçün çətinlik çəkirəm, çünki rth-dən gələn koordinatlar tif ilə uyğun gəlmir. (Üçüncüdə yarım tam ədədlərdir). Buna qalib gəlsəm də, yenə də onlarla uyğunlaşa bilmərəm.

Nə etdiyimi yaxşı başa düşdüyündən əmin deyiləm, ancaq fikir barədə soruşuram - daha sadə edə bilərəmmi?

Yəni üst-üstə düşdükləri təqdirdə, bu rth və rtp qruplarını (eyni qrup) bir araya gətirmək lazımdır. Daha dəqiq desək, bəzi nöqtə qrupları çoxbucaqlıların içərisində tamamilə deyil, yalnız qisməndirlər, buna görə hansının olduğunu bilmirəm, çünki istinadları yoxdur, lakin bu çoxbucaqlılar qrupu altında qismən (ikinci hissə) olan bu qrupa aid olmalıdırlar. .

Problemi gördüyüm yerdə tifin rth-dən 1000: 1000 olduğunu desək böyük ehtimalla ölçüləri daha az olacaq, çünki onu necə saxlayacağımı bilmirəm, buna görə də onları indekslərlə müqayisə edə bilmirəm (koordinatlarla uyğunlaşa bilmirsinizsə) bir növ anlaşılmazlıq və ya buna görə).

Başqa sözlə: rth aldığımda bir çox çoxbucaqlı alt hissəni yerinə yetirin və ondan bir nöqtə götürdüm, rth-in alındığı tif faylına necə müraciət edə bilərəm? İndekslərə ehtiyacım var.

Yuxarıdakıları unut. Təkrarlana bilən bir nümunə təqdim edirəm: bir matrisam var:

və oxu a = raster (M) kimidir. Sonra poliqonları aşağıdakılardan istifadə edə bilərəm:

2 çoxbucağım var: daha böyük çöldə, daha kiçik - içəridə. Ancaq burada vacib deyil. Sonra ikinci təbəqədə yatan nöqtələri tapıram:

İndi bu nöqtələrə sahib olduğum üçün çoxbucağın içərisində olanları bilməliyəm (daha böyük deyək):

lakin kənarda olan 2 nöqtənin orijinal matrisim M-də harada yerləşdiyini bilməliyəm. Bu indekslərə ehtiyacım var (9,1) (10,2). Bu 2 obyekti necə bağlamaq olar. Birləşmə və ya başqa bir şey necə istifadə olunur?

Btw. sual. Niyə nöqtə koordinatları x -0.5 və y-də 0.5 dəyişir? Bu, proyeksiyalı məlumatlarda da görünür.

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki bu mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə onu itirirəm. Nədən daha böyük?

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki bu mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə onu itirirəm. Nədən daha böyük?

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki bu mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə onu itirirəm. Nədən daha böyük?

Nə baş verdiyini göstərmək üçün bəzi şeylər qura bilərsən, çünki bu mənim üçün heç də aydın deyil. "Uyğunluq baxımından dəyişdirə biləcəyim obyektlər" və "Bitdiyini yoxlayaraq daha böyüyünü götürə bilərəm" dedikdə itirirəm. Nədən daha böyük?


Videoya baxın: GDAL Tips and Tricks GDAL installation, Python usage, and Cloud GeoTIFFs (Oktyabr 2021).