Yazılarımız

Veri Akademi

POİNT CLOUD SINIFLANDIRMA VE FİLTRELEME TEKNİKLERİ UYGULAMAK

Point cloud verisi, sahayı “olduğu gibi” yakalar; fakat aynı zamanda gürültüyü, yansımayı ve ölçüm belirsizliğini de taşır. Sınıflandırma ve filtreleme yapılmadığında, ekipler doğru nesneyi ararken zaman kaybeder ve modelleme kararları yanlış referanslara dayanır.

Kurumsal projelerde sorun genellikle verinin az olması değil, fazla ve düzensiz olmasıdır. Aynı veri seti farklı ekiplerde farklı kurallarla işlendiğinde, ortaya çıkan çıktıların karşılaştırılması zorlaşır. Bu yüzden süreci, tekrarlanabilir bir kalite kapısı ile yönetmek kritik hale gelir.

Bu yazıda; point cloud sınıflandırma ve filtreleme tekniklerini, hedefe göre seçmek, parametreleri standardize etmek ve çıktıyı raporlamak için pratik bir çerçeve sunuyoruz. Amaç, analiz edilebilir ve modellemeye hazır bulut üretmektir.

Lazer tarama nokta bulutunun yer, bina ve bitki sınıflarıyla renk kodlu olarak ayrıldığı çalışma ekranı

Sınıflandırma hedefini belirlemek ve veri politikası kurmak

Başlıktan türetilen primary keyword: point cloud sınıflandırma. Bu hedef; çıktının BIM modelleme mi, altyapı analiz mi, hacim hesap mı, yoksa yol/şebeke tasarımı mı olduğuna göre değişir. Hedef belirsiz kaldığında, sınıflar da gereksiz yere artar ve performans düşer.

Use-case matrisini oluşturmak ve sınıf sözlüğünü sabitlemek

Sınıf sözlüğü; yer (ground), bina (building), bitki (vegetation), kablo/hat (utility), araç/insan (dynamic) gibi temel kategorilerden başlar. Her sınıfın hangi iş için üretildiği yazılmalıdır. Bu yaklaşım, “neden bu sınıf var” sorusunu sprint içinde tekrar tekrar sormayı engeller.

Yoğunluk ve doğruluk beklentisini tanımlamak ve tolerans belirlemek

Yoğunluk (point density) arttıkça detay artar; fakat dosya boyutu ve işleme süresi de artar. Kurumsal akışlarda, belirli bir tolerans aralığına göre downsample hedefi koymak gerekir. Secondary keyword örnekleri: point density, voxel downsample, ground extraction, noise azaltma, outlier filtresi, sınıf etiketleme, yükseklik normalizasyonu, intensity filtresi.

  • Sınıf sözlüğünü proje tipine göre sade tutmak
  • Tolerans hedefini disiplin bazında yazmak
  • Parametre setini ekipçe ortaklaştırmak
  • Rapor formatını teslim paketine bağlamak

Gürültü azaltmak ve outlier temizlemek için filtreleme kurgulamak

Filtreleme, sınıflandırmadan önce “veriyi makul hale getirmek” için uygulanır. İlk adımda kaba temizlik yapılır; sonra hedefe göre ince filtreleme gelir. Bu aşamada, özellikle cam yüzeyler ve parlak metal yansımaları, yanlış uzaklık ölçümleri üretebilir.

Statistical outlier filtresi uygulamak ve komşuluk parametresi ayarlamak

Statistical outlier filtreleri, her noktanın komşularına göre uzaklık dağılımını kullanır. Komşu sayısı çok düşükse yanlış pozitif artar; çok yüksekse ince detaylar silinir. Bu yüzden proje ölçeğine göre “kademeli filtreleme” ile ilerlemek daha güvenlidir.

Radius outlier filtresi kullanmak ve boşluk bölgelerini korumak

Radius tabanlı filtre, belirli yarıçap içinde yeterli komşusu olmayan noktaları eler. Ancak boşluk bölgeleri (örneğin açıklıklar, boş hacimler) yanlışlıkla temizlenebilir. Bu nedenle radius filtresi, sınıflandırma öncesi genel temizlikte sınırlı kullanılmalıdır.

# Örnek: Basit outlier temizleme parametre şablonu (temsili)
filter_config = {
  "statistical": {"k_neighbors": 30, "std_ratio": 2.0},
  "radius": {"radius_m": 0.10, "min_neighbors": 5}
}

Yer yüzeyi çıkarmak ve yükseklik normalizasyonu yapmak

Yer çıkarımı, pek çok sınıflandırma hattının temelidir. Yer yüzeyi doğru bulunmazsa; bina tabanı, yol platformu ve şev gibi öğeler yanlış sınıflanır. Normalizasyon yapıldığında, her noktanın yerden yüksekliği hesaplanır ve sınıflar daha kararlı hale gelir.

