Sayfalar

Pazar, Mayıs 27, 2012

Faydasız İlim 1

Pek tesirli  bir duanın manidar bir parçası olan "Faydasız İlim" epey bir zamandır aklımı kurcalamaktadır. Bir taraftan İlim konusunda büyük teşvik var. Diğer taraftan "Faydasız İlimden Allaha sığınma var. Zihnimi meşgul eden bu konu hakkında bir şeyler yazmaya niyetim vardı, fakat nereden ne şekilde başlayacağım, nasıl bitireceğim  bilemiyordum. Halende bildiğimi zannetmiyorum. Yazılarımızı müsamaha ile okumanızı, ve fikren katılmanızı bekliyoruz....


Dün epey bir aradan sonra Yazılım Atölyesine gittik, Ahmet  kardeşle son yazısı üzerinede konuşma şansı buldum, o yazıdan bir alıntıyla başlayalım konumuza...

Faydasız Görüntü İşleme / Faydalı Piyasaya İş Yapma

  Bugün mezunlarımızdan bir abimiz, -kendisi bölümden mezun olduğunda ben ortaokula gidiyordum-, yıllardır bölümde görüntü işleme dersinin olduğunu ve görüntü işleyip işleyip de ne işe yarayacağını esprili bir şekilde dile getirdi. Amfide bulunan öğrenci arkadaşlar da bu dersten canları yanmış olacak ki galeyana gelip bir anda amfiyi alkışa boğdular.

Konuyu tam olarak bilmiyorum ama anladığım kadarıyla kendisi bölümden birkaç arkadaşı part-time veya başka bir şekilde şirketinde çalıştırıyor ve öğrencilerin derslerinin yoğunluğundan dolayı iş yapamadıklarından dem vurdu. Salon da aynı şekilde alkışlarla ödevlerin fazlalığını tasdik etti.

Daha sonra da ödevlerin piyasaya yönelik olması gerektiğine dair bir söz söylendi ki, piyasada yapılan işlerin tamamı maddi gelir elde etmeye yönelik olduğundan dolayı şu anda bölümde verilen ödevlerden kat kat daha kolay olup eğitim açısından getirileri de bir o kadar az olmaktadır.
Evet Şirket sahibi Mühendisin  Formülü basit ; Bir kaç öğrenci bulup onlara piyasa için web işi yaptırırsanızın çoğu kendi cebinize olmak üzere  para girer ( Fayda )  ,  O öğrenciler Görüntü İşleme dersini geçmek için ödev yaparsa bir fayda yok.

Bize İlkokula hocamız şunu öğretmişti
2 Elma 3 Armut 5 etmez!  Çünkü Elmalarla Armutlar Toplanmaz, Çıkarılmaz Çarpılmaz Bölünmez....
 Ama görüyorum ki bazıları bu konu anlatılırken piyasaya iş yaptıklarından ( O  yaşlarda muhtemelen misket oynayıp arkadaşlarını üterek fayda üretip ) dersi dinleyememişler.

Bir tarafta daha önce bildiklerinizle bir uygulama yapıyorsunuz, Bir ürün ortaya çıkarıyorsunuz, O ürünün kıymeti nispetinde bir para geliyor. Diğer Tarafta Başka bir konuda eğitim alıyorsunuz o eğitimi pekiştirmek adına ödevler yapıyorsunuz. Bir yanda ürün/uygulama diğer yanda Eğitim/İlim Öğrenme karşılaştırılamaz ( baknız ilkokul dersleri Elma-Armut bahsi )

Sadece maddi çıkarların fayda olduğu varsayımıyla (ki bence öyle değil ) bile olsa Şu an hali hazırdaki piyasa işi ile Görüntü işlemeyi karşılaştırmak için öncelikle Görüntü işlemenin bir uygulamasının yapılıp, Sonuçda elde edilen gelirlerin  karşılaştırılması gerekir. Olaya bu şekilde bakıldığında muhtemelen Firma sahibi Mühendis arkadaşda İyi bir Görüntü işleme Projesinin hali hazırda piyasada gırla giden işlerden (veri tabanı - web ) daha çok kazandıracağını görecektir.

 Şöyle bir itiraz gelebilir, diğer işlerden çok var, yapmasıda kolay. Görüntü işleme konusunda iyi eleman bulmakda, geliştirmek de zor, Ülkemizde oluşmuş bir piyasasıda yok. Geçinebilmek adına mecbur piyasadaki hali hazırdaki nispeten kolay işlere yöneliyoruz.


Elbette geçinmek adına gerekeni yapmak gerekir. Fakat Nispeten kolay işleri yapmaya girşiecek insan sayısı devamlı artacaktır. Başta kazancınız olsada yıllar geçtikçe rakipleriniz çoğalacak kar marjlarınız düşecektir. Bu yüzden ilk etapda zorda olsa yeni alanlara bakmanız lazım.

Örneğimiz Görüntü işleme üzerinden oldu ama aslında bütün Teknolojinin uç noktalarındaki konular elbette zordur. Siz üzerinde çalışma yapacaksınız (öğrenci ) yada yaptıracaksınız (firma sahibi) ki önünüzde yeni Alanlar açılacak.

