【操作系统】Link.cpp

/************************************************************************/
/* 功能:  模拟实现可变分区存储管理的最佳适应算法的链表类
时间:2014年9月1日21:57:21
作者:信管1201 1205020116  肖锋										*/
/************************************************************************/



#include "Link.h"
#include <iostream>

using namespace std;

//freeLink的定义实现

//void swap(int index1, int index2);	//交换连个节点的信息
void freeLink::swap(int index1, int index2)
{
	//交换这两个索引节点的所有信息
	int i = 0;
	Node* p1 = head;
	while (i < index1)
	{
		p1 = p1->next;
		++i;
	}

	int j = 0;
	Node* p2 = head;
	while (j < index2)
	{
		p2 = p2->next;
		++j;
	}

	//p1和p2指向两个不同的节点,将要交换这两个节点,但是链表的位置不变
	int size = p2->size;
	int adress = p2->adress;
	p2->size = p1->size;
	p2->adress = p1->adress;
	
	p1->size = size;
	p1->adress = adress;
}

//Node* getNode(int index);
freeLink::Node* freeLink::getNode(int index)
{
	int i = 0;
	Node* p=head;
	while (i < index)
	{
		p = p->next;
		++i;
	}

	return p;
}

//给自由链表前后的合并分区,循环首次适应算法
//void pingJie2();
void freeLink::pingJie2()
{
	//首先把链表按照地址的大小排序
	//冒泡排序
	int count = 0;
	Node* p = head;
	while (p != tail)
	{
		p = p->next;
		++count;
	}

	//冒泡排序,吧链表按地址递增的方式存放
	for (int i = 1; i <= count; ++i)
	{
		for (int j = 1; j <= count - i; ++j)
		{
			Node *p1, *p2;
			p1 = getNode(j);
			p2 = getNode(j + 1);
			if (p1->adress > p2->adress)
			{
				swap(j, j + 1);
			}
		}
	}

	//排序完成之后考虑是否要合并
	//考虑4种情况
	Node *p1, *p2, *p3;
	if (count == 1)
		return;	//只有一个空闲的节点还合并个屁啊
	else if (count == 2)
	{//如果只有两个空闲的节点的话,那么就直接考虑向后合并
		p1 = head->next;
		p2 = p1->next;
		if ((p1->adress + p1->size) == p2->adress)
		{//如果成立就直接合并这两个节点
			p1->size += p2->size;	//吧容量合并到p1上
			delete p2;
			p1->next = nullptr;
			tail = p1;
		}
	}
	else //这就一般的情况,那就要考虑四种情况了
	{
		p1 = head->next;
		p2 = p1->next;
		p3 = p2->next;	//指向前三个,以p2为操作对象,进行判断
		//一直判断到链表尾部
		while (p3 != nullptr)
		{
			if ((p1->adress + p1->size) == p2->adress || (p2->adress + p2->size) == p3->adress)	//要么前向,要么后巷,或者全要
			{
				if ((p1->adress + p1->size) == p2->adress && (p2->adress + p2->size) != p3->adress)
				{//前向
					//吧p2去除掉合并到p1里面去
					p1->size += p2->size;
					//去除p2,不用考虑为节点
					p1->next = p3;
					delete p2;
					p2 = p3;
					p3 = p2->next;
				}
				else if ((p1->adress + p1->size) != p2->adress && (p2->adress + p2->size) == p3->adress)
				{//向后合并
					//吧p3去掉合并到p2里面去,这个要考虑尾部节点
					p2->size += p3->size;
					if (p3 == tail)
					{//去除p3
						tail = p2;
						delete p3;
						p3 == nullptr;
					}
					else
					{
						p2->next = p3->next;
						delete p3;
						p3 = p2->next;
					}
				}
				else if ((p1->adress + p1->size) == p2->adress && (p2->adress + p2->size) == p3->adress)
				{//前后一起合并,去除p2,p3,考虑尾部节点
					p1->size += p2->size + p3->size;
					if (p3 == tail)
					{
						tail = p1;
						p1->next = nullptr;
						delete p2, p3;
						p3 = nullptr;
					}
				}
				else
				{//什么也不干的类型
					//移动一位
					p1 = p2;
					p2 = p3;
					p3 = p3->next;	//整体下移一位
				}
			}
		}
	}
}

//首次循环适应算法的添加,就是尾部添加
//void addNode2(gSize, gAdress)
void freeLink::addNode2(int size, int adress)
{
	//直接尾部插入这个回收的节点
	//这块内存的起始地址
	Node* newNode = new Node(size, adress, 'O', nullptr);
	tail->next = newNode;
	tail = newNode;   //添加到尾部
}

//循环首次适应
//void setNeed(int index);
void freeLink::setNeed(int index, int size)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}

	p2->size -= size;   //把对应的空闲区间的大小修改
	p2->adress += size;  //新的起始地址

	if (p2->size == 0)
	{
		if (p2 == tail)
		{
			//重置尾节点,并且去除大小为0的节点
			delete p2;
			p->next = nullptr;
			tail = p;
		}
		else
		{
			//不是尾部节点,就直接去除大小为0的节点就可以了
			p->next = p2->next;
			delete p2;
		}
	}
}

//删除尾部节点的函数
//void popTail();
void freeLink::popTail()
{
	//要去除尾部节点,就要重新给tail定位
	Node* p;
	Node* p2;
	p = head;
	p2 = p->next;
	while (p2 != tail)
	{
		p = p2;
		p2 = p2->next;    //循环直到指向最后一个
	}
	//此时p2指向tail
	tail = p;
	delete p2;
	tail->next = nullptr;
}

//合并全部空闲的节点
//void heBing();
void freeLink::heBing(int allFreeAdress)
{
	Node* p;
	Node* p2;
	p = head;
	p2 = p->next;
	int allFreeSize = 0;  //统计所有的空闲区间的大小
	//int allFreeAdress=0;    //得到新的起始地址
	while (head != tail)
	{
		allFreeSize += tail->size;
		popTail();
	}

	//此时全部的节点都被删除,为空闲分区链添加一个最大的空间
	addNode(allFreeSize, allFreeAdress);
}

//去除对应的节点
//void popNeed(int index);
void freeLink::popNeed(int index)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}

	//去除p2
	p = p2->next;
	delete p2;
}

//得到index部节点的地址
//int getNeedAdress(int index);
int freeLink::getNeedAdress(int index)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}

	return p2->getAdress();
}

//得到第index位的size
//int getNeedSize(int index);
int freeLink::getNeedSize(int index)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}

	return p2->getSize();
}

//找到要修改的节点是第几位]
//int getNeedGai(size);
int freeLink::getNeedGai(int size)
{
	int index = 1;    //返回索引
	Node* p;
	Node* p2;
	p = p2 = head->next;    //p2指向要修改的节点
	while (p2->size < size || p2 == nullptr)
	{
		p = p2;
		p2 = p2->next;
		++index;
	}

	if (p2 == nullptr)
		return 0;

	return index;       //返回当前位置的索引

}

//设置第i个节点
//void setHeadNode(int index, int size, int adress);
void freeLink::setNode(int index, int size, int adress)
{
	Node* p; Node* p2;  //p2指向要修改的节点
	p = head;
	p2 = p->next;
	for (int i = 1; i < index; ++i)
	{
		p = p2;
		p2 = p2->next;    //要修改的对象
	}

	/*
	p2->size = size;
	p2->adress = adress;
	*/
	//吧原来的节点删除,重新插入到正确的位置
	//Node* newPaiXu = new Node(size, adress, 'O', nullptr);
	if (p2 == tail)
	{
		//如果p2是尾节点,那就重置为节点,在插入
		delete p2;
		p->next = nullptr;
		tail = p;
	}
	else
	{
		//不是尾部节点那就直接断
		p->next = p2->next;
		delete p2;
	}
	//插入
	addNode(size, adress);
}

//显示当前的分区
//void show();
void freeLink::show()
{
	Node* p;
	p = head->next;
	cout << "自由分区的链表是(剩余, 起始地址)" << endl;
	while (p != nullptr)
	{
		cout << "(" << p->size << " , " << p->adress << ")->";
		p = p->next;
	}
	cout << endl;
}

//内存地址相同的时候的碎片拼接
//void pingJie();
//2014年9月2日17:03:46有问题
void freeLink::pingJie()
{
	Node* p;
	Node* p2;
	p = head;    //指向头结点
	p2 = p->next;     //指向第一个节点
	//int count=1;
	int qiShiAdress;

	//这样来合并,用起始地址加内存的值在链表中找,是不是有节点的起始和他相同,如果相同就向后合并,遍历整个链表
	while (p2 != nullptr)
	{
		qiShiAdress = p2->adress + p2->size;
		Node* p2_3 = head;
		for (Node* p3 = head->next; p3 != nullptr; p3 = p3->next)    //p2_3指向p3的前面
		{
			if (qiShiAdress == p3->adress)
			{
				//找到了可以合并的那么就直接把这两个节点合并,把找到的这两个去掉重新插入
				int newAdress = p2->adress;
				int newSize = p2->size + p3->size;
				//这里断掉链表要小心不是紧挨着,断开怎么断?
				if (p2->next == p3)
				{
					p->next = p3->next;
				}
				else
				{
					p->next = p2->next;
					p2_3->next = p3->next;
				}

				delete p2, p3;
				p2 = p->next;
				//Node* chaRu=new Node(newSize, newAdress, 'O', nullptr);
				this->addNode(newSize, newAdress);
				qiShiAdress = 0;  //重置,作为标准,以便后面判断是否还要到下一个节点
				break;
			}
			p2_3 = p3;
		}

		if (qiShiAdress != 0)
		{
			p = p2;
			p2 = p2->next;
		}
	}

	/*
	//!2014年9月3日09:19:37
	//这里考虑到保持的时候是从小到大,而拼接是按地址重后到前的排序的
	//把Node按地址的位置重新排序保存的vector里面去
	//先知道一共有多少个节点
	while(p2 != nullptr)
	{
	p=p2;
	p2=p2->next;
	++count;    //当p指向尾节点,那就结束,统计一共有多少个节点
	}

	//重置p,p2
	p=head->next;
	p2=p->next;

	//直到全部按地址递增的方式全部放入到vector里面去

	//然后按地址取出Node,按上面的方式合并

	//找到可以拼接的地方进行拼接
	//while(p2 != nullptr)   //重头找到尾,找到就直接跳出,找不到就到达尾部
	//{//可能有多处要合并不止一处

	if((p->adress+p->size) == p2->adress)
	{
	//如果是末尾的话,要重置尾指针
	if(p2 == tail)
	{
	tail=p;
	}
	//如果有可以合并的区间的话
	//1、吧p的内存大小改变成p和p2的内存和
	p->size+=p2->size;
	//2、吧p的指针指向p2的后面
	p->next=p2->next;
	//3、吧p2断开,然后释放p2
	delete p2;
	}
	p=p2;
	p2=p2->next;

	//}

	//如果是尾部节点的话,那么就是没有可以合并的区间
	if(p == tail)
	{//看是不是只有一个节点
	cout<<"xxx"<<endl;
	}
	else
	{
	while(p->next != tail || (p->adress+p->size) != p2->adress) //找到可以合并的区间,或者到了尾部节点
	{
	//cout<<"xxx"<<endl;
	p=p2;   //吧p和p2整体向前移动一位
	p2=p2->next;
	}

	if((p->adress+p->size) == p2->adress && p->next == tail)
	{
	//如果有可以合并的区间的话
	//1、吧p的内存大小改变成p和p2的内存和
	p->size+=p2->size;
	//2、吧p的指针指向p2的后面
	p->next=p2->next;
	//3、吧p2断开,然后释放p2
	delete p2;
	tail=p; //重置尾节点
	}
	}
	*/
}

