Perşembe, Aralık 24, 2009

ITK Örneği DicomViewer



ITK da neymiş diyenleriniz olabilir Tıbbi görüntü İşleme ve ITK yazımıza bakabilirler. O yazıda basit bir örnek hazırlama niyetinde olduğumuzu söylemiştik. Nasip bu güneymiş.

C# içinde ITK kullanabilmek için ManagedITK ya ihtiyacımız var.
Öyle güçlü bir dökümantasyonu yok malesef
ManagedITK article ile yetinmeniz lazım
Derlenmiş kütüphaneyi indirin ve ilgili dll' leri referansa ekleyin

DICOM (Digital Imaging and Communications in Medicine) değişik cihazlardan elde edilen medikal görüntülerin formatıdır.  Programımızda  basit bir Dicom Göstericisi
Daha Teferruatlı gösterici için VTK ilede uğraşmak gerekiyor...
İndirmek için : DicomViewer

Cumartesi, Aralık 12, 2009

RSS ile Çalıntılama

Epey bir süredir burada yazılar yazmaktayız. Bu yazılardan maddi bir beklentim yok. Ama pek çok reklam içerisinde ve hiç de tasvip etmediğim bir ortamda izinsiz ve bağlantı verilmeksizin, yazılarımın Çalınması hoşuma gitmiyor.  Bu  daha önce de başıma gelmişti e-maill ile halletmiştim yine aynı metodu uyguladım ;Çalıntılama yapan sitenin sahibine  whois çekerek bilgilerini aldım  (sitesine koymamış ne hikmetse )
    Orhan Yasar Celik (saykorhan@gmail.com)
    isiklar1apt 34/24 kozyatagi istanbul
    ISTANBUL
    Tel. +90.2163623956
burdaki e-mail adesiyle ulaşmaya çalıştım. Yazdığım maile karşılık

Delivery to the following recipient failed permanently:
saykorhan@gmail.com
Technical details of permanent failure:
Account disabled

cevabını aldım
Sonra o sitedeki Adsense reklamlardan "Google reklamları " kısmına tıklayınca açılan
"Google Yardımı › AdSense Yardım › Destek Ekibine Ulaşarak "  sayfasından
"Biraz önce gördüðünüz site veya reklamlarla ilgili politika ihlalini bildirin" kısmına tıklayıp
sorun konusu web sitesi seçeneğini işaretleyip
"Bu site, iznim olmaksızın, telif hakkıyla korunan içeriğimi barındırıyor veya dağıtıyor."
seçeneği ile e-mail adresimi vererek ve sayfanın orjinalinin linkiyle şikayette bulundum bir kaç kez
ama Google adsense dende bana cevap gelmedi pek umurlarında değil sanki
bütün bunların üstüne
Eğer yazılarınızın dolaşmasını istiyorsanız rss nizi açarsınız, istemiyorsanız kapatırsınız.
Blog, insanların yazı yazdığı dolayısıyla paylaşım yapılan biryerdir, benim sitem ise, farklı blogları sizlere burada tanıtmakta ve yazılarının RSS kısmını göstermektedir.
Yazılarını çaldığımı söyleyen insanlar ; bilmelidirki, rss lerini açarak, bu yazıların burada yayınlanmasını kendileri bizzat istediklerini göstermektedir. Ortada işlenen bir suç vs. yoktur.


