<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DUADSX8-eCp7ImA9WhRVF00.&quot;"><id>tag:blogger.com,1999:blog-21714815</id><updated>2012-01-16T11:56:18.150+02:00</updated><category term="OpenCV" /><category term="C++" /><category term="embedded" /><category term="Örüntü Tanıma" /><category term="Curl" /><category term="minix3" /><category term="Optimizasyon" /><category term="SVM" /><category term="Programlama" /><title>vs.blog  :)</title><subtitle type="html">sunar!</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://volkansalma.blogspot.com/" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/VolkanSalma" /><feedburner:info uri="volkansalma" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>VolkanSalma</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry gd:etag="W/&quot;DEcBQno_fyp7ImA9WhdXEkQ.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-8527086574836244018</id><published>2011-08-25T20:36:00.007+03:00</published><updated>2011-08-25T21:14:13.447+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-25T21:14:13.447+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><category scheme="http://www.blogger.com/atom/ns#" term="OpenCV" /><title>OpenCV 2.3 ile Optical Flow C++</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-TCurBVyKdtc/TlZZyV5gMAI/AAAAAAAABRs/3vYconO8s8w/s1600/penguin_flowBM2_128x141.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://2.bp.blogspot.com/-TCurBVyKdtc/TlZZyV5gMAI/AAAAAAAABRs/3vYconO8s8w/s200/penguin_flowBM2_128x141.png" width="181" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; Optical flow yöntemi, hareket kestirimi, nesne takibi, video stabilizasyonu(titreşim,hareket giderme), imge mozaikleme, stereo vision ile derinlik bilgisi eldesi gibi operasyonlarda sıklıkla kullanılan temel bir araçtır.

Genel olarak Optical flow yöntemi bir resimdeki noktanın diğer bir resimde nereye gittiğini bulmaktadır.

&lt;a href="http://dasl.mem.drexel.edu/~noahKuntz/openCVTut9.html"&gt;Burada&lt;/a&gt; OpenCV nin sağladığı fonksiyonlarla Lucas Kanade optical flow örneği bulunmakta. OpenCV &amp;nbsp;kütüphanesinin C dili arayüzlerini kullnıarak geliştirilen bu uygulamayı&amp;nbsp;&amp;nbsp;C++ a çevirdim.&lt;/div&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;"&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;&lt;a href="http://www.4shared.com/file/lNhjU1Jq/TargetDetection.html?"&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;Download VS2010 OpenCV 2.3 Template (with precompiled libs)&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;"&gt;
&lt;b&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;&lt;a href="http://www.4shared.com/file/lNhjU1Jq/TargetDetection.html?"&gt;&lt;span class="Apple-style-span" style="color: orange;"&gt;and Lucas Kanade Optical Flow Sample with C++ interface&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;script src="https://gist.github.com/1170793.js"&gt;
 
