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

dede网站地图栏目如何上传文件wordpress禁用古登堡

dede网站地图栏目如何上传文件,wordpress禁用古登堡,有什么做家纺的网站,开发公司资料管理目录 一.图像直方图 1.图像直方图的概念与作用 2. 绘制直方图的方法 二.图像直方图均衡化 1.图像直方图均衡化介绍和全局均衡化 2.自适应直方图均衡化(局部直方图均衡化) 三.掩膜 1.掩膜(Mask)技术详解 2.掩膜的生成与应…

目录

一.图像直方图

1.图像直方图的概念与作用

2. 绘制直方图的方法

二.图像直方图均衡化

1.图像直方图均衡化介绍和全局均衡化

2.自适应直方图均衡化(局部直方图均衡化)

三.掩膜

1.掩膜(Mask)技术详解

2.掩膜的生成与应用

3.像素直方图的计算


一.图像直方图

1.图像直方图的概念与作用

  • 定义: 图像直方图是用于统计和图形化表示图像中像素值分布情况的一种工具。它会统计出在整个图片中,各个像素强度(灰度值)的出现频率。
  • 作用: 在实际应用中,可用于检测场景变化。例如,在白天,图像的直方图峰会偏向较高像素值;切换至夜间后,对应的峰值会向较低像素值移动。

2. 绘制直方图的方法

  • 方法一 (NumPy高级):
    • 从OpenCV读取图像矩阵。
    • 使用numpy.ravel()方法将二维像素阵拉伸成一维数组。
    • 利用matplotlib.pyplot.hist()函数进行直方图绘制和显示。
import cv2
from matplotlib import pyplot as plt
image=cv2.imread('coca.png',cv2.IMREAD_GRAYSCALE)
a=image.ravel()
#绘制直方图
plt.hist(a,bins=256)#bins=256指定直方图的条数,即灰度级的数量
plt.show()

  • 方法二 (OpenCV原生):
    • 使用cv2.calcHist()方法直接计算直方图。
    • 主要参数包括:
      • 输入的图片矩阵。
      • 统计的通道数,灰度图传“0”,彩色图需循环指定B、G、R三个通道。
      • bins(区间数),即直方图的分割条数。
      • 像素值的计算范围。
    • 计算出的直方图结果需使用matplotlib进行绘制和展示。
image_hist=cv2.calcHist([image],[0],None,[16],[0,256])
#第一个参数 [image]输入图像的列表(必须用中括号包裹)
plt.plot(image_hist)#使用calcHist的值绘制曲线图
plt.show()

绘制彩色图的直方图

img=cv2.imread('img.png')
color=('b','g','r')
for i,col in enumerate(color):hister=cv2.calcHist([img],[i],None,[256],[0,256])plt.plot(hister,color=col)
plt.show()

二.图像直方图均衡化

1.图像直方图均衡化介绍和全局均衡化

是一种图像增强技术,它可以通过增加图像的对比度和亮度来改善图像的质量。

实现方法:通过将图像的像素值分布均匀化来实现这一目标。

在Python OpenCV中,可以使用cv2.equalizeHist()函数来实现直方图全局均衡化。

  • 原理:将图像像素的灰度分布拉伸,使其在整个灰度范围内均匀分布,从而增强图像的对比度和细节。
  • 效果:在处理暗部图像时,能使原本暗淡的部分变得更亮、更具细节,如下面的的“black.jpg”图片在均衡化后变得清晰可见。

均衡前后图片对比:

woman=cv2.imread('black.jpg',cv2.IMREAD_GRAYSCALE)
woman = cv2.resize(woman,(300,400))
plt.hist(woman.ravel(),bins=256)
plt.show()
woman_equalize=cv2.equalizeHist(woman)
plt.hist(woman_equalize.ravel(),bins=256)
plt.show()
res=np.hstack((woman,woman_equalize))
cv2.imshow('res',res)
cv2.waitKey(0)

均衡化前直方图

均衡化后直方图

2.自适应直方图均衡化(局部直方图均衡化)

  • 原理:与全局均衡化不同,它将图像划分为多个小区域(如 16x16),然后对每个区域独立地进行直方图均衡化。
  • 目的:避免全局处理可能造成的图像局部过曝或细节丢失,使调整更加平滑自然。
