← Back to list

Computer Vision Yolculuğu — Gün 4: MediaPipe ile Hand Tracking ve 21 Landmark Sistemini Anlamak

Computer Vision projelerinde görüntü işleme kadar önemli bir diğer konu da gerçek zamanlı takip sistemleridir.

Melike Külahcı · 2026-05-19 12:13 · 0 claps · 2.8 min read
#computer-vision #mediapipe #opencv #hand-tracking #artificial-intelligence
Open on Medium ↗
Wiki topics: MM · Multimodal & Generative Media AI · AI · General

Computer Vision Yolculuğu — Gün 4: MediaPipe ile Hand Tracking ve 21 Landmark Sistemini Anlamak

Hand tracking teknolojileri touchless interaction ve gesture control sistemlerinin temelini oluşturur.

Hand tracking teknolojileri touchless interaction ve gesture control sistemlerinin temelini oluşturur.

Computer Vision projelerinde görüntü işleme kadar önemli bir diğer konu da gerçek zamanlı takip sistemleridir.

Özellikle:

  • hand tracking,
  • gesture recognition,
  • pose estimation,
  • face mesh

gibi sistemlerde görüntü yalnızca analiz edilmez; aynı zamanda nesnelerin konumları ve hareketleri de takip edilir.

Bu yazıda MediaPipe kullanarak:

  • gerçek zamanlı hand tracking,
  • 21 landmark sistemi,
  • landmark koordinatları,
  • normalize coordinate mantığı,
  • pixel coordinate dönüşümü,
  • sağ/sol el algılama

gibi temel hand tracking yapılarını inceleyeceğiz.

MediaPipe Nedir?

MediaPipe, Google tarafından geliştirilen gerçek zamanlı Computer Vision çözümleri sunan bir framework’tür.

MediaPipe içerisinde:

  • hand tracking,
  • pose detection,
  • face mesh,
  • object tracking

gibi hazır AI modelleri bulunur.

Bu projede kullanılan yapı:

mp.solutions.hands

modülüdür.

MediaPipe Hand Tracking Sistemi

MediaPipe’in hand tracking sistemi temel olarak şu pipeline ile çalışır:

Frame
↓
Palm Detection
↓
Hand Landmark Model
↓
21 Landmark

Sistem önce eldeki avuç bölgesini tespit eder, ardından el üzerindeki landmark noktalarını çıkarır.

Hand Tracking Modelinin Oluşturulması

MediaPipe hand detector oluşturmak için:

mp_hands = mp.solutions.hands

hands = mp_hands.Hands()

kullanılır.

Burada:

Hands()

AI modelini başlatır.

OpenCV ve RGB Dönüşümü

OpenCV varsayılan olarak:

BGR

renk formatı ile çalışır.

Ancak MediaPipe:

RGB

formatı kullanır.

Bu nedenle görüntü önce dönüştürülmelidir:

rgb_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

Bu dönüşüm hand tracking sisteminin düzgün çalışması için oldukça önemlidir.

process() Fonksiyonu

Frame analiz işlemi:

results = hands.process(rgb_img)

ile gerçekleştirilir.

Bu satırda AI modeli görüntüyü analiz eder ve landmark verilerini üretir.

Landmark Verilerinin Alınması

MediaPipe el üzerinde:

21 landmark

üretir.

Bu veriler:

results.multi_hand_landmarks

içerisinde tutulur.

Eğer görüntüde el yoksa:

None

döner.

Bu nedenle güvenli kullanım için:

if results.multi_hand_landmarks:

kontrolü yapılır.

21 Landmark Sistemi

MediaPipe el üzerindeki belirli noktaları numaralandırır.

Örneğin:

0 -> Wrist 4 -> Thumb Tip 8 -> Index Finger Tip 12 -> Middle Finger Tip 20 -> Pinky Tip

Bu yapı sayesinde belirli parmaklar takip edilebilir.

Gerçek zamanlı hand tracking sistemlerinde AI modelleri el hareketlerini landmark noktalarıyla analiz eder.

Gerçek zamanlı hand tracking sistemlerinde AI modelleri el hareketlerini landmark noktalarıyla analiz eder.

