GNU/Linux Ortamında Webcam İle Hareket Algılama

0
FZ
Başlık biraz fazla ciddi gelmiş ya da kafa karıştırmış olabilir o yüzden kısaca derdimi ve bu makalenin ana temasını belirteyim: Basit bir kamerayı GNU/Linux çalıştıran bir PC´ye USB portu üzerinden bağladıktan sonra bir tür ilkel gözetleme/uyarma sistemi kurma işini adım adım anlatmak.

Yemeği hazırlamaya başlamadan önce malzeme listesine bir göz atalım:
  • 1 adet PC
  • 1 adet Debian tabanlı KNOPPIX 3.1 Bootable Live CD
  • 1 adet PHILIPS PCVC 730K webcam
  • 1 adet hareket tespit (motin detection) yazılımı
Yukarıda liste elbette birebir sahip olunması gereken bir liste değildir. Bu yazıda anlatılan uygulamayı başka tür bir kamera ve yazılımla da yapabilirsiniz.

Teknik detaylara geçmeden önce birkaç önemli noktaya dikkat çekmekte fayda var. Akılda bulundurulması gereken en önemli prensiplerden biri "yazılıma göre donanım" kuralıdır. Bu kural kamera alırken de aynen geçerlidir, bu yüzden de bu tür bir cihazı almadan önce kullandığınız GNU/Linux sisteminde ilgili cihazı destekleyen sürücüler (modüller) bulunup bulunmadığını didik didik etmeniz başlangıçta vakit kaybı gibi görünse de sonrasında sizi baş ağrılarından ve uykusuz gecelerden kurtaracaktır (tabii süper bir C programcısı iseniz ve herhangi bir donanım için birkaç saat içinde bir sürücü yazıp bunu çekirdeğe gömebiliyorsanız o zaman bu dediklerim geçerli değildir, karşınızda ceketimi ilikler ve derin bir tefekküre dalarım ;-) Yazının devamını ileriseviye.org sitesinde okuyabilirsiniz...

Not: Bakalım kaç kişi yazının en sonundaki fotoya dikkat edecek ;-)

Görüşler

0
mysterious
Fz'ye sonsuz teşekkürlerimi iletiyorum ve ellerine sağlık güzel ve yorucu bi çalışmanın ardından bilgilendirici bir makale/kaynak olmuş.
Tozlu raflara kaldırdığım projeme devam edebilirim bu sayede :P
Ben ilgilenen arkadaşlara bir şey sormak istiyorum; Peki bu görüntü kayıtlarının tutulması için önerebileceğiniz en iyi sıkıştırma algoritması nedir?
0
FZ
Ne tür bir proje ile uğraşıyorsun?

Görüntü kayıtlarının tutulması derken kayda dair metabilgiyi mi yoksa kaydın kendisini yani görüntünün kendisini mi kast ediyorsun? Soruyu biraz daha açabilir misin?
0
mysterious
Görüntü kaydının tutulması derken kaydın kendisini kastetmiştim ve bu kayıt hem çok az yer kaplamalı hemde geektiğinde geri dönülüp rahatça izlenebilmeli. İşte uğraştığım şey buydu.
Ayrıyeten cebit fuarında dolaşırken tam aradığım özelliklere sahip bir sistem ile karşılaşmıştım adı da (3Deyes) dijital görüntü kaydı, transferi, hareket algılayıcı sistem. Ürün windo~1 altında çalışıyordu görüntü ilk olarak dünyada hemen hemen bu tür güvenlik sistemlerinde kullanılan wavelet tekniği ile kayıta alınıp sonra avi olarak export edilebildiğini söylediler oradaki yetkililer. 3Deyes de hareket algılama gerçekten süperdi yani eğer hiç hareket yoksa kayıt duruyor ama kamera çalışıyor en ufak bir harekette tekrardan kayıta başlıyordu.
Oradaki yetkililere bunun UNİX sistemlerde kullanılan projesi varmı diye sordum önceleri varmış ama sonradan bu proje durdurulmuş. Nedenini sorduğumda ise pek fazla bilgi sahibi olmadığını söyledi. (ve açıkcası yardım etmeyi birden kesti :-) ) bende fazla üstelemedim.
Yani benim yapmak istediğimde bunun gibi bir sistemdi. Bu sistemi özgürlüğüme kavuştuğum an mutlaka yapıcam. (Askerliğim 14 gün sonra bitiyo :-) ) Özellikle senin verdiğin bilgiler de çok yardımcı oldu saol.
0
FZ
Bildiğim kadarı ile makalemde adı geçen motion yazılımı da senin yukarıda bahsettiğin türden iş yapabiliyor yani hareket algılandığı anda ortamı kaydetme falan (ya da anlık görüntüleri yıl/ay/gün/saat/dakika formatında bir dizin içine küçük boyutlu dosyalar şeklinde yerleştirebiliyor ve söz konusu dosyalarda hareket bir çerçeve içine alnmış oluyor). Ayrıca kaynak kodu açık olduğu için her türlü müdahale de yapılabilir durumda. Bu yazılım MPEG olarak kayıt yapabiliyor. Alternatif ve daha basit bir program isteyenler şu yazılıma da bir göz atabilirler: http://www.turbolinux.com.cn/~merlin/mvc/

