Point cloud dataset kullanılarak sınıflandırma


#1

Herkese merhaba,

Elimde point cloud dataset mevcut. Ağaç, bina, direk vs. gibi nesnelerin x,y,z nokta bilgileri ve r,g,b renk bilgilerine sahibim. Örnek vermek gerekirse, Ağaç objesini oluşturan binlerce noktaya sahibim. Yeni bir point cloud geldiği zaman bunun ağaç mı, bina mı vs tahminini yapmak istiyorum.

Soruma gelecek olursak. Bu binlerce noktaya ait nx6’ lık (n-> nokta sayısı, 6->x,y,z,r,g,b) matrisin ben hangi objeye ait olduğunu nasıl öğreteceğim ?

İyi çalışmalar.


#2

Ağ yapıları sabit ebatlarda giriş alıyor.
Eğer elinizdeki verileri sabit bir ebata dönüştüre bilirseniz elbette mümkün
Ek olarakda bir cisme ait binlerce nokta değil bir sınıfa ait binlerce matirse sahip olmanız gerekiyor.

2D den örnek vereyim mesela elinizde 16000x16000 lik yük sek çözünürlükte resim olduğrunu düşünün
bu 16000x16000x3 RGB değer içeriyor demek bu büyüklükteki veriyi ağa verip işlettirmek zor.
Resmin içeriğine göre
eğer Genel olarak bir nesneyi içeriyorsa tanınabilirliğini engellemeyecek şekilde küçültmek ve ağa vermek
Eğer mesela Uydu görüntüsü gibi bir genel görüntü ise bölüp kısım kısım ağa vermek mümkün


#4

Nokta sayısı 2D deki çözünürlük gibidir demek istiyorum
Şöyle anlatayım.

Mesela X,Y,Z koordinatlarında maksimumumve minimum noktalarınız neler
varsayalım min 0 max 100 olsun
sizin 100x100x100 lük bir hacim matrisiniz var ve her noktanın RGB diye 3 değeri var
Hacim için Conv işlemleri var -Conv3D -
Böyle bir dönüşümle bir çalışma yapmak mümkün olabilir gibi geliyor bana


#3

Merhaba. Söylemek istediğinizi tam olarak anlamadım. Daha detaylı bir şekilde anlatabilir misiniz?

Sadece x,y,z koordinat bilgilerini düşünelim. Ağacı oluşturan 3d koordinat sistemindeki noktalar elimde mevcut. Yaklaşık her cisim için 260bine yakın nokta bilgisi var. Söylediğiniz gibi ağaç için bunlardan yüzlerce var elimde(Sayıyı daha da arttırabilirim). Yüzlerce nx3 lük matris var yani. Benim kafama takılan zaten her bir nx3 lük matrisi nasıl sınıflandıracağım. Yani ben bu nx3 lük matrise, bu ağaçtır nasıl demeliyim. Convolutional nn deki gibi 3x3 lük bir matrisle taramam mümkün mü? Daha farklı yöntemle çözmem mümkün mü ?

İyi çalışmalar.


#6

Size Information Retrieval alaninda biraz okuma yapmanizi oneririm. Bu alan veri ozetleme konusunda cok calismanin yapildigi bir alan.

Ornegin sizin verileriniz icin basit bir ozetleme merkezi momentler (central moments) ozetlemesi olabilir. Noktalarin agirlik merkezi bulunduktan sonra her noktanin merkeze olan uzakliklarin karelerinin, kuplerinin, vs ortalamalari kullanilir. Bu ozet veriler daha sonra herhangi bir klasifikasyon sistemine “feature vector” olarak verilir.

Formule etmek gerekirse (N nokta icin)

m_x, m_y, m_z agirlik merkezimiz ise

\frac{1}{N}\sum [(x_i - m_x)^n * (y_i - m_y)^k * (z_i - m_z)^r]

degisik n, k, r degerleri kullanmak suretiyle bir cok ozet uretilir. Genel olarak 2,3,4 gibi degerler kullanilir. Cok buyuk momentler anlamini kaybetmektedir. Bunlara R,G,B degerleri de eklenerek daha karmasik momentler tanimlanabilir. Ornegin kirmizi icin ayri momentler, yesil icin ayri momentler vs. Cok degisik momentler uretildikten sonra klasifikasyon algoritmasinin hangilerinden faydalandigini gorebiliriz ve ise yaramayanlari atabiliriz.


#5

Şimdi anladım demek istediğinizi. Çok teşekkür ederim. Bir şeyler oturdu kafamda.

İyi çalışmalar.


#7

Merhaba,

Önerilerin için teşekkür ederim dikkate alacağım. Bunun dışında aslında x,y,z,r,g,b değerlerinin hepsini kullanmayı düşünmüyorum. Örnek vermek gerekirse; Ağaç ile çim arasındaki fark yüksekliktir mesela. 2 si de aynı renkte olabilir. O yüzden benim kullanacağım birinci parametre z olacak. x ve y değerleri için ise tüm noktaların orta noktasını bulup, her bir x ve y değerlerinin bu noktaya olan uzaklığını hesapladım. Bu sayede x ve y yi tek bir parametreye düşürdüm. Bunu da ağaç ile bir direk(elektrik direği) arasındaki farkı bulmakta ayırtedici özellik olarak kullanabilirim. Son yazdığım aslında sizinkine benzer bir durum gibi geldi bana. r,g,b değerlerini ise ascii koda dönüştürüp, tek bir parametreye indirgedim. RGB değerini renkleri farklı olan cisimler için kullanıyorum. Yani ben kullanacağım özellikleri 3 e indirgedim. Benzer bir şeyi düşünmüş olmak beni mutlu etti açıkçası(sanırım benzer :slight_smile: ). Söylediğiniz konuyu araştıracağım. Teşekkür ederim tekrardan. Eğer eklemek istediğiniz bir şey varsa lütfen cevap yazın.

İyi çalışmalar.