Piyasanın olmaması konusu ise artık İnternetin olduğu bir çağdayız.  Mesela Hangi firmamız Dünya çapında bir Yüz Tanıma sistemi geliştirdikde satamıyoruz diyebilir. Ürününüz iyi olduktan sonra bir web sitesiyle bütün dünya piyasası size açılır...
 ...
( İnşallah devam Edecek )

Çarşamba, Mayıs 23, 2012

Sabahın Duası



Hoş geldin, sefa geldin ey sabah ve ey yeni gün merhaba ey mutlu vakit ve saat 
merhaba ey ALLAH’ın katip ve şahit meleği, şu söylediklerimizi bizim için yaz ;


Cumartesi, Mayıs 19, 2012

Yapay Sinir Ağları ile Ses Tanıma 4


Eveet Nihayet serimizin sonuna ermiş bulunuyoruz. YSA uygulaması kısmında yine söz bize kaldı...

Tuhaf tuhaf sembollerle dolu tuhaf formüller,bir o kadar acayip grafiklerden sonra elimiz de kalan nedir diye bakıyoruz.
Başlangıçta
Kaliteli bir sesin 20 ms kısmındaki örnek sayısı
yaklaşık 20 * 10^-3 * 44100 = 882.
Şeklindeki veriyi her pencere için  36 adet veriye düşürdük, İlaveten  Sözcüğün uzunluğuna söylenişinin hızına göre değişik sayıda penceremiz var.
Değişken  sayıdaki  veri; YSA ve  pekçok Yapay öğrenme metodu için uygun değil. keza minimum 200 pencereden(200x36) gibi pek de pratik olmayan veri ortaya çıkıyor.

YSA yı uygulayabilmemiz için iki şey yapmamız lazım
  • Sabit bir uzunluğa çevirmek
  • Pratikte kullanılabilir bir sayıya düşürmek

Salı, Mayıs 15, 2012

Yapay Sinir Ağları ile Ses Tanıma 3

Kaldığımız yerden devam ediyoruz sadece mel filitreleme ile iş bitmiyor
 LOG
Kulağımız sesin şiddetini logaritmik bir ölçüde algılar. Benzer şekilde elde ettiğimiz 12 adet verinin logaritmik kullanılması toplam sistem başarımını arttırıyor.  Log işlemi için doğal logaritma iyi sonuç veriyor. Tekrar yeri gelmişken, Bkz. Euler ve ilk değinen J.Bernouilli için bkz. Bileşik faiz problemi. 
IDCT (ters ayrık cosinus dönüşümü)

DCT aslında DFT ile akraba diyebileceğimiz bir dönüşüm işlemidir ancak DFT den farklı olarak DCT de imaginer kısım yoktur yalnızda Reel bileşenler vardır. Ek bilgi; DCT imge sıkıştırmada frekans bileşenlerinin bulunması için sık kullanılır. Bknz.jpeg

İfadesi aşağıdaki gibi;

Pazartesi, Mayıs 14, 2012

Yapay Sinir Ağları ile Ses Tanıma 2


Yazımıza devam ediyoruz.


FFT – Artık frekansa geçme zamanı geldi :)

Pencerelenmiş dizimize şimdi Fourier dönüşümü uygulayarak frekanstaki ifadesini buluyoruz.


Fourier dönüşümünün matematiksel ifadesi yukarıdaki gibidir.  Doğal olarak ifadedeki integral işlemi ayrık işaretler için uygulanamıyor.
Hatırlarsanız biz mikroişlemci ortamında ayrık bir dünyadayız, bu nedenle aynı ifadenin ayrık şekli olan


İfadesi bizim için geçerli.
FFT kodunu kendimizin yazmamıza gerek yok ama araştırmakta tabii ki yarar var.
Yeri gelmişken matematikçilerden kahramanım diyebileceğim üçü, sırayla;  Euler, Gauss ve Fourier ‘in çalışmalarını ve hayatlarını araştırmanızı tavsiye ederim. Gaz açısından : )

Cuma, Mayıs 04, 2012

Yapay Sinir Ağları ile Ses Tanıma 1

,
Geçen seneki Kasım ayındaki yazımızda
 Eğer "o kadar yazını okuduk, bizim de üzerimizde borç var bizde bir ucundan destek olalım"  deyip bir şeyler karalarsanız bizde burdan yayınlamaya çalışırız.
 diye bir duyruda bulunmuştuk . Bu Duyrumuza İstanbuldan Şubat ayında bir cevap geldi. Firmalarında yaz stajına gelen öğrencilerle beraber yaptırdıkları bir projeyi anlatmak istiyorlardı.
Yazı yanınlanmak üzre geldi ama, öncelikle yazılım atölyesinde sunum yapılması tercih edildiğinden, yayınlanması bu zamana kadar tehir edildi.
Şimdi bu yazıyı yayınlamaya başlıyoruz ve sizlerden de yenilerini bekliyoruz...

