USING OPENCV 2.4.2 WITH VISUAL STUDIO 2012 ON WINDOWS 7 (64-BIT)

转自 http://karanjthakkar.wordpress.com/2012/11/21/usin-opencv-2-4-2-with-visual-studio-2012-on-windows-7-64-bit/

作者KARAN THAKKAR


So before starting you’ll need to make sure you have these in your computer:

  1. Visual Studio 2012 (You can download the 90-day trial version from here)
  2. OpenCV 2.4.2 (You can download it from here)

Extract OpenCV in a folder named OpenCV-2.4.2 in C drive. [Note: You can change the path and folder name but then you wont be able to use the instructions as they are and you'll have to make modifications]

There are five simple steps that we have to make sure that we follow to get OpenCV up and running smoothly: (Click on the images to enlarge them)

STEP-1

Add the path to OpenCV runtime dll’s (Dynamic Linked Libraries) to your Environment Path variable:

[For 64-bit Machines]   C:\OpenCV-2.4.2\opencv\build\x64\vc10\bin;C:\OpenCV-2.4.2\opencv\build\common\tbb\intel64\vc10; 
[For 32-bit Machines]   C:\OpenCV-2.4.2\opencv\build\x86\vc10\bin;C:\OpenCV-2.4.2\opencv\build\common\tbb\ia32\vc10;    

The first path[C:\OpenCV-2.4.2\opencv\build\x64\vc10\bin] is for OpenCV runtime dll’s and the second path[C:\OpenCV-2.4.2\opencv\build\common\tbb\intel64\vc10] adds Intel Threaded Building Blocks to enable parallel code in OpenCV. Adding Intel TBB dll’s is OPTIONAL. Without it you won’t be able to use multiple cores unless you multithreaded your own application.

STEP-2

Create a new Visual Studio Project. Open Visual Studio -> New Project -> Visual C++ -> Win32 Console Application. Click OK. Then click Next -> Finish. 

STEP-3

[This step is for people with 64-bit machines. People with 32-bit machines can skip it.] Now change the build configuration by going to Build menu -> Configuration Manager.

Change the Platform. Click on Win32, Select New. Use the settings as shown in the figure.

Step 3

Step 3

Click OK. Close the Configuration Manager. Change the configuration in the main window to Release, if it isnt that already.

STEP-4

Now we add the OpenCV libraries to our OpenCV project properties. Go to View -> Other Windows -> Property Manager. Then open the Release | x64 (32-bit users should open Release | Win32) Property page by double clicking on it:

Step-4

Go to Linker -> General -> Additional Library Directories. Add this path over there:

[For 64-bit Machines]   C:\OpenCV-2.4.2\opencv\build\x64\vc10\lib;   

[For 32-bit Machines]   C:\OpenCV-2.4.2\opencv\build\x86\vc10\lib;

Next, go to Linker -> Input -> Additional Dependencies. 

Step-4i

Add the following dependencies to it:

opencv_core242.lib
opencv_imgproc242.lib
opencv_highgui242.lib
opencv_ml242.lib
opencv_video242.lib
opencv_features2d242.lib
opencv_calib3d242.lib
opencv_objdetect242.lib
opencv_contrib242.lib
opencv_legacy242.lib
opencv_flann242.lib

STEP-5

Now we add the OpenCV include directories to our OpenCV project properties. In the same Property page, go to C/C++ -> General -> Additional Include Directories and add the following path:

[For both 32-bit and 64-bit Machines]   C:\OpenCV-2.4.2\opencv\build\include\opencv;C:\OpenCV-2.4.2\opencv\build\include;

[Optional: Go to C/C++ -> Preprocessor -> Preprocessor Definitions and add this:_CRT_SECURE_NO_WARNINGS; Helps avoid unnecessary warnings sometimes]

OKAY! So now we are done with the adjustments. Go ahead and try this simple code which displays the video stream from your webcam.

01 #include "stdafx.h"
02 #include "opencv2/highgui/highgui.hpp"
03  
04 /**
05 * @function main
06 */
07 int main( int argc, const char** argv )
08 {
09 CvCapture* capture;
10 IplImage* frame = 0;
11  
12 while (true)
13 {
14 //Read the video stream
15 capture = cvCaptureFromCAM(1);
16 frame = cvQueryFrame( capture );
17  
18 // create a window to display detected faces
19 cvNamedWindow("Sample Program", CV_WINDOW_AUTOSIZE);
20  
21 // display face detections
22 cvShowImage("Sample Program", frame);
23  
24 int c = cvWaitKey(10);
25 if( (char)c == 27 ) { exit(0); }
26  
27 }
28  
29 // clean up and release resources
30 cvReleaseImage(&frame);
31  
32 return 0;
33  
34 }

Once you get this basic sample up and running, you can try out other Visual Studio projects like face-detection and face-extraction I’ve put up on github.

Post your feedback or any problems that you encounter in comments.

Some blog posts that helped me figure stuff out:

1. http://jepsonsblog.blogspot.in/2012/07/installation-guide-opencv-24-with.html

2. http://siddhantahuja.wordpress.com/2011/07/18/getting-started-with-opencv-2-3-in-microsoft-visual-studio-2010-in-windows-7-64-bit/


内容概要:本文围绕直驱式永磁同步电机(PMSM)的矢量控制策略开展系统性研究,基于Simulink平台构建了完整的闭环仿真模型,深入探讨了电机在矢量控制下的动态响应特性与控制性能。研究内容涵盖了矢量控制的核心理论与关键技术模块,包括Clarke与Park坐标变换、转子磁场定向控制(FOC)、SVPWM调制算法、双闭环PI控制器(电流环与速度环)的设计与参数整定。通过仿真验证了系统在启动、突加负载及变速工况下的稳定性、抗干扰能力与动态调节精度,有效实现了对电机转矩与转速的精确控制。该模型不仅有助于深化对PMSM控制机理的理解,也为高性能电机驱动系统的算法开发与工程化应用提供了可靠的仿真验证平台。; 适合人群:具备自动控制原理、电机学基础及Simulink仿真能力的电气工程、自动化、新能源等相关专业的高年级本科生、研究生以及从事电机驱动开发的初级科研人员与工程师。; 使用场景及目标:①作为高校课程设计、毕业设计或科研项目中PMSM控制系统的学习案例,用于掌握矢量控制算法的实现流程与模块化设计方法;②帮助研究人员理解各控制环节间的耦合关系,通过调整PI参数优化系统性能,并为进一步研究无传感器控制、弱磁扩速、先进非线性控制策略等高级课题奠定基础; 阅读建议:建议结合经典电机控制教材同步学习,重点剖析各功能模块的信号流向与数学原理,亲自动手搭建仿真模型,通过改变运行条件和控制器参数观察系统响应变化,从而深入掌握矢量控制系统的动态特性和调试技巧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值