Skip to content
#software testing Open access

DendroGeo: Küresel Ağaç Envanteri ve Karbon Veri Sistemi

Sep 2026 · Zenodo (CERN European Organization for Nuclear Research)

Abstract

🌲 DendroGeo v3.0.0 — Küresel Ağaç Envanteri ve Karbon Veri Sistemi Açık kaynak web CBS + PWA · dendrogeo.org · github.com/snansrin/dendrogeo · Lisans: CC BY-NC 4.0 DendroGeo; sahada GPS ile toplanan ağaç ölçümlerini allometrik biyokütle ve karbon hesaplarına, park kimliği bazlı toplulaştırmalara ve 10 m çözünürlüklü arazi örtüsü analizlerine dönüştüren, çevrimdışı çalışabilen bir web coğrafi bilgi sistemidir. Ölçümler yönetici onayından geçerek DOI ile sürümlenmiş, kamuya açık bir bilimsel veri setine dönüşür. 🧭 Sistem üç adımda çalışır Sahada ölç — GPS konumu, çap (DBH), boy, tür/grup ve isteğe bağlı fotoğraf. Fotoğraf yüklenirse tarayıcı içinde kalite kontrolü (bitki örtüsü oranı, pozlama) yapılır. İnternet yokken ölçümler cihazda IndexedDB kuyruğuna yazılır, bağlantı gelince client_id tabanlı tekilleştirme ile senkronize olur. Yönetici onaylasın — her kayıt moderasyondan geçer; onaylanmayan veri haritaya ve istatistiklere çıkmaz. Onay/red işlemleri kim-ne zaman bilgisiyle denetim izine yazılır. Erişim tamamen Satır Düzeyi Güvenlik (RLS) ile sunucu tarafında zorlanır. Karşılaştır ve yayımla — onaylı kayıtlar küresel haritada, ülke/şehir kırılımında ve park bazlı karbon performans sıralamasında görünür; CSV / QGIS CSV / GeoJSON olarak dışa aktarılır. ✨ Özellikler 1) 🛰 Saha ölçümü ve GPS Yüksek doğruluklu konum + canlı doğruluk göstergesi (±m) ve kalite sınıfı (ÇOK İYİ / İYİ / ORTA / ZAYIF) Ekran kilidi engelleme (Wake Lock API) — iOS'ta ölçüm sırasında ekranın kararması konum izlemesini kestiği için Nokta kimliği otomatik doldurma: en yakın ziyaret edilmemiş waypoint, yoksa son nokta + 1 Ters coğraflama (Nominatim) ile il/ülke otomatik yazımı; Türkiye için state alanından il çözümlemesi Fotoğraf QA/QC: bitki örtüsü oranı ve pozlama denetimi, 1024 px'e sıkıştırma, buluta yükleme Çevrimdışı kuyruk + UUID tabalı mükerrer kayıt koruması (hem istemcide hem veritabanında UNIQUE) 2) 🧮 Biyokütle ve karbon hesabı Chave vd. (2014) allometrik denklemi: AGB = 0.0673 · (ρ·D²·H)^0.976 Kök biyokütlesi: AGB × 0.26 (sistem varsayımı) · Karbon oranı: × 0.47 Tür bazlı odun yoğunluğu (ρ) tablosu; tür bilinmiyorsa grup varsayılanı (İbreli 446, Yapraklı 541, Diğer 493 kg/m³ — Tolunay 2013, NIR Turkey 2017) Hacim: silindir × 0.5 gövde form faktörü · eğim düzeltmesi Canlı hesap: çap/boy girilirken karbon anında gösterilir 3) 🌳 Park kimliği ve parklar arası karşılaştırma (v3.0.0'ın ana yeniliği) Her fiziksel park tek kimlikte tutulur: canonical anahtar OpenStreetMap elemanıdır (way/123456); OSM'de yoksa elle oluşturulan manual/ /<~100 m hücresi> anahtarı Aynı parkı üç kişi üç ayrı projede çalışsa bile veriler tek satırda birleşir — karşılaştırma proje adlarına değil parka dayanır Proje adı kuralı: park adı - kullanıcı etiketi (örn. Göksu Parkı - deneme); adı veritabanı trigger'ı kurar Ölçüm kapısı: park algılanmadan ölçüm girilemez — hem arayüzde hem sunucuda (PARK_REQUIRED) Sıralama metrikleri: toplam karbon (t), t/ha karbon yoğunluğu, katkıda bulunan kişi sayısı, proje sayısı, kayıt ve tür sayısı, ortalama çap/boy, ibreli/yapraklı oranı Park bazlı rapor: tür kırılımı, latince adlar, grup dağılımı + CSV çıktısı Yönetim araçları: Parkları Geri Doldur (eski projeleri ölçüm merkezinden OSM parkıyla eşleştirir; 1500 m → 3500 m → ada göre arama; önizleme + onay) ve Park Kimlikleri (çift kimlik bulma, yeniden adlandırma, birleştirme, silme) 4) 🔲 Örneklem ızgarası ve waypoint navigasyonu Park polygonu üzerine 10 / 20 / 50 m örneklem ızgarası Grid yalnız arazi örtüsü analizinin yeşil alanlarında kurulabilir OSM'den türetilen sert yüzeyler (bina, yol, otopark, spor sahası) ve su kütleleri ile tampon mesafeleri hücreleri eler Izgara hücrelerinden waypoint üretimi, CSV yükleme (X,Y,id), hedefe ok + mesafe navigasyonu, "vardım" işaretleme 5) 🛰 Arazi örtüsü (LULC) analizi Birincil kaynak: ESA WorldCover 2021 v200 (10 m, Sentinel-1 + Sentinel-2) · bağımsız çapraz doğrulama: IO LULC 2020 Microsoft Planetary Computer STAC + COG (GeoTIFF) üzerinden bulut-iyimser okuma; alanlar raster hücresi ile park polygonunun gerçek kesişimlerinden hesaplanır (coverage-weighted zonal analiz) UTM projeksiyonu ve alan korunumu, Sutherland–Hodgman kırpma OSM yol rafinasyonu hücre merkezine göre daraltılır; su aynaları ayrı katman olarak çizilir Tek blok HTML rapor + vektör çizim + sınıf bazlı CSV ve hücre GeoJSON dışa aktarımı 6) ✅ Moderasyon, denetim izi ve güvenlik Onay / red / silme; reviewed_by, reviewed_at, reject_reason, deleted_at ile denetim izi Park → proje → kullanıcı hiyerarşisinde onay kuyruğu, her seviyede 🔴 bekleyen rozeti Admin olmayan status='Onaylı' yapamaz (trigger ile sunucu tarafında zorlanır) RLS: onaysız kayıtları yalnız sahibi ve yöneticiler görür; e-posta adreslerini yalnız yöneticiler görür Fotoğraf depolaması kullanıcı klasörüne izole; yönetici olmayan başkasının dosyasını silemez 7) 🌍 Küresel harita ve istatistik Leaflet + MarkerCluster ile onaylı kayıt haritası, fotoğraf balonları, ülke/şehir yakınlaşma Sunucu tarafı toplulaştırma view'ları (v_global, v_country, v_city, v_world_agg, v_park_compare) — istemci tarafı satır limiti kesilmesi yok Ağaç çeşitliliği analizi: grup dağılımı, en yaygın türler, ortalama çap/boy 8) 📥 Dışa aktarım Bilimsel CSV (29 alan: koordinat, doğruluk, tür/latince, çevre, çap, boy, alan, hacim, AGB/BHB/toplam biyokütle, karbon, fotoğraf dosyası ve URL'si, ISO tarih) QGIS uyumlu detaylı CSV · GeoJSON · park raporu CSV · park şeklinde yüksek çözünürlüklü PNG Yönetici için tüm kullanıcıları kapsayan filtreli toplu dışa aktarım (ülke / şehir / proje / durum) 9) 🔐 Kimlik doğrulama ve KVKK uyumu E-posta + parola (Cloudflare Turnstile bot koruması) ve Google ile giriş (Supabase OAuth, PKCE/implicit uyumlu geri dönüş beklemesi) Kayıtta açık rıza zorunlu; rıza zaman damgasıyla kimlik metadata'sına yazılır Yasal belgeler: Gizlilik Politikası, KVKK m.10 Aydınlatma Metni, Kullanım Koşulları, Künye & içerik kaldırma süreci, erişilebilirlik beyanı İzleme çerezi, reklam ve üçüncü taraf analitik yoktur 10) 📱 PWA ve çevrimdışı çalışma Service Worker: PRECACHE / RUNTIME ayrımı, harita karo ve API önbelleği, ağ-öncelikli yükleme Kurulum (Add to Home Screen), çevrimdışı ölçüm kuyruğu ve senkronizasyon rozeti Depoda satır içi olmayan modüler mimari: partials/ → index.html üretimi, içerik hash'li ?v= sürümleme 🗄 Veri modeli (PostgreSQL / Supabase) Tablolar: profiles, projects, parks, measurements, waypoints, site_visits, data_requests Trigger'lar: proje adını kuran trg_compose_project_name, ölçüm kapısı trg_enforce_park_link, park bağını yöneticiye ayıran trg_enforce_park_admin, onay zorlaması trg_enforce_approval, onay damgası trg_stamp_review, park adı yazım düzeni trg_park_name_case View'lar: v_global, v_country, v_city, v_world_agg, v_park_compare Şema migration'ları repoda: supabase/migrations/0001 → 0006 (hepsi idempotent) 🏗 Mimari ve kalite güvencesi Statik dağıtım (GitHub Pages) + PWA + Supabase; derleyici/transpiler yok, klasik modülleri Vanilla JavaScript, Leaflet, Supabase JS, Chart.js ve GeoTIFF.js (son ikisi tembel yüklenir) 503 otomatik test: allometri ve jeodezi (bilinen referans değerleriyle), UTM projeksiyonu ve alan korunumu, LULC motoru, park geometrisi, modül kayıt bekçisi, ölü buton / eksik ID denetimi, yapısal HTML dengesi, dağıtım sürüklenmesi, hukuki uyum (harita atıfları, KVKK rıza kapısı, lisans tutarlılığı) ve sahte Supabase ile uçtan uca akış testleri GitHub Actions CI: sözdizimi (tarayıcı semantiğiyle), sürüm hash'leri, derleme tutarlılığı, CSP↔kod tutarlılığı, testler ve canlı dağıtım denetimi 🆕 v3.0.0 yenilikleri Park kimliği mimarisi: karşılaştırma artık proje adlarına değil algılanan parka dayanıyor; ölçüm kapısı ve park adı - etiket proje adı kuralı eklendi Google ile giriş (Supabase OAuth) ve kayıtta KVKK açık rızası Park → proje → kullanıcı hiyerarşik onay kuyruğu + bekleyen rozetleri Mobil uyumlu arayüz (tablolar dar ekranda kart düzenine dönüşüyor) Yasal belgeler: gizlilik, aydınlatma metni, kullanım koşulları, künye ve içerik kaldırma süreci Harita atıfları (ODbL / Esri / CC-BY-SA) ve PNG çıktısında telif satırı Lisans netleştirildi: kod, belge ve veri birlikte CC BY-NC 4.0 Kritik hata düzeltmeleri: PostgREST çoklu ilişki (PGRST201), supabase-js zincir sırası, fazla kaynaklı bozuk sayfa, Türkçe büyük/küçük harf tuzakları 📖 Bilimsel yöntem ve kaynaklar Chave J., Réjou-Méchain M., et al. (2014). Improved allometric models to predict the aboveground biomass of tropical trees. Global Change Biology, 20(10), 3177–3190. IPCC (2006). Guidelines for National Greenhouse Gas Inventories, Vol. 4: Agriculture, Forestry and Other Land Use. Tolunay D. (2013). Türkiye'deki Orman Ağaçlarının Odun Yoğunluğu Değerleri. Orman Bakanlığı Yayınları. As N., Asan A., Okur O.D. (2001). Türkiye Orman Ağaçlarının Tohum, Kozalak ve Meyve Özellikleri. OGM (2017). 299 Nolu Tebliğ — Orman Ürünlerinin Ölçümlenmesine Dair Esas ve Usuller. Zanaga D., et al. (2021). ESA WorldCover 10 m 2021 v200 (CC BY 4.0) · Brown C.F., et al. (2022). IO LULC 2020 (10 m, çapraz doğrulama). Park geometrileri: © OpenStreetMap contributors (ODbL 1.0) · Harita karoları: OSM / OpenTopoMap (CC-BY-SA) / Esri World Imagery. 📜 Atıf Şirin, N. & Şirin, S. (2026). DendroGeo: Küresel Ağaç Envanteri ve Karbon Veri Sistemi (Version v3.0.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.22948643 @software{dendrogeo_v3, title = {DendroGeo: Küresel Ağaç Envanteri ve Karbon Veri Sistemi}, author = {\c{S}irin, Nagihan and \c{S}irin, Sinan}, year = {2026}, version = {3.0.0}, doi = {10.5281/zenodo.22948643}, url = {https://dendrogeo.org}, license = {CC-BY-NC-4.0} } ⚠️ Sınırlılıklar Karbon ve biyokütle değerleri allometrik denklemlerle üretilen tahminlerdir; saha ölçüm hataları, tür tayini belirsizliği ve model varsayımları (kök biyokütlesi ×0.26, karbon oranı ×0.47,