Yapay Sinir Ağları ile Ses Tanıma
Ses Tanıma genel olarak  üç aşamadan oluşuyor.
1) Ön işleme
2) Öznitelik Çıkarma
3) Tanıma ( YSA, başka Yapay Zeka yada Makine Öğrenmesi (Machine Learning) ile)
Deneysel olarak yaptığımız çalışmada biz, RASTA-PLP, MFCC ve LP yöntemlerini gerçekleştirdik. Bu yazıda akustik vektörlerin MFCC (mel frequency cepstral coefficients) yöntemiyle oluşturulması anlatılıyor.

Pazar, Nisan 22, 2012

YSA ile Finansal Başarısızlık Öngörüsü

Finansal Başarısızlık Öngörüsü hem Firmanın yöneticileri, Hem ilgili firmayla ilişkileri olan firmalar, hemde  - borsada olsun olmasın  - yatırımcıları  için önemli bir konudur.
Öngörü sonuçlarına göre Yöneticiler tedbirler alabilir, İlişkide oldukları firmalar için alternatifler arayabilir,  Yatırımcılar yatrımlarını daha güvenilir yerlere kaydırabilirler. Elbette İş işden geçmeden önce...

Ufak bir internet aramasıyla sizinde göreceğniz gibi pek çok değişik metod ve sistemle "Finansal Başarısızlık Öngörü"  çalışmaları yapılmıştır. Bizim Çalışmamızda Borsada işlem gören bazı şirketler için Yapay Sinir Ağları ile benzeri bir çalışma yapılmıştır.

Firmaların Son Üç yıllık
  • İşletme Sermayesi /Toplam Varlıklar
  • Net Kar/Toplam Varlıklar
  • FVÖK (Faaliyet Karı)/Toplam Varlıklar
  • Borçların Defter Değeri/Toplam Varlıklar
  • Satışlar/Toplam Varlıklar
  • FVÖK (Faaliyet Karı)/Toplam Faiz Ödemeleri

verileri kullanılarak  mevcut  yıldaki Finansal Başarı / Başarısızlıkları öngörülmeye çalışılmıştır.

Ulaşılan Sonuçlar : Doğru sınıflandırma başarı Yüzdesi olarak

Eğitim Verileri  : % 93,3
Test Verileri      : % 84.6
Resimden de göreceğiniz gibi Bütün çalışmada FannTool'un 1.2 Versiyonu kullanıldı. Henüz hazır değil ama üzerinde vakit buldukça çalışıyoruz yakında yayınlayacağız İnşallah...


Pazar, Nisan 01, 2012

YSA ile Tel Erozyon Hesabı


Tel Erozyon Nedir ;

İletken olan malzemelerin işlenmesi ve kesilmesi için kullanılan bir metod ve bu iş için kullanılan tezgahın adıdır. Malzeme Dielektirik bir sıvı içerisine daldırılır. Malzemenin  yüzeyi ile elektrod ( tel ) arasında ark oluşturularak  yüzey aşındırılırlır.

Bizim Çalışmamıza esas olan; Nihat Tosun'un  "Tel erozyon tezgahında tel aşınmasının ve yüzey pürüzlülüğünün deneysel olarak incelenmesi ve modellenmesi" başlıklı doktora tezidir. Bu tezde bir dizi deney yapılmış ve deney sonuçları Regresyon analiziyle modellenmiştir. Biz bu deney datalarını YSA kullanarak modelledik.
Giriş Değerleri ( Kontrol Parametreleri ) olarak ; Puls Süresi, Gerilim, Tel İlerleme Hızı, Dielektirik Sıvı püskürtme basıncı kullanıldı.
Çıkış Değerleri ; Yüzey Prürüzlülüğü, Telde oluşan krater Derinlik ve Çapı , Ağırlık Kaybı

Parametrelerle ilgili detaylar için ilgili teza bakınız. Deneysel verilerin bir kısmı YSA eğitimi için kullanıldı. Kalan kısmıda Eğitilmiş YSA'nın performansını görmek için Test aşamasında kullanıldı.
Biz buraya Sadece Test Verireliyle ulaşılan Grafiklerden birkaç tane koyuyoruz.

Krater Derinliği Test Sonuçları :


Yüzey Pürüzlülüğü Test Sonuçları :



Salı, Şubat 28, 2012

Ordan Burdan Haberler

Okur- Yazamaz'lığım depreştiğinden pek çok konuda uzun uzadıya yazmak istesemde bir türlü yazamıyorum. Bir süre sonrada yazmanın da anlamı kalmıyor, unululup gidiyor aklımdakiler...
Kısa kısa da olsa bir şeyler yazayım haberdar edeyim diyorum.

1) FANN 2.2 yayınlandı. Uzun süredir FANN da bir kıpırdanma olmuyordu. Önce Web sayfasında bir yenilenme oldu. Şimdide Yeni versiyon sürümü yapıldı. İnşallah arkası devam eder.  Kayda değer yenilik olarak yeni bir Eğitim Metodunun eklenmesini  görüyoruz. Ekelen Metod SARPROP yani Yapay Isıl İşlem  ( Benzetilmiş Tavlamada deniyor )  Simulated Annealing destekli RPROP.
Bu durumda bizede iş çıktı FannTool'un Yeni versiyonu üzerinde çalışmaya başladım. Eğer yeni versiyon hakkında fikir ve önerileriniz varsa duymak isteriz.

