python - 如何找到由线openCV python连接的对象
问题描述
嗨,请检查下面 的图片 图片在这里
我真正想要的是 1)哪条线使用 OpenCV 连接哪个矩形 例如 - 假设如果线连接到第一个和第三个三角形/矩形,那么它将返回一个字典,如{"line_1" :[triangle_1 , rectabgle_2 ,traingale_3] ,}
键作为线,值作为连接对象
我尽了最大努力,但我面临矩形发现和垂直线的问题
另外,如果您有任何逻辑,请告诉我
解决方案
我不会在这里编写任何代码,而只是一种简单的方法,您可以使用它来获得所需的结果:
- 二值化图像,使线条/矩形/三角形是前景像素。
- 运行 findContours 以查找框/三角形。
- 对它们进行凸包进行分类(矩形/三角形)。获取边界框。
- 删除分类轮廓以获得线条。这些应该是现在唯一剩下的轮廓。
- 找出哪些线的极值点接近分类的矩形/三角形。
您可能需要的 Opencv 函数:adaptiveThresholding、findContours、convexHull 等。
推荐阅读
- postman - 获取像数组一样命名的对象的值
- c++ - std::shared_ptr vs std::make_shared:意外缓存未命中和分支预测
- haskell - Haskell - 集合的笛卡尔函数实现为二叉树
- python - iPython azure 机器学习(经典)上缺少模块 tensorflow
- java - 支持字母表的 24 小时制时钟的正确正则表达式是什么(java)
- unix - supervisord 静默停止,但让进程继续运行
- java - 如何在 Selenium 的控制台中打印 PCF Fresh 日志
- azure - Azure ARM 模板跳过嵌套条件
- python - Tensorflow:FailedPreconditionError:找不到所需的函数定义
- azure-cognitive-search - 如何使用 REST API 创建 Azure 搜索索引器