#自适应直方图均衡化(局部直方图均衡化)
clahe=cv2.createCLAHE(clipLimit=8,tileGridSize=(16,16))#clipLimit颜色对比阈值,tileGridSize局部直方图均衡化的模板大小
woman_clahe=clahe.apply(woman)
res=np.hstack((woman,woman_equalize,woman_clahe))
cv2.imshow('women_equalize',res)
cv2.waitKey(0)

clipLimit颜色对比阈值,tileGridSize局部直方图均衡化的模板大小

从左到右依次是原图,全局均衡化和自适应均衡化

三.掩膜

1.掩膜(Mask)技术详解

  • 概念与原理: 掩膜是一种在图像处理中使用黑白二值图来限定处理区域的技术。“洞”的白色部分代表需要保留和处理的区域,“洞外”的黑色部分则不受影响或被忽略。
  • 应用场景: 主要用于抽取图像内的特定目标(如人像、物体),实现“抠图”效果;也可用于对图像的局部进行特殊运算或统计分析。

2.掩膜的生成与应用

  • 简单矩形掩膜的生成:
    • 步骤一:创建一个与原始图片尺寸相同的全零(纯黑)NumPy数组作为基础。
    • 步骤二:利用数组切片,指定起止行列坐标,将所需区域的像素值修改为255(纯白)。
mask=np.zeros(img.shape[:2],np.uint8)
mask[50:350,100:470]=255
cv2.imshow('mask',mask)
cv2.waitKey(0)

  • 掩膜的应用:
    • 在图像处理函数(如矩阵乘法、像素直方图计算等)中引入掩膜参数。
    • 函数会自动识别掩膜中标示为“白”的区域,并仅对该区域内的像素值进行运算或统计,从而实现对图片局部范围的操作。
img_mask=cv2.bitwise_and(img,img,mask=mask)#对图像每个像素值进行二进制‘与’操作
cv2.imshow('img_mask',img_mask)
cv2.waitKey(0)

3.像素直方图的计算

  • 当前状态:用于分析整幅图像的像素值分布。
  • 明确需求:需要支持按掩膜区域进行统计,以获取特定目标区域的像素分布情况,对比整体分布会有显著差异,例如目标区域可能出现特定的灰度峰值。
img_hist_mask=cv2.calcHist([img],[0],mask,[256],[0,256])
plt.plot(img_hist_mask)
plt.show()

http://www.dtcms.com/a/613610.html

相关文章:

  • 【ZeroRange WebRTC】RTP/RTCP/RTSP协议深度分析
  • 有商家免费建商城的网站吗网站上面关于我们要怎么填写
  • MySQL WHERE 子句
  • 力扣每日一题:统计1的显著的字符串数目
  • 彩票网站搭建多钱百度上做网站模板
  • PAM4技术:系统深入解析与应用实践
  • 无线资源映射RE Mapping介绍
  • ​​Vue 拦截器教程​
  • 科普:.NET应用开发的环境搭建
  • cn域名后缀网站南通网站建设南通
  • Kafka集群架构(ZK + Kafka)
  • 编程语言哪种编译器好 | 如何选择适合自己的编译器,提高开发效率
  • 【原创】基于YOLO模型的手势识别系统
  • 11.15 脚本网页 剪切板管家
  • 基于python代码自动生成关于建筑安全检测的报告
  • 【Chrono库】Chrono Traits 模块解析(traits.rs)
  • Go语言使用的编译器 | 探索Go编程语言的工具链和编译过程
  • Logback,SLF4J的经典后继日志实现!
  • 搭建个人知识库
  • leetcode寻找第k大的值
  • 瑞安外贸网站制作php做网站都需要学什么软件
  • 企业级 Spring Boot + WebSocket + Redis 分布式消息推送方案
  • 线性代数 · SVD | 从线性代数到数据科学的“盛大”应用(scr:bzv)
  • 专门做推广的网站吗做当地门户网站多少钱
  • 【Java Web学习 | 第12篇】JavaScript(6)DOM
  • VVIC item_search 接口对接全攻略:从入门到精通
  • 四川住建厅官方网站的网址北京专业建设
  • 网站开发实训课程的总结手机网游
  • 《道德经》第五十八章
  • 【面试经验】梅赛德斯奔驰X-Seed AI Systems - Autonomous Driving Agent Efficiency