2.  DATA MINING CUP : Veri Madenciliği Kupası'nın 2012 yılı yarışma kayıtları 1 Martta başlıyor. Konuyla ilgili Linke ve Burdan ulaşabilirsiniz.  İlgileniyorsanız bir bakın, İlgilenmiyorsanız ne diye ilgilenmiyorsunuz yapacak daha iyi bir işiniz mi var ?

3.  OpenCv 2.3.1  Yayınlandı : Yenilikler neymiş derseniz buraya bakın. Güncel dökümantasyonunda yeni Tutoriallar var onlarıda kontrol edin derim.

4 MoSync : Yeni versiyonu yayınlandı. MoSync Eclipse-tabanlı bir IDE  üzerinden C/C++ ile  Android, iOS vb mobil sistemler üzerinde Program geliştermenizi sağlayan Bir SDK. Yeniliklere Burdan Bakabilirsiniz.

Pazar, Şubat 26, 2012

Kameralı Ölçüm Sistemi 2


Kameralı Ölçüm Sistemi from bluekid on Vimeo.


Vakti zamanında yaptığımız bir Çalışmaya ek yaptık

Bu haliyle program Kamera üzerinden,  sabit uzaklıktaki  2 boyutlu
  • Uzunluk 
  • Dikdörten Alanı
  • Daire Alanı
  • Açı
 Ölçümü yapabilmektedir.

Kalibrasyon : iki nokta seçilip gerçek uzunluğu verilir.  bu şekilde piksel cinsinden uzaklıklar gerçek değere çevrilir.
Uzunluk için Koodinatları bilinen iki noktadan ve Pisagor teroemiyle hesaplanır. Sonuç Piksel cinsinden gerçek değere çevirmek için Kalibrasyon faktörüyle çarpılır
Dikdörten ve Daire alanı içinde şekillerin ebatları hesaplanır, kalibrasyon faktörüyle çarpılıp İlgili alan formülleri kullanılır.
Açı hesabı için : Seçilen Üç noktadan  hesaplanan uzunluklar Cosininus Teoremindeki yerine konulup açı çekilir

Pazartesi, Şubat 06, 2012

Bilenler Bilmeyenlere Anlatsın

Nasrettin hoca cuma namazı için hutbeye çıkınca cemaate seslenmiş
- Ey cemaat ne anlatacağımı biliyormusunuz ?
cemaat biraz afallamanın sonrasında hep bir ağızdan "bilmiyoruz" diye cevaplamışlar
Hoca ; "Bilmiyorsanız size ben ne anlatabilirimki " deyip hutbeden inmiş
Ertesi hafta hoca yine hutbeye çıkıp aynı soruyu cemaate sorunca.
geçen haftanın ardından hazırlıklı olan cemaat "biliyoruz" diye cevaplandırmşlar.
Hoca ; "Biliyorsanız size ben ne anlatabilirmki " deyip hutbeden inmiş.
Bir sonraki hafta Cemaat aralarında anlaşıp gelmişler. Hoca hutbeye çıkıp aynı soruyu sorunca.
cemaatin yarısı biliyoruz, diğer yarısı bilmiyoruz diye cevaplamış.
hoca gülümseyerek
"Bilenler Bilmeyenlere Anlatsın"
deyip inmiş hutbeden...

Burada hutbeye çıkıp vaaz verircesine yazılar yazmadık. Ama hocanın cemaatinin tepkilerine benzeyen tepkiler aldık ve alıyoruz..

1) "Bilmiyoruz" diyenler ; Aslında bilmek istemiyoruz diyorlar. Hasbel kader bir iş, bir tez yada bir ödev vesilesiyle bulaştık bunu halledelim hemenceciki kaybolup gidelim diyorlar.
Ufak bir google aramasıyla sitemize ulaşıyorlar
Konuyla ilgili yazımızı ya hiç okumuyorlar yada çok yüzeysel okuyup geçiyorlar
bu yüzden Sorularını açık soramıyorlar.
hatta kodun orda olduğunun farkına varamayıp kodu isteyenleri bile oluyor.
Pazartesine bu iş yetişecek neyapayım ? çok acil , çok önemli,  hayat memat meselesi, ve aklıma gelmeyen bir sürü şey sıralıyorlar
Bir kısmı sorduklara yazdığım karşılığa bile cevap yazmıyorlar
Bir kısmı işlerini hallettikten sonrada kaybolup gidiyorlar taaki bir daha  benzeri bir iş denk gelirse tekrar iletşime geçiyorlar...

