İnsan hareketlerini tanıma, gözetim, yaşlı bakımı ve sanayi izleme gibi güvenlik açısından kritik uygulamalar için tasarlanmış yapay zeka sistemlerinde önemli bir yetenektir. Ancak, pek çok gerçek dünya veri seti, veri dengesizliği, gizlilik kaygıları veya düşme ya da kaza gibi nadir ama önemli hareketlerin yetersiz kapsanması gibi sorunlarla sınırlıdır. Bu yazıda, veri kıtlığı ile model genellemesi arasındaki açığı kapatan SynthDa isimli modüler bir sentetik veri artırma pipeline’ını tanıtıyorum.

Sentetik hareket dizileri ve bakış açısı rastgeleleştirme kullanarak, SynthDa, büyük ölçekli manuel anotasyonlar gerektirmeden model dayanıklılığını artırır. Bu yazıda, SynthDa’nın nasıl gerçekçi eğitim verileri ürettiğini, NVIDIA TAO Toolkit ile nasıl entegre olduğunu ve hareket tanıma performansında potansiyel iyileştirmeleri keşfedeceğiz.
Bu proje, NVIDIA AI Teknoloji Merkezi (Asya-Pasifik Güney) ile Singapur Teknoloji Enstitüsü arasında işbirliği ile gerçekleştirilmektedir.
Sentetik Veri Neden Önemlidir?
İnsan hareketlerinin tanınması, gözetim, yardımcı robotlar ve insan-bilgisayar etkileşimi gibi uygulamalarda merkezi bir role sahiptir. Ancak, geleneksel video veri setleri genellikle üç kalıcı sorunla karşılaşır: sınıf dengesizliği, sınırlı hareket çeşitliliği ve yüksek anotasyon maliyetleri. Özellikle, nadir, tuhaf veya gizlilikle ilgili davranışları içeren veriler toplamak zor veya maliyetli olduğunda bu sorunlar daha belirgin hale gelir.
Sentetik veri, ölçeklenebilir ve gizliliği koruyan bir çözüm sunar. Büyük ölçekli gerçek dünya verilerine dayanmaktansa, daha küçük bir gerçek hareket örnekleri setinden varyasyonlar üretiriz. Bu yöntem, veri setini nadir veya kritik hareket örnekleriyle sistematik olarak zenginleştirerek performansını artırır ve aşırı uyumdan kaçınarak sınır durumlarına daha iyi hazırlanmalarını sağlar.
Eğitim setinin yüzde kontrolü ile sentetik videolarla stratejik olarak artırılması, azınlık sınıflarının tanınmasını güçlendirirken, hareketlerin doğal dağılımını korur. Bu, aşırı dengelemenin yol açabileceği yanlış pozitif artışlarını önler ve modelin gerçek dünya uygulamalarına daha iyi hazırlanmasını sağlar.
Tüm bu sorunları çözmek için SynthDa kapsamında veri kıtlığını azaltmaya yardımcı olan bir framework sunuyoruz.

SynthDa Nedir?
SynthDa, insan hareket tanıma görevleri için tasarlanmış bir veri artırma pipeline’ıdır. Mevcut bilgisayar modelleri ile uyumludur, örneğin, NVIDIA TAO Toolkit (hareket tanıma neti) ile birlikte çalışır ve iki ana artırma modu sağlar:
- Sentetik karışım: Gerçek dünya videoları ile üretken AI dizileri arasında interpolasyon yaparak sentetik varyasyonlar üretir.
- Gerçek karışım: Gerçek dünya dizileri arasındaki çiftlerle interpolasyon yaparak sentetik varyasyonlar oluşturur.
Pipeline, iskelet yeniden hedefleme, 3D insan renderleme, sahne rastgeleleştirme ve çıktı video sentezi için modüler bileşenlerden oluşur. Şekil 1, SynthDa’nın genel mimarisini göstermektedir.
SynthDa, sentetik insan hareket videoları ve gerçek hareketler arasında interpolasyon karışımları üreterek veri kıtlığı sorununu aşmayı sağlar. Pipeline, rastgeleleştirilmiş ortamları ve özelleştirilebilir kamera açılarını destekleyerek çeşitli koşullar simüle eder.
Yıllar içinde bu proje, iş akışına üretken AI’nın entegrasyonunu dahil etmek için evrim geçirdi ve insan poz varyasyonlarının çeşitliliği ve gerçekçiliğini ciddi şekilde artırdı. Modüler tasarımı, kullanıcıların mevcut pipeline’larına SynthDa bileşenlerini bütünleştirmelerini veya belirli modülleri kendi modelleriyle değiştirebilmelerini sağlar, böylece sistemi kendi özel gereksinimlerine veya kullanım senaryolarına uyacak şekilde uyarlayabilirler.