&lt;/script&gt;Yukarıdaki linkten tüm projeyi indirebilirsiniz. Proje VisualStudio 2010 C++ ile OpenCV 2.3 ü kullanmak için herşeyi içeriyor. Tüm libler, headerlar, dll ler proje içerisinde. &amp;nbsp;Bu nedenle boyutu biraz büyük. İndirdikten sonra sln dosyasını açtığınızda doğrudan derleme yapabilirsiniz. OpenCV kütüphanesini uygulamanızda kullanma konusunda sıkıntı yaşıyorsanız bu projeyi taslak olarak kullanabilirsiniz. Microsofttan&amp;nbsp;&lt;a href="http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express"&gt;VS2010 C++ express edition&lt;/a&gt; 'ı ücretsiz olarak indirip kullanabileceğinizi ekleyelim.                    &lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-8527086574836244018?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/RJn696258eI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/8527086574836244018/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2011/08/opencv-23-ile-optical-flow-c.html#comment-form" title="3 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/8527086574836244018?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/8527086574836244018?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/RJn696258eI/opencv-23-ile-optical-flow-c.html" title="OpenCV 2.3 ile Optical Flow C++" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-TCurBVyKdtc/TlZZyV5gMAI/AAAAAAAABRs/3vYconO8s8w/s72-c/penguin_flowBM2_128x141.png" height="72" width="72" /><thr:total>3</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2011/08/opencv-23-ile-optical-flow-c.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkABSXs8eCp7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-6598486629749917419</id><published>2011-02-09T23:57:00.014+02:00</published><updated>2011-03-27T11:39:18.570+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:39:18.570+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><category scheme="http://www.blogger.com/atom/ns#" term="OpenCV" /><title>OpenCV 2.2 Windows .lib dosyaları?</title><content type="html">&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; OpenCV nin 2.2 versiyonu geçtiğimiz yılın Aralık ayında yayınlandı. 2.3 versiyonunun ise planlanan sürüm tarihi Mayıs 2011 olarak belirtilmiş. &amp;nbsp;Versiyon 2.2 de neler değişmiş &lt;a href="http://opencv.willowgarage.com/wiki/OpenCV%20Change%20Logs"&gt;burada&lt;/a&gt;. Bu listede ilk gözümüze çarpan kütüphanenin organizasyonunun bir hayli değişmiş olması. Eski versiyonlardan aşina olduğumuz cxcore, cv, cvaux, highgui ve ml modülleri daha küçük parçalara bölünmüş halde karşımıza çıkıyor. Bu değişiklikler kodlarımızda kullanmaya alıştığımız opencv header dosyalarının adının değişmesine neden olmuş. Ayrıca lib ve dll dosyalarıda artık opencv ön ekiyle başlıyor. Bu versiyonun &amp;nbsp;android için de built edilebileceği resmi olarak belirtilmiş. Kütüphanenin C++ desteği de bir hayli gelişmiş.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp;OpenCV kütüphanesinin 2.2 versiyonunu Visual Studio ortamında kullanmak istiyorsanız, &lt;s&gt;kütüphanin kodlarını indirdikten sonra CMake ile Visual Studio proje dosyası oluşturup bu projeyi derleyerek dll ve lib dosyalarını oluşturmanız gerekiyor.&lt;/s&gt;&amp;nbsp;&amp;nbsp;&lt;a href="http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/OpenCV-2.2.0-win32-vs2010.exe/download"&gt;buradan&lt;/a&gt;&amp;nbsp;windows versiyonunu indirebilirsiniz. Bu pakette kütüphanenin kodları, değişik dillerde örnek programlar ve bin klasörü içerisinde derlenmiş kütüphane dosyaları bulunuyor. Kütüphanenin kodlarıyla ve örnek programlarla ilgilenmeyecekseniz, OpenCV kullanan herhangi bir programı derlemek için minumum gereksinimleri &amp;nbsp;aşağıdaki linkten indirebilirsiniz.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;i&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: inherit; font-size: large;"&gt;&amp;nbsp;&lt;a href="http://www.4shared.com/file/jLTkc8p5/OpenCVv22_VisualStudio.html"&gt;Download OpenCV v2.2 lib,dll,include files&amp;nbsp;&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;i&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: inherit; font-size: large;"&gt;&lt;a href="http://www.4shared.com/file/jLTkc8p5/OpenCVv22_VisualStudio.html"&gt;(Windows, compiled with Visual Studio 2010) &lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; Aşağıda OpenCV v2.2 nin c++ arayüzü ile yazılmış temel bir test programı veriyorum. Aynı cv::Mat objesine döngü içinde jpeg dosyadan okuma yapılmasına rağmen C++' ın güzelliklerinden faydalanılarak &amp;nbsp;memory leak oluşmadığına dikkat ediniz.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;script src="https://gist.github.com/889023.js"&gt; &lt;/script&gt;
&lt;a href="https://gist.github.com/889023"&gt;Kod&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-6598486629749917419?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/QhJYturOMfU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/6598486629749917419/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2011/02/opencv-22-windows-lib-dosyalar.html#comment-form" title="3 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/6598486629749917419?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/6598486629749917419?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/QhJYturOMfU/opencv-22-windows-lib-dosyalar.html" title="OpenCV 2.2 Windows .lib dosyaları?" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2011/02/opencv-22-windows-lib-dosyalar.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMERng9fCp7ImA9Wx9VE0o.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-5312711607340851781</id><published>2011-01-30T03:00:00.001+02:00</published><updated>2011-01-30T10:50:07.664+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-30T10:50:07.664+02:00</app:edited><title>vs.Pratik.Sözlük çıktı!</title><content type="html">&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; Önceleri sözlük karıştırıp &amp;nbsp;kelimeyi bulmak zor gelirdi sonra bir kelimeye bakmak için her seferinde sözlük sitelerini açıp bakmak zor gelmeye başladı. Bunun için hafta sonu kendime &amp;nbsp;ufak bir program &amp;nbsp;hazırladım. Belki sizler için de faydalı olur.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;vs.Pratik.Sözlük, bilgisayarınızda çalışırken sözlük ihtiyacınızı pratik şekilde çözmeye yönelik olarak tasarlanmıştır.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;vs.Pratik.Sözlük ile size vakit kaybettirecek, web tabanlı sözlük hizmetlerine veya karmaşık sözlük programlarına ihtiyacınız kalmayacak.&lt;/li&gt;
&lt;li&gt;vs.Pratik.Sözlük Google Translate altyapısını kullandığından bu hizmetin sunduğu pek çok dil arasında çevirme olanak sağlamaktadır.&lt;/li&gt;
&lt;li&gt;vs.Pratik.Sözlük'ü sadece internet bağlantınız olması durumunda kullanabilirsiniz. vs.Pratik.Sözlük varsayılan kurulumla, İngilizce bir kelime girdiğinizde Türkçeye, Türkçe bir kelime girdiğinizde ise İngilizce'ye çevirmek üzere ayarlanmıştır.&lt;/li&gt;
&lt;li&gt;Herhangi bir kelimenin veya cümlenin karşılığını bulmak istediğinizde, sistem çubuğunuzda çalışmakta olan vs.Pratik.Sözlük'ü iki kez ardarda ctrl tuşuna basarak aktif hale getirebilirsiniz. Kelimeyi veya cümleyi girdikten sonra enter tuşuna basmanızın hemen ardından çevrim sonucunu alacaksınız. Çalışmanıza geri dönemek için tekrardan CTRL tuşuna ardarda basın. (Yani hiç mouse kullanmadan çevrim yapabiliyoruz)&lt;/li&gt;
&lt;li&gt;-vs.Pratik.Sözlük'ü kullanmaya başlamadan önce bir kereye mahsus olmak üzere google hesabınızla, "http://code.google.com/apis/console" &amp;nbsp;adresinden google translate api key adındaki şifreyi almanız gerekmektedir. Bu şifre ücretsiz olup vs.Pratik.Sözlük'ün google translate altyapısını kullanması için gereklidir. Aldığınız şifreyi ayarlar menüsü altından kaydettikten sonra vs.Pratik.Sözlük'ü kullanmaya başlayabilirsiniz.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="text-align: center;"&gt;
&lt;b&gt;&lt;i&gt;&lt;u&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: x-large;"&gt;&lt;a href="http://www.4shared.com/file/-LJbjyh7/vsPratikSzlkSetup.html"&gt;İndir (949KB)&lt;/a&gt;&lt;/span&gt;&lt;/u&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
*vs.Pratik.Sözlük ile alakalı isteklerinizi, sorunlarınızı veya önerilerinizi bu yazı altına yorum olarak veya &amp;nbsp;"volkansalma@yahoo.com" adresine doğrudan e-posta ile iletebilirsiniz.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-5312711607340851781?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/DPrqJpd4xtQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/5312711607340851781/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2011/01/vspratiksozluk-ckt.html#comment-form" title="0 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/5312711607340851781?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/5312711607340851781?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/DPrqJpd4xtQ/vspratiksozluk-ckt.html" title="vs.Pratik.Sözlük çıktı!" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2011/01/vspratiksozluk-ckt.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQAQn4zcCp7ImA9Wx5UEU8.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-2037003113476740219</id><published>2010-10-10T01:11:00.029+03:00</published><updated>2010-10-15T10:39:03.088+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-10-15T10:39:03.088+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Örüntü Tanıma" /><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><title>Naive Bayes Sınıflandırıcı. C++</title><content type="html">&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Naive Bayes sınıflandırıcı, Bayes karar teorisine dayanan basit bir olasılıksal sınıflandırıcıdır. Çok fazla teorik bilgiye girmeden, wikipedia üzerinde &lt;a href="http://en.wikipedia.org/wiki/Naive_Bayes_classifier"&gt;bayes sınıflandırcının anlatıldığı sayfada&lt;/a&gt;&amp;nbsp;yer alan bir örnek için yazdığım uygulamayı paylaşmak istiyorum.Örnek başlığı Sex Classification olarak geçiyor.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Elimizde 4 erkek, 4 bayana ait veriler var. Bu verilerden her birinin bayana mı ait yoksa erkeğe mi ait olduğunu biliyoruz. Amacımız bu verileri kullanarak bir sınıflandırıcı tasarlamak. Bu sınıflandırıcıyı kullanarak &amp;nbsp;kime ait olduğunu bilmediğimiz verilerin sahibinin cinsiyetini doğru olarak tahmin edebileceğiz.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Bu veriler aşağıdaki şekilde verilmiştir;&lt;/div&gt;
&lt;table class="wikitable" style="background-attachment: initial; background-clip: initial; background-color: #f9f9f9; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-collapse: collapse; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; color: black; font-size: 13px; margin-bottom: 1em; margin-left: 0px; margin-right: 1em; margin-top: 1em;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;cinsiyet&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;boy (feet)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;ağırlık (lbs)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;ayak boyutu(inch)&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;erkek&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;6&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;180&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;12&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;erkek&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.92 (5'11")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;190&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;11&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;erkek&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.58 (5'7")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;170&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;12&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;erkek&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.92 (5'11")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;165&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;10&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;bayan&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;100&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;6&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;bayan&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.5 (5'6")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;150&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;8&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;bayan&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.42 (5'5")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;130&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;7&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;bayan&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.75 (5'9")&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;150&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;9&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Etiketlerini(cinsiyetleri) bildiğimiz yukarıdaki veriler eğitim kümesi olarak adlandırılır. Gerçek hayat uygulamalarında geliştireceğimiz sınıflandırıcı için, çok büyük veri kümeleri gerekmektedir. Bu yazıda bu veri kümesi anlatımı kolaylaştırmak için seçilmiştir. &lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Örneğimizde sınıflandırıcı geliştirirken; boy, ağırlık ve ayak boyutunu özniteliklerinin normal dağılım olarakta bilinen gauss dağılımına(çan eğrisi) uygun olarak dağıldığını varsayıyoruz. Bu varsayım da Bayes sınıflandırıcısının genel bir özelliği değildir. Burada işimizi kolaylaştırmak için bu şekilde bir kabul yaptık. Pek çok gerçek hayat uygulamasında da Bayes sınıflandırıcısı bu şekilde kullanılmaktadır.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Örneğimizde her bir öznitelik için erkek ve bayana ait olasılık dağılım fonksiyonu olarak ayrı bir çan eğrisi fonksiyonu olduğunu düşünüyoruz.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp;Bu eğrileri oluşturmabilmek için her bir özniteliğin ortaması ve varyansı gereklidir. Yukarıdaki değerlere göre bu değerleri hesaplarsak aşağıdaki tabloyu elde ediyoruz;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;&lt;/span&gt;

&lt;br /&gt;
&lt;table class="wikitable" style="background-attachment: initial; background-clip: initial; background-color: #f9f9f9; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-collapse: collapse; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; color: black; font-size: 13px; margin-bottom: 1em; margin-left: 0px; margin-right: 1em; margin-top: 1em;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;sex&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;ortalama (boy)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;varyans (boy)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;ortalama (ağırlık)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;varyans (ağırlık)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;ortalama (ayak boyutu)&lt;/th&gt;&lt;th style="background-attachment: initial; background-clip: initial; background-color: #f2f2f2; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em; text-align: center;"&gt;varyans (ayak boyutu)&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;erkek&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.855&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;3.5033e-02&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;176.25&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;1.2292e+02&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;11.25&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;9.1667e-01&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;bayan&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.4175&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;9.7225e-02&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;132.5&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;5.5833e+02&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;7.5&lt;/td&gt;&lt;td style="border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(170, 170, 170); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(170, 170, 170); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(170, 170, 170); border-top-style: solid; border-top-width: 1px; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.2em;"&gt;1.6667e+00&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Yukarıdaki tabloda verilen bu bilgilerle her bir öznitelik için bayana ve erkeğe ait normal dağılım şeklinde olasılık yoğunluk fonksiyonu elde edilmektedir.



Elimize &amp;nbsp; uzunluğu 6 feet, ağırlığı 130 lbs ve ayak boyutu 8 inc olan bir veri gelmiş olsun. Bu verininin sahibinin cinsiyetini tahmin etmek için aşağıdaki gibi bir yol izlenir.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Her bir sınıf için&amp;nbsp;öncü(prior) olasılık hesaplanır: Eğitim verileri ele alınarak gelecek test verisinin hangi kümeye hangi olasılıkla dahil olabilieceği özniteliklerine hiç bakılmnaksınız hesaplanır. &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;prior erkek olma olasılığı = eğitim kümesinde erkek sayısı / eğitim kümesindeki tüm sayı&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;prior bayan olma olasılığı = eğitim kümesinde bayan sayısı / eğitim kümesindeki tüm sayı
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Örneğimizde her iki küme(erkek ve bayan) içinde prior olasılık: &amp;nbsp; 4 / 8 &amp;nbsp;= 0.5 dir.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Daha sonra her bir özniteliğin o özniteliğe ait hesaplanmış olasılık dağılım fonksiyonları kullanılarak her bir sınıfa ait olma olasılı hesaplanır. &amp;nbsp;Bizim örneğimizde test verisinde ağırlık 130 lbs olarak belirtilmiş. Erkek ve bayan için hesaplanan ağırlık &amp;nbsp;olasılık yoğunluk fonksiyonlarında130 yerine koyularak 130 lbs ağırlığın % kaç olasılıkla erkek sınıfına ait olabilieceği, % kaç olasılıkla bayan sınıfına ait olacağı hesaplanır. Bu işlem her bir öznitelik için ayrı ayrı yapılır.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Karar aşamasında ise erkek olma prior olasılığı ile özniteliklerin erkek sınıfına ait olma olasılıkları çarpılır. Bayan içinde aynı işlemler yapılarak posteriorProbabiltyBayan ve posteriorProbabiltyErkek hesaplanır. &amp;nbsp;Hangi sınıfa ait posterior olasılık daha büyükse örnek bu sınıftan kabul edilir.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp;posteriorOlasilikBayan = priorBayanOlasılığı * P(uzunluk|bayan) * P(ağırlık|bayan) * P(ayak &amp;nbsp; &amp;nbsp; &amp;nbsp;boyutu|bayan)&amp;nbsp;&lt;/span&gt;
&lt;span class="Apple-style-span" style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;posteriorOlasilikErkek = &amp;nbsp;priorErkekOlasılığı * P(uzunluk|erkek) * P(ağırlık|erkek) * P(ayak boyutu|erkek)&lt;br /&gt;&lt;br /&gt;Wikipedia'dan hesaplanmış değerleri yazarsak;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(uzunluk|erkek) = 1.5789&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(ağırlık|erkek) = 5.9881e-06&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(ayak bıyutu|erkek) = 1.3112e-3&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&amp;nbsp;posterior numerator (erkek) = 6.1984e-09&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(uzunluk|bayan) = 2.2346e-1
&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(ağırlık|bayan) = 1.6789e-2&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;P(ayak boyutu|bayan) = 2.8669e-1&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&amp;nbsp;posterior numerator (bayan) = 5.3778e-05
&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&amp;nbsp;&amp;nbsp; Toplam Posterior olasılık bayan için daha büyük elde edildiğinden test verimiz bayan olarak sınıflandırılır.

Aşağıda bahsedilen örneği gerçekleştirmesi için yazdığım &amp;nbsp;C++ &amp;nbsp;programını bulabilirsiniz.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: sans-serif; line-height: 19px;"&gt;&lt;a href="http://gist.github.com/627767"&gt;Native Bayes Sınıflandırıcı örnek kod. (C++)&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-2037003113476740219?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/RelGvvV3Rbg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/2037003113476740219/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2010/10/naive-bayes-snflandrc-c.html#comment-form" title="1 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2037003113476740219?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2037003113476740219?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/RelGvvV3Rbg/naive-bayes-snflandrc-c.html" title="Naive Bayes Sınıflandırıcı. C++" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2010/10/naive-bayes-snflandrc-c.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQMSXw4fCp7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-8427245684992839636</id><published>2010-02-15T00:26:00.016+02:00</published><updated>2011-03-27T11:33:08.234+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:33:08.234+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="Optimizasyon" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><title>Zeki Optimizasyon Teknikleri - 3 (Genetik Algoritma)</title><content type="html">&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_SIJeFqYV1lQ/S3h4aPqBy-I/AAAAAAAABN4/OWLbo7CtfUY/s1600-h/dna.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_SIJeFqYV1lQ/S3h4aPqBy-I/AAAAAAAABN4/OWLbo7CtfUY/s320/dna.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Zeki Optimizasyon Teknikleri yazı dizimizin en son konusu olan  Genetik Algoritma, diğer algoritmaların iyi yönlerini birleştiren modern ve etkili bir optimizasyon tekniğidir. Probleme göre en başarılı optimizasyon yöntemi değişmekle beraber Genetik algoritma günümüzde hemen her tür probleme başarı ile uygulanmaktadır. &lt;a href="http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-1-hill.html"&gt;Hill Climbing&lt;/a&gt; gibi popülasyon tabanlı bir algoritmadır. Algoritmanın en önemli kısmı üretilen çözümü değerlendiren, fitness function olarak bilinen kısımdır.&lt;/div&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Genetik algoritma doğal seçilimden esinlenmiştir. Bu nedenle genetik algoritmada kullanılan terminoloji genetik ile alakalıdır. Algoritma ile alakalı yayınları ve çözümleri okurken kolaylık olması açısından genetik algoritma terminolojisini verelim.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Popülasyon: Çözüm adaylarından oluşan kümedir. Her birey geçerli bir çözüm olmakla birlikte değişik seviyeye sahiptir. Popülasyondaki tüm bireyler aynı şekilde kodlanmış olmalıdır. Probleme göre popülasyondaki birey sayısı büyük veya küçük tutulabilir. Her ikisinin de avantajları ve dezavantajları vardır. Genellikle popülasyondaki birey sayısına tecrübe ve/veya deneme yanılma yoluyla karar verilir.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;blockquote&gt;
Genetik algoritmada ileride anlatılacak tüm işlemler bir sonraki popülasyonu daha iyiye taşımaya yöneliktir.
&lt;/blockquote&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Kromozom: Popülasyon içerisindeki bireylerin(çözümlerin) her birine kromozom denir. Gerçek hayat problemlerinde genellikle çok sayıda değişkenin optimizasyonu yapılmak istenir. Bu durumda bir kromozom(çözüm) içerisinde pek çok değişken kodlanmış şekilde bulunur.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Gen: Kromozom içerisindeki anlamlı en küçük bilgidir. Çok değişkenli optimizasyon problemlerimizde değişkenlerin her biri gen olarak adlandırılır. (Binary olarak kodlanmış kromozomlarda bir bit gen değildir. Bir kaç bitin oluşturduğu bir değişken bir gen dir.)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Locus: Kromozom içinde genin bulunduğu konuma locus denir.

Jenerasyon(nesil): Popülasyonun bir andaki durumudur. Bir iterasyon sonrasında daha iyi bir popülasyon(jenerasyon) oluşturulması amaçlanmaktadır.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Eşleşme(Mating): Popülasyon içerisindeki kromozomların eşleşerek yeni bireyler(çözümler) oluşturma işlemidir. Yeni jenerasyona yeni oluşturulan çözümler aktarılır.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&amp;nbsp;Genetik algoritmada temel işlemler şu şekildedir.&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Bir kromozomda tüm çözümü gösterecek şekilde uygun kodlamaya karar verilmesi.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Başlangıç popülasyonunun oluşturulması. Rastgele veya tecrübe yardımıyla yapılabilir.&lt;/li&gt;
&lt;li&gt;Popülasyon içerisindeki kromozomların fitness function yardımıyla değerlendirilerek her birine kalite etiketi atanması.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Popülasyon içerisinde daha kaliteli kromozomlara daha çok şans vermek suretiyle rastgeleliği yönlendirerek eşleşme, mutasyon, elitizm gibi operatörler ile yeni bir jenerasyon oluşturulması.&lt;/li&gt;
&lt;li&gt;Bu işlemlere belirlenen iterasyon sayısına ulaşana kadar ve yahut çözüm istenen kalite ölçüsüne erişinceye kadar devam edilir. 

Yukarıdaki her adımın pek çok değişik uygulama yöntemi bulunmaktadır.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Genetik algoritma uygulaması kolay bir yöntem olmakla birlikte yukarıdaki adımları detaylıca açıklamayacağız. Genetik algoritmayı detaylarıyla öğrenmek istiyorsanız Zekai Şen hocamızın dilimizde çok güzel bir kitabı var.(Genetik Algoritmalar ve En İyileme Yöntemleri) &lt;a href="http://www.suvakfi.org.tr/kitap_detay.asp?id=38"&gt;Buradan&lt;/a&gt; ulaşabilirsiniz.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &lt;a href="http://derindelimavi.blogspot.com/"&gt;Bluekid&lt;/a&gt; abimizin iki adet çalışması var. Bunlardan bir tanesi bir-kelime bir-işlem yarışmasındaki bir işlem sorusun genetik algoritma ile çözülmesine yönelik. Bir diğeri ise 4 bilinmeyenli bir denklemin genetik algoritma ile sezgisel çözümü şeklinde.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;Linklerini verelim:&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp; 

&lt;a href="http://derindelimavi.blogspot.com/2007/03/genetik-metodla-4-bilinmiyenli-denklem.html"&gt;Genetik metodla 4 Bilinmiyenli Denklem Çözümü&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;
&lt;a href="http://derindelimavi.blogspot.com/2006/12/genetik-programlamayla-bir-ilem.html"&gt;Genetik Programlamayla Bir işlem&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Linklerdeki projelerde genetik algoritma için &lt;a href="http://fga.sourceforge.net/"&gt;FGA -Fast Genetic Algorithm&lt;/a&gt; kullanılmıştır. Kullanımı oldukça kolay ve etkili bir kütüphane olmasına rağmen kütüphane kullanmaya aşina değilseniz veya genetik algoritma kısmını kendiniz yazmak istiyorsanız:&lt;/div&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;a href="http://www.generation5.org/content/2003/gahelloworld.asp"&gt;http://www.generation5.org/content/2003/gahelloworld.asp&lt;/a&gt; adresinden aldığım aşağıdaki kod ile başlayabilirsiniz. 

Bu örnekte çözüm olarak "Hello world!" stringine ulaşılmaya çalışılıyor. Operatörler ve genetik algoritmanın kullanımı çok iyi. Bu kod üzerinden istediğiniz probleme yönelik değişiklikler yapabilirsiniz.&lt;/div&gt;
&lt;div style="overflow: auto;"&gt;
&lt;div class="csharpcode"&gt;
&lt;pre class="alt"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;blockquote&gt;
Bu yazının hazırlanmasında hocam Doç.Dr. M.Ali Akcayol' un Zeki Optimizasyon Teknikleri Dersi ders notları kullanılmıştır.&lt;/blockquote&gt;
&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;script src="https://gist.github.com/889024.js"&gt; &lt;/script&gt;
&lt;a href="https://gist.github.com/889024"&gt;Kod&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-8427245684992839636?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/Li7m4Hx0I4M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/8427245684992839636/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2010/02/zeki-optimizasyon-teknikleri-3-genetik.html#comment-form" title="0 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/8427245684992839636?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/8427245684992839636?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/Li7m4Hx0I4M/zeki-optimizasyon-teknikleri-3-genetik.html" title="Zeki Optimizasyon Teknikleri - 3 (Genetik Algoritma)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_SIJeFqYV1lQ/S3h4aPqBy-I/AAAAAAAABN4/OWLbo7CtfUY/s72-c/dna.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2010/02/zeki-optimizasyon-teknikleri-3-genetik.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIESHszfip7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-3083362434852055254</id><published>2009-10-22T21:16:00.025+03:00</published><updated>2011-03-27T11:35:09.586+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:35:09.586+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="Optimizasyon" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><title>Zeki Optimizasyon Teknikleri - 2 (Tavlama Benzetimi)</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_SIJeFqYV1lQ/SuCq-wNW1QI/AAAAAAAABLM/3OyYy1fcHi0/s1600-h/multipeak3D.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_SIJeFqYV1lQ/SuCq-wNW1QI/AAAAAAAABLM/3OyYy1fcHi0/s200/multipeak3D.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Optimizasyon algoritmalarımızdan ikincisi Simulated Annealing olarak ta bilinen tavlama benzetimi algoritması. İsmi Metalurji biliminden gelmektedir. Metallerin tavlanması işleminden esinlenerek ortaya çıktığı için bu ismi almıştır. Genellikle ayrık optimizasyon problemleri için kullanılır.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Yöntemden kabaca bahsetmek için &amp;nbsp;&lt;a href="http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-1-hill.html"&gt;Hill Climbing&lt;/a&gt; yöntemimizi hatırlayalım. Hill-Climbing yönteminde ilk çözüm üretmiş, bir komşu üreteci fonksiyonu ile ilk çözümümüze komşu olan yeni bir çözüm kümesi üretmiştik.*Bu yeni kümeyi kendi içerisinde değerlendirip en iyi elemanını seçmiştik. Eğer bu seçtiğimiz en iyi eleman bizim eski çözümümüzden daha iyi bir çözümse yeni çözümümüz olarak bu değeri kabul etmiştik. Ayrıca Hill-Climbing yönteminin kolay uygulanmasının yanında &amp;nbsp;kötü bir özelliği olarak local çözümlere takılma olarak belirtmiştik.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; Algoritmanın bu lokal çözümlere takılmasının nedeni bulduğumuz bir eğim doğrultusunda ilerlememiz, bu yönde çözümleri kısıtlamamızdır. Lokal çözüme doğru hızla ilerlerken çözüm kümesinin diğer kısımlarını göz ardı ederiz. Eğer şans eseri ilk çözüm üretecimiz başlangıç çözümünü global çözüme yakın bir bölgede üretirse muhtemelen global çözüme ulaşırız. Bundandır ki, Hill Climbing algoritması başlangıç noktasına çok bağımlıdır demiştik.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Hill Climbing algoritmamız üzerine bir takım modifikasyonlar yaptığımızı düşünelim. Yine ilk çözüm üretecimiz bir çözüm oluştursun, komşu çözüm üretecimiz komşu çözümler kümesini oluştursun, yine üretilen komşu çözüm kümesini kendi içerisinde değerlendirerek buradan en iyi çözümü seçelim. Klasik Hill Climbing algoritmamızda komşu çözüm kümesinden seçilen en iyi çözüm eğer eski çözümümüzden daha kötü ise bu değeri kullanmayıp elimizdeki çözümü saklıyorduk. Şimdi biraz daha insaflı davranıp komşu kümeden seçilen kötü çözüme bir şans verelim. Bu şans P olsun. Belkide verdiğimiz bu şans hatırına kötü çözüm bizi komşusu olan daha iyi çözümlere götürebilir. Hem böylece Hill-Climbing in local çözümlere takılıp kalma özelliğinden kurtulabiliriz. Eğer kötü çözümlere verdiğimiz seçilme şansı(olasılığı) P çalışma boyunca sabit kalırsa bu sefer tam güzel çözümlere doğru ilerlerken oradan oraya oradan oraya atlarız. Bu nedenle bu P olasılığının(iyi çözümü feda ederek yerine kötü çözümü kabul etme olasılığı) &amp;nbsp;dinamik olması gereklidir. Bu dinamiklik iterasyonla P nin azaltılması şeklinde(ve daha pek çok şekilde) yapılablir. Böylece problem çözümünün ilk kısımlarında çözüm bölgeleri arasında sıçrayış daha fazla olurken iterasyon sayımız artıp elde ettiğimiz çözümler &amp;nbsp;iyice güzelleştikçe 0 a yaklaşır. (Arama bölgemiz daralır.)&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;İşte yukarıda modifiye edilmiş bir Hill-Climbing algoritması gördük. Tavlama Benzetimi algoritmasının temel prensibi tam olarak budur. Kötü çözümü seçme olasılığı sistemli bir şekilde sıcaklıkla azaltılır. Sıcaklık iterasyona bağlı(genellikle düzgün veya logaritmik azalan) bir ifadedir.&lt;/div&gt;
&lt;blockquote style="text-align: justify;"&gt;
Tavlama benzetimi algoritmasının temel amacı çözüm uzayında aranmadık bölge bırakmamaktır.&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;Ayrıca Tavlama Benzetimi algoritmasında komşu çözüm kümesinin büyüklüğüde dinamik şekilde değiştirilebilir. (Probleme göre değişse de genel olarak çözümü çok fazla etkilememektedir) Bu şekilde bir kullanım benimsenirse yaygın kullanım küçük bir kümeyle başlayıp iterasyonla büyütmek şeklinde olur.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Sıcaklığın azaltılması, olasılık değerinin sıcaklıkla azaltılması, çözüm kümesinin değiştirilmesi için pek çok yöntem kullanılır.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Bunlara girmeden basit bir problemi tavlama benzetimi algoritması ile çözelim. Aşağıda C++ kodu çözüm olarak string şeklinde "VOLKANSALMA@BLOGSPOT@COM" dizisini oluşturmaya çalışmaktadır.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; Örnek &lt;a href="http://www.generation5.org/content/2003/gahelloworld.asp"&gt;bu sitedeki&lt;/a&gt;&amp;nbsp;genetik algoritma ile Hello! World yazısını oluşturma probleminden esinlenilmiştir. Çözümün kalitesini değerlendirmek için gerekli fonksiyon (Fitness function) linki verilen siteden direk alınmıştır. .&lt;/div&gt;
&lt;blockquote&gt;
&lt;span style="color: #80614d; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 17px; font-style: italic; line-height: 27px;"&gt;Bu yazının hazırlanmasında hocam&amp;nbsp;&lt;a href="http://w3.gazi.edu.tr/~akcayol/" style="background: inherit; background: inherit; color: #79a325; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;"&gt;&lt;span style="color: black; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: none;"&gt;Doç.Dr. M.Ali Akcayol&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;' un Zeki Optimizasyon Teknikleri Dersi ders notları kullanılmıştır.&lt;/span&gt;&lt;/blockquote&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;span style="font-size: small;"&gt;*Hill-Climbing için yazmış olduğum C++ &amp;nbsp;kod örneğinde bir yanlışlık yaptığımın farkına vardım. Aslında çözüm kümesi kendi içerisinde değerlendirilip en iyi eleman seçilmesi gerekirken, ben ilk bulduğum iyi çözüm ile mevcut çözümü değiştirdim. Sonrada diğer iterasyona geçtim. Bu yanlışlık daha güzel çözümleri kullanamamıza neden oldu. Böyle bir hata çözüme yakınsama hızımızı düşürür.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;script src="https://gist.github.com/889028.js"&gt;
 
&lt;/script&gt;
Programın şu şekilde bir çıktısı oluyor: (Yıldızlarla gösterilen bölgelerde bulunan çözüm daha kötü olmasına rağmen olasılık değerlendirmesini geçmiş, çözüm olarak seçilmiştir. )&lt;br /&gt;
&lt;br&gt;
&lt;script src="https://gist.github.com/889031.js"&gt;&lt;/script&gt;
&lt;a href="https://gist.github.com/889028"&gt;Kod&lt;/a&gt;&lt;br&gt;
&lt;a href="https://gist.github.com/889031"&gt;Output&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-3083362434852055254?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/MyQ5nbN8Akw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/3083362434852055254/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-2-tavlama.html#comment-form" title="0 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/3083362434852055254?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/3083362434852055254?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/MyQ5nbN8Akw/zeki-optimizasyon-teknikleri-2-tavlama.html" title="Zeki Optimizasyon Teknikleri - 2 (Tavlama Benzetimi)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_SIJeFqYV1lQ/SuCq-wNW1QI/AAAAAAAABLM/3OyYy1fcHi0/s72-c/multipeak3D.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-2-tavlama.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU8DRH8zfSp7ImA9WxNWGEs.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-2805971288547234474</id><published>2009-10-18T15:05:00.003+03:00</published><updated>2009-10-18T15:11:15.185+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-18T15:11:15.185+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><category scheme="http://www.blogger.com/atom/ns#" term="OpenCV" /><title>OpenCV 2.0 Windows .lib dosyaları?</title><content type="html">&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; OpenCV v2.0 kararlı sürüm yayınlandı. Pek çok güncelleme ve yeni fonksiyonlar içeriyor.(&lt;a href="http://opencv.willowgarage.com/wiki/OpenCV%20Change%20Logs"&gt;Neler Mesela?&lt;/a&gt;)&lt;br /&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;OpenCV yi windows ortamında visual studio ile kullanıyorsanız bir süprizle karşılaşabilirsiniz. Kurulumla birlikte
lib dosyaları gelmiyor. Bu dosyaları elde etmek için kaynak kodun isteğinize uygun konfigürasyon parametreleri ile 
derlenmesi gerekiyor.&lt;br /&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Derleme işlemine girmeden hazır olarak kullanmak isterseniz. Kendim için derlediğim libleri sizinle paylaşabilirim :)&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;a href="http://www.4shared.com/file/141479833/92d3350/OpenCVv20_VisualStudio.html"&gt;&lt;b&gt;Download OpenCV 2.0 lib,dll,include files for Visual Studio.&amp;nbsp;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;Derleme ve konfigürasyon işlemin nasıl yapıldığını öğrenmek isterseniz &lt;a href="http://derindelimavi.blogspot.com/2009/10/sitemli-opencv-20-kurulumu-install.html"&gt;bluekid &lt;/a&gt;abimize bakalım.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Bu dosyaları kullanarak nasıl opencv projesi oluşturacağımızı bilmiyorsak &lt;a href="http://opencv.willowgarage.com/wiki/VisualC%2B%2B"&gt;buraya &lt;/a&gt;bakalım.(Visual Studio,Code::Blocks)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Baktınız ama işin içinden çıkamadıysanız yorum şeklinde sorun. Cevap vermeye çalışayım.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="font-size: small;"&gt;&amp;nbsp;*Kütüphaneler Visual Studio Prof. Editionda OpenMP desteği ile derlenmiştir fakat test edilmemiştir.&lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-2805971288547234474?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/Quw6UAQTtT8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/2805971288547234474/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/10/opencv-20-windows-lib-dosyalar.html#comment-form" title="3 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2805971288547234474?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2805971288547234474?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/Quw6UAQTtT8/opencv-20-windows-lib-dosyalar.html" title="OpenCV 2.0 Windows .lib dosyaları?" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/10/opencv-20-windows-lib-dosyalar.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIDSHc8cSp7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-146785331444521928</id><published>2009-10-08T00:09:00.007+03:00</published><updated>2011-03-27T11:36:19.979+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:36:19.979+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="Optimizasyon" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><title>Zeki Optimizasyon Teknikleri - 1 (Hill Climbing)</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_SIJeFqYV1lQ/Ss0DcWxIa5I/AAAAAAAABK8/2Fn5FV8tRdY/s1600-h/hills.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_SIJeFqYV1lQ/Ss0DcWxIa5I/AAAAAAAABK8/2Fn5FV8tRdY/s320/hills.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Optimizasyon Algoritmalarımızdan ilki Stochastic(içerisinde rastgelelik bulunan) tekniklerden birisi olan  Hill Climbing algoritması. Bu yöntem pek çok uygulamada uygulama kolaylığı nedeniyle seçilebilir.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Optimizasyonu istenen problemin gösterimi, elde olan çözüme göre komşu çözüm üreteci, ilk çözüm üreteci ve çözüm değerlendirme fonksiyonu uygulama için yeterli olmaktadır.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp;Algoritmanın dezavantajları olarak yerel çözümlere takılabilmesini ve &amp;nbsp;çözümün seçilen başlangıç noktasına çok bağlı olmasını sayabiliriz.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&amp;nbsp;&amp;nbsp; Hill Climbing yöntemden bahsedersek:&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;İlk olarak başlangıç çözümü üretilir ve bu çözüm eniyi çözüm olarak kabul edilir. (Bu çözümün üretimi probleme göre rastgele olabileceği gibi problem konusunda uzman görüşü veya daha önce yapılmış çalışmalar yardımıyla da olabilir.)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; Daha sonra bu probleme komşu bir çözüm kümesi üretilir.(Değişik sayıda olabilir.) Çözüm kümesi elemanları değerlendirilir. Çözüm kümesinin en iyi elemanı eğer bir önceki adımdaki eniyi çözümden daha iyi ise,  eniyi çözüm güncellenir.