2) "Biliyoruz" diyenler ; Konu hakkında genel bilgisi olup, yayınlanan kodu indirip kendi çook geniş arşivinin müstesna bir kenarında saklayanlar. Arşivin genişliği arkadaşlarımızın ilminin genişliğininde göstergesidir. Benzeri bir konu olduğunda ben onu biliyorum deyip, ellerinin altında koda, arşive güvenirler. Arşivle beraber ilimlerininde kaybolabileceği akıllarına gelmez.  Konuyu zaten bildiklerinden ! genellikle iletişimede geçmezler.

Sonuçda "Bilyoruz" iddiasında değiliz "Bilmiyoruz ve Öğrenmeye" çalışıyoruz üstelik öğrene bildiğimiz kadarını "Bilmeyenlere Anlatıyoruz." İlk iki sınıfa giren kişilerin yanlışlıkla ilgisini çekmişiz ki kusrumuza bakılmasın  bir daha olmaması için gerekli tedbirleri alacağız.
"Bilenler Bilmeyenlere Anlatsın" anlayışındaki insanları bekliyor ve iletişime geçmeyi arzuluyoruz.

Not : "Bilenler Bilmeyenlere Anlatsın" anlayışının somut bir görünümü olan Yazılım Atölyesi Çalışmaları tekrar başladı. 
Duyruyoruz ve bütün kalbimizle destekliyoruz...

Pazar, Ocak 22, 2012

Nesne tespiti


Object Detection from bluekid on Vimeo.

Nesne Tespiti Bilgisayarlı Görü'nün temel konularındandır. Çeşitli metodlarla kısmen yapılmaktadır. Yukarda göreceğiniz örnekde OpenCv nin Surf öznitelikleriyle yapılmış  bir örnekdir.
Kodu yayınlıyamıyorum Patron bey! kızıyor  :) ama kod temel olarak şurda var...
Not :
Videoda reklamını yaptığımız kitap sahiplerinin tez zamanda  reklam ücretini tarafıma iletmelerini rica ederiz. İngilizce bilen biriside "The Mythical Man-Month" yazarı Fred Brooks' da haber versin geciktirmesin ücretimizi...

Pazar, Kasım 27, 2011

OpenCv Feature Dedektörleri

Adamın biri yatağında döneleyip durur ve uyuyamazken hanımı sormuş 
"hayırdır bey bir sıkıntınmı var niye uyuyamıyorsun ?"
adam
"Hanım üstteki komşuya borcum var yarında ödemem lazım ama paramız yok "
kadın kalkıp pencereyi açıp üstteki komşuya seslenmiş, komşu pencereye çıkınca
"Bizim beyin size yarın ödemesi gereken borcu varya, Onu ödeyemeyeceğiz" deyip pencereyi kapatmış
sonrada kocasına
"Bırak artık o uyuyamasın"


Burda yıllardır yazılar yazıp çalışmalarımızı paylaşıyoruz. Bir süre sonra bu iş sadece keyif için olmakdan çıkıyor. Yaptıklarımızı anlatmak, bilebildiğimiz kadarıyla bir şeyler öğretmeye çalışmak bir zorunluluk olmaya başlıyor.  Bu satırları okuyan kişilere karşı borçlu olduğumuzu hissediyoruz. Tabii   çeşitli nedenlerle - tembellik, meşguliyet, başka konulara dalmak, geçim derdi vs vs - yazı yazamadığımda bu borçluluk yukardaki şekilde beni rahatsız etmeye başlıyor. Zaten epeydir yazı yazmadığımdan da epeyce bir borç birikmiş durumda.

Kıssadan hisse ey Okuycu Borcumuz borç ama biz borcumuzu eskisi gibi düzenli ödeyemiyeceğiz


Eğer "o kadar yazını okuduk, bizim de üzerimizde borç var bizde bir ucundan destek olalım deyip bir şeyler karalarsanız bizde burdan yayınlamaya çalışırız.

duyrulur...

Epey bir gevezelik ettik. Konumuza başlayalım.


OpenCv pekçok Öznitelik çıkarma metodunu içine katmış ve  FeatureDetector sınıfı temelinde bir kullanım kurmuş Örnek programımızda da bunun kullanımını göreceksiniz kodun içine açıklama satırları koydum.



Örneğimizde geçen metodlara bakarsak

  •  Fast    :  Hızlı  bir Köşe Bulma algoritmasının uygulaması
  •  Surf    :   Speeded Up Robust Feature
  •  GoodFeaturesToTrack :  Yine Köşe temelli bir metod 
  •  Sift : Scale-invariant feature transform
  •  Star : Scale-invariant detector based on rotated squares
  •  Orb  : Oriented BRIEF
  •  Mser : Maximally-Stable Extremal Region Extractor
İndirmek için : FeatureDetect

Cumartesi, Ağustos 27, 2011

Dua, dua, eller karıncalanmış...

El Evvelü Allah
El Ahirü  Allah
Ez Zahirü Allah
El BatınÜ Allah

Ey Rabbimiz, Cahiliz Dünyanın rengine kanıyoruz, pişmanımız, mahcubuz, utanıyoruz. Sayısız günahlarımızdan dolayı perişanız. Zeliliz, gözlerimiz yaşaramıycak kadar kalplerimiz katılaşmış, hayatımız kararsız, garibiz, kimsesisiz, zayıfız güçsüsüz, hastayız aciziz, irademiz yok, aman diliyoruz... Af arıyoruz... Yardım istiyoruz, senin dergahından ey Allahımız.