View source

Similar papers

#computer vision Review Sep 2017

Agile Software Development Methods: Review and Analysis

This publication proposes a definition and a classification of agile software development approaches and analyses ten software development methods that can be characterized as being "agile" against the defined criterion.

P. Abrahamsson, O. Salo, Jussi Ronkainen et al. · 727 citations · ⚡54
#computer vision Jun 2008

The impact of agile practices on communication in software development

The study shows that agile practices improve both informal and formal communication, but indicates that, in larger development situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder the communication.

M. Pikkarainen, Jukka Haikara, O. Salo et al. · 401 citations · ⚡48
#machine learning Review Open access Oct 2014

Software development in startup companies: A systematic mapping study

The results indicate that software engineering work practices are chosen opportunistically, adapted and configured to provide value under the constrains imposed by the startup context.

Nicolò Paternoster, Carmine Giardino, M. Unterkalmsteiner et al. · 394 citations · ⚡54
#computer vision Review Mar 2008

Agile methods in European embedded software development organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum

The results show that the embedded industry has been able to apply agile methods in its development processes and that the appreciation of the agile methods and their individual practices appears to increase once adopted and applied in practice.

O. Salo, P. Abrahamsson · 238 citations · ⚡9
#computer vision Open access Jul 2017

What happens when software developers are (un)happy