Sonrasında en iyi çözüme göre yeni komşular üretilir ve iteratif olarak devam edilir. Belirli iterasyon sayısına ulaşıldığında, yeterli bir çözüm elde edildiğinde veya artık çözümler değişmediğinde iterasyon sonlandırılır.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Hill Climbing yöntemini kullanarak derste geçen bir basit problem için C++ uygulama kodu hazırladım.

Problem: bd 30 karakterlik bir binary dizisi olmak üzere  f(bd) = |20 * dizideki_bir_sayisi(bd) - 100|  fonksiyonunu max yapan bd değeri? (Problemimizin çözümünün "111111111111111111111111111111" olduğu rahatça görülüyor.)&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;
Bu yazının hazırlanmasında hocam&amp;nbsp;&lt;a href="http://w3.gazi.edu.tr/~akcayol/"&gt;&lt;span style="color: black;"&gt;&lt;span style="text-decoration: none;"&gt;Doç.Dr. M.Ali Akcayol&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;' un Zeki Optimizasyon Teknikleri Dersi ders notları kullanılmıştır.&lt;/blockquote&gt;
&lt;br&gt;&lt;br&gt;
&lt;script src="https://gist.github.com/889070.js"&gt; &lt;/script&gt;
&lt;a href="https://gist.github.com/889070"&gt;Kod&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-146785331444521928?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/0O82223uKzc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/146785331444521928/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-1-hill.html#comment-form" title="1 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/146785331444521928?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/146785331444521928?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/0O82223uKzc/zeki-optimizasyon-teknikleri-1-hill.html" title="Zeki Optimizasyon Teknikleri - 1 (Hill Climbing)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_SIJeFqYV1lQ/Ss0DcWxIa5I/AAAAAAAABK8/2Fn5FV8tRdY/s72-c/hills.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/10/zeki-optimizasyon-teknikleri-1-hill.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkEAQ34yfSp7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-522054097824908678</id><published>2009-08-23T20:46:00.004+03:00</published><updated>2011-03-27T11:37:22.095+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:37:22.095+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="SVM" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><category scheme="http://www.blogger.com/atom/ns#" term="OpenCV" /><title>OpenCV altında SVM kullanmak. (OpenCV SVM Sample Code)</title><content type="html">Bilindiği gibi OpenCV kütüphanesinin machine learning modülünde &lt;a href="http://www.csie.ntu.edu.tw/~cjlin/libsvm/"&gt;libsvm&lt;/a&gt; wraplenmiştir. Böylece biz OpenCV kullanıcıları harici bir kütüphane kullanmadan SVM(Support Vector Machines)  i uygulamalarımızda kullanabiliriz.  Aşağıda bu konuda bir örnek hazırlamaya çalıştım. Yorumlarda açıklamalar mevcuttur.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
&lt;script src="https://gist.github.com/889071.js"&gt;&lt;/script&gt;&lt;br&gt;
&lt;a href="https://gist.github.com/889071"&gt;Kod&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-522054097824908678?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/nxBudZ3f1Cs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/522054097824908678/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/08/opencv-altnda-svm-kullanmak-opencv-svm.html#comment-form" title="10 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/522054097824908678?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/522054097824908678?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/nxBudZ3f1Cs/opencv-altnda-svm-kullanmak-opencv-svm.html" title="OpenCV altında SVM kullanmak. (OpenCV SVM Sample Code)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>10</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/08/opencv-altnda-svm-kullanmak-opencv-svm.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AEQX4ycCp7ImA9WhZSEkw.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-3246931833410701379</id><published>2009-05-01T21:48:00.015+03:00</published><updated>2011-03-27T11:55:00.098+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-27T11:55:00.098+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><title>Programınız için performans ipuçları.(x86)</title><content type="html">Genel amaçlı üretilmiş mimariler üzerinde sinyal işleme, görüntü işleme gibi ağır matematiksel işlemler gerektiren uygulamalar yapıyorsanız optimizasyon çok önemli bir hale gelir.

