当前位置: 首页 > news >正文

正规接单网站制作网站公

正规接单网站,制作网站公,餐饮团购网站建设,青岛外贸网站文章目录 一、简介1. 意义2.具体步骤 二、代码实现三、总结 一、简介 1. 意义 在OpenCV中,轮廓检测是图像处理中一个非常重要的环节,它允许我们识别图像中的形状。这个过程通常涉及几个步骤:读取图像、转换为灰度图、应用阈值处理&#xff…

文章目录

  • 一、简介
    • 1. 意义
    • 2.具体步骤
  • 二、代码实现
  • 三、总结

一、简介

1. 意义

在OpenCV中,轮廓检测是图像处理中一个非常重要的环节,它允许我们识别图像中的形状。这个过程通常涉及几个步骤:读取图像、转换为灰度图、应用阈值处理(或边缘检测)以获取二值图像、然后使用cv2.findContours()函数查找轮廓。

2.具体步骤

  • 图像预处理:首先,对原始图像进行预处理,以便更容易地检测轮廓。这通常包括转换为灰度图像、应用滤波器(如高斯模糊)以减少噪声,以及二值化图像以简化后续处理。
  • 二值化:将灰度图像转换为二值图像,即图像中的每个像素都被设置为黑色或白色,这取决于其灰度值是否超过某个阈值。二值化是轮廓检测中的关键步骤,因为它简化了图像,使得轮廓更加清晰。
  • 查找轮廓:使用OpenCV的cv2.findContours()函数在二值图像中查找轮廓。这个函数会返回图像中所有轮廓的列表以及轮廓的层次结构。
  • 轮廓绘制:为了可视化或进一步处理,可以使用cv2.drawContours()函数在原始图像或另一个图像上绘制找到的轮廓。

二、代码实现

这段代码是对图片进行轮廓检测,通过读取图片,并转换为灰度图等一系列操作来对图片进行轮廓绘制,以下是代码详情与解释。

import cv2  # 读取图像  
phone = cv2.imread('sj.png')  
# 转换为灰度图  
phone_gray = cv2.cvtColor(phone, cv2.COLOR_BGR2GRAY)  
# 显示灰度图  
cv2.imshow('phone_gray', phone_gray)  
cv2.waitKey(0)  # 应用阈值处理以进行二值化  
ret, phone_binary = cv2.threshold(phone_gray, 120, 255, cv2.THRESH_BINARY)  
# 显示二值化图像  
cv2.imshow('phone_binary', phone_binary)  
cv2.waitKey(0)  # 寻找轮廓  
contours, hierarchy = cv2.findContours(phone_binary, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)  
# 打印层次结构和轮廓数量  
print(hierarchy)  
print(len(contours))  # 轮廓绘制  
# 在原始图像上绘制轮廓  
image_copy = phone.copy()  
cv2.drawContours(image_copy, contours, -1, (0, 255, 0), 3)  
# 显示带有轮廓的图像  
cv2.imshow('Contours_show', image_copy)  
cv2.waitKey(0)  # 销毁所有窗口  
cv2.destroyAllWindows()
  • 读取图像:使用cv2.imread()函数读取名为sj.png的图像文件。
  • 转换为灰度图:通过cv2.cvtColor()函数将图像从BGR颜色空间转换为灰度图像,因为轮廓检测通常在灰度图像上进行。
  • 显示灰度图:使用cv2.imshow()函数显示灰度图像。
  • 二值化:应用阈值处理将灰度图像转换为二值图像,其中所有像素值大于或等于120的都被设置为255(白色),其余都被设置为0(黑色)。
  • 显示二值化图像:使用cv2.imshow()函数显示二值化后的图像。
  • 寻找轮廓:使用cv2.findContours()函数在二值化图像中查找轮廓。该函数返回两个值:轮廓列表和轮廓的层次结构。
  • 打印层次结构和轮廓数量:输出轮廓的层次结构和找到的轮廓数量。
  • 轮廓绘制:在原始图像(或其副本)上绘制找到的轮廓。这里使用绿色((0, 255, 0))和线宽为3来绘制。
  • 显示带有轮廓的图像:使用cv2.imshow()函数显示绘制了轮廓的图像。
  • 销毁所有窗口:在程序结束时销毁所有OpenCV创建的窗口。
    在这里插入图片描述

三、总结

在读取图像文件名,我们可以根据具体需求调整阈值处理和其他参数。此外,cv2.RETR_TREE是一个轮廓检索模式,它检索所有轮廓并创建完整的层次结构。根据我们的需求,可以选择其他检索模式,如cv2.RETR_EXTERNAL只检索最外层的轮廓。cv2.CHAIN_APPROX_SIMPLE是一个轮廓近似方法,它压缩水平、垂直和对角线段,只保留它们的端点。

http://www.yayakq.cn/news/504918/

相关文章:

  • 手机网站免费制作平台有哪些wordpress主题设置选项
  • 网站建设面试试题软件技术是干什么的
  • 卖域名的网站哪个好做水果网站首页的图片素材
  • 嘉兴建设中学网站网站建设如何为企业电商化转型赋能
  • 视频网站后台管理系统硬件开发是什么意思
  • 网站建设专业网站设计公司物格网企业网站设计与建设
  • 海宁做网站常宁市城乡和住房建设网站
  • 视频播放网站建设房地产网站建设内容
  • 让移动网站动漫设计专业的学校
  • 在线教学的网站开发方案wordpress积分查看
  • 教育网站制作设计那里网站建设好
  • 网站开发应用开发代做施组 方案的网站
  • 郑州模板建站多少钱郑州百度推广开户
  • 大数据营销网站北京南站到北京站坐地铁几号线
  • 19年做网站电子贺卡制作
  • 一个公司可以做两个网站推广吗提供给他人做视频解析的网站源码
  • 微博如何做外链到时自己网站网络品牌塑造
  • 让别人做网站要注意什么6网站建设工作会议召开
  • 北京互联网公司建网站朋友圈网站广告怎么做
  • 营销型网站建设明细报价表wordpress 监测插件
  • 怎么让百度搜到自己的网站打开网站速度
  • 开家网站建设培训学校网站怎么做要多少钱
  • 电商网站前端模板2022国际国内重大新闻
  • 程序员会搭建非法网站吗玉林城乡住房建设厅网站
  • 网站如何设计搜索框海口模板网站建站
  • 交河做网站个人备案网站可以做新闻站吗
  • 购物网站开发案例下载苏州市工业园区规划建设局网站
  • wordpress建2个网站wordpress文本框
  • 网站改造设计方案云南网站建设崇左
  • 万网虚拟主机两个网站做分析图的网站