Manisa Celal Bayar Üniversitesi

Makine Öğrenmesi ve Yapay Zeka için Görüntü ve Video Etiketleme Teknikleri

Furkan Bulut

Makine Öğrenmesi ve Yapay Zeka için Görüntü ve Video Etiketleme Teknikleri

Veri Bilimi Görüntü İşleme
  • 03 Eylül 2024 22:01
  • Furkan Bulut
  • 2023-2024 Proje Ekibi & Web Koordinatörü
 

Makine Öğrenmesi ve Yapay Zeka için Görüntü ve Video Etiketleme Teknikleri

Furkan Bulut
 
8 min read
·
Sep 3, 2024
 

Görüntü ve video etiketleme, yapay zeka ve makine öğrenmesi uygulamalarının temel taşlarından biridir. Bu süreç, makinelere ve algoritmalara gerçek dünya objelerini anlamalarına ve sınıflandırmalarına yardımcı olacak verileri sağlamak için kritik öneme sahiptir. Kişisel deneyimlerimden de gördüğüm gibi, veri setindeki etiketleme yöntemlerinde yapılan değişiklikler model performansını önemli ölçüde etkileyebilir. Bu makalede, çeşitli etiketleme yöntemlerini, tercih edilen derin öğrenme algoritmalarını ve her birinin hangi durumda kullanıldığını genel hatları ile inceleyeceğiz.

 

İçindekiler

  • Bounding Box (Sınırlayıcı Kutu)
  • Semantic Segmentation (Anlamsal Segmentasyon)
  • Instance Segmentation (Örnek Segmentasyonu)
  • Keypoint Annotation (Anahtar Nokta Anotasyonu)
  • Polygon Annotation (Çokgen Anotasyonu)
  • 3D Bounding Box (3D Sınırlayıcı Kutu)
  • Lidar Annotation (Lidar Anotasyonu)
  • Pose Estimation Annotation (Poz Tahmini Anotasyonu)
  • Object Tracking (Nesne Takibi)
  • Video Annotation (Video Anotasyonu)
  • Temporal Segmentation (Zamansal Segmentasyon)
  • Landmark Annotation (Kılavuz Nokta Anotasyonu)
 

1. Veri Etiketleme Yöntemleri

1.1 Bounding Box (Sınırlayıcı Kutu)

Bounding Box, görüntüdeki bir nesneyi en basit şekilde tanımlamanın yoludur. Bir nesneyi çevreleyen bir dikdörtgen çizilir, bu da makinelere nesnenin konumunu ve boyutunu belirlemekte yardımcı olur. Bu yöntem, nesne tespiti ve sınıflandırma görevlerinde yaygın olarak kullanılır. Genellikle, bir nesnenin bulunduğu alanı hızlıca belirlemek ve işaretlemek için kullanılır.

Resim 1: Bounding Box

Tercih Edilen Derin Öğrenme Algoritmaları:

  • YOLO (You Only Look Once): Gerçek zamanlı nesne tespiti için etkili bir algoritmadır. Hızlı ve doğru bounding box tahminleri sağlar.
  • Faster R-CNN: Daha yüksek doğruluk için kullanılır ve nesne tespiti ve bounding box çıkarımı için yaygın olarak tercih edilir.
  • SSD (Single Shot MultiBox Detector): YOLO’ya benzer şekilde, hızlı ve verimli nesne tespiti yapar.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • CVAT
  • SuperAnnotate
  • LabelImg

1.2 Semantic Segmentation (Anlamsal Segmentasyon)

Semantic Segmentation, görüntüyü piksellerine ayırarak her bir piksele bir etiket atar. Bu yöntem, her pikselin hangi nesneye ait olduğunu belirlemeyi sağlar. Örneğin, bir şehir manzarasında binaları, yolları ve ağaçları ayırt etmek için kullanılır. Bu teknik, genellikle şehir planlama ve otomotiv endüstrilerinde, özellikle otonom araçlarda yaygın olarak kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Fully Convolutional Networks (FCNs): Pikseller düzeyinde segmentasyon sağlar.
  • DeepLab: Atrous konvolüsyon kullanarak daha hassas segmentasyon sonuçları sunar.
  • U-Net: Özellikle biyomedikal görüntüler için geliştirilmiş yüksek doğruluk sağlayan bir segmentasyon ağıdır.