Bilgisayar tasarımı çalışırken bir zamanlar Türkiye Görüntü İşleme &lt;a href="http://groups.google.com/group/goruntu-isleme?hl=tr"&gt;mail grubuna&lt;/a&gt; gönderilen bir yazı aklıma geldi. Faydalı bir yazı olduğunu düşündüm ve blogumda paylaşmak  istedim. Yazı 17 Şubat 2008 tarihinde Mustafa Sakar tarafından &lt;a href="http://www.blogger.com/www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22007.pdf"&gt;AMD x86 Code Optimization Guide&lt;/a&gt; tan yararlanılarak yazılmış.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;Özeti biraz daha özetleyip bilgimiz olan yerlere burnumuzu sokarsak ;)
&lt;br&gt;
&lt;script src="https://gist.github.com/889094.js"&gt; &lt;/script&gt;
&lt;a href="https://gist.github.com/889094"&gt;Kod&lt;/a&gt;&lt;br&gt;

***Bazı maddeleri atladım. En önemli gördüklerimi seçmek istedim.
Görüntü işleme ile uğraşıyor performans sıkıntısı yaşıyorsanız hem de çift çekirdekli işlemciniz varsa ilk işiniz bazı işleri paralel yaptırmak olsun. Bluekid abimize link verelim.
&lt;a href="http://derindelimavi.blogspot.com/2008/09/openmp.html"&gt;OpenMP genel.&lt;/a&gt; &lt;a href="http://derindelimavi.blogspot.com/2008/09/openmp-ve-opencv-ile-kenar-bulma.html"&gt;OpenMP uygulama.&lt;/a&gt;

