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

管理咨询公司有哪些太原seo网站管理

管理咨询公司有哪些,太原seo网站管理,微商城电商系统开发商,怎么查网站是那个公司做的引言 OpenCV(Open Source Computer Vision Library)是一个功能强大的开源计算机视觉库,广泛应用于图像处理、视频分析、物体检测等领域。本文将重点介绍OpenCV中的三种常见图像处理技术:边界填充、阈值处理。通过这些技术&#xf…

引言

      OpenCV(Open Source Computer Vision Library)是一个功能强大的开源计算机视觉库,广泛应用于图像处理、视频分析、物体检测等领域。本文将重点介绍OpenCV中的三种常见图像处理技术:边界填充、阈值处理。通过这些技术,你可以更好地处理图像中的边缘、噪声以及对比度问题。

 1. 边界填充(Padding)

         在图像处理中,边界填充是一种常见的技术,用于在图像的边缘添加额外的像素。这在卷积操作(如滤波)中尤为重要,因为卷积核在图像边缘无法完全覆盖时,边界填充可以避免图像尺寸的缩小。

cv2.copyMakeBorder()是OpenCV库中的一个函数,用于给图像添加额外的边界(padding)。copyMakeBorder(src: UMat, top: int, bottom: int, left: int, right: int, borderType: int, dst: UMat | None = ..., value: cv2.typing.Scalar = ...)它有以下几个参数:src:要扩充边界的原始图像。top, bottom, left, right:相应方向上的边框宽度。borderType:定义要添加边框的类型,它可以是以下的一种:cv2.BORDER_CONSTANT:添加的边界框像素值为常数(需要额外再给定一个参数)。cv2.BORDER_REFLECT:添加的边框像素将是边界元素的镜面反射 (交界处也复制了)cv2.BORDER_REFLECT_101 或 cv2.BORDER_DEFAULT:和上面类似,但是有一些细微的不同cv2.BORDER_REPLICATE:使用最边界的像素值代替cv2.BORDER_WRAP:上下左右边依次替换
import cv2
ys = cv2.imread('yueshan.png')
ys=cv2.resize(ys,dsize=None,fx=0.5,fy=0.5)  #  图片缩放
ys=cv2.resize(ys,(640,480))
top,bottom,left,right = 50,50,50,50constant =cv2.copyMakeBorder(ys,top,bottom,left,right,borderType=cv2.BORDER_CONSTANT,value=(229,25,80))
reflect = cv2.copyMakeBorder(ys,top,bottom,left,right,borderType=cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(ys,top,bottom,left,right,borderType=cv2.BORDER_REFLECT101)
replicate = cv2.copyMakeBorder(ys,top,bottom,left,right,borderType=cv2.BORDER_REPLICATE)
wrap = cv2.copyMakeBorder(ys,top,bottom,left,right,borderType=cv2.BORDER_WRAP)
#
cv2.imshow('yuantu', ys)
cv2.waitKey(0)
cv2.imshow('CONSTANT', constant)
cv2.waitKey(0)
cv2.imshow('REFLECT', reflect)
cv2.waitKey(0)
cv2.imshow('REFLECT_101', reflect101)
cv2.waitKey(0)
cv2.imshow('REPLICATE', replicate)
cv2.waitKey(0)
cv2.imshow('WRAP', wrap)
cv2.waitKey(0)

   

2. 阈值处理(Thresholding)

       阈值处理是一种将图像转换为二值图像的技术,通过设定一个阈值,将像素值分为两类:大于阈值的像素设置为最大值(如255),小于阈值的像素设置为0。OpenCV提供了多种阈值处理方法,包括全局阈值、自适应阈值和Otsu's二值化。

常用方法:

示例代码

import cv2
image = cv2.imread('zl.png',0) #灰度图,
ret, binary = cv2.threshold(image, 175, 255, cv2.THRESH_BINARY)
ret1, binaryinv = cv2.threshold(image, 175, 255, cv2.THRESH_BINARY_INV)
ret2, trunc = cv2.threshold(image, 175, 255, cv2.THRESH_TRUNC)
ret3, tozero = cv2.threshold(image, 175, 255, cv2.THRESH_TOZERO)
ret4, tozeroinv = cv2.threshold(image, 175, 255, cv2.THRESH_TOZERO_INV)cv2.imshow('gray', image)  #原灰度图
cv2.waitKey(0)
cv2.imshow('binary', binary)  #偏白的变纯白,偏黑的变纯黑
cv2.waitKey(0)
cv2.imshow('binaryinv', binaryinv)  #偏白的变纯黑,偏黑的变纯白
cv2.waitKey(0)
cv2.imshow('trunc', trunc)   #白色变得一样灰蒙蒙,偏黑的不变
cv2.waitKey(0)
cv2.imshow('tozero', tozero)  #偏白色不变,偏黑的就变纯黑
cv2.waitKey(0)
cv2.imshow( 'tozeroinv', tozeroinv)   #偏白色变纯黑,偏黑的不变
cv2.waitKey(0)

   

 总结

      本文介绍了OpenCV中的三种常见图像处理技术:边界填充、阈值处理。这些技术是图像处理的基础,广泛应用于去噪、边缘检测、图像分割等任务中。通过掌握这些方法,你可以更好地处理图像数据,并为后续的计算机视觉任务打下坚实的基础。

http://www.dtcms.com/wzjs/403867.html

相关文章:

  • 广州做网站哪个公司做得好怎么做外链
  • 如何知道一个网站的流量竞价
  • 网站建设数据库怎么选择最新时事热点
  • 网站建设汇卓安卓手机游戏优化器
  • 销售小程序软件有前景吗河北网站seo地址
  • 域名永久免费注册四川seo推广
  • wordpress无法上传mp3网络优化器下载
  • 如果盗用网站模板北京sem
  • 如何选择专业网站开发商十大seo免费软件
  • 北京网站设计公司兴田德润放心免费个人网站建站
  • dw设计做网站案例seo就是搜索引擎广告
  • 用vs2010做网站教程营销推广平台
  • 黄山网站建设中国十大it培训机构排名
  • 专业网站建设费用科学新概念seo外链
  • 门户网站建设思维导图手游推广平台有哪些
  • 用java做网站好吗新闻发稿渠道
  • 网站流量统计分析的维度包括世界企业排名500强
  • 网站内容填写路由器优化大师
  • 自制手机网站疫情最严重的三个省
  • 长沙seo网站建设袁飞最好百度推广公司电话
  • 工信部网站黑名单查询最近10条重大新闻
  • 好看的公司网站排版设计软文代写平台
  • wordpress没有票编辑器凌哥seo技术博客
  • 做新网站推广的活动济南今日头条最新消息
  • 网站开发技术简介dw新东方在线教育平台官网
  • 敦煌网的网站推广方式百度下载app安装
  • 备案网站公共查询新闻小学生摘抄
  • 外国设计网站seo资源
  • 网站上的图片带店面是怎么做的写软文用什么软件
  • 襄阳哪里有做网站的百度注册新账号