Bu Alanda Kullanılan Etiketleme Araçlar:

  • V7 Darwin
  • SuperAnnotate
  • Labelbox

1.3 Instance Segmentation (Örnek Segmentasyonu)

Instance Segmentation, semantic segmentation’ın bir adım ötesidir. Bu yöntem sadece pikselleri etiketlemekle kalmaz, aynı zamanda her bir nesne örneğini ayırt eder. Örneğin, bir görüntüdeki tüm insanları ve onların bireysel sınırlarını belirleyebilir. Bu yöntem, özellikle çok sayıda benzer nesnenin olduğu senaryolar için kullanışlıdır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Mask R-CNN: Hem nesne tespiti hem de örnek segmentasyonu için kapsamlı bir çözüm sunar.
  • YOLACT (You Only Look At CoefficienTs): Gerçek zamanlı instance segmentasyonu için geliştirilmiştir.

Bu Alanda Kullanılan Etiketleme Araçları:

  • V7 Darwin
  • CVAT
  • Labelbox

1.4 Keypoint Annotation (Anahtar Nokta Anotasyonu)

Keypoint Annotation, nesnelerdeki belirli noktaların işaretlenmesini içerir. Bu yöntem, nesnenin temel özelliklerini tanımlamak için kullanılır. Örneğin, bir yüz tanıma sisteminde, gözler, burun ve ağız gibi anahtar noktalar işaretlenir. Bu tür anotasyonlar, nesne tespiti ve hareket analizi gibi uygulamalarda kritik öneme sahiptir.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • OpenPose: İnsan vücudunun anahtar noktalarını tespit eder.
  • PoseNet: Monoküler görüntülerden insan pozları tahmin etmek için kullanılır.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • V7 Darwin
  • SuperAnnotate

1.5 Polygon Annotation (Çokgen Anotasyonu)

Polygon Annotation, bir nesnenin sınırlarını daha detaylı ve esnek bir şekilde tanımlamak için kullanılır. Bu yöntemde, nesnenin çevresi birden fazla nokta ile tanımlanan bir çokgen ile çizilir. Bu, düzensiz şekillere sahip nesneleri doğru bir şekilde tanımlamak için idealdir ve özellikle tarım ve şehir planlaması gibi alanlarda yaygın olarak kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Mask R-CNN: Polygon anotasyonları içeren segmentasyon görevleri için uygundur.
  • Polygon R-CNN: Özel olarak çokgen anotasyonları yapmak için geliştirilmiştir.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • CVAT
  • LabelImg

1.6 3D Bounding Box (3D Sınırlayıcı Kutu)

3D Bounding Box, görüntülerdeki nesneleri 3D uzayda tanımlamak için kullanılır. Bu yöntem, nesnelerin boyutlarını ve konumlarını üç boyutlu olarak belirlemek için kullanılır. Otonom araçlarda ve artırılmış gerçeklik uygulamalarında, nesnelerin gerçek dünyadaki konumlarını ve boyutlarını doğru bir şekilde anlamak için yaygın olarak kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • PointNet: 3D nesne sınıflandırma ve segmentasyon için kullanılır.
  • VoxelNet: Lidar verileriyle 3D nesne tespiti için geliştirilmiştir.

Bu Alanda Kullanılan Etiketleme Araçları:

  • CVAT
  • Labelbox
  • SuperAnnotate

1.7 Lidar Annotation (Lidar Anotasyonu)

Lidar Annotation, Lidar teknolojisini kullanarak 3D nokta bulutları oluşturur ve bu bulutları etiketler. Lidar verileri, özellikle otonom araçlar ve çevre modelleme gibi uygulamalar için son derece değerlidir. Lidar anotasyonu, arazi modelleri ve şehir planlaması gibi uygulamalar için kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • PointNet: Lidar verilerini işleyerek 3D noktaları sınıflandırır.
  • SECOND (Sparsely Embedded Convolutional Detection): Lidar verileri üzerinde yüksek performanslı nesne tespiti sağlar.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • V7 Darwin
  • CVAT

1.8 Pose Estimation Annotation (Poz Tahmini Anotasyonu)

