opencv


Ağırlıklı Ortalama Öteleme Algoritması (Mean Shift) ile Hareketli Nesne Takibi

Mean Shift farklı maalesef bir çok farklı şekilde Türkçeye çevriliyor, farklı akademik kaynaklara baktığımda “Ortalama Kaydırma”, “ Ağırlıklı Ortalama Kaydırma”vb. gibi bir çok farklı çevirisi var. TÜBA terimler sözlüğüne bakarak bende kendimce mantıklı olduğunu düşündüğüm “Ağırlıklı Ortalama Öteleme Algoritması” başlığını atmaya karar verdim. Bu yazıda ele alacağımız konu hareketli bir nesnenin nasıl nakip edilebileceği olacak.

Derin Öğrenme ve OpenCV – Nesne Tanıma

Derin Öğrenme ve OpenCV OpenCV 2.4 sürümü ile birlikte derin öğrenme tarafındaki birçok gelişmeye yer verilmeye başlanmıştı. Görüntü sınıflandırma için farklı kütüphaneler ile oluşturulmuş modellerin içe aktarılabilmesi, farklı sınıflandırıcı ağların oluşturulabilmesi, model oluşturabilme vb.  OpenCV 3.3 sürümü ile birlikte ise neredeyse nihai bir dağıtım oluşturuldu ve Caffe, TensorFlow, Torch DarkNet gibi framework’ler için destek sağlandı. Popüler;

Görüntü Bozulmaları ve Kamera Kalibrasyonu

Bozuk görüntü, görüntü işleme süreçlerini zorlaştıran bir durumdur bu yüzden çoğu zaman bu bozuklukları düzeltmek gerekir. Düzeltme işlemini lens, kamera, kayıt cihazı değiştirerek düzeltmek çoğu zaman sonuç versede bizim amacımız bunu yazılımsal olarak düzeltmektir. Bu yazıda görüntü bozukluklarını, kamera kalibrasyonu ile gerekli matrisleri hesaplamayı ve bozuk görüntüyü düzeltmeye çalışacağız. Görüntü Bozuklukları Görüntü bozuklukları kullanılan kamera,

OpenCV.JS – JavaScript ile Görüntü İşleme

Sık sorulan sorulardan bir tanesi web uygulamalarında OpenCV işlevlerinden nasıl yararlanılabilceğiydi. Bunun farklı çözümler Bildiğiniz üzere OpenCV kütüphanesi  C/C++, Python ve Java programlama dilleri için API sağlamaktadır. Bu popüler kütüphaneye  web uygulamaları içinde ihtiyaç duyulması neticesinde OpenCV.js kütüphanesi yakın bir zamanda release oldu. Bu kütüphane temel olarak web uygulamalarında OpenCV kullanabilmek amacıyla geliştirilmiş açık kaynak

OpenCV ile Kenar Belirleme Algoritmaları

Görüntü üzerinde kenar tespiti yapmak; o görüntüdeki nesneleri tespit etmek, saymak ve özelliklerini belirlemek amacıyla kullanılabilir. Kenar belirleme algoritmaları en temel anlatımıyla, görüntü üzerindeki piksellerin renk değerlerinin bir birlerinden farklılaşması ile belirlenir. Yukarıdaki görsele baktığınızda farklılaşmanın nereden başladığını tahmin edebilir misiniz? Gördüğünüz üzere 4 ve 152 numaralı matris elemanları arasında keskin bir renk geçişi olmuş, bu renk

OpenCV Arka Plan Çıkarma (Background Subtraction)

Daha önce absdiff arka plan temizleme fonksiyonunu burada anlatmıştım, bu yazıda işleyeceğimiz ise absdiff fonksiyonundan farklıdır. Arka Plan Çıkarma Arka plan çıkarma işlemi görüntü işleme uygulamalarında sıklıkla kullanılan bit yöntemdir, genellikle sabit bir zemin üzerindeki hareketli nesneleri (insan, araç, ürün vb.) yakalamak ve takip etmek için kullanılır.  Bu işleyişteki mantık sabit arka planı referans alarak

Raspbian (Raspberry Pi) Üzerinde OpenCV Derleme

Raspberry pi yani Raspbian (Debian) işletim sistemi üzerinde Java için OpenCV’yi nasıl derleyeceğimize bakıyor olacağız. Python geliştiricileri bu işlemi pip üzerinden yapabilirler. Pip ile OpenCV’yi Python için;

şeklinde kurabilirsiniz.  

ve en alt satıra aşağıdaki yol tanımlarını ekleyerek kaydedin ve kapatın,

ve Raspberry Pi’ı yeniden başlatalım,

derlemek istediğimiz  sürümü

OpenCV Video Yazma (Video Writer, Codec, FourCC)

OpenCV ile video oluşturmak yani eldeki görüntü dizilerini kaydetmek için VideoWriter sınıfı kullanılmaktadır.  Kullanımına geçmeden önce bazı kavramlara bakmakta fayda var bu kavramlar codec yani kod çözücü ve FourCC (Four character code). Codec (Kod Çözücü) Ham ses ve görüntü dosyalarının boyutu oldukça büyüktür, bu sorunu çözmeni yolu ise bu verileri sıkıştırmaktır. Görüntü ve ses dosyalarını sıkıştırmak

EmguCV ile Yüz Tanıma Uygulaması

Daha önce yüz tanımaya giriş yapıp, OpenCV içerisindeki yüz tanıma algoritmalarına değinip ve JavaCV ile örnek bir yüz tanıma projesi geliştirmiştik. Bu yazıda ise Microsoft dot net için geliştirilen EmguCV kütüphanesi ile yüz tanıma uygulaması geliştireceğiz. Öncelikle okumadıysanız aşağıdaki bağlantılardan daha önceki yazıları okumanızı öneririm. EmguCV OpenCV ile Yüz Tanımaya Giriş OpenCV Yüz Tanıma Eigenfaces,

OpenCV ile Görüntü İşleme Kitabı

opencv ile görüntü işleme kitabı

Kitap projesi farklı programlama dillerindeki proje örnekleri ve güncellenmiş bölümleriyle Github üzerine taşınmıştır. https://github.com/mesutpiskin/goruntu-isleme-kilavuzu Bu kitap mesutpiskin.com/blog adresindeki blog yazılarımın derlenmesi ile oluşturulmuştur. Düzenleme, ekleme, görüş veya önerileriniz için e-posta adresimden benim ile iletişime geçebilirsiniz. Yer alan örnekler çoğunlukla Java ile anlatılmış yeri geldiğinde ise Python örnekleri eklenmiştir. Daha önce görüntü işleme ile uğraşmamış veya farklı