找到 34423 篇文章 关于编程

如何使用 C++ 在 OpenCV 中实时跟踪人脸?

Ginni
更新于 2021年3月10日 09:08:19

289 次浏览

我们将学习如何在 OpenCV 中实时跟踪人脸。此程序与之前的程序相同,不同之处在于我们使用椭圆而不是矩形来识别面部,并且我们还使用了额外的“cout”语句来在控制台窗口中显示面部的坐标。以下程序用于实时检测人脸:示例 #include #include #include // 此头文件包含“rectangle()”函数的定义 // #include // 此头文件包含级联分类器的定义 // #include using namespace std; using namespace cv; int main(int argc, char** argv) {    Mat video_stream; //声明一个矩阵来保存来自... 阅读更多

如何使用 C++ 在 OpenCV 中实时检测人脸?

Ginni
更新于 2021年3月10日 09:06:25

2K+ 次浏览

实时人脸检测类似于在静止图像中检测人脸。唯一的区别在于实时人脸检测中,我们必须获取计算机的视频流。在此程序中,我们使用了“VideoCapture()”函数。此函数从其他摄像头捕获视频并将帧临时存储在分配给它的矩阵中。在此函数中,此函数从默认摄像头捕获视频并将帧临时存储在“real_time”矩阵中。以下程序实时检测人脸:示例 #include #include #include // 此头文件包含“rectangle()”函数的定义 // #include // 此头文件包含级联分类器的定义 // #include using ... 阅读更多

如何使用 C++ 在 OpenCV 中跟踪人脸的位置?

Ginni
更新于 2021年3月10日 09:05:32

289 次浏览

当我们想要跟踪人脸的位置时,最好用椭圆包围人脸,因为椭圆有一个中心。这个中心也是检测到的人脸的中心点。因此,跟踪检测到的人脸的位置变得更加准确。以下程序跟踪检测到的人脸的中心并在控制台窗口中显示位置:示例 #include #include #include // 此头文件包含“rectangle()”函数的定义 // #include // 此头文件包含级联分类器的定义 // #include using namespace std; using namespace cv; int main(int argc, char** argv){    Mat image_with_humanface; //声明一个矩阵来加载... 阅读更多

如何使用 C++ 在 OpenCV 中检测最大的人脸?

Ginni
更新于 2021年3月10日 09:03:37

247 次浏览

我们将学习如何仅检测最大的人脸。本主题与上一主题相同。唯一的区别是我们使用了额外的“Rect”结构和“for”循环来检测最大的人脸。“此函数的实际格式:Mat faceROI = image_with_humanface(maxRect)maxRect 具有图像上最大人脸的面积和位置信息。上面一行正在裁剪存储在 maxRect 中的相同区域,该区域位于图像上最大人脸所在的相同位置,并将其存储在“faceROI”矩阵中。以下程序从静止图像中检测最大的人脸:示例 #include ... 阅读更多

如何使用 C++ 在 OpenCV 中裁剪检测到的人脸?

Ginni
更新于 2021年3月10日 08:59:54

655 次浏览

我们将了解如何在 OpenCV 中裁剪检测到的人脸。要裁剪检测到的人脸,我们需要多个矩阵。最合适的方法是使用图像数组。在此程序中,使用以下两行,我们声明了两个图像矩阵:Mat cropped_faces[4];Mat faceROI[4];第一个矩阵用于存储裁剪后的图像,第二个矩阵用于定义感兴趣区域。在检测过程中,程序首先定位人脸并将它们存储在向量中。在我们的程序中,向量的名称是“faces”向量可以包含多个元素。使用以下两行,我们... 阅读更多

如何使用 C++ 在 OpenCV 中计算人脸数量?

Ginni
更新于 2021年3月10日 08:58:49

283 次浏览

计算图像中人脸的数量很容易。我们在上一节中编写的程序已经包含了“faces.size()”中人脸数量的信息。此代码-“faces.size()”给出一个整数值。例如,如果我们编写“int x = faces.size()”,“x”将包含人脸的数量。以下程序计算给定图像中的人脸数量并在控制台窗口中显示它。示例 #include #include #include // 此头文件包含级联分类器的定义 // #include using namespace std; using namespace cv; int main(int argc, char** argv){    Mat image_with_humanface; //声明一个矩阵来加载包含人脸的图像... 阅读更多

如何使用 C++ 在 OpenCV 中检测静止图像中的人脸?

Ginni
更新于 2021年3月10日 08:55:37

624 次浏览

我们从图像中检测人脸。为了检测人脸,我们使用了“detectMultiScale()”函数。此函数的实际格式:语法 detectMultiScale(源矩阵,向量,搜索比例因子,最小邻域,标志,最小特征大小)通过更改函数参数,我们可以控制“detect.MultiSpace()”函数。此函数采用以下参数。源矩阵这是将检测人脸的矩阵。在这种情况下,它将是保存视频帧的矩阵。向量“detect.MultiScale()”函数将是一个矩形类型的向量。矩形是 OpenCV 中的向量,我们必须将其定义为向量。搜索比例因子搜索比例因子决定了将搜索多少不同大小的... 阅读更多

如何使用 C++ 在 OpenCV 中跟踪颜色?

Ginni
更新于 2021年3月10日 08:52:23

625 次浏览

颜色跟踪类似于颜色检测。为了跟踪目的,我们添加了一些额外的行来计算检测到的物体的面积,然后跟踪该区域的当前位置,最后使用 OpenCV 的 line() 函数来显示物体的运动路径。以下程序演示了如何使用 C++ 在 OpenCV 中跟踪颜色。示例 #include #include #include using namespace std; using namespace cv; int main(int argc, char** argv) {    VideoCapture video_load(0); //从默认摄像头捕获视频 //    namedWindow("Adjust"); //声明窗口以显示图像 //    int Hue_Low= 0; //色调的下限 //    int Hue_high = 22; //色调的上限 ... 阅读更多

如何使用 C++ 中的 OpenCV 检测颜色?

Ginni
更新于 2021年3月10日 08:50:24

2K+ 次浏览

我们将学习如何基于颜色检测特定颜色和跟踪物体。颜色检测和基于颜色检测的跟踪系统的性能取决于环境。如果您改变房间的光线或背景颜色,颜色检测将受到显著影响。下面的程序演示了如何在C++中使用OpenCV检测颜色。示例 #include <opencv2/opencv.hpp> #include <iostream> #include <string> using namespace std; using namespace cv; int main(int argc, char** argv) { VideoCapture video_load(0);//从默认摄像头捕获视频// namedWindow("Adjust");//声明窗口以显示图像// int Hue_Lower_Value = 0;//初始色调值(较低)// int Hue_Lower_Upper_Value = 22;//初始色调 ... 阅读更多

如何在C++中使用OpenCV处理鼠标事件?

Ginni
更新于 2021年3月10日 08:48:25

2K+ 次浏览

鼠标事件是OpenCV最实用的功能之一。在OpenCV中,我们可以跟踪鼠标指针的位置和点击(右键、左键和中键)。OpenCV在机器人技术和计算机视觉中应用广泛。在机器人技术和计算机视觉中,经常使用鼠标指针和点击的跟踪。在这里,我们将学习如何跟踪鼠标指针在图像上的位置和点击。下面的程序演示了如何跟踪鼠标指针的位置和点击。示例 #include <opencv2/opencv.hpp> #include <iostream> #include <string> using namespace std; using namespace cv; void locator(int event, int x, int y, int flags, void* ... 阅读更多

广告
© . All rights reserved.