Pose Estimation Annotation, nesnelerin veya insanların pozisyonlarını ve yönelimlerini belirlemek için kullanılır. Bu yöntem, insan hareketlerinin analizi, spor performansı değerlendirmesi ve etkileşimli oyunlar gibi alanlarda yaygın olarak kullanılır. Poz tahmini, vücut parçalarının konumlarını belirleyerek nesnelerin veya kişilerin hareketlerini anlamamıza yardımcı olur.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • PoseNet: İnsan ve nesne poz tahmini için etkili bir modeldir.
  • AlphaPose: İnsan hareketlerinin detaylı analizini sağlar

Bu Alanda Kullanılan Etiketleme Araçları:

  • V7 Darwin
  • SuperAnnotate
  • Labelbox

1.9 Object Tracking (Nesne Takibi)

Object Tracking, bir video boyunca bir nesnenin hareketini izlemeyi içerir. Bu yöntem, nesnenin başlangıç ve bitiş noktalarını takip ederek hareketlerini analiz eder. Güvenlik kameraları, spor analizi ve otonom araçlar gibi uygulamalarda, bir nesnenin hareketini doğru bir şekilde izlemek ve anlamak için kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Deep SORT (Simple Online and Realtime Tracking): Nesne takibi için kullanılır ve hızlı, doğru takibin yanı sıra yeniden tanımlama yeteneği sunar.
  • Tracktor: Nesne takibinde derin öğrenme tabanlı bir yaklaşımdır.

Bu Alanda Kullanılan Etiketleme Araçları:

  • CVAT
  • Labelbox
  • V7 Darwin

1.10 Video Annotation (Video Anotasyonu)

Video Annotation, videolardaki nesneleri ve olayları etiketlemeyi içerir. Bu yöntem, video içeriğinin daha iyi anlaşılması ve analizi için kullanılır. Örneğin, bir güvenlik videosunda şüpheli hareketleri işaretlemek veya bir spor videosunda oyuncuların hareketlerini analiz etmek için kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • 3D-CNN: Video verilerinin zaman içindeki değişimini analiz eder.
  • I3D (Inflated 3D ConvNet): Video akışında hareket ve eylem tanıma için kullanılır.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • CVAT
  • SuperAnnotate

1.11 Temporal Segmentation (Zamansal Segmentasyon)

Temporal Segmentation, video verilerinde olayların zaman içindeki sınırlarını belirler. Bu yöntem, video akışını anlamak ve analiz etmek için kullanılır. Örneğin, bir video kaydında farklı eylem aşamalarını ayırt etmek veya belirli bir olayın ne zaman gerçekleştiğini belirlemek için kullanılır.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Temporal Convolutional Networks (TCNs): Video verilerinde zaman içi segmentasyon sağlar.
  • LSTM (Long Short-Term Memory): Video akışındaki uzun dönemli bağımlılıkları modelleyerek zamansal segmentasyon yapar.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • V7 Darwin
  • SuperAnnotate

1.12 Landmark Annotation (Kılavuz Nokta Anotasyonu)

Landmark Annotation, belirli önemli noktaların işaretlenmesini içerir. Bu, özellikle yüz tanıma ve mimik analizi gibi uygulamalar için kullanılır. Örneğin, bir yüz üzerindeki göz, burun ve ağız noktaları işaretlenir, bu da yüz ifadelerinin ve kimlik doğrulamanın daha doğru bir şekilde yapılmasını sağlar.

Tercih Edilen Derin Öğrenme Algoritmaları:

  • Face Alignment Network (FAN): Yüz üzerindeki kılavuz noktaların hassas bir şekilde belirlenmesini sağlar.
  • Dlib: Yüz özelliklerinin ve kılavuz noktaların belirlenmesinde yaygın olarak kullanılır.

Bu Alanda Kullanılan Etiketleme Araçları:

  • Labelbox
  • SuperAnnotate
  • V7 Darwin

Görüntü ve video etiketleme yöntemleri, makine öğrenmesi ve yapay zeka projelerinde verilerin doğru ve etkili bir şekilde işlenmesini sağlar. Her bir yöntem, belirli kullanım senaryoları ve ihtiyaçlar için optimize edilmiştir ve teknoloji ilerledikçe bu tekniklerin doğruluğu ve etkinliği sürekli olarak artmaktadır. Bu yazımızda resim verisi etiketleme yöntemleri ve tercihedilen derin öğrenme algoritmalarından bahseldilmiştir.

 