Landmark Loop Sistemi

Tüm landmark noktalarını dolaşmak için:

for handLms in results.multi_hand_landmarks:

    for id, lm in enumerate(handLms.landmark):

kullanılır.

Burada:

  • id → landmark numarası
  • lm → landmark objesi

anlamına gelir.

lm.x, lm.y ve lm.z

Her landmark için:

lm.x
lm.y
lm.z

değerleri bulunur.

Burada:

  • x → yatay konum
  • y → dikey konum
  • z → derinlik bilgisi

anlamına gelir.

Normalize Coordinate Mantığı

MediaPipe koordinatları doğrudan pixel değeri vermez.

Koordinatlar:

0 → 1

arasında normalize edilmiş şekilde tutulur.

Örneğin:

lm.x = 0.5

ifadesi:

ekranın %50 sağında

anlamına gelir.

Pixel Coordinate Dönüşümü

Gerçek ekran koordinatını elde etmek için:

cx = int(lm.x * w)
cy = int(lm.y * h)

kullanılır.

Burada:

  • w → görüntü genişliği
  • h → görüntü yüksekliği

anlamına gelir.

Bu dönüşüm sayesinde landmark noktaları gerçek pixel koordinatına çevrilir.

Landmark Görselleştirme

Belirli landmark noktaları OpenCV ile işaretlenebilir.

Örneğin işaret parmağı ucu:

if id == 8:

ile seçilebilir.

Ardından:

cv2.circle(img, (cx,cy), 15, (255,0,255), -1)

kullanılarak ekranda gösterilebilir.

MediaPipe, gerçek zamanlı hand tracking için optimize edilmiş AI tabanlı bir landmark sistemi kullanır.

MediaPipe, gerçek zamanlı hand tracking için optimize edilmiş AI tabanlı bir landmark sistemi kullanır.

Sağ ve Sol El Algılama

MediaPipe aynı anda birden fazla el algılayabilir.

Bu işlem için:

hands = mp_hands.Hands(max_num_hands=2)

kullanılır.

Ayrıca:

results.multi_handedness

yardımıyla elin:

  • Left
  • Right

olduğu belirlenebilir.

Gesture Recognition İçin Temel Mantık

Hand tracking sistemlerinde gesture recognition genellikle belirli landmark noktalarının konum ilişkileri kullanılarak yapılır.

Örneğin:

Thumb Tip ↔ Index Tip

arasındaki mesafe ölçülerek ses kontrolü gibi sistemler geliştirilebilir.

Sonuç

MediaPipe ile hand tracking sistemlerini anlamak, gerçek zamanlı gesture recognition projelerinin temelini oluşturur.

21 landmark sistemi sayesinde:

  • parmak uçları takip edilebilir,
  • koordinatlar analiz edilebilir,
  • gesture sistemleri geliştirilebilir.

Bu yapı; gesture volume control, hand-controlled UI ve touchless interaction sistemleri gibi birçok modern Computer Vision projesinin temelini oluşturur.

Proje Reposu

Bu proje, Computer Vision öğrenme yolculuğumun bir parçası olarak adım adım geliştirilmektedir.

Yazıda kullanılan kaynak kodlara ve proje dosyalarına aşağıdaki GitHub reposu üzerinden ulaşabilirsiniz:

https://github.com/Melikeda/gesture-volume-control


메타데이터
post_id
6bbc3e7efbe9
slug
computer-vision-yolculuğu-gün-4-mediapipe-ile-hand-tracking-ve-21-landmark-sistemini-anlamak-6bbc3e7efbe9
url
https://medium.com/@m.edakulahci/computer-vision-yolculu%C4%9Fu-g%C3%BCn-4-mediapipe-ile-hand-tracking-ve-21-landmark-sistemini-anlamak-6bbc3e7efbe9
canonical_url
https://medium.com/@m.edakulahci/computer-vision-yolculu%C4%9Fu-g%C3%BCn-4-mediapipe-ile-hand-tracking-ve-21-landmark-sistemini-anlamak-6bbc3e7efbe9
author_url
https://medium.com/@m.edakulahci
status
ok
fetched_at
2026-07-27 22:49:31