首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

opencv: 绘制矩形轮廓框,并记录轮廓框坐标

步骤简述 使用OpenCV绘制矩形轮廓框,一般包括如下步骤: 转换为灰度图; 进行阈值处理; 进行中值滤波; 在原始图像上绘制矩形框。...附图解析 原始图像: 第一步,转换为灰度图: 第二步,经过阈值处理: 第三步,中值滤波后: 最后一步,在原始图像上绘制矩形框: 生成的记录文件(矩形轮廓框四个端点的平面坐标.../origin.jpg') # 文档路径,用于记录轮廓框坐标 txt_file = open('....threshold(src=pic, thresh=200, maxval=255, type=1) # 中值滤波,去除椒盐噪声 pic = cv2.medianBlur(pic, 5) # 边缘检测,得到的轮廓列表..._1, contours, _2 = cv2.findContours(pic, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) # 根据轮廓列表,循环在原始图像上绘制矩形边界

3.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    canvas绘制图像轮廓效果绘制边框绘制轮廓 使用算法(marching-squares-algorithm)总结参考文档

    考虑到在三维webgl中,计算轮廓的算法思路是这样的: 先绘制三维模型自身,并在绘制的时候启动模板测试,把三维图像保存到模板缓冲中。...下面是一个示例效果,(参考https://stemkoski.github.io/Three.js/Outline.html) image.png 在2d canvas里面有类似的原理可以实现轮廓效果...使用上面的算法,该图片的轮廓如下: image.png 可以发现上边缘的轮廓宽度变成了0。 在比如下图, image.png 绘制后上边缘的轮廓比其他边缘的细。...最后的绘制效果如下: image.png 可以看到轮廓的颜色变浅了,解决办法就是多绘制几次放大图。...,而不需要中空部分也绘制轮廓效果。

    2.6K30

    python 基于opencv 绘制图像轮廓

    这篇文章主要介绍了python 基于opencv 绘制图像轮廓的示例,帮助大家更好的利用python的opencv库处理图像,感兴趣的朋友可以了解下 图像轮廓概念 轮廓是一系列相连的点组成的曲线,代表了物体的基本外形...opencv绘制图像轮廓 轮廓找出来后,可以像图中那样用红色画出来:cv.drawContours() cv.drawContours(img, contours, -1, (0, 0, 255),...2) 其中参数2就是得到的contours,参数3表示要绘制哪一条轮廓,-1表示绘制所有轮廓,参数4是颜色(B/G/R通道,所以(0,0,255)表示红色),参数5是线宽。...一般情况下,我们会首先获得要操作的轮廓,再进行轮廓绘制及分析: cnt = contours[1] cv.drawContours(img, [cnt], 0, (0, 0, 255), 2) 实验:找出并绘制图像轮廓...以上就是python 基于opencv 绘制图像轮廓的详细内容

    2K11

    OpenCV 入门教程:寻找和绘制轮廓

    OpenCV 入门教程:寻找和绘制轮廓 导语 寻找和绘制轮廓是图像处理中常用的技术之一,用于识别、定位和分析图像中的目标区域。在 OpenCV 中,寻找和绘制轮廓可以通过边缘检测和形态学操作实现。...二、绘制轮廓 绘制轮廓是通过将寻找到的轮廓绘制在图像上,用于可视化和分析。...contours 参数是轮廓列表, -1 参数表示绘制所有轮廓, (0, 255, 0) 参数表示绘制轮廓的颜色, 2 参数表示绘制轮廓的线宽。...三、示例应用 现在,我们来看一些常见的示例应用,演示寻找和绘制轮廓的操作: 3.1 目标检测和定位 使用寻找和绘制轮廓可以实现目标检测和定位。...寻找和绘制轮廓是图像处理中常用的技术,可以用于目标检测、定位、图像分割等多个领域。通过调整边缘检测和轮廓绘制的参数,你可以根据实际需求得到所需的轮廓处理效果。

    55420

    C++ OpenCV轮廓周围矩形和圆形绘制

    前面我们学习了轮廓提取,正常我们在提到到轮廓截取出来时一般需要是矩形的图像,这次我们就来学习一下轮廓周围绘制矩形等。...相关API approxPolyDP,对图像轮廓点进行多边形拟合 approxPolyDP(inputArray curve,OutputArray approxCurve,double epsilon...,bool closed) InputArray curve:一般是由图像的轮廓点组成的点集 OutputArray approxCurve:表示输出的多边形点集 double epsilon:主要表示输出的精度...,就是另个轮廓点之间最大距离数,5,6,7,,8,,,,, bool closed:表示输出的多边形是否封闭 ---- 矩形 boundingRect,得到轮廓周围最小矩形 Rect boundingRect...操作步骤 将源图像变为二值图像 发现轮廓,找到图像轮廓 通过API找到轮廓点上的最小包含矩形,圆,椭圆 绘制图像 ? ? ? 多边形拟合 ? 可旋转的最小矩形 ? 最小矩形 ? 最小包围圆形 ?

    2.5K20

    使用folium绘制区域轮廓与网格线

    ,其中关于北京行政区域轮廓及网格的绘制有朋友感兴趣,今天我们就来简单介绍一下。 先看效果: ? 1....绘制区域轮廓 这里用到的是folium绘图库,folium是js上著名的地理信息可视化库leaflet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet...官网: https://python-visualization.github.io/folium/ 绘制区域轮廓用到的是PolyLine方法,本质上就是将区域的若干个经纬度坐标点一一连线,颗粒度约细则轮廓越精确...所以,这里我们要绘制北京市的行政区域轮廓的话,需要先获取其经纬度坐标点列表。 在上期案例《想知道所在的城市有多少条道路?我用python发现北京一共有1.5万条道路!》...区域 到这里,大家对folium绘制轮廓就有了一定的了解,是不是还蛮简单的,那就简单定义一个函数吧。

    7.6K21

    ggforce|绘制区域轮廓-区域放大-寻找你的“onepiece”

    ggforce是ggplot2的扩展包,“擅长”于根据数据绘制轮廓以及区域放大。先将整体分为几个重要的“版图”,然后根据“线索”重点放大后在此区域进行精细“搜寻”,最终找到“ONEPIECE”!?...二 ggforce绘制轮廓 1 添加轮廓 geom_mark_...()系列函数能够非常简单的围绕数据组绘制轮廓,以下四个参数可以绘制不同的轮廓: geom_mark_circle() geom_mark_ellipse...() geom_mark_hull() geom_mark_rect() 使用geom_mark_rect(),以每个时区为组绘制圆角矩形轮廓 p + geom_mark_rect() ?...,此时就需要geom_mark_hull()函数来围绕数据组的轮廓绘制更复杂的多边形。...优化: 1)fill函数添加轮廓中颜色,show.legend去掉legend; 2)expand调整轮廓大小,theme_no_axes只保留边距。

    1K20

    OpenCV 轮廓 —— 轮廓分析

    当分析一张图像的时候,针对轮廓,我们也许有很多事情要做。毕竟,所有轮廓都是或即将是我们想要进行识别或操作的。另外相关的还有多种对轮廓的处理,如描述轮廓,简化或拟合轮廓,匹配轮廓到模板,等等。...本文记录 OpenCV 中的轮廓分析的相关操作。 多边形逼近 当我们绘制一个多边形或进行形状分析时,通常需要使用多边形逼近一个轮廓,使顶点数变少。...Douglas-Peucker(DP) 逼近算法 该算法首先从轮廓(图B)中挑出两个最远的点,将两点相连(图C)。然后在原来的轮廓上寻找一个离线段距离最远的点, 将该点加入逼近后的新轮廓中。...从这里可以看出,将该精度设置为轮廓周长或外包矩形周长等表示轮廓总长度的值的几分之一比较合适。...这可能包括长度或其他一些反应轮廓整体大小的量度。另一个有用的特性是轮廓矩(contour moment)可以用来概括轮廓的总形状特性,这部分我们在下一节讨论。

    3.3K20

    OpenCV 轮廓 —— 轮廓匹配

    一个跟轮廓相关的最常用到的功能是如何匹配多条轮廓。我们或许需要比较两条计算好的轮廓,或者比较一条轮廓和一个抽象模板。这两种情况都会在本文讨论。...矩 相关介绍 比较两条轮廓最简洁的方法之一是比较它们的轮廓矩。轮廓矩代表了一条轮廓、一幅图像、一组点集的某些高级特征。下面的所有讨论对轮廓、图像、点集都同样适用,简便起见,将它们统称为对象。...当处理轮廓时,结果是轮廓的长度。 将m_{10}和m_{01}相加再除以mo,能得到整个对象的平均x值和y值。 cv2.moments 计算多边形或光栅化形状的所有矩,最高可达三阶。...官方文档 仅适用于来自 Python 绑定的轮廓矩计算: 注意,输入数组的 numpy 类型应该是 np.int32或 np.float32。...官方文档 函数使用 cv2.matchShapes( contour1, # 第一个轮廓或灰度图像。 contour2, # 第二轮廓或灰度图像。

    3.3K30

    web网站使用three.js绘制三维图形

    最近项目中在地图中显示三维河床的功能,最终实现是用three.js来实现绘制的。这里记录一下整体的调用过程。...# 一:安装 Three.js Three.js 是一个强大的 JavaScript 库,用于在网页上创建和显示 3D 图形。...幸运的是,Three.js的社区中有很多关于性能优化的讨论和分享,这为开发者提供了宝贵的参考。 4. 跨平台与兼容性 Three.js基于WebGL,而WebGL又得到了现代浏览器的大力支持。...此外,随着Web技术的发展和普及,越来越多的设备和平台开始支持WebGL和Three.js,这为Three.js的跨平台应用提供了广阔的空间。 5....社区与生态 Three.js拥有庞大的社区和活跃的生态系统。在社区中,你可以找到各种高质量的教程、插件、工具和库,这些资源可以帮助你更快地学习和使用Three.js

    24210

    绘制漂亮的中学操场轮廓,生成带经纬度数据

    下图是一个中学的建筑、操场、绿地polygon数据,这些数据都是基于geobuilding绘制的,这里介绍下操场的绘制方法。...图片操场可以理解为2个半圆加一个长方形合并,我们使用参考线工具来绘制,通过【左转】、【右转】调整地图旋转,确保操场水平线和水平刻度重合。拖动参考球(绿色)到合适的矩形位置。...如下图图片下面开始绘制左边的圆,步骤拖动参考球410*410,正方形框,1点击【绘制图形】按钮,2、然后选中刚绘制的矩形,输入正40边,点击【框内正】按钮图片图片选中这个圆形,点击参考线工具【左右对称复制...拖动好了以后,点击【创建图形】得到矩形图片 按着shift键,同时选择2个圆形和中间的矩形,点击【面合并】按钮图片合并后隐藏参考线,如下图,我们得到了漂亮的操场轮廓。...{"zoom":17.06123136912676,"center":[116.14629597404104,39.72563348924925],"pitch":0}绘制的跑道geojson数据{"id

    1K30
    领券