yazma  pişkinliğini gösterdi...
Neyse lafı uzatmayalım işin detayını "Bir Blog Hırsızlığının Anatomisi" yazısından öğrenebilirsiniz.Sonuç olarak blogun RSS desteği kaldırmak zorunda kaldım ve Telif hakkı kısmı koydum. Sitede yayınladığım Programlar için aksi belirtilmediği sürece lisansları GPL dir.
.
Not : RSS desteğini kaldırdığım halde eski bir yazımı yine araklamış ne yapsak bilmem ki   :(

Yeni Not  :  Şu an itibarıyla ilgili site çeşitli gayretler sonucu kapattırılmıştır...

C# ile OpenCv kullanmak

C# ile daha doğrusu .Net in dillerinden biriyle OpenCv kütüphanesine ulaşmanız mümkün. Bu iş için yazılmış .Net kütüphanelerini hızlıca  tanıyalım

  • SharperCV :  Uzun süredir güncellenmiyor lisansı kötü
  • OpenCVDotNet : Managed c++ ile hazırlanmış, uzun süredir güncellenmiyor, lisansıda GPL
  • The OpenCV Wrapper Project : Yapı olarak aslında OpenCv ye oldukça uyumlu düşünülmüş son güncelleme Mayıs 2009 yani güncel sayılır. Fakat  "We don't allow to use the wrapper for commercial purposes. This includes reselling wether in the original or modified form (sources or binaries) or using in commercial projects." diyen çok kötü bir lisansa sahip
  •  Emgu Cv :  c# ile yazılmış ve mono ile de derlenebildiğinden cross-platform , lisansı GPL yada ticari olabiliyor tek kullanıcı için 199 $ fiyat biçmişler "If you are upgrading, you save 50% off the license fee." gibi cabası da var ve belkide ticari yanı olması sebebiyle  en profesyöneli
  • OpenCvSharp :  C# ile yazılmış ve oldukça güncel ve ticari kullanım içinde gayet uygun LGPL lisansına sahip Mono ile de kullanılabiliyormuş yani cross-platform. Bizim tavsiye ve tercih ettiğimiz kütüphane de bu.




Gelelim Örneğimize  Web Kamera dan Görüntü alıp onun üzerinde basit işlemler uygulayan ve avi olarak kaydedebilen küçük bir programcık.
IDE olarak Visual C# 2008 Express kullanıldı
Derlemek için OpenCvSharp OpenCv 2.0 için olan versiyonu kullanıldı

Indirmek için burdan buyrun  :  Effects

Cuma, Aralık 04, 2009

Text Generator



ısırmış ve, “Al bak harika!” diyerek uzatmış, küçük oğlana gelmiş. Elindeki ışığı kızın ana-babasına yollamış. Onları karşısında görünce hemen ormana varmışlar. Ormanda bir ülkeye gitmiş. Tavukla horozun parlak ışıklar sızan son gemiden ona acımışlar ve sert geçmiş. Çirkin Ördek, ama prense dönüşmüş. "Korkma, " En altta eşek, köpek eşeğe. " diye düşünmüş Güzel. “Seninle evlenmek zorunda bırakmışlar. Küçük oğlan hemen bir daha fazla bir kucak dolusu güzel bir çocukmuş. Sabah gözlerini açmış sanki. Her yer istemiş. Ak sakallı adam kıza dönerek "burada her rastgeldiği insana, “Bu taraftan gelin,” demiş. Dışarı çıkmış; arpa getirerek tavukla horozun önüne serpmiş. İneğe de öğle yemeğimi büyük ve bir süre sonra her şeyden bol bol var! Haydi merdivenden yukarı çıkmış. Güzel tavukla horozun önüne serpmiş. İneğe de soğukmuş. Şimşekler çakıyor, rüzgâr yerden çıkıp gitmişti... Herhalde dosdoğru yoluna oğul, ben Çirkin Ördek’in tam mı yitireyim?” demiş. "Bir kese altının çalıntı olduğuna karar vermiş, üçünü de dillerde yankılanmış. 
 İlk C# örneğimizi yayınlıyoruz. Bir ilk de örneğin alanı -ucundan kıyıcığından bir örnek sayılır belki - Doğal Dil İşleme ( Natural Language Processing).

Yapılan işlem pek de karmaşık değil.Kendisine verdiğimiz yazıları kelime çiftlerine ayırıp peş peşe gelme sayılarını tutuyor. ve  Yazı üreteceği zaman bir kelimeden diğerine peş peşe gelme sıklığını  kullanarak seçiyor.sonuçtada yukardaki gibi yazılar çıkıyor.Başlangıç verileri için İnternetten bulduğum masalları ekledim.


İndirmek için : TextGen

Çarşamba, Aralık 02, 2009

Bizden Haberler

Necefli Maşrapa ile ara verdik Bu da geçer Ya Hu ile döndük şükür...

Ekonomik krizin etkisiyle azalan işler, azalan çalışma saatleriyle devam ediyor. Bütün bunların üstüne ücretsiz izinler ve olan işinide kaybetme psikolojisindeki patronlarla muhatap olmak gibi sıkıntılar içindeyiz.

Bu artan sıkıntılarımızdan ve boş vaktimizden haberdar bazı dostların   " Bırak bu entel dantel işleride .Net öğren piyasanın %70'i bunu istiyor artık. olurda işsiz kalırsan işine yarar" mealindeki nasihatlarına uyup C# öğrenmeye başladım.

C  / C++ bilen biri olarak pekde zorlanmadım. Pek çok özelliği aynı. Programlama ortamı da bana (Toprağı bol olsun ! ) bizim CBuilderı hatırlattı.  Yabancılık çekmedim kısacası. Tuhaf buluğum taraflarıda oldu tabii
  • printf yerine paskalvari writeline kullanmışlar en kötüsüde güzelim format sitilini değiştirmişler
  • Referans ve Değer kullanımını aynı şekilde yapmışlar.
  • Fonksiyon pointerlar yerine Delegate denen bir şey varki evlere şenlik
  • Dilin özelliklerinin sürekli değişmeside hoşuma gitmedi Başlangıçta beğenilen sistemlerin özelliklerinin alınması iyi bir şey ama bu nun süerkli hale gelmesi hiç hoş değil bence. Ben şahsen Dilin kurallarının biraz durağan olması taraftarıyım. zırt pırt değişmesi hoş değil.
  • FLTK ya alışmış biri olara bir kamyon DLL ile bağlı program yazmak tuhaf geliyor.
işin güzel olan tarafı Pek çok Kütüphanenin eşleniği yada .Net wrapper'ı var. Alıştığımız kütüpanelerden feragat etmemiş olacağız yani. Üstelik Microsoftun şimdilik göz yumduğu Mono sayesinde Cross-Platform uygulama geliştirmeniz mümkün. Sözün kısası  C / C ++ dan vazgeçmedik ama Pekiştirmek için bir süre C# ile yazılmış örnek programlar görürseniz şaşırmayın.

Gelelim ikinci haberimize.  FannTool'un kullanım kılavuzunun İngilizce versiyonu çıktı. Sağ olsun  Dr. Michael Schaale yardımcı oldu. indirmek için FannTool Users Guide laf aramızda Türkçesinden de daha derli toplu oldu.FannTool  için yardım istediğimizide bu vesileyle duyurmuş olalım. Kimbilir belki sesimizi Türkiyeden de duyan olur...