Ground extraction yapmak ve eğim kırılmalarını yönetmek

Şehir içi alanda yer yüzeyi düz değildir; rampalar, şevler ve bordür kırılmaları vardır. Ground extraction algoritmaları (ör. progressive TIN densification) bu kırılmaları “yer” olarak okuyabilir veya dışlayabilir. Bu yüzden eğim eşikleri ve maksimum yükseklik farkı parametreleri, saha tipine göre ayarlanmalıdır.

Height above ground üretmek ve sınıfları yükseklik bandıyla desteklemek

Yer referanslı yükseklik bandı, bitki ve bina ayrımında çok işe yarar. Örneğin 0–0.3 m aralığı yol detayı için, 2–20 m aralığı bina cepheleri için farklı kurallar gerektirebilir. Böylece sınıflandırma yalnızca yoğunlukla değil, bağlamsal bir metrikle desteklenir.

// Örnek: Yükseklik bandına göre sınıf önerisi (temsili)
function suggestClass(heightAboveGroundMeters) {
  if (heightAboveGroundMeters < 0.3) return "ground_detail";
  if (heightAboveGroundMeters < 2.0) return "street_furniture";
  if (heightAboveGroundMeters < 20.0) return "building_facade";
  return "high_objects";
}

Öznitelik tabanlı filtreleme yapmak ve sınıflandırmayı güçlendirmek

Point cloud yalnızca XYZ değildir; intensity, return count, RGB ve scan angle gibi öznitelikler sınıflandırmayı güçlendirir. Kurumsal iş akışlarında en büyük kazanım, bu öznitelikleri “kural seti” haline getirmektir.

Intensity ve return bilgisi kullanmak ve yanlış yansımayı ayıklamak

Intensity, yüzeyin yansıtma karakteristiğine dair ipucu verir. Çok düşük veya çok yüksek intensity değerleri, cam ve parlak metal kaynaklı hatalara işaret edebilir. Return sayısı ise bitki gibi yarı geçirgen yüzeyleri ayırt etmede yardımcı olur. Öznitelik filtreleri tek başına yeterli değildir; ancak yer çıkarımı ve segmentleme ile birleşince güçlü bir sonuç verir.

Voxel downsample uygulamak ve detay-kalite dengesini kurmak

Voxel downsample, bulutu 3B ızgaraya oturtup her hücreyi temsil eden nokta üretir. Bu yöntem dosya boyutunu azaltır ve işlem süresini düşürür; fakat küçük detayları kaybettirebilir. Bu yüzden voxel boyutu, hedef toleransla uyumlu seçilmeli ve kritik bölgelerde daha ince uygulanmalıdır.

Nokta bulutunda intensity histogramı ve filtre eşikleri ile gürültünün ayıklandığı teknik analiz ekranı

Segmentasyon kurgulamak ve üretimi ölçeklemek

Kurumsal ölçekte asıl problem, tek seferlik sınıflandırma değil; tekrar eden üretimdir. Segmentasyon; veriyi zon, kat, grid veya çalışma paketi bazında ayırarak hem performansı artırır hem de paralel çalışmayı kolaylaştırır.

Zon bazlı segmentlemek ve sınıf hatalarını lokalize etmek

Zon bazlı segmentleme, hatayı “tüm proje” yerine “belirli alan” içinde aramayı sağlar. Böylece yanlış sınıf etiketleri, daha hızlı düzeltilir. Ayrıca farklı zonların farklı parametre setlerine ihtiyacı varsa, bu esneklik kontrollü şekilde sağlanabilir.

Pipeline standardı kurmak ve rapor çıktısını zorunlu kılmak

Her çalıştırmada; kaç nokta temizlendi, hangi sınıflar üretildi, hangi parametre seti kullanıldı gibi bilgiler raporlanmalıdır. Bu rapor, kalite kapısının parçası olur ve sprint sonu değerlendirmede “neden değişti” sorusunu sayıya döker. Bu yaklaşımı standartlaştırmak için point cloud eğitimi kapsamında sınıflandırma kuralları, filtre parametreleri ve raporlama şablonları birlikte kurgulanabilir.

Kat ve zonlara ayrılmış nokta bulutu segmentlerinin sınıf etiketleriyle listelendiği proje yönetim tablosu görünümü

Özetlemek gerekirse; point cloud sınıflandırma ve filtreleme, hedefi belirlemekle başlayıp gürültüyü azaltmak, yer yüzeyini çıkarmak, özniteliklerle güçlendirmek ve segmentasyonla ölçeklemekle olgunlaşır. Bu süreç yazılı bir standart ve raporlanmış bir kalite kapısıyla yönetildiğinde, ekipler her teslim döngüsünde aynı çıktıyı üretir ve karar verme hızı artar.

 CADSAY