Artırma Türleri ve Pipeline Bileşenleri
Farklı ve gerçekçi hareket verileri üretmek için AutoSynthDa, modüler bir pipeline içinde çoklu artırma stratejileri içerir.
Sentetik Karışım: Sentetik Avatarlarla Hareketleri Canlandırma
Sentetik karışım, nihayetinde gerçek olan bir insan hareketi dizisini 3D poz iskeleti olarak başlar. Ancak burada durmayarak, bu hareketi yaratıcı bir dönüştürme pipeline’ından geçiriyoruz. Her poz dizisi, joints2smpl aracı kullanılarak bir sentetik avatara aktarılır ve bu avatar, sanal bir ortamda inandırıcı bir şekilde hareket eder.
Çeşitliliği ve dayanıklılığı artırmak için her sahne rastgeleleştirilir. Avatarlar, farklı ortamlarda, çeşitli aydınlatma koşulları altında ve benzersiz kamera açılarıyla görünür. Sonuç, gerçek dünya hareket kalıplarını korurken görsel çeşitlilik sağlayan zengin bir sentetik video koleksiyonu oluşturur.
Bunu, on iki dijital dünyada birden fazla giyilebilir harekete dönüşen bir cosplay gibi düşünün.
Gerçek Karışım: Yeni Gerçeklikler İçin Hareketleri Birleştirme
Tüm veri artırma ihtiyacı sentetik avatarları gerektirmez. Gerçek karışım, gerçek hareket dizilerinin çiftlerini alır ve yeni, doğal geçişler oluşturmak için pürüzsüz bir şekilde birleştirir. Bu interpolasyon süreci yalnızca hacmi artırmakla kalmaz; aynı zamanda, kaydedilmeyen gerçek dünyada gerçekleşebilecek olası varyasyonlar oluşturur.
Interpolasyon ağırlıklarını ayarlayarak ve farklı hareketleri karıştırarak, ince iç sınıf varyasyonları veya belirgin hareketler arasında gerçekçi geçişler üretebiliriz. Bu, tanıdık dans hareketlerinden yeni rutinler yaratmaya benzer: yaratıcı, gerçekçin ve veri açısından verimli.
Rastgeleleştirilmiş Sahne ve Kamera Görüş Açıları
Kaynak sentetik veya gerçek olsun, görsel çeşitlilik dayanıklılığı artırır. Bu nedenle, her render edilen video için nesne yerleşimlerini, yüzey dokularını ve kamera perspektiflerini rastgeleleştiriyoruz. Bu varyasyonlar, modelin dar koşullara fazla uyum sağlamadan karmaşık, gerçek dünya senaryolarıyla başa çıkmasına yardımcı olur.
Rastgele sahneleri özelleştirmek ve seçenekleri daha fazla öğrenmek istiyorsanız daha fazla bilgi edinebilirsiniz.
SynthDa ile Başlarken
SynthDa, bir Python paketi olarak kurulabilir. Aşağıdaki adımlar kurulum sürecini özetlemektedir. Daha fazla detay için GitHubrepository sayfamıza göz atabilirsiniz:
1. Bağımlılıkları Yükleyin
pip install -r requirements.txt
2. Gerekli repository’leri klonlayın
- StridedTransformer-Pose3D
- text-to-motion
- joints2smpl
- SlowFast
- Blender 3.0’ı resmi Blender sürüm arşivinden indirin
3. Yapılandırma ayarlarını yapın
Kök dizinde, her klonlanmış repository’nin ve API anahtarlarınızın yollarını içeren bir .env
dosyası oluşturun.
4. Önceden eğitilmiş modelleri indirin
GitHub belgelerinde belirtilen şekilde tüm önceden eğitilmiş kontrol noktalarını indirin. Her repository için ilgili klasörlere yerleştirin.
5. Her bileşeni doğrulayın
Tam SynthDa pipeline’ını çalıştırmadan önce, her bir alt modülü test edin:
- StridedTransformer:
python demo/vis.py --video sample_video.mp4
- text-to-motion:
python gen_motion_script.py --name Comp_v6_KLD01 --text_file input.txt
- joints2smpl:
python fit_seq.py --files test_motion2.npy
- Blender: Render test etmek için
./blender -b -P animation_pose.py
komutunu kullanabilirsiniz.
6. Sentetik veri örnekleri üretin ve running.py‘yi rehber olarak kullanın.

