cv::intersectConvexConvex返回其中一个输入点集,两个点集不相交

ops/2024/11/14 13:15:02/

问题:cv::intersectConvexConvex返回其中一个输入点集,但两个点集并不相交
版本:opencv 3.1.0

git上也有人反馈了intersectConvexConvex sometimes returning one of the input polygons in case of empty intersection #10044
是凸包嵌套判断逻辑BUG,要改源码: modules/imgproc/src/geometry.cpp
在这里插入图片描述
进去源码看了下,还真的是,低级错误
在这里插入图片描述

解决方法:

可以用更新版本的opencv,2017年的时候已经修复合并至主分支 Fix for intersectConvexConvex nested contours check #10053

也可以把上面的源码提出来自己改下函数名称直接调用


http://www.ppmy.cn/ops/132522.html

相关文章

设计模式-构建者

构建者是一种用于创建对象时将对象的构建过程和表示分离的设计模式,适用于构造过程复杂的对象和创建需要多种变化的场景使用. 例如一个汽车是一个抽象概念,车会具体到很多种,不同的发动机,车身,轮胎等等构建一个具体的车,所以这个具体对象创建有很多种可能.因此可以使用构建者设…

VScode插件:前端每日一题

简单说下你对 HTTP2 的理解 HTTP/2 是 HTTP 协议的一个改进版本,旨在提升网络传输的速度和效率,主要改进点包括: 多路复用:允许多个请求和响应在同一个 TCP 连接中并行传输,避免 HTTP/1.x 的“队头阻塞”问题。 头部压…

【HarmonyOS】not supported when useNormalizedOHMUrl is not true.

【HarmonyOS】 not supported when useNormalizedOHMUrl is not true. 问题背景: 集成三方库编译时,IDE提示报错信息如下: hvigor ERROR: Bytecode HARs: [cashier_alipay/cashiersdk] not supported when useNormalizedOHMUrl is not true…

MySQL 数据库之库操作

文章目录 1. 什么是数据库2. 基础概念2.1 连接数据库2.2 服务器,数据库,表关系2.3 SQL分类 3. 库的操作3.1 创建,选择,查看数据库3.2 字符集和默认校验规则 3.3 操纵数据库3.3.1 数据库查看3.3.2 数据库删除3.3.3 数据库修改 4. 其…

设计模式小结一观察者(Observer)模式

先上结论: 这是一个开发者经常用到但你可能没有意识到的设计模式,当前Android客户端开发经常用到的几大流行框架:LiveData、RxJava、EventBus等的核心都是采用此种设计模式思想。讲到这里,还不赶紧研究下这几个开源框架的源码,不然面试问的深入一点你就露馅了! 开干! …

vue大疆建图航拍功能实现

介绍 无人机在规划一块区域的时候,我们需要手动的给予一些参数来影响无人机飞行,对于一块地表,无人机每隔N秒在空中间隔的拍照地表的一块区域,在整个任务执行结束后,拍到的所有区域照片能够完整的表达出一块地表&…

Greiner 经典力学(多体系统和哈密顿力学)第十一章 学习笔记(Rotation About a Fixed Axis)

第十一章 学习笔记(Rotation About a Fixed Axis) 这一章主要引入了力偶的概念。一对作用在刚体上方向相反,大小相同的力称为力偶。**力偶 ** 对刚体上任意一点的力矩都是相同的。 D l F \mathbf D \mathbf l \times \mathbf F DlF 其中…

Flutter鸿蒙next 中使用 MobX 进行状态管理

引言 在 Flutter 中,状态管理是开发过程中至关重要的一部分。Flutter 提供了多种方式来管理应用的状态,如 Provider、Riverpod、BLoC 等。除了这些,MobX 也是一个流行的状态管理库。MobX 是一个响应式编程库,基于观察者模式&…