PointNet untuk segmentasi semantik point cloud

Perkembangan algoritma pengolahan data telah memberikan dampak besar ke berbagai aspek, termasuk untuk pengolahan data spasial. Penggunaan machine learning dan deep learning untuk mengolah data yang banyak dan kompleks memberikan berbagai solusi dan alternatif dari pengolahan konvensional. Machine learning dan deep learning keduanya adalah bagian atau termasuk ke dalam Artificial Intelligence atau kecerdasan buatan yang dirancang untuk membantu manusi menyelesaikan masalah yang kompleks dan input data yang banyak. Perbedaannya adalah pada machine learning inti dasarnya merupakan sebuah tools dan metode statistik yang menggunakan komputer atau mesin untuk belajar dari data. Sedangkan deep learning inti dasarnya tersusun dari deeply layered networks atau jaringan yang berbentuk susunan layer dan jumlahnya sangat banyak. Deep learning lebih diuntungkan untuk mempelajari data yang sangat banyak, contohnya adalah untuk pengolahan point cloud.

Tantangan dalam pengolahan point cloud dengan deep learning adalah bagaimana cara agar model deep learning dapat mempelajari atau di-train terhadap data yang tidak beratur, tidak berstruktur dan tidak berurutan? Point cloud memiliki karakteristik data yang sulit untuk diolah secara otomatis. Pada awal pengolahan point cloud dengan deep learning, data point cloud perlu diubah atau ditransformasi terlebih dahulu menjadi ‘bentuk yang teratur’. Proses transformasi ini dapat berupa ke multi-view, spherical, volumetric. Permutational lattice, atau hybrid. Intinya adalah mengubah struktur point cloud yang tidak teratur menjadi teratur lalu dimasukkan ke deep learning. Tujuannya adalah agar algoritma deep learning dapat di-train dari data yang teratur tersebut. Namun, proses transformasi ini digunakan bukan tanpa konsekuensi. Akibat transformasi ke bentuk yang teratur menyebabkan data point cloud menjadi voluminous atau ukurannya yang sangat besar dan tidak efisien untuk diolah.

Permasalahan terkait proses men’teratur’kan data point cloud menyebabkan data menjadi sangat besar sehingga tidak efisien untuk diolah. Pada tahun 2017, Qi dkk. membuat algoritma yang dapat menerima point cloud langsung tanpa proses vokselisasi dan lain sebagainya. Algoritma ini disebut dengan PointNet. PointNet adalah algoritma deep learning pertama yang menerima raw data point cloud sebagai input tanpa perlu dilakukan transformasi point cloud menjadi bentuk yang teratur terlebih dahulu. Walau sekarang sudah banyak bermunculan algoritma deep learning yang menerima point cloud langsung sebagai input, namun backbone-nya adalah PointNet.

Arsitektur dari PointNet sendiri tersusun dari 2 network yakni Classification Network dan Segmentation Network. Beberapa artikel mengatakan bahwa arsitektur PointNet cukup sederhana, namun bagi Surveyor yang kesehariannya bekerja di penentuan posisi dan bukan di programming tentu arsitekturnya masih terlihat rumit. PointNet menerima input berupa data point cloud itu secara langsung. Arsitektur dari PointNet sendiri secara sederhana didesain untuk mengatasi tantangan dalam data Point Cloud, dapat dijelaskan sebagai berikut:

  1. Input data adalah point cloud langsung. 1 point memiliki informasi ruang 3D (XYZ) di dalamnya, dan juga informasi radiometrik (RGB).
  2. Menggunakan Multi-Layer Perceptron (MLP) sebagai bentuk deep learningnya.
  3. Bersifat tetap terhadap transformasi (invariance to transformation). Artinya adalah walaupun sebuah point cloud dilakukan transformasi seperti ditranslasi ataupun rotasi, maka seharusnya tidak mengubah point cloud tersebut. Jika point cloud sebuah kursi diputar atau dirotasi, maka objeknya tetaplah sebuah kursi. Untuk itu diperlukan Spatial Transformer Network untuk mentransformasi point cloud dalam bentuk tertentu agar tidak berubah ketika ditransformasi. Sifat ini diselesaikan menggunakan T-Net Transformer.
  4. Bersifat tetap terhadap permutasi (invariance to permutation). Hal ini untuk mengatasi sifat point cloud yang tidak berurutan (unordered). Untuk menyelesaikannya, PointNet menggunakan Max Pooling Layer untuk menggabungkan informasi dari seluruh point pada layer sebelumnya. Max Pooling Layer merupakan funsgi simetris dimana urutan input tidak mempengaruhi hasil akhir.
  5. Sifat ketetanggaan antar point. Points dalam point cloud bersama dalam satu kesatuan membentuk suatu objek. Artinya adalah antar points atau sifat ketetanggaan antar points harus diperhatikan. Model PointNet mampu mengkombinasikan struktur lokal dan global antar tetangga point sehingga dapat digunakan untuk segmentasi.