İmkanınız varsa güncel compiler lar kullanın. Yeni compilerla yeni donanımlar için en iyi optimizasyon seçenekleri sağlarlar. Performans bakımından aynı mfc uygulamasının MS un VC++ 9 ile derlenmesi ile VC++ 6 ile derlenmesi arasında inanılmaz farklar gözlenmiştir.

$$$* Ayrıca intel işlemci kullanıyorsanız intelin kendi compiler ı için vaatleri büyük. (Denenmemiştir.)&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-3246931833410701379?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/RK_peolkuGA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/3246931833410701379/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/05/programnz-icin-performans-ipuclarx86.html#comment-form" title="5 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/3246931833410701379?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/3246931833410701379?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/RK_peolkuGA/programnz-icin-performans-ipuclarx86.html" title="Programınız için performans ipuçları.(x86)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>5</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/05/programnz-icin-performans-ipuclarx86.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkINSXk_fSp7ImA9WxNSFEU.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-2758055668752063760</id><published>2009-04-25T14:37:00.011+03:00</published><updated>2009-08-28T20:29:58.745+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-28T20:29:58.745+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="minix3" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><title>minix3 macerası - 2 (kurulum)</title><content type="html">Minix3 için gerekli sistem gereksinimleri şöyle.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_SIJeFqYV1lQ/SfMB8NCoRVI/AAAAAAAAAqg/E6stAM_mpuE/s1600-h/m-logo.gif"&gt;&lt;img style="cursor: pointer; width: 52px; height: 60px;" src="http://2.bp.blogspot.com/_SIJeFqYV1lQ/SfMB8NCoRVI/AAAAAAAAAqg/E6stAM_mpuE/s200/m-logo.gif" alt="" id="BLOGGER_PHOTO_ID_5328604917913896274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;386, 486, or Pentium CPU.&lt;/li&gt;&lt;li&gt;16 veya 8 MB ram.&lt;/li&gt;&lt;li&gt;Kernel için 50 mB. CD deki diğer paketlerin hepsini kuracaksanın 600 mB harddisk alanı.&lt;/li&gt;&lt;li&gt;Boş bir CD iso yun yazmak için. Flashtan boot edebilen bir makinanız varsa flash diskten de kurulum yapabilirsiniz(Ben CD den yaptım.)&lt;/li&gt;&lt;/ul&gt;VMware, VirtualPC gibi simulatörler üzerinede kurulum yapılabiliyor ama biliyorsunuz bizi bozar onlar.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Kurulum Adımları:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Maceraya 00.40 civarında başladım. Minix3 ün resmi &lt;a href="http://www.minix3.org/download/"&gt;download adresinden&lt;/a&gt;  IDE-3.1.2a.zip   (298 MB) zip dosyasını indirdim. Bu dosya indiriledururken içerisinde kurulumla alakalı bilgiler içeren &lt;a href="http://www.minix3.org/doc/A-312.pdf"&gt;pdf'i&lt;/a&gt; okumakta yarar var.&lt;/li&gt;&lt;li&gt;Belgede kurulum sırasında ethernet kartının chip seti ile alakalı bilgiler sorulacağı yazıyor bu nedenle ethernet kartımın modelini SURECOM EP-320 X-V/VI 32 Bit olarak not ediyorum bi kenara. (Kartınızın modelini bilmiyorsanız belirtmeden de geçebiliyorsunuz. ) &lt;/li&gt;&lt;li&gt;Bu sırada iso muş inmiş. Sıkıştırılmış olduğundan windows ortamındaki favori open source  zip açıcımız &lt;a href="http://www.7-zip.org/"&gt;7zip&lt;/a&gt; ile bir güzel açıyoruz.&lt;/li&gt;&lt;li&gt;Açılan dosyayı windows ortamının vazgeçilmez cd yazma programlarından &lt;a href="http://www.imgburn.com/"&gt;ImgBurn &lt;/a&gt;programı(2 mb lık efsane)  ile cd ye yazıyoruz. 2$ bağışta bulunulabilir ImgBurn un sitesine girmişken ;)&lt;/li&gt;&lt;li&gt;Sonra cd mizi sisteme kuracağımız makinaya takıyoruz. Bios tan cd den boot etmesi için ayarı yapıyoruz. (Saat ~02.00)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Ben P2 400, 128 MB makina üzerine üzerine kurulum yaptım. Hardiskte yedeklemem gereken hiç bir şey olmadığından kurulumun otomatik olarak yaptığı partition yapısını kullandım. Bu nedenle partition lama işlemlerini çok iyi bilemeyeceğim. Siz eğer sistemininiz yanına kurulum yapmak isterseniz &lt;a href="http://www.minix3.org/doc/partitions.html"&gt;bu&lt;/a&gt; dökümanı okuyun derim.&lt;/li&gt;&lt;li&gt;Kurulum başladığında önce bir açıklama geliyor. Sonra klavye tipini soruyor. Enter a basarak default değeri seçebiliyorsunuz. (ing klavye diziliminde kullanacağız.) Ethernet kartınızın chipseti hakkında bilgi istiyor. 0 seçerek direk geçebilirsiniz.(no networking) Veya bunlar dışında (7) diyip daha sonra configure etmek için bırakabilirsiniz. Ben burada kendi ethernet kartı bilgilerimi göremediğime şaşırmadım çünkü windows bile tanımıyor. Her kurulumda driver arıyorum. Realtek vs çok kullanılan chipsetler mevcut.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Nasıl bir kurulum yapmak istediğimizi soruyor. Minimal kurulum veya tam kurulum yapabiliriz. Ben tam kurulum için "F" seçeneğini  kullandım.&lt;/li&gt;&lt;li&gt;Partitioning işlemlerine sıra geldi ben direk tek disk üzerine tek partionda kurulum yapmak istediğimden default seçeneklerle ilerliyorum. disk number "0" enter region number "0" enter.&lt;/li&gt;&lt;li&gt;home klasoru için kaç mb yer ayırmak istediğimizi soruyor. 200 mb değer verdim.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Kilobyte cinsinden blocksize ı soruyor. Default olan 4Kb ı seçtim. Daha kısıtlı kaynaklar için değişik kb lar seçilebiliyor.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Daha sonra disk yüzeyinde bad sector taramasına başlıyor. İkinci adımda dayanamadım(epey uzun sürecekti. ilerleme grafiğine bakılırsa) ctrl+c ile işlem tamamlanmadan devam ettim.&lt;/li&gt;&lt;li&gt;Tüm işlemler 10 dk civarı sürdü. Ve sistemimiz hazır oldu. shutdown diyerek sistemden logout oluyoruz.(çünkü live cd üzerinden çalışıyor)  ve boot komutu ile sistemi yüklediğimiz yerden boot ediyoruz. Komut "boot dXp0" şeklinde. Burada X biosta görülen sürücü numarası.(Kaçıncı disk olduğu.) p den sonrasıda partition. Bizim kurulumumuz için komut "boot d0p0" şeklinde...&lt;/li&gt;&lt;li&gt;shutdowndan sonra konsole tekrar düşüyoruz yukarıdaki şekilde boot komutunu verdiğimizde login: root, pass: ""(hiç bir şey yazmadan enter) şeklinde login oluyoruz. Sistemi unix komutları ile gezebiliriz. Bu esnada. Eğer paket kurmak istersek packman isminde paket yönetici var. packman komutu ile başlatabiliyoruz.&lt;/li&gt;&lt;li&gt;packman ile internetten veya cd den paket kurulumu yapabiliriz. cd cd sürücüde iken packman komurunu verdiğimizde cd deki paketleri tarıyor 1 seçeneği ile tüm paketleri kurabiliriz. 2 ile tüm paketler + source kodlarını kurabiliriz. 3 ile istediğimiz paketi seçebiliriz. 4 seçeneği ile ise packmanden çıkabiliyoruz.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Benim ethernet kartım tanınmadığı için kurulum cdsi ile gelen paketleri kurdum. Bu aşama biraz uzun sürebiliyor. (İlk aşamada sadece binary leri kurmanızı tavsiye  ederim.) 30-45 dakika civarı sürebilir.  Kurulum sırasında sistem tepkisiz görünebilir hemen resetlemeyin.(nede olsa yüksek kararlı sistem kullanıyoruz ;) ) Kurulum tamamlansın. Devamı inşallah sonraki yazıya.  &lt;/li&gt;&lt;/ul&gt;*Biraz aksilikler çıktı ama sabah 06.00 civarında xwindowu gördüm. Yazının devamı gelecek. It's time to study. ;)&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-2758055668752063760?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/dHgQ5hh1TPY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/2758055668752063760/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/04/minix3-maceras-2-kurulum.html#comment-form" title="1 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2758055668752063760?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2758055668752063760?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/dHgQ5hh1TPY/minix3-maceras-2-kurulum.html" title="minix3 macerası - 2 (kurulum)" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_SIJeFqYV1lQ/SfMB8NCoRVI/AAAAAAAAAqg/E6stAM_mpuE/s72-c/m-logo.gif" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/04/minix3-maceras-2-kurulum.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkACQXg6fip7ImA9WxNSFEU.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-7523883995776268529</id><published>2009-04-25T06:16:00.012+03:00</published><updated>2009-08-28T20:32:40.616+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-28T20:32:40.616+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="minix3" /><category scheme="http://www.blogger.com/atom/ns#" term="embedded" /><title>minix3 macerası - 1</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SIJeFqYV1lQ/SfL0k1MfzNI/AAAAAAAAAqQ/mqCFEePWm2A/s1600-h/logo.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 118px; height: 74px;" src="http://3.bp.blogspot.com/_SIJeFqYV1lQ/SfL0k1MfzNI/AAAAAAAAAqQ/mqCFEePWm2A/s200/logo.gif" alt="" id="BLOGGER_PHOTO_ID_5328590222724680914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Uzun bir  zamandır görüntü işleme uygulamaları geliştirip çalıştırabileceğim hızlı bir şekilde açılıp kapanabilen ama üzerinde  arayüz uygulayabileceğim gömülü  bir dağıtım bakıyordum.&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;Kendisinden çok şey öğrendiğimiz &lt;a href="http://derindelimavi.blogspot.com/"&gt;Bluekid &lt;/a&gt;abimiz sağolsun minix3 ü önerdi. Minix3 tam  aradığım özelliklere sahip ayrıca üzerinde FLTK çalışabiliyor. ;)&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.minix3.org/"&gt;Minix3 ün sitesinde&lt;/a&gt; sistemin hedef alanları olarak şunlar gösteriliyor.&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Yüksek derecede kararlılık (reliability) istenen uygulamalarda.&lt;/li&gt;&lt;li&gt;Tek-chip, küçük ram e sahip, düşük güç tüketen cihazlar vs.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Embedded sistemler. (camera, cep telefonu vs.).&lt;/li&gt;&lt;li&gt;GPL lisansının çok kısıtlayıcı olduğu uygulamalar.(minix3 BSD lisansına sahiptir.)&lt;/li&gt;&lt;li&gt;Eğitim.(Üniversitelerde Operating System dersleri için.)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Linuxun gelişimini takip edememiş birisi olarak hep linux kerneli çok karmaşık,  linux configurasyonu zor gelir(ya da gözümde büyütüyorum.) Uzun zamandır değişik linux dağıtımlar kullansamda alt seviyelere hiç inemedim.&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;Minix3 dağıtımının bir güzel özelliği de bu. Henüz bakmadım ama ~5000 satırlık bir kernel kodu varmış. Üzerinde çalıştırılabilinecek kütüphaneler ise bir hayli fazla. &lt;a href="http://www.minix3.org/software/"&gt;Bknz.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;a href="http://www.minix3.org/doc/screenies.html"&gt;Buradan&lt;/a&gt; screenshot lara göz atabilirsiniz.&lt;br /&gt;Bir ayda yaklaşık 12000 kişi iso dosyasını siteden indirip kurulum yapıyormuş.&lt;a href="http://www.minix3.org/soc-2009/"&gt;Buranın&lt;/a&gt; yalancısıyım.&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;Ben de evdeki emektar makinayı(Intel P2 400,256 Mb Ram) bu sistemden mahrum bırakmak istemedim. Bir gece uğraşarak xwindow u görmeyi başardım.  Gerçekten sisteme çok içim ısındığını söylemeliyim. Keşke derslerden projelerden biraz daha vakit olsada doya doya kurcalayabilsem. Uzun bir süre makinada kalacak gibi  görülüyor. Üzerinde önce fltk yı çalıştırıp basit  uygulamalar yapmak sonrada opencv çalıştırmak gibi düşüncelerim var.&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;* Yalnız sistemde floating point donanımsal olarak desteklenmiyormuş. Bu iş nasıl etkiler bilemiyorum. Beraber görelim..&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-7523883995776268529?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/nKHJn0lK67A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/7523883995776268529/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/04/minix3-maceras-1.html#comment-form" title="1 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/7523883995776268529?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/7523883995776268529?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/nKHJn0lK67A/minix3-maceras-1.html" title="minix3 macerası - 1" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_SIJeFqYV1lQ/SfL0k1MfzNI/AAAAAAAAAqQ/mqCFEePWm2A/s72-c/logo.gif" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/04/minix3-maceras-1.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQERHo7fyp7ImA9WxVVGUg.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-2224848980308484168</id><published>2009-03-13T15:30:00.005+02:00</published><updated>2009-03-13T16:08:25.407+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-13T16:08:25.407+02:00</app:edited><title>x86 --&gt; MIPS Cross Derleme</title><content type="html">&lt;ul&gt;&lt;li&gt;MIPS RISC yapısına sahip bir mikroişlemci mimarisidir.Karşılaştırmak ne kadar uygun olur bilmiyorum ama  komut seti Intel x86 komut setine göre oldukça temiz ve basit. Bu tasarım avantajından dolayı üniversitelerdeki bilgisayar mimarisi derslerinde genellikle MIPS mimarisi okutulur.(&lt;a href="http://tr.wikipedia.org/wiki/MIPS_mimarisi"&gt;vikipedi&lt;/a&gt;). Benim yeni okulumda da öyle..&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;   Intel x86 işlemcili makinam üzerinde bir C kodunu derleyip MIPS assembly si elde etmem gerekiyordu. Gcc ile target mimari belirtilebildiğini biliyordum, deneyince bu kadar kolay olmadığını gördüm. Bu işlemi yapabilmek için gcc nin kaynak kodunu tekrardan özel parametrelerle derlemem gerekiyormuş. (ubuntu'da başarılı olamadım...)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;    Daha sonra aramalarıma devam ederken princeton uni. den "lcc" isimli bir cross compiler buldum. (&lt;a href="http://www.cs.princeton.edu/software/lcc/"&gt;http://www.cs.princeton.edu/software/lcc/&lt;/a&gt;) Windows ve linux versiyonları mevcut. Ben windows versiyonunu kullandım. Gayet kullanışlı. MIPSR3000 için little endian ve big endian derleme yapabiliyor. (ALPHA, SPARC ve Intel x86 için de yapabiliyormuş.)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;   Microsoft VC++ 4 embedded  da Microsoftun artık ücretsiz olarak dağıttığı çok değişik mimariler için derleme yapabileceğimiz bir araç. MIPS asm side üretiyor.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;*SPIM ide atlamayalım. MIPS32 assembly sini simule etmek için harika bir araç. Windows,Linux, Unix,MacOS altında çalışıyor. (&lt;a href="http://pages.cs.wisc.edu/%7Elarus/spim.html"&gt;http://pages.cs.wisc.edu/~larus/spim.html&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-2224848980308484168?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/Vz7Kxer_dQk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/2224848980308484168/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2009/03/x86-mips-cross-derleme.html#comment-form" title="0 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2224848980308484168?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/2224848980308484168?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/Vz7Kxer_dQk/x86-mips-cross-derleme.html" title="x86 --&gt; MIPS Cross Derleme" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2009/03/x86-mips-cross-derleme.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYCRXwyfSp7ImA9WxdWFkk.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-590341908701203867</id><published>2008-07-10T00:36:00.002+03:00</published><updated>2008-07-10T00:49:24.295+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-10T00:49:24.295+03:00</app:edited><title>Dalgacık.</title><content type="html">&lt;ul&gt;&lt;li&gt;...Foton, kütlesi 0 olan; saniyede 300 000 km hızla giden en küçük dalga/parçacık tır. Gerçek cisim tanecikleri de ışık gibi aynı temele dayanıyor. Gezegenleri, yıldızları ve galaksileri oluşturan madde, enerji dalgalarından üretilen taneciklerdir.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Durağan görünen bedenimizin temelinde, sayısız foton süper hızla akış halindedir.&lt;span style="font-weight: bold;"&gt; Bedenimiz ışık hızında gerçekleşen bir dalga akışıdır.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Vücudumuz kuantum dalgalarından örülen taneciklerden, onlardan örülü atomlardan, onlardan örülü moleküllerden veonlardan örülü hücrelerden yapılmıştır. Işık hızında fotondan örülen tanecik yavaşlar; onlardan örülen atom daha da yavaşlar. Böylece örgü elementleri kayalara, kıtalara, gezegenlere, galaksilere ulaşır. &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Yerinde duruyor gibi görülen her madde, bedenin derinlerinde baş döndürücü titreşimleri, fırtınaları, uçuşmaları gizlemektedir.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Maddenin aslı, süper hızlı enerji dalgalarıdır.&lt;/span&gt; Madde aslında enerjidir; ama, ilginçtir ki enerjinin maddi vücudu yoktur. Sobanızda yaktığınız odunlar kül olup havaya uçar. Kütlesi enerjiye yani evinizdeki maddenin atomlarında yaşanan titreşimine/ısıya dönüşür.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Odun yanarak yok olur ; karşılığında sadece çevresindeki maddeleri titreştirir.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;... &lt;span style="font-weight: bold;"&gt;Evrenin tüm enerjisi vücutsuz bir zerreye sıkışabilir. &lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;                                                                                                Dr. Muhammed Bozdağ. 2005&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-590341908701203867?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/lNWVd-QGRqo" height="1" width="1"/&gt;</content><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/590341908701203867?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/590341908701203867?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/lNWVd-QGRqo/dalgack.html" title="Dalgacık." /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><feedburner:origLink>http://volkansalma.blogspot.com/2008/07/dalgack.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIHQHYyeip7ImA9WxdRF0g.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-5726085893726117228</id><published>2008-06-06T16:04:00.001+03:00</published><updated>2008-06-06T16:05:31.892+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-06T16:05:31.892+03:00</app:edited><title>Anten Temel - 1 Empedans Uygunlaştırma</title><content type="html">&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Anten teorisi finalini de atlattığımıza&amp;#160; g&amp;#246;re işin temel pratiğe d&amp;#246;n&amp;#252;k eğlenceli kısımları ile biraz ilgilenelim. Eski dergileri karıştırırken Circuit Cellar Şubat 2008 sayısında Antenna Technology 101 başlıklı bir yazı ile karşılaştım. Olduk&amp;#231;a g&amp;#252;zel bir makale. Bahsettiğim sayıyı ayrıca Elektronik m&amp;#252;h. ile alakalı onlarca se&amp;#231;me pdf e &lt;a href="http://ali-almukhtar.blogspot.com" target="_blank"&gt;buradan&lt;/a&gt; ulaşabilirsiniz.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Şimdi biraz &amp;#231;eviri biraz yorum bazı kavramları a&amp;#231;ıklamaya &amp;#231;alışalım. &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Empedans Uygunlaştırma: Empedans uygunlaştırma pek &amp;#231;ok elektronik uygulamada olduğu gibi anten sistemlerinde de temel kavramlardan biridir. Basit bir şekilde a&amp;#231;ıklayacak olursak; Pil ile &amp;#231;alışan bir diren&amp;#231;li ısıtıcımız olsun :) Bu ısıtıcımızın direnci ısıtıcıdan maksimum g&amp;#252;&amp;#231; alabilmek i&amp;#231;in acaba nasıl se&amp;#231;ilmelidir. &amp;#199;ok k&amp;#252;&amp;#231;&amp;#252;k bir diren&amp;#231; &amp;#252;zerinden &amp;#231;ok b&amp;#252;y&amp;#252;k bir akım ge&amp;#231;er ancak &amp;#252;zerinde d&amp;#252;şen gerilim az olacağından alabileceğimiz g&amp;#252;&amp;#231; V*I dan olduk&amp;#231;a k&amp;#252;&amp;#231;&amp;#252;k olacaktır. B&amp;#252;y&amp;#252;k bir diren&amp;#231; se&amp;#231;ildiğinde &amp;#252;zerinde g&amp;#252;şen gerilim olduk&amp;#231;a b&amp;#252;y&amp;#252;k olmasına rağmen akım k&amp;#252;&amp;#231;&amp;#252;lecek. En uygunu optimum noktada bir diren&amp;#231; se&amp;#231;mektir. B&amp;#246;yle bir uygulama i&amp;#231;in se&amp;#231;ilmesi gereken diren&amp;#231; pilimizin i&amp;#231; direncine eşit bir ısıtıcı direnci olmalıdır. Devre teorisi dersi alan arkadaşların maximum g&amp;#252;&amp;#231; transferi teoremi bunu ifade ediyor. &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Yukarıda DC i&amp;#231;in a&amp;#231;ıkladığımız kurallar bazı değişikliklerle AC i&amp;#231;in de ge&amp;#231;erlidir. AC i&amp;#231;in empedans reel ohmik diren&amp;#231; ve imajiner reaktans şeklinde g&amp;#246;sterilir. Eğer devremiz kapasitif ise reaktans - değer ind&amp;#252;ktif ise + değerler alacaktır.&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;Kaynak empedansımızı Zs = Rs + j Xs şeklinde g&amp;#246;sterebiliriz. Yukarıda DC ısıtıcı &amp;#246;rneğinde olduğu gibi bu şekilde bir kaynaktan maksimum g&amp;#252;c&amp;#252; transfer edebilmemiz i&amp;#231;in y&amp;#252;k&amp;#252;m&amp;#252;z&amp;#252;n empedansınında sadece ohmik kısımdan oluşmaması, sanal ksmının da olması gerekir. Değeri ise kaynak empedansının kompleks eşleniği şeklindedir.&amp;#160; Yani reaktans kısım ters işaretli olmalıdır. Kaynak end&amp;#252;ktif ise y&amp;#252;k kapasitif, kapasitif ise y&amp;#252;k end&amp;#252;ktif olmalıdır. Burada kaynağımızın kompleks bir değerde olduğunu bu şekilde en y&amp;#252;ksek g&amp;#252;c&amp;#252; alabilmek i&amp;#231;in bağlanabilecek y&amp;#252;k&amp;#252; belirledik fakat pratikte y&amp;#252;k&amp;#252;m&amp;#252;z ve kaynak sabit bir karakteristik g&amp;#246;sterir en uygun verimi alabilmek i&amp;#231;in bağlantı noktasında eşleştirme yaparız. End&amp;#252;ktif bir y&amp;#252;k i&amp;#231;in (&amp;#246;r motor) hatta bir karşı reaktans yani kapasite, kapasitif bir y&amp;#252;k i&amp;#231;in ise hatta bir end&amp;#252;ktans bağlayarak reaktif kısmı eşleştiririz. Ohmik kısım i&amp;#231;in ise genellikle empedans uygunlaştırıcı transformat&amp;#246;r kullanılır.&amp;#160; Bu işlem empedans uygunlaştırma oalrak bilinir. Anten sistemlerinde empedans frekansada bağlı olarak değiştiğinden alıancak veya yayın yapılacak frekansa uygun olarak dizayn yapılması da gereklidir.&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160; İnşallah sonraki yazımızda bunları grafik &amp;#252;zerinde inceler ve temel anten kavramlarına devam ederiz. Belkide yazıların sonunda wireless ağlara uzaktan bağlanabileceğimiz bir el yapımı anten yaparız :) &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-5726085893726117228?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/IUY0vD3HXbQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/5726085893726117228/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2008/06/anten-temel-1-empedans-uygunlatrma.html#comment-form" title="0 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/5726085893726117228?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/5726085893726117228?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/IUY0vD3HXbQ/anten-temel-1-empedans-uygunlatrma.html" title="Anten Temel - 1 Empedans Uygunlaştırma" /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2008/06/anten-temel-1-empedans-uygunlatrma.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYGR309eCp7ImA9WxdXEkg.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-6272503072366742501</id><published>2008-03-12T02:48:00.009+02:00</published><updated>2008-06-24T00:55:26.360+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-24T00:55:26.360+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Programlama" /><category scheme="http://www.blogger.com/atom/ns#" term="C++" /><category scheme="http://www.blogger.com/atom/ns#" term="Curl" /><title>C++ ile curl e giriş.</title><content type="html">&lt;span&gt;Curl u uzun zamandır denemek istiyorum. Ancak bugün bir şeyler elde edebildim.&lt;br /&gt;&lt;br /&gt;Konuya yabancı olanlar için  curl http requestler gönderebildiğimiz bir komut satırı programı. libCurl ise curl un platformdan bağımsız kütüphanesi. Çok daha güzel anlatımı ise şöyle :)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;libcurl is a free and easy-to-use client-side URL transfer library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos4), file transfer resume, http proxy tunneling and more!&lt;/blockquote&gt;&lt;br /&gt;Aklıma gelen bazı uygulama alanları..&lt;br /&gt;Console uygulamamızdan bir sayfadan veri çekebiliriz, kendi rss reader ımızı yazabiliriz. Mailimize login olup yeni ileti var mı kontrol edebiliriz.Programımızı weble ilişkilendirebiliz. Yazılım güvenliği konusunda kullanılabilir. Tabi yaramaz işlerde kullanmaya da oldukça uygun...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://curl.haxx.se/docs/copyright.html"&gt;Burada&lt;/a&gt; anlatıldığına göre MIT/X  türevi bir lisansa sahip. açık kaynak kodlu bir proje ticari uygulamalarda da gayet güzel kullanılabiliyor.&lt;br /&gt;&lt;br /&gt;Yukarıda saydığım uygulamalar belki .net veya başka RAD(delphi, cbuilder, vb) ürünlerini kullanarak çok daha kolay şekilde gerçekleştirilebilir ama bildiğim kadarıyla kütüphane c/c++ ve php dünyasında pek yaygın.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;UYGULAMA&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt; Kütüphanenin resmi kaynağı  &lt;a href="http://curl.haxx.se/download.html"&gt;burası.&lt;/a&gt; Pek çok işletim sistemi için değişik opsiyonlarla derlenmiş kütüphane dosyaları bulunabilir. Ben ms vc++ 6 ile denediğim derleme denemelerimde başarılı olamadım. Hem de hazır proje dosyası şeklinde olmasına rağmen!! Uygulamanın pek çok bağımlılığı var  ve çoğu ağ teknolojileri ile alakalı benim yabancı olduğum konulular.&lt;br /&gt;&lt;br /&gt;Sizde aynı durumdaysanız &lt;a href="http://my.guardpuppy.com/libcurl-7.15.1-msvc-win32-ssl-0.9.8a-zlib-1.2.3.zip"&gt;libcurl-7.15.1-msvc-win32-ssl-0.9.8a-zlib-1.2.3.zip&lt;/a&gt;&lt;br /&gt;paketini önerebilirim. Paket içerisinde 32 bit win sistemler için derlenmiş ssl desteği sağlayan lib ve dll ler var.&lt;br /&gt;&lt;br /&gt;Bunu uygun yere(benim sistemimde c:\curl) kaydettikten sonra derleyicimizde gerekli linker ve header directory ayarlarını yapmamız gerekiyor.&lt;br /&gt;&lt;br /&gt;Bunlar Ms VC++ 6 için şöyle:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;-Project&gt;Settings&gt;Link&gt;Object/Library Modules e "libcurl.lib" ifadesini ekleyin.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;-Tools&gt;Options&gt;Directories&gt;Show Directory for Include Files seçili iken    C:\curl\include satırını ekleyin.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;-Tools&gt;Options&gt;Directories&gt;Show Directory for Library Files seçili iken  C:\curl\ satırını ekleyin.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Diğer derleyicilerde de menüler benzer şekilde olacaktır.&lt;br /&gt;&lt;br /&gt;Ayrıca c:/curl de libcurl_imp.lib dosyasını libcurl.lib yapıp curl klasorunde lib içine kaydetmeyi unutmayın.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dll ler ise libcurl.dll ssleay32.dll zlib1.dll libeay32.dll bunlarıda uygulamamızın exesinin bulunduğu klasore kopyalayın.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://curl.haxx.se/lxr/source/docs/examples/simple.c"&gt;simple.c&lt;/a&gt; Burada örnek bir uygulama var. İlk önce bu kodu denemenizi tavsiye ederim. Yaptığınız ayarlarla bu programı derlediğinizde haxx.se adresini bir http request gönderilecek ve gelen yanıt console ekranınıza yansıyacaktır.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://curl.haxx.se/lxr/source/docs/examples/"&gt;http://curl.haxx.se/lxr/source/docs/examples/&lt;/a&gt;&lt;br /&gt;Adresinde daha gelişmiş uygulamalar bulunmakta.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Kütüphane oldukça kullanışlı ve kolay. Hiç deneyimim olmamasına rağmen bir saat kadar bir süre içinde okulumuz öğrenci sistemine programla login olabildim. Belki bir sonraki yazıya konu olabilir. :)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-6272503072366742501?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/C4cySCKccwc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/6272503072366742501/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2008/03/c-ile-curl-e-giri.html#comment-form" title="4 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/6272503072366742501?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/6272503072366742501?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/C4cySCKccwc/c-ile-curl-e-giri.html" title="C++ ile curl e giriş." /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>4</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2008/03/c-ile-curl-e-giri.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMSX07fCp7ImA9WxZXEkk.&quot;"><id>tag:blogger.com,1999:blog-21714815.post-4406282558138726802</id><published>2008-02-29T02:43:00.014+02:00</published><updated>2008-02-29T03:49:48.304+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-29T03:49:48.304+02:00</app:edited><title>Bismillah..</title><content type="html">&lt;blockquote&gt;...&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;Besmele ile başlanmayan her önemli iş noksan kalır.&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;Besmele ile yazı yazanın haceti kolaylaşır, Allahü teâlâ da razı olur.&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;http://volkansalma.blogspot.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21714815-4406282558138726802?l=volkansalma.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/VolkanSalma/~4/6zhmME6TzrI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://volkansalma.blogspot.com/feeds/4406282558138726802/comments/default" title="Kayıt Yorumları" /><link rel="replies" type="text/html" href="http://volkansalma.blogspot.com/2008/02/deneme.html#comment-form" title="4 Yorum" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/4406282558138726802?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21714815/posts/default/4406282558138726802?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/VolkanSalma/~3/6zhmME6TzrI/deneme.html" title="Bismillah.." /><author><name>Volkan SALMA</name><uri>http://www.blogger.com/profile/02180507354820111978</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>4</thr:total><feedburner:origLink>http://volkansalma.blogspot.com/2008/02/deneme.html</feedburner:origLink></entry></feed>

