21xrx.com
2024-11-21 17:25:12 Thursday
登录
文章检索 我的文章 写文章
使用OPENCV函数实现图像明亮度增强的直方图均衡化
2024-06-23 15:12:18 深夜i     --     --
OPENCV函数 图像明亮度增强 直方图均衡化

图像直方图均衡化是一种常用的图像处理方法,可以使图像的对比度增加,细节更加清晰。本文将介绍如何使用OPENCV函数来实现图像明亮度增强的直方图均衡化。

首先,我们需要导入OPENCV库,并读取待处理的图像。可以使用cv2.imread()函数来读取图像,传入图像的文件路径作为参数。


import cv2

# 读取图像

img = cv2.imread('input.jpg', 0)

在读取图像后,我们需要对图像进行直方图均衡化。OPENCV提供了cv2.equalizeHist()函数来实现直方图均衡化,该函数接受一个灰度图像作为输入,并返回均衡化后的图像。


# 直方图均衡化

equ_img = cv2.equalizeHist(img)

接下来,我们可以通过显示原始图像和均衡化后的图像来比较它们的效果。可以使用cv2.imshow()函数来显示图像,传入窗口的名称和图像作为参数。然后使用cv2.waitKey()函数来等待用户按下任意键,以便关闭显示的窗口。


# 显示原始图像和均衡化后的图像

cv2.imshow('Original', img)

cv2.imshow('Equalized', equ_img)

cv2.waitKey(0)

cv2.destroyAllWindows()

最后,我们可以使用cv2.imwrite()函数将均衡化后的图像保存到文件中。


# 保存均衡化后的图像

cv2.imwrite('output.jpg', equ_img)

完整的代码如下所示:


import cv2

# 读取图像

img = cv2.imread('input.jpg', 0)

# 直方图均衡化

equ_img = cv2.equalizeHist(img)

# 显示原始图像和均衡化后的图像

cv2.imshow('Original', img)

cv2.imshow('Equalized', equ_img)

cv2.waitKey(0)

cv2.destroyAllWindows()

# 保存均衡化后的图像

cv2.imwrite('output.jpg', equ_img)

使用OPENCV函数实现图像明亮度增强的直方图均衡化非常简单。通过将图像传递给cv2.equalizeHist()函数来实现直方图均衡化,然后通过cv2.imshow()函数显示原始图像和均衡化后的图像,最后使用cv2.imwrite()函数保存均衡化后的图像。这样,我们就可以轻松地实现图像的明亮度增强。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复