OpenCV kütüphanesini Microsoft Visual Studio’ya eklemeyi, örnek bir proje üzerinden anlatacağım. (OpenCV nedir ne değildir? için lütfen buradan buyrun.)

Kurulum Visual Studio 2010 üzerinden anlatılmıştır, Visual Studio 2008 ve Microsoft Visual C++ 2010 için de geçerlidir.

1. Öncelikle OpenCV kütüphanesinin çalıştırılabilir dosyasını buradan indirin.

2. İndirilen .exe uzantılı dosyayı çalıştırın ve OpenCV kurulumunu yapın. (Kurulum dizinin ‘C:\OpenCV2.1\’ olduğuna dikkat edin.)

3. Microsoft Visual Studio’yu açın.

4. File –> New –> Project ile ‘OpenCV_Ornek’ isimli yeni bir proje oluşturun.

5. Project –> OpenCV_Ornek Properties –> Configuration Properties –> VC++ Directories  ile ilerledikten sonra;

Include Directories’e ‘C:\OpenCV2.1\include\opencv;’ ekleyin.

Library Directories’e ‘C:\OpenCV2.1\lib;’ ekleyin.

Source Directories’e ‘C:\OpenCV2.1\src\cv; C:\OpenCV2.1\src\cvaux; C:\OpenCV2.1\src\cxcore; C:\OpenCV2.1\src\highgui; C:\OpenCV2.1\src\ml;’ ekleyin.

6. Aynı sekmede, Linker -> Input -> Additional Dependencies ile ilerleyin.

Debug Builds için ‘cv210d.lib; cxcore210d.lib; highgui210d.lib;’ ekleyin.

Release Builds için ‘cv210.lib; cxcore210.lib; highgui210.lib;’ ekleyin.

7. OpenCV_Ornek.cpp’yi şu şekilde doldurun:

// OpenCV_Ornek.cpp : OpenCV kutuphanesi ile olusturulmus ornek

#include "stdafx.h"
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>

int _tmain(int argc, _TCHAR* argv[])
{
IplImage *img = cvLoadImage("resim.jpg");
cvNamedWindow("Image:",1);
cvShowImage("Image:",img);

cvWaitKey();
cvDestroyWindow("Image:");
cvReleaseImage(&img);

return 0;
}

8. Projeyi Build –> Build Solution ile derleyin.

9. Projenin bulunduğu dizinin içine, resim.jpg adlı bir resim dosyası ekleyin. Örnekteki dizin yolu: ‘C:\Users\Rana\Documents\Visual Studio 2010\Projects\OpenCV_Ornek\OpenCV_Ornek’.

10. Projeyi Debug –> Start Debugging ile çalıştırın.

11. Sonuç konsolda bir image şeklinde görüntülenecektir.

Kolay gelsin 😉