Consequences of happiness and unhappiness that are beneficial and detrimental for developers' mental well-being, the software development process, and the produced artifacts are found.

D. Graziotin, Fabian Fagerholm, Xiaofeng Wang et al. · 236 citations · ⚡13
#computer vision Open access Oct 2004

Mobile-D: an agile approach for mobile application development

The Mobile-D approach is briefly outlined here and the experiences gained from four case studies are discussed, which helped develop an agile development approach for mobile application development.

P. Abrahamsson, Antti Hanhineva, H. Hulkko et al. · 225 citations · ⚡18

Related blog posts

MIT News · Artificial Intelligence Oct 2, 2026

Documenting the tech worker movement

Writing as a participant and researcher, PhD student JS Tan SM ’22 has co-authored a new book about the rise of tech worker protests and the employer backlash that followed.

GPT-Lab Sep 23, 2026

Requirements Don’t Live in Isolation: What We’re Exploring with Req-Space

Requirements in large systems rarely exist in isolation. Their meaning depends on the wider project context - other requirements, policies, decisions, tests, and implementation details. That becomes especially important when AI is used for review, because spotting a possible conflict or gap is only the beginning. ReqSpace explores how AI, visualisation, and connected project context can help reviewers understand those findings, trace the relationships behind them, and focus on the questions that…

GPT-Lab Sep 17, 2026

Beyond Prompt Engineering: The Role of Tacit Knowledge in Software Engineering

AI is making software generation faster, but speed does not remove the need for expertise. As more work is delegated to AI, tacit knowledge may become one of the most important human advantages in software engineering. The post Beyond Prompt Engineering: The Role of Tacit Knowledge in Software Engineering appeared first on GPT-Lab.

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.