Benim en çok hoşuma giden şey ise şu: Harddiski dahi olmayan ikinci el ucuz bir PC alsam, bir tane de ucuz bir kamera edinsem, bu sistemi de ağa bağlayıp KNOPPIX ile açsam kolayca bir gözetleme/uyarı sistemine sahip olabilirim.

Bu arada UNIX ve uyumlu sistemlerden bahsettiğinde adamların sana yardım etmeyi kesmiş olmaları da ayrı bir tartışma konusu ;-)
0
mysterious
Şu anda deneme fırsatım yok ama, geliştirmeye ve denemeye geçeceğim zaman makaleden ve bu linklerden yararlanacağım kesin :)
Yardımı kestiklerinde de akıllarından (Bu bilgileri verirsem yada daha fazla yardımcı olursam kesin rakip bi firma kurar ) geçmiştir. :)
0
mysterious
Birde ufak bi ekleme daha Antitrust'ı izlemistin. Şimdi olayı kapmışsındır.
0
mysterious
Birde ufak bi ekleme daha Antitrust'ı izlemistin. Şimdi olayı kapmışsındır.
0
yuxel
knoppix 3.2 de ve debian da denedim olmadı
kamera PCVC 720K/20 yani siteye [www.smcc.demon.nl] göre bunu ov511 modülleri ile yapmam gerekliymiş ama sanırım sadece ov511 yetmemekte .. şimdi onun için uğraşmaktayım ..
normal pwc ile denediğimde usb'yi takınca pwc modülü beliriyor ama
pwc -- web cam hedo detected gibi bişe olmuyor dolayısıyla çalışmıyor
"lsmod" da da pwc "unused" olarak gözükmeye devam etmekte .. yani elinde bir PVCV 720k/20 si olanlar ayrı bir olay için kasmaya devam etmeleri gerekli..
P.S : pwc kullanacaklar için ufak bir tavsiye .. eğer ufak ve bozuk/kalitesiz görüntü almak istemiyorsanız pwcx [www.smcc.demon.nl] modüllerini de deneyebilirsiniz ..
Belge için teşekkürler ...
0
FZ
http://alpha.dyndns.org/ov511/cameras.html sayfasına bakıldığında Philips ToUCam XS (Model PCVC720K, old version) [yani 720/20] desteklendiği görülüyor.

videodev ve ov511 modüllerini sıra ile yükle, sonra kameranı USB portuna tak sonra da dmesg | ov511 benzeri bir komutla söz konusu sürücünün kamerayı algılayıp algılamadığını görebilirsin büyük ihtimalle (çıktıyı buraya yazarsan yardımcı olmaya çalışırız).

Senin de belirttiğin gibi elindeki kamera ov511 ile çalışıyor dolayısı ile pwc modülü ile bir işinin olmaması lazım. Sadece ov511 yeterli değil derken neyi kast ediyorsun? Yani yeterli olması lazım.