Kekuatan deep learning adalah pada training data yang digunakan. Secara sederhana, seseorang yang diberikan lebih banyak gambar tentang pesawat, variasi dan model yang lebih banyak pasti akan lebih mudah mengenali berbagai tipe pesawat yang ada. Deep learning sama seperti seorang balita yang perlu diajarkan banyak hal. Dengan demikian, semakin banyak, kompleks dan baik dari training data, maka model yang dihasilkan akan semakin akurat. Model di deep learning secara sederhana adalah manifestasi dari ilmu yang telah dipelajarinya. Dari contoh tadi, seseorang yang telah diberikan banyak gambar tentang pesawat maka akan memiliki pengetahuan untuk membedakan berbagai jenis tipe pesawat. Pengetahuan inilah yang disebut Model.

Model hasil train atau trained model di dunia machine learning dan deep learning memegang peranan yang sangat penting untuk predict data baru.Dengan model yang terbentuk kemudian digunakan pada data baru yang belum pernah dilihat sebelumnya atau tidak digunakan sebagai training data. Jadi urutannya adalah: (1) training data digunakan untuk train model. (2) Model yang sudah di-train kemudian digunakan untuk predict data baru. Proses segmentasi dengan PointNet juga memiliki prosedur yang sama, dimana tersedia data training yang digunakan untuk membentuk model dan model ini yang kemudian digunakan untuk predict data point cloud lain yang belum pernah dilihat model.

Bacaan lanjutan:

  • Guo, Y., Wang, H., Hu, Q., Liu, H., Liu, L., & Bennamoun, M. (2020). Deep Learning for 3D Point Clouds: A Survey. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1–1. https://doi.org/10.1109/tpami.2020.3005434
  • Qi, C. R., Su, H., Mo, K., & Guibas, L. J. (2017). PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation. Computer Vision and Pattern Recognition.
  • Sarkar, D., Bali, R., & Ghosh, T. (2018). Hands-On Transfer Learning with Python: Implement advanced deep learning and neural network models using TensorFlow and Keras. Packt Publishing Ltd.

Comment

Tulisan Lainnya

Klasifikasi Indoor Point Cloud Otomatis

Machine Learning untuk Klasifikasi Indoor Point Cloud Otomatis

21.12.2022

Point cloud adalah kumpulan titik (points) dalam ruang 3D dimana setiap titik memiliki koordinat

  • No React!
Latar Belakang Transformasi Geodesi Masa Kini

Transformasi ke Era Baru Geodesi

21.12.2022

GEODESI, sebuah kata yang mungkin jarang didengar dalam kehidupan sehari-hari. Sebagai seseorang yang berkuliah

  • No React!

Membangun Metaverse Majapahit dengan CRP (Close Range Photogrammetry) dan Drone

04.09.2022

Siapa yang tidak kenal Majapahit? Kerajaan, atau tepatnya Kemaharajaan Majapahit karena saking besarnya wilayah

  • No React!

Geo-Intelligent Big Data menggunakan Teknologi Imaging

01.09.2022

Imajing adalah platform smart mobile mapping system yang menggunakan teknologi geospasial 3D berbasis multi-sensor,

  • No React!

Mengenal Spatial Data Science?

01.09.2022

Spatial data science merupakan subset dari data science. Sedangkan data science sendiri merupakan bidang

  • No React!