相关疑难解决方法(0)

OpenCV groupRectangles - 获取分组和未分组的矩形

我正在使用OpenCV并希望将具有显着重叠的矩形组合在一起.我已经尝试过groupRectangles这个,它采用了一个组阈值参数.如果阈值为0则根本不进行任何分组,并且阈值为1时,仅返回由至少2个矩形组成的矩形.例如,给定下图中左侧的矩形,您最终得到右侧的2个矩形:

在此输入图像描述

我想最终得到的是3个矩形.上图中右侧的2,加上左侧图像右上角的矩形,不与任何其他矩形重叠.实现这一目标的最佳方法是什么?

c++ opencv rectangles

17
推荐指数
1
解决办法
1万
查看次数

找到重叠的矩形算法

假设我有一组巨大的非重叠矩形和整数坐标,它们一劳永逸地固定

我有另一个矩形A,其整数坐标的坐标正在移动(但你可以假设它的大小是常数)

查找哪些矩形与A交叉(或内部)的最有效方法是什么?我不能简单地遍历我的设置,因为它太大了.谢谢

编辑:矩形都与轴平行

c++ algorithm computational-geometry

11
推荐指数
2
解决办法
7547
查看次数

OpenCV中未记载的groupRectangles变体

在OpenCV中的cascadedetect.cpp中,有几种groupRectangles函数变体:

void groupRectangles(std::vector<Rect>& rectList, int groupThreshold, double eps);
void groupRectangles(std::vector<Rect>& rectList, std::vector<int>& weights, int groupThreshold, double eps);
void groupRectangles(std::vector<Rect>& rectList, std::vector<int>& rejectLevels, std::vector<double>& levelWeights, int groupThreshold, double eps);
Run Code Online (Sandbox Code Playgroud)

但是在OpenCV文档中,只清楚地记录了第一个变体,提到了第二个变体,但weights没有解释参数.第三个甚至没有提到.

谁能解释的含义weights,rejectLevelslevelWeights

opencv

5
推荐指数
1
解决办法
2952
查看次数

合并和分割重叠的矩形以产生不重叠的矩形

我正在寻找一个算法如下:

给定一组可能重叠的矩形(所有这些都是"未旋转",可以统一表示为(左,上,右,下)连音符等...),它返回一组最小(非旋转)非重叠的矩形,占据相同的区域.

乍一看似乎很简单,但是很容易变得棘手(至少要有效地完成).

这个/ ideas /指针有一些已知的方法吗?

不一定是最小但是启发式小的集合的方法也很有趣,所以产生任何有效输出集的方法也是如此.

algorithm graphics mathematical-optimization rectangles computational-geometry

3
推荐指数
1
解决办法
3747
查看次数