当前位置: 首页 > news >正文

bae备份wordpressseo网络推广企业

bae备份wordpress,seo网络推广企业,做计算机网站,烟台电子商务网站建设一、准备软件 OpenCV源码CMake工具MinGW工具链(需要选用 posix 线程版本:原因见此) 二、操作步骤 官网提供了VC16构建版本的二进制包,但是没有给出GCC编译的版本。所以如果使用MinGW进行构建,那就只能从源码开始构建…

一、准备软件

  1. OpenCV源码
  2. CMake工具
  3. MinGW工具链(需要选用 posix 线程版本:原因见此)

二、操作步骤

官网提供了VC16构建版本的二进制包,但是没有给出GCC编译的版本。所以如果使用MinGW进行构建,那就只能从源码开始构建了。

但是如果你愿意用MSVC的话,那就可以跳过编译的步骤(当然也可以不跳过),直接使用二进制文件,进行后面的软件设计:

OpenCV源码
CMake
mingw32-make
头文件
.a
.dll
发布版
源程序
gcc
exe
运行结果

2.1 使用cmake

打开 cmake-gui.exe

选择目录、选择编译器。通常应该能自动选上MinGW,如果没有选上的话,可能MinGW路径没有加入环境变量:

cmake-configure

输入 world,打开 BUILD_opencv_world 的开关,这控制着将所有有关OpenCV的函数全部输出到一个文件中。

如果你不需要这一点,也可以不选。

中途可能报错,但是没有关系,OpenCV的主要函数功能应该都是可以编译通过的:

cmake-generate

2.2 使用mingw

在build目录下打开cmd,运行下面两行。其中 -j8 表示启用8线程并行编译,也可以不加:

mingw32-make -j8
mingw32-make install

第一条命令会运行很长很长时间。

第二条命令会创建一个名为 install 的文件夹,目录结构大概是这个样子:

编译OpenCV

这个文件夹路径要记住,后面要用。

2.3 编写OpenCV程序

写一段计算两个旋转矩形的IoU的算法,其中 rotatedRectIOU 函数来自于 ~\opencv\modules\dnn\src\nms.cpp 文件。

但是由于原本的这个函数是 inline 的,所以无法直接调用。

我这里直接复制过来了:

/* main.cpp */#include "opencv2/opencv.hpp"using namespace cv;float rotatedRectIOU(const RotatedRect& a, const RotatedRect& b) {std::vector<Point2f> inter;int res = rotatedRectangleIntersection(a, b, inter);if (inter.empty() || res == INTERSECT_NONE)return 0.0f;if (res == INTERSECT_FULL)return 1.0f;float interArea = contourArea(inter);return interArea / (a.size.area() + b.size.area() - interArea);
}int main() {auto rect1 = RotatedRect(Point2f(2, 2), Size2f(3, 4), 45);auto rect2 = RotatedRect(Point2f(2, 2), Size2f(4, 3), 30);auto iou = rotatedRectIOU(rect1, rect2);std::cout << "IoU: " << iou << std::endl;return 0;
}

测试输入的两个旋转矩形,画出来是这么个效果:

旋转矩形相交
我拿尺子测量了一下,矩形面积12平方 ,平行四边形面积9.3平方。

按照定义,IoU应大致为:

I o U = 9.3 / ( 12 + 12 − 9.3 ) = 0.633 IoU = 9.3 / (12 + 12 - 9.3) = 0.633 IoU=9.3/(12+129.3)=0.633

拿程序验证一下,编写 dist.bat 文件,其中 ^ 是转义的意思,可以方便将多行代码写到一行内:

@echo offset install=<INSTALL_FOLDER>g++ main.cpp -o main.exe ^-I %install%/include ^-L %install%/x64/mingw/lib ^-l opencv_world490

其中 -I 控制的是头文件目录,-L 控制的是库文件目录,-l 是具体要链接的库文件的名字(去掉开头的 lib 和后面的 .dll.a 后缀)。

INSTALL_FOLDER:这里填写前面 mingw32-make install 命令生成出来的文件夹路径。如果操作步骤都和我一致的话,路径应该是 ~/opencv/build/install

mingw:这里使用MinGW编译,所以文件夹是在 mingw 路径。如果使用MSVC编译,文件夹路径应该类似于是 vc16

world:前面勾选了 BUILD_opencv_world 开关,所以这里会是 opencv_world 这个库文件名。如果你前面没有勾选,则你在程序中引用了哪个库文件的函数,则需要加上哪个库的名字。

490:我这里使用的是 4.9.0 的版本,所以数字编号是 490。如果版本不同,需要根据实际情况修改。

2.4 运行程序

运行程序,需要将 ~\install\x64\mingw\bin 目录下的 libopencv_world490.dll 文件拷贝到运行程序的同级目录下。

最后运行 main.exe ,返回结果为:

IoU: 0.634597

和绘图计算结果验证正确。

http://www.hkea.cn/news/860139/

相关文章:

  • 哪里有网站建设电话查排名官网
  • 做网站需要准备的工具网络营销方案模板
  • 科技未来网站建设百度推广开户公司
  • 十度网站建设保定网站推广公司
  • php可以做视频网站有哪些软文推广渠道主要有
  • 成都网站建设桔子科技淘宝付费推广有几种方式
  • 福田的网站建设公司网络营销成功案例ppt免费
  • 网站建设英文专业术语百度推广网址
  • 做网站之前需要准备什么企业网络营销策划案
  • dreamweaver动态网站开发与设计教程内容怎么在百度上面打广告
  • 济南网站搜索优化深圳网络推广招聘
  • 网站 色彩武汉it培训机构排名前十
  • 怎么做资源网站网络培训中心
  • 服装品牌网站建设营销网站建设选择原则
  • 乌鲁木齐新市网站建设有哪些网络营销公司
  • 网站的后台怎么做企业网络规划设计方案
  • 做网站文字字号大小企业网站设计要求
  • ae有么有做gif的网站品牌推广方案范文
  • apicloud官网下载seo关键词优化排名公司
  • 上海网站制作福州百度关键字优化精灵
  • 做uml图网站百度账号快速注册入口
  • 广西梧州南京 seo 价格
  • 网站警察备案seo关键词优化平台
  • 网站开发设计实训 报告惠州网站建设
  • 网站开发的原理山西免费网站关键词优化排名
  • 石家庄网站建设全包免费推广网站2024
  • 阿里云网站备案时间无锡seo网站管理
  • 景点介绍网站模板重庆百度关键词推广
  • 做亚马逊网站费用吗曲靖新闻今日头条
  • bing 网站管理员2023今日新闻头条