Kaynaklar

O’Shea, J., & Nash, R. (2015). Introduction to Convolutional Neural Networks for Visual Recognition. [Online] Available: https://arxiv.org/abs/1511.08458
Bu makale, konvolüsyonel sinir ağlarının görüntü tanıma ve etiketleme üzerindeki etkilerini ayrıntılı olarak ele alır ve temel kavramları açıklar.

He, K., Gkioxari, G., Dollár, P., & Girshick, R. (2017). Mask R-CNN. [Online] Available: https://arxiv.org/abs/1703.06870
Mask R-CNN, örnek segmentasyon ve nesne tespiti konularında önemli bir yöntemdir ve bu çalışmada detaylı olarak açıklanmıştır.

Long, J., Shelhamer, E., & Darrell, T. (2015). Fully Convolutional Networks for Semantic Segmentation. [Online] Available: https://arxiv.org/abs/1411.4038
Anlamsal segmentasyon üzerine yapılan bu çalışma, tamamen konvolüsyonel ağların bu görevde nasıl kullanıldığını açıklar.

Redmon, J., Divvala, S., Girshick, R., & Farhadi, A. (2016). You Only Look Once: Unified, Real-Time Object Detection. [Online] Available: https://arxiv.org/abs/1506.02640
YOLO, nesne tespiti konusunda gerçek zamanlı performansı ile tanınan bir yöntemdir ve bu çalışma, algoritmanın detaylarını sunar.

Girdhar, R., & Ramanan, D. (2017). Detecting Objects in RGB-D Videos. [Online] Available: https://arxiv.org/abs/1611.09023
RGB-D videolarında nesne tespiti üzerine yapılan bu çalışma, 3D veri ile etiketleme konularına değinir.

Qi, C. R., Su, H., & Xiao, J. (2017). PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation. [Online] Available: https://arxiv.org/abs/1612.00593
3D sınıflandırma ve segmentasyon için kullanılan PointNet, Lidar anotasyonları gibi 3D veri işleme yöntemlerini anlamanıza yardımcı olabilir.

Chen, L., Papandreou, G., Schroff, F., & Adam, H. (2017). Rethinking Atrous Convolution for Semantic Image Segmentation. [Online] Available: https://arxiv.org/abs/1706.05587
Anlamsal segmentasyon ve atrous konvolüsyon yöntemleri hakkında ayrıntılı bilgi sunan bu çalışma, segmentasyon uygulamaları için önemli bir kaynaktır.

Huang, G., Liu, Z., Maaten, L. v. d., & Weinberger, K. Q. (2017). Densely Connected Convolutional Networks. [Online] Available: https://arxiv.org/abs/1608.06993
Densely Connected Networks (DenseNet) hakkında bilgi veren bu çalışma, derin öğrenme ve görüntü işleme alanındaki yenilikçi yaklaşımları açıklar.

PoseNet: Real-Time Monocular 6-DOF Object Pose Estimation (2015). [Online] Available: https://arxiv.org/abs/1505.07427
Nesne poz tahmini konusunda kullanılan PoseNet, poz tahmini uygulamaları hakkında bilgi sağlar.

Chien, L., & Chu, P. (2019). Understanding Object Tracking and its Applications. [Online] Available: https://arxiv.org/abs/1904.08600
Nesne takip yöntemlerini ve uygulama alanlarını ele alan bu çalışma, video anotasyonu ve nesne takibi konularında derinlemesine bir anlayış sunar.

 

Daha Fazlası ve Diğer Yazılarım

Daha fazla bilgi ve diğer yazılarımı okumak isterseniz, aşağıdaki bağlantıları ziyaret edebilirsiniz:

Bu kaynaklarda, yapay zeka, makine öğrenmesi ve diğer teknoloji konularında yazılarımı bulabilir, güncel projelerim ve çalışmalarım hakkında bilgi edinebilirsiniz.

Teşekkürler ve iyi okumalar!

Topluluğumuza Üye Ol: