人写的程序最终会变成二进制的代码,脊团指令集就是通过CPU内部的电路对不同的二进制代码产生不同的反映。
cpu是在硅片上刻电子线路,这个知道吧。指令集根本不是写入的,而是电子线路的功能。如果要改指令集,那就只能重新设计cpu.程序的二进制代码0和1到cpu里就变成了高低电位,每个指令对应一组高低电位。电子线路对一组电位做出不同的处理。就成了指令了,基本原理还是数字电路的原樱橡橘理。
指令集不是写入CPU的,指令集是CPU体系结构设计的一个重要方面。CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了梁御纳一系列与其硬件电路相配合的指令系统。这些指令系统就称为指令集,指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。
也就是说指令集是和CPU同时诞生的,而不是后来写入的。每一种CPU都有对应的拆正指令集,指令集反映了CPU的处理能橡没力和方式,体现编程者可以使用的指令和编程规则。
这个是我自己装的顺序,有唤仔族问题可以再来问我。 2.3.1都一样的处理方式,你咋不用2.4.1的环境变量
OPENCV D:\OpenCV2.4.1\build
PATH%OPENCV%\x64\vc10\bin%OPENCVTBB%
OPENCVTBB D:\opencv\build\common\tbb\intel64\vc10
工具 选项
在“包含目录”中的结尾处(若结尾处无英文状态下的“;”则需自行添加“;”,下同)加入以下内容添加以下内容:
$(OPENCV)\include\opencv$(OPENCV)\include\opencv2$(OPENCV)\include
2、在库目录中的结尾处加入以下内容添加:
$(OPENCV)\x86\vc9\lib
“链接器”-“输入”-“附加依赖选项”
见手动添加库。txt
231是版本号换成241即可
*********debug lib***********
opencv_calib3d241d.lib
opencv_contrib241d.lib
opencv_core241d.lib
opencv_features2d241d.lib
opencv_flann241d.lib
opencv_gpu241d.lib
opencv_highgui241d.lib
opencv_imgproc241d.lib
opencv_legacy241d.lib
opencv_ml241d.lib
opencv_nonfree241d.lib
opencv_objdetect241d.lib
opencv_photo241d.lib
opencv_stitching241d.lib
opencv_ts241d.lib
opencv_video241d.lib
opencv_videostab241d.lib
************************
******release lib*******
opencv_calib3d241.lib
opencv_contrib241.lib
opencv_core241.lib
opencv_features2d241.lib
opencv_flann241.lib
opencv_gpu241.lib
opencv_highgui241.lib
opencv_imgproc241.lib
opencv_legacy241.lib
opencv_ml241.lib
opencv_nonfree241.lib
opencv_objdetect241.lib
opencv_photo241.lib
opencv_stitching241.lib
opencv_ts241.lib
opencv_video241.lib
opencv_videostab241.lib
可和弊添加全局 也可以再项目中配置
win32 控制台测试代码
#include “highgui.h”
using namespace std
using namespace cv
int _tmain(int argc, _TCHAR* argv[])
{
const char* imagename = “D:/Demo.jpg”//随戚旁便放一张jpg图片在D盘或另行设置目录
Mat img = cv::imread(imagename);
if(img.empty())
return -1//是否加载成功
if(!img.data)
return -1
namedWindow(“image”, CV_WINDOW_AUTOSIZE);
imshow(“image”, img);
waitKey();
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)