Felekler Mest, melekler mest, yıldızlar mest, göler mest güneş mest, ay mest, yer mest, unsurlar mest, bitkiler mest, ağaçlar mest, insan mest, baştan başa bütün canlılar mest, bütün varlıkların zerreleri beraber ve iç içe mesttirler.

Ey Allahım ;
Işığın parıldaması, aydınlatma ve eşyayı sergilemen içindir.
Rüzgarların dalgalanması, Senin  estirmen ve görevlendirmendir.
Nehirlerin yerden kaynaması Senin onları depolaman ve kullarının hizmetine sunman iledir.
Çiçeklerin gülümsemesi Senin süslemen ve güzelleştirmen iledir.
Meyvelerin süslenip kendilerini bize takdim etmeleri Senin ihsan ve ikramın iledir.
Sen her türlü noksan sıfatlardan münezzehsin
Hakimiyet ve Saltanatın ne büyüktür.

Ey herşeyin Evveli ve sonu olan,
Ey Açık ve Gizli olan
Ey herşeye bedel her şeye yeten Kafi,
Ey Vadini mutlaka yerine getiren Vafi,
Ey kullarına pek şefkatli olan Rahim,
Ey madi ve manevi  hastalıklara şifa veren Şafi,
Ey ikarmı ve ihsanı bol Kerim,
Ey bela ve musibetleri def edip afiyet veren Muafi,
Bütün Günahlarımızı affet , hatalarımızı bağışla, hastalıklarımıza şifa ver.
Ey merhametlilerin En merhametlisi...

Ey Rabbimiz eğer unutmuş ve yanılmışsak bizi sorumlu tutma.
Ey Rabbimiz, bizi doğru yola erdirdikten sonra kalplerimizi kaydırma, gönüllerimizi aç, işlerimizi kolaylaştır.

Allahım Bize kendine yakınlaşmayı kolaylaştır. Senden uzaklaştıracak şeylere fırsat verme. Bizi sana muhtaç olma ve senden başkasına ihtiyaç duymama hissiyle müstağni kıl....

Bize ibadet ve itaat için en kolay yolu nasib et. Gaflet ve hatalarımızdan dolayı bizi hesaba çekme. Günlerimizi sana yakınlığa vesile olacak ve rızanı kazandıracak amellerle geçirmeyi nasib eyle...

Allahım ! Dillerimizi ancak zikr-i ilahine bırak Kalblerimizi Zat-ı ilahinden başkasına bağlama. Ruhlarımızı sana yakınlığın latif rüzgarıyla ferahlandır, gönüllerimizi sevginle doldur. iç dünyamıza kullarına karşı iyi niyetler yerleştir.Nefislerimizi ilmin cihetine yönelt...

Bizi temizi alan kirliyi bırakan, afiyetin kadrini bilip şükreden ve kendisine vekil olman için
senin kefilliğine razı olan kullarından eyle. Bizleri azametini tanımaya muvaffak kıl...

Hükmünde sana zıd olabilecek; saltanatında, mülk ve emrinde sana karşı koyabilecek hiç kimse yoktur...

Ehadiyyet sarayının hususi misafiri, cenabı vahidiyettin tercumanı hassı, Alemi arş minberinin hatibi ekberi, Düşmanına dahi merhamet elini uzatanı, düşmüşlerin ilticagahı, gariplerin melcei, fukaranın mesnedi, Liva-i hamdin ve makamı şefaatin sahibi olan hazreti Muhammed'e  selat ve selam eyle
Peygamber Efendimizin şefaatlerinide bizlere nasip eyle.

Hamd alemlerin Rabb'ına mahsustur...

Pazar, Ağustos 14, 2011

OpenCv ile Arka plan silme (Background subtraction )


Background Subtraction with OpenCv from bluekid on Vimeo.

Evet Uzun bir aradan sonra basit bir OpenCv uygulamasıyla yine karşınızdayız.
Siz benim basit dediğime bakmayın araç ve insan sayma hareket algılama gibi pek çok uygulamanın temelinde bu yapı vardır. Örenğin basit oluşu OpenCv nin sağladığı imkanlardandır.

programımızın ana özelliği OpenCv 2.3 ile derenmiş olması ve herzamankinin aksine C API yerine OpenCv  C++ API yapılarının kullanılmış olmasıdır. OpenCv eskiden C API temelinde geliştiriliyordu. İkinci versiyonundan itibaren C++API temelinde geliştiriliyor ve bu yapı tavsiye ediliyor. Geriye uyumluluk ve diğer dillere olan destek sebebiyle C API da korunuyor elbette . bu yüzden eski şekildede kodlamaya da devam edebilirsiniz.

