如何在opencv C++中合并重叠的矩形?

nz_*_*_21 1 c++ opencv

我正在尝试合并重叠的矩形,表示为vector<Rect>

我正在查看此处的文档https://docs.opencv.org/3.4/d5/d54/group__objdetect.html ,但groupRectangles不清楚参数是什么(什么是eps?)。

在 opencv c++ 中合并矩形的最简单方法是什么?

举个例子会很有帮助。

Mik*_*iki 6

您可以使用|联合运算符

矩形 = 矩形1 | rect2 (包含 rect1 和 rect2 的最小面积矩形)

rect |= rect1 (以及相应的增广操作)

给定一个矩形向量,下面的代码创建一个包含所有其他矩形的矩形:

std::vector<cv::Rect> rects;
// fill rects....
cv::Rect final = rects[0];
for(const auto& r : rects) { final |= r; }
Run Code Online (Sandbox Code Playgroud)