//添加一个Node,等会选择插入的地点
//void addNode(int size, int adress);
void freeLink::addNode(int size, int adress)
{
	//1、先找到要插入的位置节点p指向前面的那个节点,p2指向后面那个节点
	Node* p;
	Node* p2;
	p = head;
	p2 = head->next;

	if (p2 != nullptr)
	{
		while (p2->size < size)    //找到比size要大的第一个节点
		{
			p = p2;
			p2 = p2->next;
			if (p == tail)
				break;
		}
	}

	//判断是不是尾节点,不然要重置尾节点
	if (p2 == nullptr)
	{
		//如果是尾部节点,那就直接加上去就可以了
		Node* p3 = new Node(size, adress, 'O', nullptr);
		tail->next = p3;
		//重置尾节点
		tail = p3;
	}
	else
	{
		//2、创建一个节点保存这个内存信息,这个节点插入到p和p2之间
		//这块内存的起始地址
		Node* newNode = new Node(size, adress, 'O', p2);

		//3、插入链表
		//就是把newNode插入到两点之间
		p->next = newNode;
	}
}

//删除Node
//void popNode(char name);
/*
freeLink::Node* freeLink::popNode(char name)
{
//空闲分区删除节点一般是改变节点的大小
//判断是要改变还是要删除
}
*/

//busyLink类的定义

//合并所有adress回收碎片
//void reAdress();
int busyLink::reAdress()
{
	Node* p;
	Node* p2;
	p = head;
	p2 = p->next;
	int endAdress = 0;
	//循环到队尾,size不变,adress全部重置
	while (p != tail)
	{
		p2->adress = p->adress + p->size;   //把这个节点的起始地址改为上个节点的结束
		p = p2;
		p2 = p2->next;    //指向下一个
	}

	//当最后一个也得到处理的时候
	//重定位结束,
	//后面再调用freeLink里面的函数,把所有的free节点收集起来做成一个大的空闲节点
	endAdress = tail->adress + tail->size;

	return endAdress;
}

//得到索引节点的adress
//int getNeedAdress(int index);
int busyLink::getNeedAdress(int index)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}
	//cout<<"p2 name:"<<p2->name<<endl;
	return p2->adress;  //记得加return 返回啊!!!!我的天浪费我半天
}

//得到索引节点的size
//int getNeedSize(int index);
int busyLink::getNeedSize(int index)
{
	Node* p;
	Node* p2;   //就是要返回的索引对象
	p = p2 = head->next;
	int i = 1;
	while (i < index)
	{
		p = p2;
		p2 = p2->next;
		++i;
	}
	p2->getSize();

	return p2->getSize();
}

//得到需要的该的节点的索引
//int getNeedGai(char name);
int busyLink::getNeedGai(char name)
{
	int index = 1;    //返回索引
	Node* p;
	Node* p2;
	p = p2 = head->next;    //p2指向要修改的节点
	while (p2->name != name)
	{
		p = p2;
		p2 = p2->next;
		++index;
		if (p == tail)
			break;
	}

	if (p2 == nullptr)
		return 0;

	//cout<<index<<endl;
	return index;       //返回当前位置的索引

}

//显示当前的分区
//void show();
void busyLink::show()
{
	Node* p;
	p = head->next;
	cout << "作业分区的链表是(剩余, 名字, 起始地址)" << endl;
	while (p != nullptr)
	{
		cout << "(" << p->size << " , " << p->name << " , " << p->adress << ")->";
		p = p->next;
	}
	cout << endl;
}

//内存地址相同的时候的碎片拼接
//void pingJie();
//添加一个Node,等会选择插入的地点
//void addNode(int size, int adress, char name);
void busyLink::addNode(int size, int adress, char name)
{
	//工作链表添加的作业直接添加到尾部就可以了
	Node* p;
	//创建一个将要进入内存的作业
	p = new Node(size, adress, name, nullptr);    //其实这里析构函数应该回收p的内存
	tail->next = p;
	tail = p;
}


//删除Node
//void popNode(char name);
void busyLink::popNode(char name)
{
	Node* p;
	Node* p2;
	//1、找到名字为c的内存
	p = p2 = head->next;
	while (p2->name != name || p2 == nullptr)
	{
		p = p2;
		p2 = p2->next;
	}

	if (p2 == nullptr)
	{
		std::cout << "不好意思,没有这个作业进入内存" << std::endl;
		return;
	}
	//2、得到这块内存里面的值
	//int oldAdd=p2->adress;
	//int oldsize=p2->size;

	//3、创建一个节点保存这个内存的值
	//Node* p3=new Node(oldsize, oldAdd, name, nullptr);
	//4、回收原来的这块内存
	if (p->next == tail)
	{
		delete p2;
		p->next = nullptr;
		tail = p;
	}
	else
	{
		p->next = p2->next;
		delete p2;
	}
}