Öncelikle OpenCv 2.3 ile ilgili karşılaştığım problemlerden bahsedeyim.
Bu dağıtımın windows versiyonu ile birlikte pek çok derlenmiş kütüphane dağıtılmış.
x86 ve 64 bit için olanlar,
Mingw için VC9 için olan VC 10 için olan diye adlarıyla uyumlu dizinlere konmuşlar.
Ben bu kütüphaneleri kullanarak  cvPreProcessori hiç problemsiz tekrar derledim.
Fakat Anlaşılmaz bir şekilde C++API nı kullandığım örnekleri link edemedim.
Uzun uğraşlardan sonra probemin dağıtımla gelen hazır kütüphanelerden olduğuna kanaat getirdim.
kendi kütüphanemizi kendimiz derleyelim deyip daha önce anlattığım şekilde  işlemler yaptım. Sonuçda elde ettiğim kütüpheler ile Videodanda görebileceğiniz gibi, problemsiz C++ API örneklerini çalıştırabildim.

Ben OpenCv 2.3'ü   " C:\OpenCV-2.3.0" dizinine kurdum.
Kütüpheneleri CMake ile Tekrar derlemek için   "C:\OpenCV-2.3.0\mingw"
dizinini açtım.
Örnek programdaki dizin ayarları ona göre yapıldı tekrar derlemeye kalkarsanız kendi dizin ayarlarınızı yapmanız lazım yada benim dizin ayarlarıma uygun derleme yapın.
Programı indirmek  için : BackGround Subtraction



Pazar, Temmuz 24, 2011

OpenCv 2.3 Yayınlandı


OpenCv 2.3RC'nin yayınlandığından bahsetmiştim zaten. Fazla arayı açmadan OpenCv 2.3'ü de yayınladılar sağolsunlar. Bizde şöyle üstün körü baktık.

Kurulum paketi hazırlamamışlar. Hazırlanan paket sadece sıkıştırılmış dosyaları açıyor. dll lerin path işlerini halletmek size kalmış.

Dökümantasyonu epey bir ilerletmşler, yeni kaynaklar ( pdf ) var
  • opencv_cheatsheet : OpenCv nin C++ arabiriminde ne nasıl yapılır konusunda kısa ve öz bir referans
  • opencv_tutorials :  OpenCv üzerine eğitici örnek programlar. Şimdilik  kısmen tamamlanmış.
  • opencv_user :  Kullanıcı rehberi
  • opencv2refman : Referans Kitabı
başlık dosyalarının ve kütüphane dosyalrının konumları için yeni düzenlemeler yapmanız lazım.
 kütüphane dosyalarının bölümlenmelerinde  ve isimlerindede değişiklikler var. detay için dökümantasyonlarına bakın.

Geriye uyumluluk konusunda bence gayet başarılı Üstteki resimdeki programı OpenCv 2.3 ile tekrar derledim. tek satır değiştirmeden.

Bu  sefer tavsiye ediyorum geç kalmadan OpenCv 2.3'e geçin.
Bir an öncede C++ API larını öğrenmeye bakın eskiden C API ları üzerine C++ yapısı kurulmuştu. Bir süredir tersine bir geçiş var. Yani artık OpenCv gelişimini C++ üzerinden yürütüyor. C API ları geriye uyumluluk ve diğer dillerden kullanılabilme adına tutuluyor.
Unutmadan OpenCvSharp da 2.3 versiyonunu yayınladı...

Cumartesi, Temmuz 02, 2011

Ordan Burdan Haberler

Aslında uzun uzun yazmak istediğimiz ama fırsat bulup yazamadığımız haberler var biriken. bu köşemizde   onlardan bahsediyoruz.  Köşemiz diyorum çünkü aynı başlık altında benzeri yazılar yazdım daha öncede. Detayların için yorum bırakabilir yada e-posta atabilirsiniz.

1 ) FLTK 1.3 kararlı sürüm olarak yayınlandı. Geliştiricilerin büyük gayretleri oldu ve FLTK 1.1 serisi üzerinden geliştirildiğinden genelde program uyumluluk sıkıntısı da çekilmeyecek. yapılanlara gelirisek;
UTF-8 desteği
2 yeni bileşen Fl_Tree ve Fl_Table
Daha işletim sisteminize uygun görünen Dosya seçiciniz Fl_Native_Filechooser
Cross-platform bir yazıcı desteği  ( FLTK nın OpenGl kısmıda dahil )