Doğru sürücüyü yani ov511´i yükledikten sonra tavsiyem yazıda belirtildiği gibi xawtv ya da gqcam uygulaması ile kameradan görüntü alıp almadığını test edebilirsin. Tabii bu arada makinanda TV kartı olmadığını var sayıyorum. Eğer TV kartı ya da benzeri bir şey varsa o zaman /dev/video0´ı o kart meşgul ediyor olabilir ve parametre olarak başka bir cihaz dosyasını vermen gerekebilir ama eğer böyle bir durum yoksa öntanımlı değerler ile adı geçen görüntü yakalama uygulamalarını kullanabilirsin sorunsuz olarak.
0
yuxel
sadece ov511 in yetmemesi dediğim durum sitedeki FAQ [alpha.dyndns.org] ya göre OV6630 sensörlü kameralar için kernelde bulunmayan ekstra bir modül (ov518_decomp) gerekli imiş. O modülde buradaki [alpha.dyndns.org] sürücülerden 2.16 dan sonrasında ov511 modülü içinde desteklemekte imiş . Ancak 2.16'nın hala stable olmadığını , en azından sitede öyle geçtiğini belirteyim .. 2.16 yı kurup içindeki README dekileri uyguladım ve şu anda çocuklar gibi mutluyum :)) Şimdi sıra şu ne zamandır benim de düşünmekte olduğum motion detect olayında .. Tekrar tekrar teşekkürler
0
FZ
Sanırım artık Linux ve webcam ile ilgili bir hayli dağıtık (distributed) `know-how´ oluşturmuş durumdayız ;-) Makalenin yayınlanmasından sonra bir iki gün içinde gerçekleşen bu süreç bir kez daha GNU/Linux ve FM camiasının farkını ve kalitesini ortaya koyuyor diye düşünüyorum ;-)
0
FZ
Küçük ama önemli bir güncelleme (düzeltme): Yazıda PCVC 720K ile ilgili yazılanların tersi doğru (yani eski model ov511 yeni model ise pwc tarafından destekleniyor, ben bunun tersini yazmıştım dalgınlıkla).

Gerekli düzeltmeyi az önce yaptım. Beni bu konuda uyaran YuXeL´e çok teşekkür ederim :)
0
sametc
biraz konu dısına cıkıcam :)) buraya yazayım dedim

modul dedinizde aklıma geldi bakarmısınız

gemtek teknolojinin urettiği radyo kartı kullanıyorum ama onu mandrake 9,1 linuxa tanıtamadım nedense cıldırttı beni bunu nasıl tanıtıcam moduller varmı bunu icin
ah bu arada iyi bir not

mci cipli kart diyor pci değil :)) bunu da belirtmiş olayım :)
Görüş belirtmek için giriş yapın...

İlgili Yazılar

fazlamesai.net'e soralım: En iyi üniversiteyi/bölümü nasıl buluruz?

bm

Yeğenim bu sene üniversite piyangosuna katılacak. Bilgisayar bilimleri veya bilgisayar mühendisliği okumak istiyor. Piyangodan istediği yeri çıkartabileceğini varsayarsak, istediği yerin neresi olması gerektiğini nasıl bileceğiz? Bu çocuğu kimlere, hangi şartlara, hangi tarz eğitim yapan bir yere teslim edeceğimizi nereden öğreneceğiz? Ben aradım bulamadım. O halde belki hangi bilgileri toplayıp ileride bu durumdaki çocuklara yardımcı olabiliriz diye düşünmemizde fayda var.

Bilen de bilişiyor bilmeyen de !

sundance

Bu sabah Yeni Şafak gazetesinin Bilişim bölümünde TÜBİTAK'a "CD'den çalışan yazılım"la övünmek yakışmaz! başlıklı bir makale okudum.

Açıkcası makaleyi okumanıza bile gerek yok, başlık makalenin yazarının temel derdini ortaya koyuyor. Uludağ ekibinin üstünde çalıştığının bir Live CD olmadığını mı anlatmak lazım, yoksa Live CD'nin bir ekstra olduğunu, LiveCD olan bir sistemi (birçok durumda) sadece dosyaları kopyalamakla bile harddisk üzerine kurabileceğinizi mi, yoksa "Alın işte bu işle uğraşan münafıklar bunlar" modunda bir içeriğin altına ekibin fotoğrafını koymaktaki yaklaşımın yanlışlığını mı? Ben bilemedim.

Ama Pardus hakkında en ufak bir heyecan bile duymadan söyleye söyleye bunu söyleyebilmek ya vicdansızlıktır, ya da birileri yazdıkları yazılar karşılığı barter yapmanın yöntemini bulmuş ;)

fazlamesai'ye soralım: Tek bir işletim sistemini dayatmanın hukuki boyutu nedir?

pinguar

Yaklaşık 4 senedir kullandığım emektar dizüstü bilgisayarımda düzeltilemeyecek bazı sorunlar çıkınca bana da yeni bir bilgisayar almak farz oldu. Kısa bir araştırmadan sonra gözüme ihtiyaçlarımı karşılayacak türden bir dizüstü bilgisayar kestirdim. Ama tahmin edersiniz ki üzerinde Windows XP işletim sistemi ile geliyor.

FM ne kadar teknik ?

sundance

FM yayına başladığından bu yana yaklaşık üç yıl geçti. Bu süre içinde, hayatımızda bir çok değişiklikler oldu, birçoğumuzun evine Internet girdi, yeni teknolojiler gelişti, cep telefonlarımız, cep bilgisayarlarına dönüştü vs.

Bu hal ve gidişat içinde, FM okurlarının sitenin mevcut yapısını nasıl bulduklarını merak ettik. Sizce FM gerektiği kadar detaylı ve teknik bir şekilde, Internet ve insan konularına eğiliyor mu ? Yoksa aşırı teknik bir şekilde antin-kuntin mevzularda kayıp mı oluyor ? :)

Belki de Wikipedia'yı Türkçeleştirmemek daha iyi bir fikir

Geryon

Türkçe wikipedia'yada gezerken Big-Oh* makalesini okudum "Algoritmaların performanslarını karşılaştırmak için kullanılan gösterim." yazan zihniyeti görünce ve aklıma şu soru geldi. Wikipedia'yı Türkçeleştirmemek daha iyi bir fikir olabilir mi ? "Bugün Wikipedia için ne yaptın?" kapanyaları başlatıyoruz fakat önemli olan nicelik mi yoksa nitelik mi ?

*Maddenin İngilizce Wikipedia açıklaması:
Big O notation
Landau notation