yorum
  1. crn dedi ki:

    Merhaba, bahsettiğiniz konfigürasyonu aynen uyguladım ve verdiğiniz örnek kodu yazıp debug edince “The application failed to initialize properly(0xc0150002)” gibi bir hata verdi. Çözüm önerisinde bulunabilir misiniz?

  2. didem dedi ki:

    Merhaba dediginiz gibi kurdum ama aşagıdaki gibi hata alıyorum build yaptıktan sonra.
    fatal error LNK1104: cannot open file ‘mfc42d.lib’

    • ranaalgan dedi ki:

      ‘mfc42d.lib’ kütüphanesi Visual Studio 6’da mevcut, derlediğiniz kodu bu lib ile link ederseniz problem çözülecektir. Kolay gelsin.

  3. nida dedi ki:

    merhaba ben yaklasık bır haftadır open cv kurmaya calısıyorum ve hala ısn ıcınden cıkamadım basta vs 2005 kurdum project->configuration properties kısmında link yok gorunmuyor belkı vs sorun vardır deyıp kaldırdım son oalrak vs 2010 kurdum bu seferde vc++ directories kısmında library files ınclude files ve source files gorunmuyor ne yapmalıyım yardımcı olursanız sevınırım sımdıden cok tesekkurler iyi çalışmalar..

    • ranaalgan dedi ki:

      Merhaba, VC++ Directories altındaki seçenekleri görmek için project properties’i açtığınızdan emin olunuz; solution properties’i açıyorsanız görememiş olabilirsiniz. İyi çalışmalar.

  4. skyhn dedi ki:

    bende dediklerinizi adım adım uyguladım ama cxcore210d.dll dosyası bilgisayarınızda bulunmamakta dır diyor baktım o dosya var yardımcı olursanz sevinirim

    • ranaalgan dedi ki:

      Merhaba, C:\OpenCV2.1\src\cxcore dosya yolunu “source directories” e eklediğinizden emin olunuz. Eklediyseniz ve hala bu sorunla karşılaşıyorsanız ilgili dosya yolundaki cxcore dizininin var olup olmadığını kontrol ediniz, dosya yolu bozuk olabilir. Ayrıca bulduğunuz cxcore210d.dll dosyası “C:\OpenCV2.1\bin” dizininde olmalıdır. Hala sorun yaşıyorsanız OpenCV’yi kaldırıp tekrar kurmanız işe yarayacaktır. Kolay gelsin.

      • özzzzz dedi ki:

        Merhabalar aynı sorunu bende yaşadım. Opencv’yi kaldırıp tekrardan kurdum ama çözemedim. Sizce neden olmuş olabilir.

  5. kaptan dedi ki:

    merhaba. söylediğiniz gibi yaptım fakar bu şekilde hata veriyor ;

    error C1083: Cannot open include file: ‘stdafx.h’: No such file or directory
    IntelliSense: cannot open source file “stdafx.h”

    sebebini bi türlü bulamadım.yardımcı olursanız sevinirim.

    • ranaalgan dedi ki:

      Merhaba, eğer proje oluşturma aşamasında “empty project” yerine “win32 console application” hazır projesini seçerseniz, bileşenler (dolayısıyla stdafx.h dosyası da) yüklü olarak gelecektir. Kolay gelsin.

      • kaptan dedi ki:

        merhaba.dediğinizi yaptım işe yaradı tşk ederim.fakat bu sefer hatayı programı çalıştırırken veriyor :S

        Unhandled exception at 0x77998ebf in OpenCV_Ornek.exe: 0xC0000005: Access violation writing location 0x00120ffc.

        sebebi ne olaiblir acaba..?

  6. kaptan dedi ki:

    merhaba.dediğinizi yaptım işe yaradı tşk ederim.fakat bu sefer hatayı programı çalıştırırken veriyor :S

    Unhandled exception at 0x77998ebf in OpenCV_Ornek.exe: 0xC0000005: Access violation writing location 0x00120ffc.

    yardımcı olursanız sevinirim 🙂

    • ranaalgan dedi ki:

      0x ile başlayan bellek hataları genellikle yerel değişkenlere ilk değer atamasında sorun olursa gerçekleşiyor. Debug yapıp değeri 0x00120ffc olan değişkenin ilk değerini kontrol ediniz.

  7. kaptan dedi ki:

    fakat bu hatay sizin verdiğiniz kodu çalıştırdığımda veriyor :S ayrıca sölediğinizi nasıl yapıcağımı bilmiyorum

  8. Onur Tahmaz dedi ki:

    1>—— Build started: Project: OpenCV, Configuration: Debug Win32 ——
    1>Build started 10/05/2011 01:02:11.
    1>InitializeBuildStatus:
    1> Touching “Debug\OpenCV.unsuccessfulbuild”.
    1>ClCompile:
    1> All outputs are up-to-date.
    1> All outputs are up-to-date.
    1>ManifestResourceCompile:
    1> All outputs are up-to-date.
    1>LINK : fatal error LNK1104: cannot open file ‘v210d.lib’
    1>
    1>Build FAILED.
    1>
    1>Time Elapsed 00:00:00.13
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

    aldığım hata aynen bu şekilde ve delirmek üzereyim 3 saattir şununla uğraşıyorum.

    • ranaalgan dedi ki:

      Merhaba,

      Debug hatası lib dosyasının bulunamadığını söylemiş, “v210d.lib” şeklinde yazdıysanız yanlış yazmışsınız demektir. Lütfen dosya ismini “cv210d.lib” olarak güncelleyin.

      Kolay gelsin.

  9. Ekarem dedi ki:

    Merhabalar. Acaba openCV kullanarak yüz tanıma projesi geliştiren var mı?

  10. emre dedi ki:

    Merhaba,programı debug ettiğimde şöyle bir hata ile karşılaşıyorum.sizce sorun ne olabilir?

    ‘ORNEK.exe’: Loaded ‘D:\Users\rukiye-emre\Documents\Visual Studio 2010\Projects\ORNEK\Debug\ORNEK.exe’, Symbols loaded.
    ‘ORNEK.exe’: Loaded ‘D:\Windows\System32\ntdll.dll’, Cannot find or open the PDB file
    ‘ORNEK.exe’: Loaded ‘D:\Windows\System32\kernel32.dll’, Cannot find or open the PDB file
    ‘ORNEK.exe’: Loaded ‘D:\Windows\System32\KernelBase.dll’, Cannot find or open the PDB file
    ‘ORNEK.exe’: Loaded ‘C:\OpenCV2.1\bin\cxcore210d.dll’, Cannot find or open the PDB file
    The program ‘[2608] ORNEK.exe: Native’ has exited with code -1072365566 (0xc0150002).

  11. 4hmeterdogan dedi ki:

    Merhaba,
    Lokal olarak projemi çalıştırabiliyorum. Yalnız server a publish ettiğimde bin klasörünün içindeki yolunu belirttiğim dll leri görmeyip catch bloğuna düşüyor. İşin garip bir başka kısmı da, hala dosya yolu olarak lokal bilgisayarımdaki yolu almaya çalışması.

    Server’a herhangi bir kurulum yapmadım. Proje içindeki .dll ler yeterli değil mi acaba ve bu dosya yolu gerçekten kafamı çok karıştırmış durumda.

    Yardımlarınız için teşekkür ederim şimdiden.

  12. aysbtl dedi ki:

    bu kodu deniyorum fakat “‘cvLoadImage’:too few arguments for call ve ‘cvWaitKey’:too few arguments for call” hatalarını alıyorum. nasıl çözebilirim? teşekkürler

  13. Ekim dedi ki:

    Merhaba console uygulamasında boş projeyi seçmeme rağmen bu hatayı alıyorum sorun ne olabilir ?
    C1083: Cannot open include file: ‘cv.h’: No such file or directory

  14. indirilen exe dosyası çalışmıyor hata veriyor. dosyanın içeriğine de erişemiyorum. bu sabahtan beri indirdiğim 3. opencv versiyonu. ama malesef hiçbiri olmuyyoo

4hmeterdogan için bir cevap yazın Cevabı iptal et