2 ) OpenCv 2.3 rc yayınlandı. yayınlandı yayınlanmasına ama benim bu versiyon yayınlamalarında hoşuma gitmeyen şeyler var. Yiğidi öldür hakkını yeme demişler, Öncelikle gerçekten hemen her versiyonla birlikte pek çok yenilik geliyor. Fakat dökümantasyon çoook geriden geliyor. dökümantasyonlarda yapılan yeniliklerle ilgili bir açıklama bulmak çoğu kez mümkün olmuyor. Keza yayınlanan sürümlerin kararlılığınada genelde pek dikkat edilmiyor. Keza bundan önceki sürümü denemiş fakat problemlerle karşılaştığım için vazgeçip bir öncekine geçmiştim. Vakit buluncabunuda deneyeceğim inşallah. sonuçları o zaman duyururum. Bu sürümün yeniliklerine bakmak için buraya müracaat edin
3 ) Internetten AR-GE  : Evet biz yataduralım elin oğlu bunuda yaptı. Hem neden yapmasınki. Bir AR-GE projesi için sınırlı sayıda ( maliyet ) insanla bir ekip kurup, Bu ekibin kısa sürede sonuça ulaşmaları umulurken. Şimdi Projeyi Internetten yarışma şeklinde duyrup ödülü koyarak - maliyet sabit - sınırsız sayıda kişi çalıştırıp. Parayı sadece başarana (en kısa sürede istenen sonuca ulaşan ekibe ) vermek, patronlarında işine gelir. Peki bizim niye işimize gelsin derseniz. Türkiye şartlarında kaç kişinin  kendi tercih edeceği bir projeye dahil olabilme imkanı varki. Internetten AR-GE ile Boş vakitlerinizde yada Boşa geçirdiğiniz vakitlerde tercih edeceğiniz bir konuda çalışabilirsiniz. Kazanamsanızda size tecrübe olmuş olur zaten boşa vakit geçirecektiniz...
neyse konuyu fazla uzatmadan linkleri vereyim. Girin siz kendiniz bakın detaylarına. Katılmak için ekip kurarsanızda haberimiz olsun...

4)  OpenCv için yeni bir kitap çıktı. C++ ve OpenCv 2 versiyon temelli olarak anlatıyor
OpenCV 2 Computer Vision Application Programming Cookbook
5)  Matlab Görüntülü Dersler :  Daha önce İnternetten dağıtılan İlmin zekatı diye bir yazıda yazmış idim. videolectures.net ve www.academicearth.org gibi yurt dışı kaynaklı derslerden bahsetmiştim. Türkiyedede yaygın olmasada benzeri imkanlar başladı. İsmail Arı da Matlab Dersleriyle ilminin zekatını verenlere öncülük ediyor. Matlab öğrenmek gibi bir niyetim olmasada,  duyurmamak olmaz diyoruz ve projenin tanıtımındaki
      "Not: Proje MATLAB eğitimi ile başlamıştır fakat ileride farklı konular eklenecektir."
 ifadesiyle ümitvar oluyoruz.

Pazar, Haziran 26, 2011

KNIME ve Haber Metinlerinin Sınıflandırılması 2

Uygulamamız, Başlıkdanda anlayacağınız gibi Haber Metinlerinin otomatik sınıflandırılması. Uygulamamız için gereken veriyi Kemik den aldık. Kemik  Yıldız  Teknik Üniversitesinin Doğal Dil İşleme Grubu.  Neden Kemik? sorusunuda "Çünkü dilin kemiği yoktur" diye cevaplıyorlar.

Gurubun yayınladığı veri kümelerinden 75Haber diye geçen veri kümesini kullanacağız Veri kümesi  M.Fatih Amasyalı tarafından hazırlanmış ve bu makalede
 Otomatik Haber Metinleri Sınıflandırma", M.Fatih Amasyalı, Tülay Yıldırım, SIU 2004
kullanılmıştır.

5 farklı haber sınıfına ait 15’şer, toplamda 75 haber içermektedir.
Haber metinlerinin sınıfları:
  1. ekonomi
  2. magazin
  3. sağlık
  4. siyasi
  5. spor 

KNIME ile veri okunup test ve eğitim olarak 2 ye ayrıldı ( 50 eğitim 25 test ) SVM ve Weka-Bayes ile sınıflandırma işlemi yapıldı
İşlemin akış şeması


ve Test verileri için sonuçlar şöyle
Bayes  25 yazıdan 22 sini doğru sınıflandırmış
 SVM  ise 25 yazıdan 13'ünü doğru sınıflandırmış

KNIME ve Haber Metinlerinin Sınıflandırılması 1



Öncelikle KNIME de nedir ki sorusuna cevap verelim
KNIME yani "Konstanz Information Miner" almanyada Konstanz üniversitesinde geliştirilmiş açık kaynak kodlu ve ücretsiz bir programdır. Veri madenciliği , Veri yükleme, işleme, yazma,  görselleştirme işlerinizi gayet kolay yapabilirsiniz.



Başlangıçda İlaç endüstrisi için yazılmış olsa da artık pek çok alanda kullanımı mümkün kılan özellikleri var.  mesela
  • CRM müşteri veri analizi, 
  • iş zekası ve finansal veri analizi
  • Doğal Dil İşleme
  • Görüntü İşleme
gibi. Neyse kafı fazla uzatmıyayım.
www.knime.org
adresinden indirip kurmanızı  ve   sonra, ek özelliklerininde (Extensions) kurulması için menüden
"File ->Install KNIME extensions" ile kurulumu tamamlayıp incelemenizi tavsiye ederiz.
( Weka ve R entegrasyonu , Python ve Perl Scripting, LibSVM gibi pek çok özellik bu şekilde ekleniyor )
Bu kadar laftan sonra bir uygulamada hazırlayalım istedik. Bekleyiniz yakında ....