>------ 已启动生成: 项目: opencv_imgproc_SSE4_1, 配置: Release x64 ------ 2>------ 已启动生成: 项目: opencv_imgproc_AVX512_SKX, 配置: Release x64 ------ 3>------ 已启动生成: 项目: opencv_imgproc_AVX2, 配置: Release x64 ------ 4>------ 已启动生成: 项目: opencv_imgproc_AVX, 配置: Release x64 ------ 5>------ 已启动生成: 项目: opencv_features2d_SSE4_1, 配置: Release x64 ------ 6>------ 已启动生成: 项目: opencv_features2d_AVX512_SKX, 配置: Release x64 ------ 7>------ 已启动生成: 项目: opencv_features2d_AVX2, 配置: Release x64 ------ 8>------ 已启动生成: 项目: opencv_dnn_AVX512_SKX, 配置: Release x64 ------ 9>------ 已启动生成: 项目: opencv_dnn_AVX2, 配置: Release x64 ------ 10>------ 已启动生成: 项目: opencv_dnn_AVX, 配置: Release x64 ------ 11>------ 已启动生成: 项目: opencv_cudev, 配置: Release x64 ------ 12>------ 已启动生成: 项目: opencv_core_SSE4_2, 配置: Release x64 ------ 13>------ 已启动生成: 项目: opencv_core_SSE4_1, 配置: Release x64 ------ 14>------ 已启动生成: 项目: opencv_core_AVX512_SKX, 配置: Release x64 ------ 15>------ 已启动生成: 项目: opencv_core_AVX2, 配置: Release x64 ------ 16>------ 已启动生成: 项目: opencv_core_AVX, 配置: Release x64 ------ 1>accum.sse4_1.cpp 1>box_filter.sse4_1.cpp 1>color_hsv.sse4_1.cpp 1>color_rgb.sse4_1.cpp 1>color_yuv.sse4_1.cpp 1>filter.sse4_1.cpp 1>median_blur.sse4_1.cpp 1>morph.sse4_1.cpp 1>smooth.sse4_1.cpp 1>imgwarp.sse4_1.cpp 1>resize.sse4_1.cpp 2>sumpixels.avx512_skx.cpp 5>sift.sse4_1.cpp 6>sift.avx512_skx.cpp 3>accum.avx2.cpp 3>bilateral_filter.avx2.cpp 3>box_filter.avx2.cpp 3>color_hsv.avx2.cpp 3>color_rgb.avx2.cpp 3>color_yuv.avx2.cpp 3>filter.avx2.cpp 3>median_blur.avx2.cpp 3>morph.avx2.cpp 3>smooth.avx2.cpp 3>sumpixels.avx2.cpp 3>imgwarp.avx2.cpp 3>resize.avx2.cpp 8>layers_common.avx512_skx.cpp 9>layers_common.avx2.cpp 4>accum.avx.cpp 4>corner.avx.cpp 10>conv_block.avx.cpp 10>conv_depthwise.avx.cpp 10>conv_winograd_f63.avx.cpp 10>fast_gemm_kernels.avx.cpp 10>layers_common.avx.cpp 7>sift.avx2.cpp 7>fast.avx2.cpp 14>matmul.avx512_skx.cpp 13>arithm.sse4_1.cpp 13>matmul.sse4_1.cpp 15>arithm.avx2.cpp 15>convert.avx2.cpp 15>convert_scale.avx2.cpp 12>stat.sse4_2.cpp 15>count_non_zero.avx2.cpp 15>has_non_zero.avx2.cpp 15>mathfuncs_core.avx2.cpp 15>matmul.avx2.cpp 15>mean.avx2.cpp 15>merge.avx2.cpp 15>split.avx2.cpp 15>stat.avx2.cpp 15>sum.avx2.cpp 11>stub.cpp 6>opencv_features2d_AVX512_SKX.vcxproj -> E:\opencv-build\build\modules\features2d\opencv_features2d_AVX512_SKX.dir\Release\opencv_features2d_AVX512_SKX.lib 17>------ 已启动生成: 项目: opencv_calib3d_AVX2, 配置: Release x64 ------ 16>mathfuncs_core.avx.cpp 5>opencv_features2d_SSE4_1.vcxproj -> E:\opencv-build\build\modules\features2d\opencv_features2d_SSE4_1.dir\Release\opencv_features2d_SSE4_1.lib 9>layers_common.avx2.cpp 17>undistort.avx2.cpp 4>opencv_imgproc_AVX.vcxproj -> E:\opencv-build\build\modules\imgproc\opencv_imgproc_AVX.dir\Release\opencv_imgproc_AVX.lib 18>------ 已启动生成: 项目: gen_opencv_python_source, 配置: Release x64 ------ 2>opencv_imgproc_AVX512_SKX.vcxproj -> E:\opencv-build\build\modules\imgproc\opencv_imgproc_AVX512_SKX.dir\Release\opencv_imgproc_AVX512_SKX.lib 11> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudev4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudev4110.exp 8>layers_common.avx512_skx.cpp 10>opencv_dnn_AVX.vcxproj -> E:\opencv-build\build\modules\dnn\opencv_dnn_AVX.dir\Release\opencv_dnn_AVX.lib 7>opencv_features2d_AVX2.vcxproj -> E:\opencv-build\build\modules\features2d\opencv_features2d_AVX2.dir\Release\opencv_features2d_AVX2.lib 11>opencv_cudev.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudev4110.dll 3>opencv_imgproc_AVX2.vcxproj -> E:\opencv-build\build\modules\imgproc\opencv_imgproc_AVX2.dir\Release\opencv_imgproc_AVX2.lib 12>opencv_core_SSE4_2.vcxproj -> E:\opencv-build\build\modules\core\opencv_core_SSE4_2.dir\Release\opencv_core_SSE4_2.lib 1>opencv_imgproc_SSE4_1.vcxproj -> E:\opencv-build\build\modules\imgproc\opencv_imgproc_SSE4_1.dir\Release\opencv_imgproc_SSE4_1.lib 13>opencv_core_SSE4_1.vcxproj -> E:\opencv-build\build\modules\core\opencv_core_SSE4_1.dir\Release\opencv_core_SSE4_1.lib 15>opencv_core_AVX2.vcxproj -> E:\opencv-build\build\modules\core\opencv_core_AVX2.dir\Release\opencv_core_AVX2.lib 16>opencv_core_AVX.vcxproj -> E:\opencv-build\build\modules\core\opencv_core_AVX.dir\Release\opencv_core_AVX.lib 9>conv_block.avx2.cpp 9>conv_depthwise.avx2.cpp 9>conv_winograd_f63.avx2.cpp 9>fast_gemm_kernels.avx2.cpp 17>opencv_calib3d_AVX2.vcxproj -> E:\opencv-build\build\modules\calib3d\opencv_calib3d_AVX2.dir\Release\opencv_calib3d_AVX2.lib 14>opencv_core_AVX512_SKX.vcxproj -> E:\opencv-build\build\modules\core\opencv_core_AVX512_SKX.dir\Release\opencv_core_AVX512_SKX.lib 19>------ 已启动生成: 项目: opencv_core, 配置: Release x64 ------ 8>opencv_dnn_AVX512_SKX.vcxproj -> E:\opencv-build\build\modules\dnn\opencv_dnn_AVX512_SKX.dir\Release\opencv_dnn_AVX512_SKX.lib 19>cmake_pch.cxx 9>opencv_dnn_AVX2.vcxproj -> E:\opencv-build\build\modules\dnn\opencv_dnn_AVX2.dir\Release\opencv_dnn_AVX2.lib 19>opencl_kernels_core.cpp 19>algorithm.cpp 19>arithm.cpp 19>arithm.dispatch.cpp 19>array.cpp 19>async.cpp 19>batch_distance.cpp 19>bindings_utils.cpp 19>buffer_area.cpp 19>channels.cpp 19>check.cpp 19>command_line_parser.cpp 19>conjugate_gradient.cpp 19>convert.dispatch.cpp 19>convert_c.cpp 19>convert_scale.dispatch.cpp 19>copy.cpp 19>count_non_zero.dispatch.cpp 19>cuda_gpu_mat.cpp 19>cuda_gpu_mat_nd.cpp 19>cuda_host_mem.cpp 19>cuda_info.cpp 19>cuda_stream.cpp 19>datastructs.cpp 19>directx.cpp 19>downhill_simplex.cpp 19>dxt.cpp 19>gl_core_3_1.cpp 19>glob.cpp 19>hal_internal.cpp 19>has_non_zero.dispatch.cpp 19>kmeans.cpp 19>lapack.cpp 19>lda.cpp 19>logger.cpp 19>lpsolver.cpp 19>D:\Visual Studio\VC\Tools\MSVC\14.43.34808\include\xutility(506,82): warning C4267: “参数”: 从“size_t”转换到“const unsigned int”,可能丢失数据 19>(编译源文件“../../../opencv/modules/core/src/cuda_stream.cpp”) 19> D:\Visual Studio\VC\Tools\MSVC\14.43.34808\include\xutility(506,82): 19> 模板实例化上下文(最早的实例化上下文)为 19> E:\opencv-build\opencv\modules\core\src\cuda_stream.cpp(468,13): 19> 查看对正在编译的函数 模板 实例化“cv::Ptr<cv::cuda::Stream::Impl> cv::makePtr<cv::cuda::Stream::Impl,size_t>(const size_t &)”的引用 19> E:\opencv-build\opencv\modules\core\include\opencv2\core\cvstd_wrapper.hpp(146,27): 19> 查看对正在编译的函数 模板 实例化“std::shared_ptr<T> std::make_shared<_Tp,const size_t&>(const size_t &)”的引用 19> with 19> [ 19> T=cv::cuda::Stream::Impl, 19> _Tp=cv::cuda::Stream::Impl 19> ] 19> D:\Visual Studio\VC\Tools\MSVC\14.43.34808\include\memory(2903,46): 19> 查看对正在编译的函数 模板 实例化“std::_Ref_count_obj2<_Ty>::_Ref_count_obj2<const size_t&>(const size_t &)”的引用 19> with 19> [ 19> _Ty=cv::cuda::Stream::Impl 19> ] 19> D:\Visual Studio\VC\Tools\MSVC\14.43.34808\include\memory(2092,18): 19> 查看对正在编译的函数 模板 实例化“void std::_Construct_in_place<_Ty,const size_t&>(_Ty &,const size_t &) noexcept(false)”的引用 19> with 19> [ 19> _Ty=cv::cuda::Stream::Impl 19> ] 19>lut.cpp 19>mathfuncs.cpp 19>mathfuncs_core.dispatch.cpp 19>matmul.dispatch.cpp 19>matrix.cpp 19>matrix_c.cpp 19>matrix_decomp.cpp 19>matrix_expressions.cpp 19>matrix_iterator.cpp 19>matrix_operations.cpp 19>matrix_sparse.cpp 19>matrix_transform.cpp 19>matrix_wrap.cpp 19>mean.dispatch.cpp 19>merge.dispatch.cpp 19>minmax.cpp 19>norm.cpp 19>ocl.cpp 19>opencl_clblas.cpp 19>opencl_clfft.cpp 19>opencl_core.cpp 19>opengl.cpp 19>out.cpp 19>ovx.cpp 19>parallel_openmp.cpp 19>parallel_tbb.cpp 19>parallel_impl.cpp 19>pca.cpp 19>persistence.cpp 19>persistence_base64_encoding.cpp 19>persistence_json.cpp 19>persistence_types.cpp 19>persistence_xml.cpp 19>persistence_yml.cpp 19>rand.cpp 19>softfloat.cpp 19>split.dispatch.cpp 19>stat.dispatch.cpp 19>stat_c.cpp 19>stl.cpp 19>sum.dispatch.cpp 19>system.cpp 19>tables.cpp 19>trace.cpp 19>types.cpp 19>umatrix.cpp 19>datafile.cpp 19>filesystem.cpp 19>logtagconfigparser.cpp 19>logtagmanager.cpp 19>samples.cpp 19>va_intel.cpp 19>alloc.cpp 19>parallel.cpp 19>parallel.cpp 19> 正在创建库 E:/opencv-build/build/lib/Release/opencv_core4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_core4110.exp 19>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 19>opencv_core.vcxproj -> E:\opencv-build\build\bin\Release\opencv_core4110.dll 19>已完成生成项目“opencv_core.vcxproj”的操作。 20>------ 已启动生成: 项目: opencv_version_win32, 配置: Release x64 ------ 21>------ 已启动生成: 项目: opencv_version, 配置: Release x64 ------ 22>------ 已启动生成: 项目: opencv_signal, 配置: Release x64 ------ 23>------ 已启动生成: 项目: opencv_ml, 配置: Release x64 ------ 24>------ 已启动生成: 项目: opencv_imgproc, 配置: Release x64 ------ 25>------ 已启动生成: 项目: opencv_flann, 配置: Release x64 ------ 26>------ 已启动生成: 项目: opencv_cudaarithm, 配置: Release x64 ------ 20>opencv_version.cpp 22>cmake_pch.cxx 23>cmake_pch.cxx 25>cmake_pch.cxx 21>opencv_version.cpp 26>cmake_pch.cxx 24>cmake_pch.cxx 22>opencv_signal_main.cpp 22>signal_resample.cpp 23>opencv_ml_main.cpp 23>ann_mlp.cpp 23>boost.cpp 23>data.cpp 23>em.cpp 23>gbt.cpp 23>inner_functions.cpp 23>kdtree.cpp 23>knearest.cpp 23>lr.cpp 23>nbayes.cpp 23>rtrees.cpp 23>svm.cpp 23>svmsgd.cpp 23>testset.cpp 23>tree.cpp 21>opencv_version.vcxproj -> E:\opencv-build\build\bin\Release\opencv_version.exe 24>opencl_kernels_imgproc.cpp 24>opencv_imgproc_main.cpp 24>accum.cpp 24>accum.dispatch.cpp 24>approx.cpp 24>bilateral_filter.dispatch.cpp 24>blend.cpp 24>box_filter.dispatch.cpp 24>canny.cpp 20>opencv_version_win32.vcxproj -> E:\opencv-build\build\bin\Release\opencv_version_win32.exe 24>clahe.cpp 24>color.cpp 24>color_hsv.dispatch.cpp 24>color_lab.cpp 24>color_rgb.dispatch.cpp 24>color_yuv.dispatch.cpp 24>colormap.cpp 24>connectedcomponents.cpp 24>contours.cpp 24>contours_approx.cpp 24>contours_common.cpp 24>contours_link.cpp 25>opencv_flann_main.cpp 24>contours_new.cpp 24>convhull.cpp 25>flann.cpp 24>corner.cpp 25>miniflann.cpp 24>cornersubpix.cpp 22> 正在创建库 E:/opencv-build/build/lib/Release/opencv_signal4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_signal4110.exp 26>opencv_cudaarithm_main.cpp 24>demosaicing.cpp 26>arithm.cpp 24>deriv.cpp 26>core.cpp 24>distransform.cpp 24>drawing.cpp 24>emd.cpp 24>emd_new.cpp 24>featureselect.cpp 26>element_operations.cpp 24>filter.dispatch.cpp 26>lut.cpp 26>reductions.cpp 24>floodfill.cpp 24>gabor.cpp 24>generalized_hough.cpp 24>geometry.cpp 24>grabcut.cpp 24>hershey_fonts.cpp 24>histogram.cpp 24>hough.cpp 24>imgwarp.cpp 24>intelligent_scissors.cpp 24>intersection.cpp 24>linefit.cpp 24>lsd.cpp 24>main.cpp 23> 正在创建库 E:/opencv-build/build/lib/Release/opencv_ml4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_ml4110.exp 24>matchcontours.cpp 24>median_blur.dispatch.cpp 24>min_enclosing_triangle.cpp 24>moments.cpp 24>morph.dispatch.cpp 24>phasecorr.cpp 24>pyramids.cpp 24>resize.cpp 24>rotcalipers.cpp 24>samplers.cpp 24>segmentation.cpp 24>shapedescr.cpp 24>smooth.dispatch.cpp 24>spatialgradient.cpp 24>stackblur.cpp 22>opencv_signal.vcxproj -> E:\opencv-build\build\bin\Release\opencv_signal4110.dll 24>subdivision2d.cpp 24>sumpixels.dispatch.cpp 24>tables.cpp 24>templmatch.cpp 24>thresh.cpp 24>utils.cpp 23>opencv_ml.vcxproj -> E:\opencv-build\build\bin\Release\opencv_ml4110.dll 26> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudaarithm4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudaarithm4110.exp 26>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 26>opencv_cudaarithm.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudaarithm4110.dll 26>已完成生成项目“opencv_cudaarithm.vcxproj”的操作。 25> 正在创建库 E:/opencv-build/build/lib/Release/opencv_flann4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_flann4110.exp 25>opencv_flann.vcxproj -> E:\opencv-build\build\bin\Release\opencv_flann4110.dll 27>------ 已启动生成: 项目: opencv_surface_matching, 配置: Release x64 ------ 27>cmake_pch.cxx 24> 正在创建库 E:/opencv-build/build/lib/Release/opencv_imgproc4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_imgproc4110.exp 24>opencv_imgproc.vcxproj -> E:\opencv-build\build\bin\Release\opencv_imgproc4110.dll 28>------ 已启动生成: 项目: opencv_reg, 配置: Release x64 ------ 29>------ 已启动生成: 项目: opencv_quality, 配置: Release x64 ------ 30>------ 已启动生成: 项目: opencv_plot, 配置: Release x64 ------ 31>------ 已启动生成: 项目: opencv_phase_unwrapping, 配置: Release x64 ------ 32>------ 已启动生成: 项目: opencv_intensity_transform, 配置: Release x64 ------ 33>------ 已启动生成: 项目: opencv_imgcodecs, 配置: Release x64 ------ 34>------ 已启动生成: 项目: opencv_img_hash, 配置: Release x64 ------ 35>------ 已启动生成: 项目: opencv_hfs, 配置: Release x64 ------ 36>------ 已启动生成: 项目: opencv_fuzzy, 配置: Release x64 ------ 37>------ 已启动生成: 项目: opencv_features2d, 配置: Release x64 ------ 38>------ 已启动生成: 项目: opencv_dnn, 配置: Release x64 ------ 39>------ 已启动生成: 项目: opencv_cudawarping, 配置: Release x64 ------ 40>------ 已启动生成: 项目: opencv_cudafilters, 配置: Release x64 ------ 31>cmake_pch.cxx 30>cmake_pch.cxx 29>cmake_pch.cxx 32>cmake_pch.cxx 28>map.cpp 28>mapaffine.cpp 28>mapper.cpp 28>mappergradaffine.cpp 28>mappergradeuclid.cpp 28>mappergradproj.cpp 28>mappergradshift.cpp 28>mappergradsimilar.cpp 28>mapperpyramid.cpp 28>mapprojec.cpp 28>mapshift.cpp 34>cmake_pch.cxx 36>cmake_pch.cxx 27>opencv_surface_matching_main.cpp 27>icp.cpp 40>cmake_pch.cxx 27>pose_3d.cpp 27>ppf_helpers.cpp 27>ppf_match_3d.cpp 35>cmake_pch.cxx 27>t_hash_int.cpp 38>cmake_pch.cxx 39>cmake_pch.cxx 29>opencv_quality_main.cpp 29>qualitybrisque.cpp 29>qualitygmsd.cpp 34>opencv_img_hash_main.cpp 32>opencv_intensity_transform_main.cpp 31>opencv_phase_unwrapping_main.cpp 30>opencv_plot_main.cpp 29>qualitymse.cpp 29>qualityssim.cpp 34>average_hash.cpp 34>block_mean_hash.cpp 34>color_moment_hash.cpp 31>histogramphaseunwrapping.cpp 32>bimef.cpp 34>img_hash_base.cpp 32>intensity_transform.cpp 30>plot.cpp 34>marr_hildreth_hash.cpp 34>phash.cpp 35>opencv_hfs_main.cpp 34>radial_variance_hash.cpp 35>hfs.cpp 35>hfs_core.cpp 35>magnitude.cpp 36>opencv_fuzzy_main.cpp 36>fuzzy_F0_math.cpp 36>fuzzy_F1_math.cpp 36>fuzzy_image.cpp 35>merge.cpp 35>gslic_engine.cpp 35>slic.cpp 33>cmake_pch.cxx 40>opencv_cudafilters_main.cpp 40>filtering.cpp 27> 正在创建库 E:/opencv-build/build/lib/Release/opencv_surface_matching4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_surface_matching4110.exp 39>opencv_cudawarping_main.cpp 38>opencl_kernels_dnn.cpp 28> 正在创建库 E:/opencv-build/build/lib/Release/opencv_reg4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_reg4110.exp 39>pyramids.cpp 39>remap.cpp 39>resize.cpp 39>warp.cpp 38>opencv_dnn_main.cpp 38>opencv-caffe.pb.cc 38>opencv-onnx.pb.cc 38>attr_value.pb.cc 38>function.pb.cc 38>graph.pb.cc 38>op_def.pb.cc 38>tensor.pb.cc 38>tensor_shape.pb.cc 38>types.pb.cc 38>versions.pb.cc 38>caffe_importer.cpp 38>caffe_io.cpp 38>caffe_shrinker.cpp 38>darknet_importer.cpp 38>darknet_io.cpp 31> 正在创建库 E:/opencv-build/build/lib/Release/opencv_phase_unwrapping4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_phase_unwrapping4110.exp 32> 正在创建库 E:/opencv-build/build/lib/Release/opencv_intensity_transform4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_intensity_transform4110.exp 29> 正在创建库 E:/opencv-build/build/lib/Release/opencv_quality4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_quality4110.exp 27>opencv_surface_matching.vcxproj -> E:\opencv-build\build\bin\Release\opencv_surface_matching4110.dll 38>debug_utils.cpp 28>opencv_reg.vcxproj -> E:\opencv-build\build\bin\Release\opencv_reg4110.dll 30> 正在创建库 E:/opencv-build/build/lib/Release/opencv_plot4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_plot4110.exp 38>dnn.cpp 38>dnn_params.cpp 38>dnn_read.cpp 38>dnn_utils.cpp 32>opencv_intensity_transform.vcxproj -> E:\opencv-build\build\bin\Release\opencv_intensity_transform4110.dll 38>graph_simplifier.cpp 31>opencv_phase_unwrapping.vcxproj -> E:\opencv-build\build\bin\Release\opencv_phase_unwrapping4110.dll 38>halide_scheduler.cpp 38>ie_ngraph.cpp 38>init.cpp 35> 正在创建库 E:/opencv-build/build/lib/Release/opencv_hfs4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_hfs4110.exp 35>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 30>opencv_plot.vcxproj -> E:\opencv-build\build\bin\Release\opencv_plot4110.dll 34> 正在创建库 E:/opencv-build/build/lib/Release/opencv_img_hash4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_img_hash4110.exp 38>layers_rvp052.cpp 38>quantization_utils.cpp 38>layer.cpp 38>layer_factory.cpp 29>opencv_quality.vcxproj -> E:\opencv-build\build\bin\Release\opencv_quality4110.dll 38>accum_layer.cpp 38>arg_layer.cpp 38>attention_layer.cpp 36> 正在创建库 E:/opencv-build/build/lib/Release/opencv_fuzzy4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_fuzzy4110.exp 38>blank_layer.cpp 38>concat_layer.cpp 38>const_layer.cpp 38>correlation_layer.cpp 38>conv_depthwise.cpp 38>conv_winograd_f63.cpp 38>conv_winograd_f63.dispatch.cpp 38>convolution.cpp 38>fast_gemm.cpp 38>fast_norm.cpp 38>softmax.cpp 38>crop_and_resize_layer.cpp 38>cumsum_layer.cpp 38>depth_space_ops_layer.cpp 38>detection_output_layer.cpp 34>opencv_img_hash.vcxproj -> E:\opencv-build\build\bin\Release\opencv_img_hash4110.dll 38>einsum_layer.cpp 38>expand_layer.cpp 33>opencv_imgcodecs_main.cpp 35>opencv_hfs.vcxproj -> E:\opencv-build\build\bin\Release\opencv_hfs4110.dll 39> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudawarping4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudawarping4110.exp 33>bitstrm.cpp 33>exif.cpp 33>grfmt_avif.cpp 39>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 38>flatten_layer.cpp 33>grfmt_base.cpp 38>flow_warp_layer.cpp 38>gather_elements_layer.cpp 33>grfmt_bmp.cpp 33>grfmt_exr.cpp 33>grfmt_gdal.cpp 33>grfmt_gdcm.cpp 33>grfmt_gif.cpp 33>grfmt_hdr.cpp 33>grfmt_jpeg.cpp 38>gather_layer.cpp 38>gemm_layer.cpp 33>grfmt_jpeg2000.cpp 33>grfmt_jpeg2000_openjpeg.cpp 40> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudafilters4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudafilters4110.exp 33>grfmt_jpegxl.cpp 40>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 38>group_norm_layer.cpp 33>grfmt_pam.cpp 38>instance_norm_layer.cpp 33>grfmt_pfm.cpp 33>grfmt_png.cpp 33>grfmt_pxm.cpp 33>grfmt_spng.cpp 36>opencv_fuzzy.vcxproj -> E:\opencv-build\build\bin\Release\opencv_fuzzy4110.dll 33>grfmt_sunras.cpp 33>grfmt_tiff.cpp 33>grfmt_webp.cpp 38>layer_norm.cpp 38>layers_common.cpp 33>loadsave.cpp 33>rgbe.cpp 33>utils.cpp 38>lrn_layer.cpp 38>matmul_layer.cpp 38>max_unpooling_layer.cpp 38>mvn_layer.cpp 38>nary_eltwise_layers.cpp 38>normalize_bbox_layer.cpp 38>not_implemented_layer.cpp 38>padding_layer.cpp 38>permute_layer.cpp 38>prior_box_layer.cpp 39>opencv_cudawarping.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudawarping4110.dll 39>已完成生成项目“opencv_cudawarping.vcxproj”的操作。 35>已完成生成项目“opencv_hfs.vcxproj”的操作。 38>proposal_layer.cpp 38>recurrent_layers.cpp 38>reduce_layer.cpp 38>region_layer.cpp 38>reorg_layer.cpp 38>reshape_layer.cpp 38>resize_layer.cpp 38>scatterND_layer.cpp 38>scatter_layer.cpp 40>opencv_cudafilters.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudafilters4110.dll 38>shuffle_channel_layer.cpp 38>slice_layer.cpp 33>LINK : fatal error LNK1181: 无法打开输入文件“E:\Anaconda\Library\bin\avif.dll” 38>split_layer.cpp 40>已完成生成项目“opencv_cudafilters.vcxproj”的操作。 38>tile_layer.cpp 33>已完成生成项目“opencv_imgcodecs.vcxproj”的操作 - 失败。 41>------ 已启动生成: 项目: opencv_videoio, 配置: Release x64 ------ 42>------ 已启动生成: 项目: opencv_cudaimgproc, 配置: Release x64 ------ 38>topk_layer.cpp 38>legacy_backend.cpp 38>model.cpp 38>net.cpp 38>net_cann.cpp 37>cmake_pch.cxx 38>net_impl_backend.cpp 38>net_impl.cpp 38>net_impl_fuse.cpp 38>net_openvino.cpp 38>net_quantization.cpp 38>nms.cpp 38>common.cpp 38>math_functions.cpp 38>ocl4dnn_conv_spatial.cpp 38>ocl4dnn_inner_product.cpp 38>ocl4dnn_lrn.cpp 38>ocl4dnn_pool.cpp 38>ocl4dnn_softmax.cpp 38>onnx_graph_simplifier.cpp 38>onnx_importer.cpp 41>cmake_pch.cxx 38>op_cann.cpp 38>op_cuda.cpp 38>op_halide.cpp 38>op_inf_engine.cpp 38>op_timvx.cpp 38>op_vkcom.cpp 38>op_webnn.cpp 38>registry.cpp 38>tf_graph_simplifier.cpp 38>tf_importer.cpp 42>cmake_pch.cxx 38>tf_io.cpp 38>tflite_importer.cpp 38>THDiskFile.cpp 38>THFile.cpp 38>THGeneral.cpp 38>torch_importer.cpp 38>conv_1x1_fast_spv.cpp 38>conv_depthwise_3x3_spv.cpp 38>conv_depthwise_spv.cpp 38>conv_implicit_gemm_spv.cpp 38>gemm_spv.cpp 38>nary_eltwise_binary_forward_spv.cpp 38>spv_shader.cpp 38>buffer.cpp 38>command.cpp 38>context.cpp 38>fence.cpp 38>internal.cpp 37>opencl_kernels_features2d.cpp 37>opencv_features2d_main.cpp 37>affine_feature.cpp 38>op_base.cpp 38>op_conv.cpp 37>agast.cpp 37>agast_score.cpp 37>akaze.cpp 37>bagofwords.cpp 37>blobdetector.cpp 37>brisk.cpp 37>draw.cpp 37>dynamic.cpp 38>op_matmul.cpp 38>op_naryEltwise.cpp 38>pipeline.cpp 38>tensor.cpp 37>evaluation.cpp 37>fast.cpp 37>fast_score.cpp 38>vk_functions.cpp 37>feature2d.cpp 37>gftt.cpp 38>vk_loader.cpp 37>kaze.cpp 37>AKAZEFeatures.cpp 37>KAZEFeatures.cpp 37>fed.cpp 37>nldiffusion_functions.cpp 37>keypoint.cpp 37>main.cpp 37>matchers.cpp 37>mser.cpp 37>orb.cpp 37>sift.dispatch.cpp 42>opencv_cudaimgproc_main.cpp 42>bilateral_filter.cpp 42>blend.cpp 42>canny.cpp 42>color.cpp 42>connectedcomponents.cpp 42>corners.cpp 42>generalized_hough.cpp 42>gftt.cpp 42>histogram.cpp 42>hough_circles.cpp 42>hough_lines.cpp 42>hough_segments.cpp 42>match_template.cpp 42>mean_shift.cpp 42>moments.cpp 42>mssegmentation.cpp 41>opencv_videoio_main.cpp 41>backend_static.cpp 41>cap.cpp 41>cap_dshow.cpp 41>cap_images.cpp 41>cap_mjpeg_decoder.cpp 41>cap_mjpeg_encoder.cpp 41>cap_msmf.cpp 41>obsensor_stream_channel_msmf.cpp 41>obsensor_uvc_stream_channel.cpp 41>cap_obsensor_capture.cpp 41>container_avi.cpp 41>videoio_c.cpp 41>videoio_registry.cpp 38>backend.cpp 42> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudaimgproc4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudaimgproc4110.exp 42>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 42>opencv_cudaimgproc.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudaimgproc4110.dll 42>已完成生成项目“opencv_cudaimgproc.vcxproj”的操作。 43>------ 已启动生成: 项目: opencv_photo, 配置: Release x64 ------ 37> 正在创建库 E:/opencv-build/build/lib/Release/opencv_features2d4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_features2d4110.exp 43>cmake_pch.cxx 41>backend_plugin.cpp 37>opencv_features2d.vcxproj -> E:\opencv-build\build\bin\Release\opencv_features2d4110.dll 44>------ 已启动生成: 项目: opencv_saliency, 配置: Release x64 ------ 45>------ 已启动生成: 项目: opencv_line_descriptor, 配置: Release x64 ------ 46>------ 已启动生成: 项目: opencv_cudafeatures2d, 配置: Release x64 ------ 47>------ 已启动生成: 项目: opencv_calib3d, 配置: Release x64 ------ 38>batch_norm_layer.cpp 44>cmake_pch.cxx 45>cmake_pch.cxx 46>cmake_pch.cxx 47>cmake_pch.cxx 38>convolution_layer.cpp 41>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_imgcodecs4110.lib” 41>已完成生成项目“opencv_videoio.vcxproj”的操作 - 失败。 48>------ 已启动生成: 项目: opencv_highgui, 配置: Release x64 ------ 49>------ 已启动生成: 项目: opencv_cudacodec, 配置: Release x64 ------ 43>opencl_kernels_photo.cpp 43>opencv_photo_main.cpp 43>align.cpp 43>calibrate.cpp 43>contrast_preserve.cpp 43>denoise_tvl1.cpp 43>denoising.cpp 43>denoising.cuda.cpp 43>hdr_common.cpp 43>inpaint.cpp 43>merge.cpp 43>npr.cpp 43>seamless_cloning.cpp 43>seamless_cloning_impl.cpp 43>tonemap.cpp 48>cmake_pch.cxx 49>cmake_pch.cxx 44>opencv_saliency_main.cpp 44>CmFile.cpp 44>CmShow.cpp 44>FilterTIG.cpp 44>ValStructVec.cpp 44>objectnessBING.cpp 44>motionSaliency.cpp 44>motionSaliencyBinWangApr2014.cpp 44>objectness.cpp 44>saliency.cpp 44>staticSaliency.cpp 44>staticSaliencyFineGrained.cpp 44>staticSaliencySpectralResidual.cpp 47>opencl_kernels_calib3d.cpp 47>opencv_calib3d_main.cpp 47>ap3p.cpp 47>calibinit.cpp 47>calibration.cpp 47>calibration_base.cpp 45>opencv_line_descriptor_main.cpp 47>calibration_handeye.cpp 45>LSDDetector.cpp 45>binary_descriptor.cpp 47>checkchessboard.cpp 47>chessboard.cpp 47>circlesgrid.cpp 45>binary_descriptor_matcher.cpp 47>compat_ptsetreg.cpp 47>dls.cpp 47>epnp.cpp 47>fisheye.cpp 47>five-point.cpp 45>draw.cpp 47>fundam.cpp 47>homography_decomp.cpp 47>ippe.cpp 47>levmarq.cpp 46>opencv_cudafeatures2d_main.cpp 46>brute_force_matcher.cpp 46>fast.cpp 47>main.cpp 46>feature2d_async.cpp 47>p3p.cpp 46>orb.cpp 47>polynom_solver.cpp 38>elementwise_layers.cpp 47>ptsetreg.cpp 47>quadsubpix.cpp 47>rho.cpp 47>solvepnp.cpp 47>sqpnp.cpp 47>stereo_geom.cpp 47>stereobm.cpp 47>stereosgbm.cpp 47>triangulate.cpp 47>undistort.dispatch.cpp 47>upnp.cpp 47>bundle.cpp 47>degeneracy.cpp 47>dls_solver.cpp 47>essential_solver.cpp 47>estimator.cpp 47>fundamental_solver.cpp 45> 正在创建库 E:/opencv-build/build/lib/Release/opencv_line_descriptor4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_line_descriptor4110.exp 44> 正在创建库 E:/opencv-build/build/lib/Release/opencv_saliency4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_saliency4110.exp 47>gamma_values.cpp 47>homography_solver.cpp 47>local_optimization.cpp 47>pnp_solver.cpp 46> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudafeatures2d4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudafeatures2d4110.exp 47>quality.cpp 38>eltwise_layer.cpp 47>ransac_solvers.cpp 47>sampler.cpp 46>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 43> 正在创建库 E:/opencv-build/build/lib/Release/opencv_photo4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_photo4110.exp 47>termination.cpp 43>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 47>utils.cpp 49>E:\opencv-build\opencv_contrib\modules\cudacodec\src\video_decoder.hpp(107,118): error C2065: “cudaVideoSurfaceFormat_YUV444”: 未声明的标识符 49>(编译源文件“CMakeFiles/opencv_cudacodec.dir/cmake_pch.cxx”) 49>E:\opencv-build\opencv_contrib\modules\cudacodec\src\video_decoder.hpp(107,19): error C2737: “type”: 必须初始化 const 对象 49>(编译源文件“CMakeFiles/opencv_cudacodec.dir/cmake_pch.cxx”) 49>已完成生成项目“opencv_cudacodec.vcxproj”的操作 - 失败。 45>opencv_line_descriptor.vcxproj -> E:\opencv-build\build\bin\Release\opencv_line_descriptor4110.dll 44>opencv_saliency.vcxproj -> E:\opencv-build\build\bin\Release\opencv_saliency4110.dll 46>opencv_cudafeatures2d.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudafeatures2d4110.dll 43>opencv_photo.vcxproj -> E:\opencv-build\build\bin\Release\opencv_photo4110.dll 48>opencv_highgui_main.cpp 48>backend.cpp 48>roiSelector.cpp 48>window.cpp 48>window_w32.cpp 43>已完成生成项目“opencv_photo.vcxproj”的操作。 50>------ 已启动生成: 项目: opencv_xphoto, 配置: Release x64 ------ 46>已完成生成项目“opencv_cudafeatures2d.vcxproj”的操作。 50>bm3d_image_denoising.cpp 50>dct_image_denoising.cpp 50>grayworld_white_balance.cpp 50>inpainting.cpp 50>learning_based_color_balance.cpp 50>oilpainting.cpp 38>fully_connected_layer.cpp 50>simple_color_balance.cpp 50>tonemap.cpp 48>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_videoio4110.lib” 48>已完成生成项目“opencv_highgui.vcxproj”的操作 - 失败。 51>------ 已启动生成: 项目: opencv_visualisation, 配置: Release x64 ------ 52>------ 已启动生成: 项目: opencv_ts, 配置: Release x64 ------ 53>------ 已启动生成: 项目: opencv_bioinspired, 配置: Release x64 ------ 54>------ 已启动生成: 项目: opencv_annotation, 配置: Release x64 ------ 51>opencv_visualisation.cpp 54>opencv_annotation.cpp 52>cmake_pch.cxx 53>cmake_pch.cxx 38>pooling_layer.cpp 38>scale_layer.cpp 53>opencl_kernels_bioinspired.cpp 53>opencv_bioinspired_main.cpp 53>basicretinafilter.cpp 53>imagelogpolprojection.cpp 53>magnoretinafilter.cpp 53>parvoretinafilter.cpp 53>retina.cpp 53>retina_ocl.cpp 53>retinacolor.cpp 53>retinafasttonemapping.cpp 53>retinafilter.cpp 53>transientareassegmentationmodule.cpp 54>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 54>已完成生成项目“opencv_annotation.vcxproj”的操作 - 失败。 52>cuda_perf.cpp 52>cuda_test.cpp 52>ocl_perf.cpp 52>ocl_test.cpp 52>ts.cpp 52>ts_arrtest.cpp 52>ts_func.cpp 52>ts_gtest.cpp 52>ts_perf.cpp 52>ts_tags.cpp 38>softmax_layer.cpp 53>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 51>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 53>已完成生成项目“opencv_bioinspired.vcxproj”的操作 - 失败。 51>已完成生成项目“opencv_visualisation.vcxproj”的操作 - 失败。 38>batch_norm_layer.cpp 50> 正在创建库 E:/opencv-build/build/lib/Release/opencv_xphoto4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_xphoto4110.exp 50>opencv_xphoto.vcxproj -> E:\opencv-build\build\bin\Release\opencv_xphoto4110.dll 38>convolution_layer.cpp 52>opencv_ts.vcxproj -> E:\opencv-build\build\lib\Release\opencv_ts4110.lib 38>elementwise_layers.cpp 38>eltwise_layer.cpp 38>fully_connected_layer.cpp 38>pooling_layer.cpp 47> 正在创建库 E:/opencv-build/build/lib/Release/opencv_calib3d4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_calib3d4110.exp 47>opencv_calib3d.vcxproj -> E:\opencv-build\build\bin\Release\opencv_calib3d4110.dll 55>------ 已启动生成: 项目: opencv_structured_light, 配置: Release x64 ------ 56>------ 已启动生成: 项目: opencv_shape, 配置: Release x64 ------ 57>------ 已启动生成: 项目: opencv_rgbd, 配置: Release x64 ------ 58>------ 已启动生成: 项目: opencv_rapid, 配置: Release x64 ------ 59>------ 已启动生成: 项目: opencv_cudastereo, 配置: Release x64 ------ 60>------ 已启动生成: 项目: opencv_ccalib, 配置: Release x64 ------ 55>cmake_pch.cxx 56>cmake_pch.cxx 57>cmake_pch.cxx 58>cmake_pch.cxx 60>cmake_pch.cxx 59>cmake_pch.cxx 38>scale_layer.cpp 58>opencv_rapid_main.cpp 55>opencv_structured_light_main.cpp 58>histogram.cpp 58>rapid.cpp 55>graycodepattern.cpp 55>sinusoidalpattern.cpp 56>opencv_shape_main.cpp 56>aff_trans.cpp 56>emdL1.cpp 56>haus_dis.cpp 56>hist_cost.cpp 56>sc_dis.cpp 60>opencv_ccalib_main.cpp 56>tps_trans.cpp 60>ccalib.cpp 60>multicalib.cpp 60>omnidir.cpp 60>randpattern.cpp 59>opencv_cudastereo_main.cpp 57>opencl_kernels_rgbd.cpp 59>disparity_bilateral_filter.cpp 57>opencv_rgbd_main.cpp 59>stereobm.cpp 57>colored_kinfu.cpp 57>colored_tsdf.cpp 57>depth_cleaner.cpp 57>depth_registration.cpp 57>depth_to_3d.cpp 57>dqb.cpp 57>dynafu.cpp 57>dynafu_tsdf.cpp 59>stereobp.cpp 59>stereocsbp.cpp 57>fast_icp.cpp 59>stereosgm.cpp 57>hash_tsdf.cpp 59>util.cpp 57>kinfu.cpp 57>kinfu_frame.cpp 57>large_kinfu.cpp 57>linemod.cpp 57>nonrigid_icp.cpp 57>normal.cpp 57>odometry.cpp 57>plane.cpp 57>pose_graph.cpp 57>tsdf.cpp 57>tsdf_functions.cpp 57>utils.cpp 57>volume.cpp 57>warpfield.cpp 38>softmax_layer.cpp 58> 正在创建库 E:/opencv-build/build/lib/Release/opencv_rapid4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_rapid4110.exp 55> 正在创建库 E:/opencv-build/build/lib/Release/opencv_structured_light4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_structured_light4110.exp 56> 正在创建库 E:/opencv-build/build/lib/Release/opencv_shape4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_shape4110.exp 59> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudastereo4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudastereo4110.exp 59>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 55>opencv_structured_light.vcxproj -> E:\opencv-build\build\bin\Release\opencv_structured_light4110.dll 58>opencv_rapid.vcxproj -> E:\opencv-build\build\bin\Release\opencv_rapid4110.dll 56>opencv_shape.vcxproj -> E:\opencv-build\build\bin\Release\opencv_shape4110.dll 61>------ 已启动生成: 项目: opencv_xfeatures2d, 配置: Release x64 ------ 59>opencv_cudastereo.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudastereo4110.dll 59>已完成生成项目“opencv_cudastereo.vcxproj”的操作。 60>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 60>已完成生成项目“opencv_ccalib.vcxproj”的操作 - 失败。 61>cmake_pch.cxx 61>opencl_kernels_xfeatures2d.cpp 61>opencv_xfeatures2d_main.cpp 61>affine_feature2d.cpp 61>beblid.cpp 61>brief.cpp 61>daisy.cpp 61>ellipticKeyPoint.cpp 61>fast.cpp 61>freak.cpp 61>gms.cpp 61>harris_lapace_detector.cpp 61>latch.cpp 61>Match.cpp 61>Point.cpp 61>PointPair.cpp 61>lucid.cpp 61>msd.cpp 61>pct_signatures.cpp 61>grayscale_bitmap.cpp 61>pct_clusterizer.cpp 61>pct_sampler.cpp 61>pct_signatures_sqfd.cpp 61>stardetector.cpp 61>surf.cpp 61>surf.cuda.cpp 61>surf.ocl.cpp 61>tbmr.cpp 61>xfeatures2d_init.cpp 57> 正在创建库 E:/opencv-build/build/lib/Release/opencv_rgbd4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_rgbd4110.exp 38> 正在创建库 E:/opencv-build/build/lib/Release/opencv_dnn4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_dnn4110.exp 38>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 57>opencv_rgbd.vcxproj -> E:\opencv-build\build\bin\Release\opencv_rgbd4110.dll 38>opencv_dnn.vcxproj -> E:\opencv-build\build\bin\Release\opencv_dnn4110.dll 38>已完成生成项目“opencv_dnn.vcxproj”的操作。 62>------ 已启动生成: 项目: opencv_video, 配置: Release x64 ------ 63>------ 已启动生成: 项目: opencv_text, 配置: Release x64 ------ 64>------ 已启动生成: 项目: opencv_objdetect, 配置: Release x64 ------ 65>------ 已启动生成: 项目: opencv_model_diagnostics, 配置: Release x64 ------ 66>------ 已启动生成: 项目: opencv_mcc, 配置: Release x64 ------ 67>------ 已启动生成: 项目: opencv_dnn_superres, 配置: Release x64 ------ 68>------ 已启动生成: 项目: opencv_dnn_objdetect, 配置: Release x64 ------ 63>cmake_pch.cxx 62>cmake_pch.cxx 65>model_diagnostics.cpp 64>cmake_pch.cxx 66>cmake_pch.cxx 67>cmake_pch.cxx 68>cmake_pch.cxx 63>opencv_text_main.cpp 63>erfilter.cpp 63>ocr_beamsearch_decoder.cpp 63>ocr_hmm_decoder.cpp 63>ocr_holistic.cpp 63>ocr_tesseract.cpp 63>text_detectorCNN.cpp 63>text_detector_swt.cpp 62>opencl_kernels_video.cpp 64>opencl_kernels_objdetect.cpp 62>opencv_video_main.cpp 62>bgfg_KNN.cpp 62>bgfg_gaussmix2.cpp 64>opencv_objdetect_main.cpp 64>apriltag_quad_thresh.cpp 62>camshift.cpp 64>zmaxheap.cpp 64>aruco_board.cpp 64>aruco_detector.cpp 64>aruco_dictionary.cpp 62>dis_flow.cpp 64>aruco_utils.cpp 64>charuco_detector.cpp 62>ecc.cpp 62>kalman.cpp 68>opencv_dnn_objdetect_main.cpp 62>lkpyramid.cpp 62>optflowgf.cpp 62>optical_flow_io.cpp 64>barcode.cpp 64>abs_decoder.cpp 62>tracker_feature.cpp 64>hybrid_binarizer.cpp 64>super_scale.cpp 64>utils.cpp 64>ean13_decoder.cpp 62>tracker_feature_set.cpp 64>ean8_decoder.cpp 64>upcean_decoder.cpp 62>tracker_mil_model.cpp 68>core_detect.cpp 62>tracker_mil_state.cpp 62>tracker_model.cpp 64>bardetect.cpp 62>tracker_sampler.cpp 62>tracker_sampler_algorithm.cpp 62>tracker_state_estimator.cpp 62>tracking_feature.cpp 64>cascadedetect.cpp 62>tracking_online_mil.cpp 64>cascadedetect_convert.cpp 64>detection_based_tracker.cpp 62>tracker.cpp 64>face_detect.cpp 62>tracker_dasiamrpn.cpp 64>face_recognize.cpp 62>tracker_goturn.cpp 64>graphical_code_detector.cpp 64>hog.cpp 62>tracker_mil.cpp 67>opencv_dnn_superres_main.cpp 64>main.cpp 64>qrcode.cpp 64>qrcode_encoder.cpp 62>tracker_nano.cpp 62>tracker_vit.cpp 62>variational_refinement.cpp 67>dnn_superres.cpp 66>opencv_mcc_main.cpp 66>bound_min.cpp 66>ccm.cpp 66>charts.cpp 66>checker_detector.cpp 66>checker_model.cpp 66>color.cpp 66>colorspace.cpp 66>common.cpp 66>debug.cpp 66>distance.cpp 66>graph_cluster.cpp 66>io.cpp 66>linearize.cpp 66>mcc.cpp 66>operations.cpp 66>utils.cpp 66>wiener_filter.cpp 65>opencv_model_diagnostics.vcxproj -> E:\opencv-build\build\bin\Release\opencv_model_diagnostics.exe 68>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 68>已完成生成项目“opencv_dnn_objdetect.vcxproj”的操作 - 失败。 67> 正在创建库 E:/opencv-build/build/lib/Release/opencv_dnn_superres4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_dnn_superres4110.exp 67>opencv_dnn_superres.vcxproj -> E:\opencv-build\build\bin\Release\opencv_dnn_superres4110.dll 63> 正在创建库 E:/opencv-build/build/lib/Release/opencv_text4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_text4110.exp 62> 正在创建库 E:/opencv-build/build/lib/Release/opencv_video4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_video4110.exp 63>opencv_text.vcxproj -> E:\opencv-build\build\bin\Release\opencv_text4110.dll 69>------ 已启动生成: 项目: opencv_datasets, 配置: Release x64 ------ 62>opencv_video.vcxproj -> E:\opencv-build\build\bin\Release\opencv_video4110.dll 70>------ 已启动生成: 项目: opencv_ximgproc, 配置: Release x64 ------ 71>------ 已启动生成: 项目: opencv_cudabgsegm, 配置: Release x64 ------ 72>------ 已启动生成: 项目: opencv_bgsegm, 配置: Release x64 ------ 69>ar_hmdb.cpp 71>cmake_pch.cxx 69>ar_sports.cpp 69>dataset.cpp 69>fr_adience.cpp 72>cmake_pch.cxx 69>fr_lfw.cpp 69>gr_chalearn.cpp 69>gr_skig.cpp 69>hpe_humaneva.cpp 69>hpe_parse.cpp 70>cmake_pch.cxx 69>ir_affine.cpp 69>ir_robot.cpp 69>is_bsds.cpp 69>is_weizmann.cpp 69>msm_epfl.cpp 69>msm_middlebury.cpp 69>or_imagenet.cpp 66> 正在创建库 E:/opencv-build/build/lib/Release/opencv_mcc4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_mcc4110.exp 69>or_mnist.cpp 66>opencv_mcc.vcxproj -> E:\opencv-build\build\bin\Release\opencv_mcc4110.dll 69>or_pascal.cpp 69>or_sun.cpp 69>pd_caltech.cpp 69>pd_inria.cpp 69>slam_kitti.cpp 69>slam_tumindoor.cpp 69>sr_bsds.cpp 69>sr_div2k.cpp 69>sr_general100.cpp 69>tr_chars.cpp 69>tr_icdar.cpp 69>tr_svt.cpp 64> 正在创建库 E:/opencv-build/build/lib/Release/opencv_objdetect4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_objdetect4110.exp 69>track_alov.cpp 69>track_vot.cpp 69>util.cpp 71>opencv_cudabgsegm_main.cpp 71>mog.cpp 71>mog2.cpp 64>opencv_objdetect.vcxproj -> E:\opencv-build\build\bin\Release\opencv_objdetect4110.dll 73>------ 已启动生成: 项目: opencv_xobjdetect, 配置: Release x64 ------ 74>------ 已启动生成: 项目: opencv_wechat_qrcode, 配置: Release x64 ------ 75>------ 已启动生成: 项目: opencv_interactive-calibration, 配置: Release x64 ------ 76>------ 已启动生成: 项目: opencv_face, 配置: Release x64 ------ 77>------ 已启动生成: 项目: opencv_cudalegacy, 配置: Release x64 ------ 78>------ 已启动生成: 项目: opencv_aruco, 配置: Release x64 ------ 70>opencl_kernels_ximgproc.cpp 70>opencv_ximgproc_main.cpp 70>adaptive_manifold_filter_n.cpp 70>anisodiff.cpp 70>bilateral_texture_filter.cpp 70>brightedges.cpp 70>deriche_filter.cpp 70>disparity_filters.cpp 70>domain_transform.cpp 70>dtfilter_cpu.cpp 70>edge_drawing.cpp 70>edgeaware_filters_common.cpp 70>edgeboxes.cpp 70>edgepreserving_filter.cpp 70>estimated_covariance.cpp 70>fast_hough_transform.cpp 70>fast_line_detector.cpp 70>fbs_filter.cpp 70>fgs_filter.cpp 70>find_ellipses.cpp 70>fourier_descriptors.cpp 70>graphsegmentation.cpp 70>guided_filter.cpp 72>opencv_bgsegm_main.cpp 72>bgfg_gaussmix.cpp 72>bgfg_gmg.cpp 72>bgfg_gsoc.cpp 72>bgfg_subcnt.cpp 70>joint_bilateral_filter.cpp 76>cmake_pch.cxx 70>l0_smooth.cpp 70>lsc.cpp 70>niblack_thresholding.cpp 70>paillou_filter.cpp 75>calibController.cpp 70>peilin.cpp 70>quaternion.cpp 70>radon_transform.cpp 75>calibPipeline.cpp 75>frameProcessor.cpp 72>synthetic_seq.cpp 73>cmake_pch.cxx 75>main.cpp 70>ridgedetectionfilter.cpp 75>parametersController.cpp 70>rolling_guidance_filter.cpp 70>scansegment.cpp 70>seeds.cpp 70>run_length_morphology.cpp 70>selectivesearchsegmentation.cpp 70>slic.cpp 75>rotationConverters.cpp 74>cmake_pch.cxx 70>sparse_match_interpolators.cpp 70>structured_edge_detection.cpp 78>cmake_pch.cxx 70>thinning.cpp 70>weighted_median_filter.cpp 77>cmake_pch.cxx 71> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudabgsegm4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudabgsegm4110.exp 71>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 61>boostdesc.cpp 71>opencv_cudabgsegm.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudabgsegm4110.dll 74>opencv_wechat_qrcode_main.cpp 69>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_imgcodecs4110.lib” 74>binarizermgr.cpp 74>decodermgr.cpp 74>align.cpp 74>ssd_detector.cpp 74>imgsource.cpp 74>super_scale.cpp 74>wechat_qrcode.cpp 74>binarizer.cpp 74>binarybitmap.cpp 74>adaptive_threshold_mean_binarizer.cpp 74>fast_window_binarizer.cpp 74>global_histogram_binarizer.cpp 74>hybrid_binarizer.cpp 74>simple_adaptive_binarizer.cpp 74>bitarray.cpp 70>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_imgcodecs4110.lib” 72> 正在创建库 E:/opencv-build/build/lib/Release/opencv_bgsegm4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_bgsegm4110.exp 74>bitmatrix.cpp 74>bitsource.cpp 74>bytematrix.cpp 74>characterseteci.cpp 74>decoder_result.cpp 69>已完成生成项目“opencv_datasets.vcxproj”的操作 - 失败。 79>------ 已启动生成: 项目: opencv_tracking, 配置: Release x64 ------ 70>已完成生成项目“opencv_ximgproc.vcxproj”的操作 - 失败。 71>已完成生成项目“opencv_cudabgsegm.vcxproj”的操作。 80>------ 已启动生成: 项目: opencv_optflow, 配置: Release x64 ------ 74>detector_result.cpp 74>greyscale_luminance_source.cpp 74>greyscale_rotated_luminance_source.cpp 74>grid_sampler.cpp 74>imagecut.cpp 74>kmeans.cpp 74>perspective_transform.cpp 74>genericgf.cpp 74>genericgfpoly.cpp 74>reed_solomon_decoder.cpp 74>str.cpp 74>stringutils.cpp 74>unicomblock.cpp 74>errorhandler.cpp 74>luminance_source.cpp 74>bitmatrixparser.cpp 61>logos.cpp 74>datablock.cpp 78>opencv_aruco_main.cpp 74>datamask.cpp 74>decoded_bit_stream_parser.cpp 78>aruco.cpp 74>decoder.cpp 78>aruco_calib.cpp 74>mode.cpp 78>charuco.cpp 74>alignment_pattern.cpp 74>alignment_pattern_finder.cpp 76>opencv_face_main.cpp 74>detector.cpp 76>bif.cpp 74>finder_pattern.cpp 74>finder_pattern_finder.cpp 76>eigen_faces.cpp 74>finder_pattern_info.cpp 74>pattern_result.cpp 76>face_alignment.cpp 74>error_correction_level.cpp 74>format_information.cpp 76>face_basic.cpp 76>facemark.cpp 76>facemarkAAM.cpp 76>facemarkLBF.cpp 76>facerec.cpp 76>fisher_faces.cpp 76>getlandmarks.cpp 74>qrcode_reader.cpp 74>version.cpp 76>lbph_faces.cpp 76>mace.cpp 76>predict_collector.cpp 74>reader.cpp 74>result.cpp 76>regtree.cpp 74>resultpoint.cpp 80>cmake_pch.cxx 76>trainFacemark.cpp 72>opencv_bgsegm.vcxproj -> E:\opencv-build\build\bin\Release\opencv_bgsegm4110.dll 75>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_highgui4110.lib” 73>opencv_xobjdetect_main.cpp 75>已完成生成项目“opencv_interactive-calibration.vcxproj”的操作 - 失败。 73>feature_evaluator.cpp 73>lbpfeatures.cpp 73>waldboost.cpp 79>cmake_pch.cxx 73>wbdetector.cpp 61>Logos.cpp 77>opencv_cudalegacy_main.cpp 77>NCV.cpp 77>bm.cpp 77>bm_fast.cpp 77>calib3d.cpp 77>fgd.cpp 77>gmg.cpp 77>graphcuts.cpp 77>image_pyramid.cpp 77>interpolate_frames.cpp 77>needle_map.cpp 61>vgg.cpp 78> 正在创建库 E:/opencv-build/build/lib/Release/opencv_aruco4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_aruco4110.exp 73>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_imgcodecs4110.lib” 73>已完成生成项目“opencv_xobjdetect.vcxproj”的操作 - 失败。 81>------ 已启动生成: 项目: opencv_waldboost_detector, 配置: Release x64 ------ 78>opencv_aruco.vcxproj -> E:\opencv-build\build\bin\Release\opencv_aruco4110.dll 81>waldboost_detector.cpp 77> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudalegacy4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudalegacy4110.exp 80>opencl_kernels_optflow.cpp 80>opencv_optflow_main.cpp 80>deepflow.cpp 80>interfaces.cpp 80>motempl.cpp 80>pcaflow.cpp 80>geo_interpolation.cpp 80>rlof_localflow.cpp 80>rlofflow.cpp 77>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 80>simpleflow.cpp 80>sparse_matching_gpc.cpp 80>sparsetodenseflow.cpp 80>tvl1flow.cpp 76> 正在创建库 E:/opencv-build/build/lib/Release/opencv_face4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_face4110.exp 74> 正在创建库 E:/opencv-build/build/lib/Release/opencv_wechat_qrcode4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_wechat_qrcode4110.exp 77>opencv_cudalegacy.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudalegacy4110.dll 77>已完成生成项目“opencv_cudalegacy.vcxproj”的操作。 82>------ 已启动生成: 项目: opencv_cudaobjdetect, 配置: Release x64 ------ 79>opencl_kernels_tracking.cpp 79>opencv_tracking_main.cpp 79>augmented_unscented_kalman.cpp 79>feature.cpp 79>featureColorName.cpp 79>gtrUtils.cpp 79>kuhn_munkres.cpp 79>mosseTracker.cpp 79>multiTracker.cpp 79>multiTracker_alt.cpp 79>onlineBoosting.cpp 79>tldDataset.cpp 79>tldDetector.cpp 79>tldEnsembleClassifier.cpp 79>tldModel.cpp 79>tldTracker.cpp 79>tldUtils.cpp 79>tracker.cpp 74>opencv_wechat_qrcode.vcxproj -> E:\opencv-build\build\bin\Release\opencv_wechat_qrcode4110.dll 76>opencv_face.vcxproj -> E:\opencv-build\build\bin\Release\opencv_face4110.dll 79>trackerBoosting.cpp 79>trackerBoostingModel.cpp 79>trackerCSRT.cpp 79>trackerCSRTScaleEstimation.cpp 79>trackerCSRTSegmentation.cpp 79>trackerCSRTUtils.cpp 79>trackerFeature.cpp 81>LINK : fatal error LNK1181: 无法打开输入文件“..\..\..\..\lib\Release\opencv_highgui4110.lib” 79>trackerFeatureSet.cpp 79>trackerKCF.cpp 79>trackerMIL_legacy.cpp 79>trackerMedianFlow.cpp 79>trackerSampler.cpp 81>已完成生成项目“opencv_waldboost_detector.vcxproj”的操作 - 失败。 79>trackerSamplerAlgorithm.cpp 79>trackerStateEstimator.cpp 79>tracking_by_matching.cpp 79>tracking_utils.cpp 79>twist.cpp 79>unscented_kalman.cpp 61> 正在创建库 E:/opencv-build/build/lib/Release/opencv_xfeatures2d4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_xfeatures2d4110.exp 61>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 80>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_ximgproc4110.lib” 80>已完成生成项目“opencv_optflow.vcxproj”的操作 - 失败。 83>------ 已启动生成: 项目: opencv_cudaoptflow, 配置: Release x64 ------ 61>opencv_xfeatures2d.vcxproj -> E:\opencv-build\build\bin\Release\opencv_xfeatures2d4110.dll 61>已完成生成项目“opencv_xfeatures2d.vcxproj”的操作。 84>------ 已启动生成: 项目: opencv_stitching, 配置: Release x64 ------ 82>cmake_pch.cxx 83>cmake_pch.cxx 84>cmake_pch.cxx 79>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_datasets4110.lib” 79>已完成生成项目“opencv_tracking.vcxproj”的操作 - 失败。 85>------ 已启动生成: 项目: opencv_stereo, 配置: Release x64 ------ 85>cmake_pch.cxx 83>brox.cpp 83>farneback.cpp 83>nvidiaOpticalFlow.cpp 83>pyrlk.cpp 83>tvl1flow.cpp 83>opencv_cudaoptflow_main.cpp 83>E:\opencv-build\opencv_contrib\modules\cudaoptflow\src\nvidiaOpticalFlow.cpp(52,10): error C1083: 无法打开包括文件: “nvOpticalFlowCuda.h”: No such file or directory 83>(编译源文件“../../../opencv_contrib/modules/cudaoptflow/src/nvidiaOpticalFlow.cpp”) 82>opencv_cudaobjdetect_main.cpp 82>cascadeclassifier.cpp 82>hog.cpp 83>已完成生成项目“opencv_cudaoptflow.vcxproj”的操作 - 失败。 86>------ 已启动生成: 项目: opencv_videostab, 配置: Release x64 ------ 87>------ 已启动生成: 项目: opencv_superres, 配置: Release x64 ------ 85>opencv_stereo_main.cpp 85>descriptor.cpp 85>quasi_dense_stereo.cpp 85>stereo_binary_bm.cpp 85>stereo_binary_sgbm.cpp 86>cmake_pch.cxx 87>cmake_pch.cxx 84>opencl_kernels_stitching.cpp 84>opencv_stitching_main.cpp 84>autocalib.cpp 84>blenders.cpp 84>camera.cpp 84>exposure_compensate.cpp 84>matchers.cpp 84>motion_estimators.cpp 84>seam_finders.cpp 84>stitcher.cpp 84>timelapsers.cpp 84>util.cpp 84>warpers.cpp 84>warpers_cuda.cpp 85>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_tracking4110.lib” 85>已完成生成项目“opencv_stereo.vcxproj”的操作 - 失败。 82> 正在创建库 E:/opencv-build/build/lib/Release/opencv_cudaobjdetect4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_cudaobjdetect4110.exp 82>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 82>opencv_cudaobjdetect.vcxproj -> E:\opencv-build\build\bin\Release\opencv_cudaobjdetect4110.dll 82>已完成生成项目“opencv_cudaobjdetect.vcxproj”的操作。 86>opencv_videostab_main.cpp 86>deblurring.cpp 86>fast_marching.cpp 86>frame_source.cpp 86>global_motion.cpp 86>inpainting.cpp 86>log.cpp 86>motion_stabilizing.cpp 86>optical_flow.cpp 86>outlier_rejection.cpp 86>stabilizer.cpp 86>wobble_suppression.cpp 84> 正在创建库 E:/opencv-build/build/lib/Release/opencv_stitching4110.lib 和对象 E:/opencv-build/build/lib/Release/opencv_stitching4110.exp 84>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 87>opencl_kernels_superres.cpp 87>opencv_superres_main.cpp 87>btv_l1.cpp 87>btv_l1_cuda.cpp 87>frame_source.cpp 87>input_array_utility.cpp 87>optical_flow.cpp 87>super_resolution.cpp 84>opencv_stitching.vcxproj -> E:\opencv-build\build\bin\Release\opencv_stitching4110.dll 84>已完成生成项目“opencv_stitching.vcxproj”的操作。 87>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_cudacodec4110.lib” 87>已完成生成项目“opencv_superres.vcxproj”的操作 - 失败。 86>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_videoio4110.lib” 86>已完成生成项目“opencv_videostab.vcxproj”的操作 - 失败。 88>------ 已启动生成: 项目: opencv_python3, 配置: Release x64 ------ 88>LINK : fatal error LNK1181: 无法打开输入文件“..\..\lib\Release\opencv_xobjdetect4110.lib” 88>已完成生成项目“opencv_python3.vcxproj”的操作 - 失败。 89>------ 已启动生成: 项目: INSTALL, 配置: Release x64 ------ 89>1> 89>-- Install configuration: "Release" 89>CMake Error at cmake_install.cmake:36 (file): 89> file INSTALL cannot find 89> "E:/opencv-build/build/3rdparty/ippicv/ippicv_win/icv/readme.htm": No 89> error. 89> 89> 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: 命令“setlocal 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: D:\CMake\bin\cmake.exe -DBUILD_TYPE=Release -P cmake_install.cmake 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: :cmEnd 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: :cmErrorLevel 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: exit /b %1 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: :cmDone 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd 89>D:\Visual Studio\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(166,5): error MSB3073: :VCEnd”已退出,代码为 1。 89>已完成生成项目“INSTALL.vcxproj”的操作 - 失败。 ========== 生成: 67 成功,22 失败,15 最新,0 已跳过 ========== ========== 生成 于 22:55 完成,耗时 03:12.593 分钟 ==========
最新发布
05-13
<think>好的,我现在要解决用户关于OpenCV在Windows上使用Visual Studio编译时出现的链接错误和头文件缺失问题,比如LNK1181和C1083。首先,我需要回忆一下常见的这些错误的原因和解决方法。 C1083错误通常是头文件找不到,可能是因为路径配置不正确。用户可能在项目中没有正确设置包含目录,导致编译器找不到OpenCV的头文件。这时候需要检查项目属性中的包含路径是否正确指向OpenCV的include文件夹。另外,也有可能用户安装的OpenCV版本和项目配置的路径不一致,比如用了OpenCV 4.x但路径还是指向3.x的目录,这也会导致问题。 然后是LNK1181链接错误,这通常和库文件有关。可能的情况包括库目录没有正确设置,或者链接器输入的依赖库名称错误。比如用户可能没有添加opencv_world4xx.lib这样的库,或者路径不对。另外,如果使用的是动态库,还需要确保对应的dll文件在系统路径或者可执行文件目录下存在。 接下来,我需要考虑用户的开发环境。用户提到的是Visual Studio,所以需要指导他们在项目属性中进行配置,特别是在VC++目录和链接器设置部分。可能需要具体说明如何添加包含目录、库目录,以及输入哪些附加依赖项。 另外,还要考虑系统环境变量的问题。有时候即使项目配置正确,如果系统路径中没有添加OpenCV的bin目录,运行时可能会找不到dll,但编译时的链接错误可能更多是库路径的问题。不过用户现在的问题是编译时的错误,所以环境变量可能不是主要原因,但也不能排除。 还有可能用户没有正确生成OpenCV的库文件,比如自己用CMake编译OpenCV时出现了问题,导致库文件缺失。这时候需要建议用户检查编译过程是否正确,或者直接使用预编译的库来避免这个问题。 此外,平台配置是否正确也很重要,比如x64和x86的配置是否匹配。如果用户的项目是x64但OpenCV的库是x86的,或者反过来,都会导致链接错误。需要提醒用户检查项目平台和库的架构是否一致。 最后,可能需要一些通用的建议,比如清理解决方案后重新生成,或者重启Visual Studio,有时候配置更改后需要重新加载项目才能生效。 总结下来,解决步骤大致是:检查头文件路径配置是否正确,检查库路径和附加依赖项是否正确,确认平台架构一致,确认OpenCV安装正确,以及可能的系统环境变量设置。需要一步步引导用户检查这些部分,并提供具体的操作示例,比如如何在VS中设置包含目录和库目录,如何添加依赖库等。</think>### OpenCV编译错误解决方案 #### 一、头文件缺失错误(C1083) 1. **包含目录配置** - 在Visual Studio中右键项目 > 属性 > **VC++目录 > 包含目录** - 添加OpenCV头文件路径,例如: ``` D:\opencv\build\include D:\opencv\build\include\opencv2 ``` - 注意:路径需与实际安装路径完全匹配,OpenCV4.x版本目录结构与3.x不同[^1] 2. **预处理宏定义** - 属性 > **C/C++ > 预处理器 > 预处理器定义** 添加: ``` _CRT_SECURE_NO_WARNINGS ``` #### 二、链接错误(LNK1181) 1. **库目录设置** - 属性 > **VC++目录 > 库目录** 添加: ``` D:\opencv\build\x64\vc15\lib ``` - 注意:`x64`对应64位编译,`vc15`对应VS2017+版本 2. **附加依赖项** - 属性 > **链接器 > 输入 > 附加依赖项** 添加: ``` opencv_world4xx.lib // Release模式 opencv_world4xxd.lib // Debug模式 ``` - 验证lib文件是否存在于库目录 #### 三、系统环境配置 1. **PATH环境变量** - 添加OpenCV的dll路径: ``` D:\opencv\build\x64\vc15\bin ``` - 需重启系统或IDE生效 2. **项目平台一致性** - 确认项目平台(如x64)与OpenCV库的编译架构完全一致 - 解决方案平台选择与OpenCV预编译库匹配的版本 #### 四、验证步骤 ```cpp #include <opencv2/opencv.hpp> using namespace cv; int main() { Mat image = imread("test.jpg"); imshow("Display", image); waitKey(0); return 0; } ``` 编译后若显示图像窗口即配置成功 #### 五、特殊错误处理 - 遇到`max/min`宏冲突时: ```cpp #define NOMINMAX // 在所有包含windows.h之前添加 #include <windows.h> ``` - 或改用`qt_windows.h`替代`windows.h`[^1]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值