﻿
{"id":6709,"date":"2017-07-24T14:56:22","date_gmt":"2017-07-24T14:56:22","guid":{"rendered":"http:\/\/www.gencayyildiz.com\/blog\/?p=6709"},"modified":"2017-07-24T14:58:19","modified_gmt":"2017-07-24T14:58:19","slug":"emgucv-projeye-entegrasyonu-ve-kamera-goruntusu-alma","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/emgucv-projeye-entegrasyonu-ve-kamera-goruntusu-alma\/","title":{"rendered":"EmguCV &#8211; Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Merhaba,<\/p>\n<p>EmguCV, AForge.NET ve Accord.NET k\u00fct\u00fcphanelerinden olduk\u00e7a daha fazla ve daha hassas image processing algoritmas\u0131 bar\u0131nd\u0131ran ve g\u00f6r\u00fcnt\u00fc i\u015fleme \u00fczerine tasarlanm\u0131\u015f olan OpenCV k\u00fct\u00fcphanesinin .NET ortam\u0131na d\u00f6n\u00fc\u015f\u00fcmsel implemantasyonunu sa\u011flayan bir wrapperd\u0131r. Bu i\u00e7eri\u011fimizde g\u00f6r\u00fcnt\u00fc i\u015fleme \u00fczerine g\u00fc\u00e7l\u00fc nitelikleri olan bu k\u00fct\u00fcphanenin \u00f6ncelikle bir projeye nas\u0131l entegrasyonunun sa\u011fland\u0131\u011f\u0131n\u0131 inceleyecek, ard\u0131ndan sistemdeki kameradan g\u00f6r\u00fcnt\u00fcn\u00fcn nas\u0131l elde edildi\u011fini kaleme al\u0131yor olaca\u011f\u0131z. Bundan sonraki i\u00e7eriklerimizde ise EmguCV ile ilgilide onlarca verimli \u00e7al\u0131\u015fmaya imza ataca\u011f\u0131m\u0131z\u0131n m\u00fcjdesini ba\u015ftan vermeyi istiyorum&#8230;<\/p>\n<p>\u00d6ncelikle EmguCV k\u00fct\u00fcphanesinin dosyalar\u0131na <a href=\"http:\/\/www.emgu.com\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">buradaki<\/a> resmi adresinden eri\u015febilirsiniz. EmguCV&#8217;nin resmi sayfas\u0131ndan ilgili download penceresine g\u00f6z atarsan\u0131z e\u011fer <a href=\"https:\/\/sourceforge.net\/projects\/emgucv\/files\/emgucv\/\" target=\"_blank\" rel=\"noopener\">buradan<\/a> da g\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi EmguCV s\u00fcr\u00fcmleriyle kar\u015f\u0131la\u015facaks\u0131n\u0131z. Bu makale kaleme al\u0131nd\u0131\u011f\u0131 tarihte EmguCV&#8217;nin en son s\u00fcr\u00fcm\u00fc &#8220;3.2&#8221; versiyonuna sahiptir. Her ne kadar bir \u00fcr\u00fcn\u00fc kullan\u0131rken farz olan o \u00fcr\u00fcn\u00fcn son versiyonunu tercih etmek olsada, ben bu ve bundan sonraki \u00e7o\u011fu makalemde &#8220;2.4.10&#8221; versiyonunu tercih ediyor olaca\u011f\u0131m. Bu tercihimin sebebini konumuzun d\u0131\u015f\u0131nda olsada merak edenler olaca\u011f\u0131 i\u00e7in a\u00e7\u0131klamakta fayda vard\u0131r.<\/p>\n<p>E\u011fer ki; EmguCV yahut OpenCV k\u00fct\u00fcphanelerini ara\u015ft\u0131r\u0131rken muhtemelen ilk olarak bu siteye gelmeden \u00f6nce onlarca i\u00e7erik \u00fczerinde ara\u015ft\u0131rma yapm\u0131\u015fs\u0131n\u0131zd\u0131r. Haliyle bu k\u00fct\u00fcphaneler \u00fczerinde fazla kayna\u011f\u0131n bulunmad\u0131\u011f\u0131, bulunsada \u00e7al\u0131\u015fma problemleri ya\u015fand\u0131\u011f\u0131 konusunda benimle hemfikirsinizdir. \u0130\u015fte ahval bu iken elimizdeki s\u0131n\u0131rl\u0131 kaynaklardaki anlat\u0131m ve izahatlerin bir \u00e7o\u011fu &#8220;2.4.10&#8221; versiyonuna uygun bir \u015fekilde \u00e7al\u0131\u015fmakta, bu versiyondan sonraki s\u00fcr\u00fcmlerde kodun yap\u0131s\u0131 ve in\u015fas\u0131 de\u011fi\u015ftirildi\u011fi i\u00e7in beklenmedik hatalarla kar\u015f\u0131la\u015f\u0131lmaktad\u0131r. \u0130\u015fte bu y\u00fczden gitti\u011fi yere kadar belirtti\u011fim versiyon ile \u00e7al\u0131\u015fmalar\u0131m\u0131z\u0131 ger\u00e7ekle\u015ftirece\u011fiz.<\/p>\n<p>Velhas\u0131l&#8230; Konumuza devam edelim.<\/p>\n<p>Yukar\u0131da vermi\u015f oldu\u011fum adreslerden temin etti\u011fimiz EmguCV k\u00fct\u00fcphanesinin i\u00e7erisindeki dosya ve klas\u00f6rler a\u015fa\u011f\u0131daki gibi olacakt\u0131r.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6717\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"454\" height=\"305\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma.png 454w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-300x202.png 300w\" sizes=\"auto, (max-width: 454px) 100vw, 454px\" \/><\/a><\/p>\n<p>\u00c7al\u0131\u015fma yapaca\u011f\u0131m\u0131z projemize EmguCV k\u00fct\u00fcphanesinin .dll dosyalar\u0131n\u0131 &#8220;bin&#8221; klas\u00f6r\u00fc i\u00e7erisinden referans olarak y\u00fckleyece\u011fiz.<\/p>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6719\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-1.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"526\" height=\"430\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-1.png 526w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-1-300x245.png 300w\" sizes=\"auto, (max-width: 526px) 100vw, 526px\" \/><\/a><\/p>\n<p>Bu i\u015flemden sonra art\u0131k kodlamaya ge\u00e7ebiliriz gibi gelsede g\u00f6z ard\u0131 edilmemesi gereken bir husus daha vard\u0131r. O da &#8220;bin&#8221; -&gt; &#8220;x86&#8221; klas\u00f6r\u00fc alt\u0131ndaki .dll dosyalar\u0131n\u0131 Existing Item olarak projeye entegre etme gereksinimidir.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6722\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-2.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"584\" height=\"306\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-2.png 584w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-2-300x157.png 300w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/a><br \/>\nYukar\u0131daki ekran g\u00f6r\u00fcnt\u00fcs\u00fcnde g\u00f6r\u00fcld\u00fc\u011f\u00fc \u00fczere projemize sa\u011f t\u0131klayarak &#8220;Add&#8221; -&gt; &#8220;Existing Item&#8221; kombinasyonunu takip ediyoruz. Bu i\u015flemden sonra a\u00e7\u0131lan pencerede yukar\u0131da bahsetti\u011fimiz dizine gidip var olan t\u00fcm dosyalar\u0131 a\u015fa\u011f\u0131daki gibi se\u00e7erek projemize entegre ediyoruz.<\/p>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6723\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-3.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"580\" height=\"592\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-3.png 580w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-3-294x300.png 294w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><\/p>\n<p>\u0130lgili dosyalar\u0131 entegre ettikten sonra hepsini se\u00e7ip sa\u011f t\u0131klayarak &#8220;Properties&#8221; sekmesine t\u0131kl\u0131yoruz ve a\u00e7\u0131lan ilgili pencerede a\u015fa\u011f\u0131daki ekran g\u00f6r\u00fcnt\u00fcs\u00fcnde g\u00f6r\u00fcld\u00fc\u011f\u00fc \u00fczere &#8220;Copy to Output Directory&#8221; b\u00f6l\u00fcm\u00fcn\u00fc &#8220;Copy always&#8221; olarak de\u011fi\u015ftiriyoruz.<\/p>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6725\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-4.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"822\" height=\"338\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-4.png 822w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-4-300x123.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-4-768x316.png 768w\" sizes=\"auto, (max-width: 822px) 100vw, 822px\" \/><\/a><\/p>\n<p>E\u011fer ki bu son i\u015flemi yapmam\u0131\u015f olsayd\u0131k;<\/p>\n<blockquote>\n<p style=\"text-align: center;\"><span style=\"color: #ff0000;\"><strong><em>System.TypeInitializationException: &#8221;Emgu.CV.CvInvoke&#8217; t\u00fcr ba\u015flat\u0131c\u0131s\u0131 \u00f6zel durum d\u00f6nd\u00fcrd\u00fc.&#8217;<\/em><\/strong><\/span><br \/>\n<span style=\"color: #ff0000;\"><strong><em> DllNotFoundException: DLL &#8216;opencv_core2410&#8217; y\u00fcklenemedi: Belirtilen mod\u00fcl bulunamad\u0131. (HRESULT \u00f6zel durum d\u00f6nd\u00fcrd\u00fc: 0x8007007E)<\/em><\/strong><\/span><\/p>\n<\/blockquote>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-5.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"394\" height=\"114\" class=\"aligncenter size-full wp-image-6728\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-5.png 394w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-5-300x87.png 300w\" sizes=\"auto, (max-width: 394px) 100vw, 394px\" \/><\/a><br \/>\ngibi hatalarla kar\u015f\u0131la\u015facakt\u0131k. Tabi ki de bu i\u015flem sayesinde bu tarz hatalardan \u00e7al\u0131\u015fmam\u0131z\u0131 pe\u015finen sadele\u015ftirmi\u015f olduk.<\/p>\n<p>Eveett&#8230; Art\u0131k EmguCV k\u00fct\u00fcphanesinin entegrasyonunu sa\u011f salim sa\u011flam\u0131\u015f bulunmaktay\u0131z.<\/p>\n<p>\u015eimdi s\u0131ra geldi EmguCV k\u00fct\u00fcphanesini kullanarak kamera g\u00f6r\u00fcnt\u00fcs\u00fcn\u00fc elde etmeye.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n            \/\/Sistemdeki ilk kameray\u0131 elde ediyoruz.\r\n            Capture capture = new Capture();\r\n            \/\/G\u00f6r\u00fcnt\u00fc almay\u0131 ba\u015flat\u0131yoruz.\r\n            capture.Start();\r\n            capture.ImageGrabbed += (a, b) =&gt;\r\n            {\r\n                Bitmap image = capture.RetrieveBgrFrame().Bitmap;\r\n                pictureBox1.Image = image;\r\n            };\r\n<\/pre>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-6.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-6.png\" alt=\"EmguCV - Projeye Entegrasyonu ve Kamera G\u00f6r\u00fcnt\u00fcs\u00fc Alma\" width=\"460\" height=\"319\" class=\"aligncenter size-full wp-image-6732\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-6.png 460w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2017\/07\/EmguCV-Projeye-Entegrasyonu-ve-Kamera-G\u00f6r\u00fcnt\u00fcs\u00fc-Alma-6-300x208.png 300w\" sizes=\"auto, (max-width: 460px) 100vw, 460px\" \/><\/a><\/p>\n<p>\u0130\u015fte yapmam\u0131z gereken i\u015flemler bu kadar arkada\u015flar. EmguCV ile ilgili bir sonraki konumuzda face detection-y\u00fcz alg\u0131lama i\u015flemi \u00fczerine konu\u015fuyor olaca\u011f\u0131m\u0131z\u0131 \u015fimdiden bildiririm.<\/p>\n<p>O halde \u015fimdilik ho\u015f\u00e7akal\u0131n&#8230;<br \/>\nSonraki yaz\u0131lar\u0131mda g\u00f6r\u00fc\u015fmek \u00fczere&#8230;<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar&#8230;<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Merhaba, EmguCV, AForge.NET ve Accord.NET k\u00fct\u00fcphanelerinden olduk\u00e7a daha fazla ve daha hassas image processing algoritmas\u0131 bar\u0131nd\u0131ran ve g\u00f6r\u00fcnt\u00fc i\u015fleme \u00fczerine tasarlanm\u0131\u015f olan OpenCV k\u00fct\u00fcphanesinin .NET ortam\u0131na d\u00f6n\u00fc\u015f\u00fcmsel implemantasyonunu sa\u011flayan bir wrapperd\u0131r. Bu i\u00e7eri\u011fimizde g\u00f6r\u00fcnt\u00fc&#46;&#46;&#46;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":6733,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1905,1904],"tags":[1908,1906,1907,1909],"class_list":["post-6709","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-emgucv","category-goruntu-isleme","tag-emgucv","tag-emgucv-kamera-goruntusu-alma","tag-emgucv-projeye-entegrasyonu","tag-opencv"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/6709","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=6709"}],"version-history":[{"count":0,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/6709\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media\/6733"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=6709"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=6709"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=6709"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}