7. Özel optimizasyon döngüsü
AutoSynthDa’nın ayırt edici bir özelliği, yinelemeli optimizasyonu desteklemesidir. Sabit bir artırım yerine, kullanıcılar, aşağı akış model performansından gelen geri bildirim kullanarak sentetik veri kalitesini dinamik olarak iyileştirebilirler.
- Pose çiftlerini bir kez oluşturun
- Başlangıçta, sentetik pozları şu kaynak çiftlerinden birini kullanarak üretin:
– Gerçek ve gerçek hareket kaynağı çifti, veya
– Gerçek ve sentetik hareket kaynağı çifti (örn., poz üretimi için üretken AI kullanmak)Bu poz çiftleri, interpolasyon için tekrar tekrar kullanılabilir; her yineleme için pozları tekrar oluşturmanıza gerek yoktur.
- Başlangıçta, sentetik pozları şu kaynak çiftlerinden birini kullanarak üretin:
- Döngü mantığını tanımlayın
- Model doğruluğunu interpolasyon ağırlık seçiminde rehber olarak kullanın. Varsayılan bir değerle (örn., 0.5) başlayın, ardından yakın ağırlıkları değerlendirerek en iyi performans gösterene doğru hareket edin.
- Yeni ağırlığı hesaplayın (Sonlu Fark Yaklaşımı)
- Interpolasyon ağırlığını ayarlamak için, model doğruluğunu biraz daha yüksek ve daha düşük ağırlıklarda değerlendirilerek iyileştirme yönünü kestirmeye yarayan basit bir sonlu fark yaklaşımı kullanıyoruz.
8. NVIDIA TAO Toolkit ile eğitim ve test yapın
- NVIDIA TAO Toolkit’i seçtiyseniz, Docker’da aşağıdaki komut ile eğitim ve test yapabilirsiniz:
# Eğitim için örnek komut
action_recognition train -e ./specs/{experiment.yaml} results_dir=./results
action_recognition evaluate -e ./specs/{experiment}.yaml results_dir=./results dataset.workers=0 evaluate.checkpoint=./{yolu tanımlayarak eğitilmiş model dosyası}.tlt evaluate.batch_size=1 evaluate.test_dataset_dir=./{test edilecek dizin} evaluate.video_eval_mode=center
NVIDIA TAO Toolkit hareket tanıma neti hakkında daha fazla bilgi almak için buraya göz atabilirsiniz.
SynthDa’nın Gerçek Dünya Kullanıcıları
SynthDa, araştırma, akademi ve endüstride gerçek dünya kullanıcıları tarafından benimsenmiş ve test edilmiştir. Farklı hareket tanıma senaryolarında pratik değerini göstermektedir.
Ulusal Eğitim Enstitüsü (Nanyang Technological University) ve Hwa Chong Enstitüsü, Singapur
SynthDa’nın en heyecan verici gerçek dünya uygulamalarından biri, Singapur’daki Ulusal Eğitim Enstitüsü (NIE) tarafından yönetilen eğitim sektöründeki araştırmacılardır. SynthDa, okul laboratuvarlarında bilim deneyleri için sentetik video verisi üretme proje kapsamında benimsenmiştir. Bu çaba, öğretmenlerin öğrenci aktivitelerini izlemelerine ve kritik hareketleri, örneğin laboratuvar ekipmanının uygunsuz kullanımı veya prosedür hatalarını gerçek zamanlı olarak tanımlamalarına yardımcı olmak amacıyla bilgisayar vizyonu modellerini eğitmeyi hedeflemektedir.
Bu proje, gizlilik düzenlemeleri ve veri kıtlığı gibi yaygın sorunları ele alarak gerçek öğrenci video verilerine erişiminin sınırlı olduğu durumları doğrudan hedef almaktadır. Gerçek öğrenci davranışlarını simüle eden sentetik video verileri kullanarak, NIE ekibi Sinagapur’daki eğitim ortamlarında AI destekli daha güvenli ve daha duyarlı öğretim araçları inşa etmek için çalışmaktadır.
Projenin uzantısında, Singapur’daki önde gelen bir ortaokul olan Hwa Chong Enstitüsü ile iş birliği yapmaktadır. Araştırmacılar, gerçek dünya görüntüleri ile eğitim ve araştırma amacıyla sentetik veriyle eğitim alan AI modellerini pilot uygulama yapmaya hazırlanıyor. DIğer bir deyişle, SynthDa, öğrenci gizliliğini korumanın önemli olduğu eğitim alanında, AI sistemlerinin uygulanabilir ve etik hale getirilmesinde temel bir rol oynamaktadır.
Shiga Üniversitesi, Japonya
Japonya’daki Shiga Üniversitesi’nden Yoshihisa Lab araştırmacıları, farklı insan hareket verileri üretmek için SynthDa‘yı keşfetmeye başlamıştır. SynthDa’nın benzersiz SDG tabanlı interpolasyon yöntemi ile, ihraç edilebilir videolar veya .fbx dosyaları olarak zengin poz varyasyonları üretebilirler. Projeleri, AI teknolojileri ve IoT kullanarak güvenli ve emniyetli bisiklet kullanımını sağlamak üzerine odaklanmaktadır.
University of Tokyo, Matsuo-Iwasawa Lab, Japonya
Tokyo Üniversitesindeki Matsuo-Iwasawa Laboratuvarı, derin öğrenme araştırmaları üzerinde yoğunlaşarak, gelecekteki yenilikleri ilerletecek öncüler yetiştirmekte ve bir eğitim, araştırma ve girişimcilik ekosistemi oluşturma amacı gütmektedir. SynthDa, Tokyo Üniversitesi’ndeki Matsuo-Iwasawa Lab ile iş birliği içinde, gerçek dünya robotik sistemlerinde taklit öğrenme potansiyelinin araştırılması amacıyla keşfedilmektedir. Bunun yanı sıra, proje, kapsayıcı dünyaları modelleme ve çok modlu öğrenim gibi daha geniş kullanım senaryolarına destek vermeyi amaçlamaktadır.
Gelecek Çalışmalar
Gelecek çalışmalar, SynthDa‘yı çoklu insan hareketlerini destekleyecek şekilde genişletmeyi ve sağlık hizmetleri ve robotik gibi belirli alanlar için ince ayar yapmayı içermektedir. SynthDa’nın mevcut çalışma akışlarınıza entegre edilmesi için tasarlanmış olması, repository’mizin, kendi versiyonunuzu oluşturmak için değiştirebileceğiniz bileşenleri içerdiği anlamına gelmektedir. SynthDa’yu nasıl kullandığınızı ve projelerinizde gösterdiği deneyimleri bizimle paylaşın.
Daha fazla bilgi için SynthDa GitHub repository’sine göz atın ve sentetik veriler hakkında daha fazla bilgi edinin. SynthDa demo’sunu HuggingFace‘de bulabilirsiniz.
Teşekkürler
Singapur’daki Ulusal Eğitim Enstitüsü (Nanyang Technological University), Shiga Üniversitesi (Japonya), Tokyo Üniversitesi (Japonya), Chek Tien Tan (SIT), Indri Atmosukarto (SIT) ve Simon See (NVIDIA)’ye özel teşekkürlerimizi sunarız.
Ve SynthDa’nın geliştirilmesine çeşitli şekillerde katkıda bulunan diğer tüm meslektaşlarımıza da teşekkür ederiz.