在pycharm2023中编码采用图像幂次变换实现灰度变换增强图像,需要对一幅图像进行灰度变换,实现图像变亮、变暗效果,要求使用下列函数:cv.imread("xxx.bmp",0)、plt.figure() plt.imshow() plt.show(),示例图片的文件路径为"C:\\Users\\27639\\PycharmProjects\\pythonProject\\venv\\class.jpg",请编码
时间: 2023-07-07 12:46:28 浏览: 109
好的,我来为您提供一份代码示例:
```python
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
# 读取灰度图像
img = cv.imread("C:\\Users\\27639\\PycharmProjects\\pythonProject\\venv\\class.jpg", 0)
# 图像灰度变换,变亮
alpha = 2.0
img_bright = np.power(img / 255.0, alpha)
img_bright = np.uint8(img_bright * 255)
# 图像灰度变换,变暗
beta = 0.5
img_dark = np.power(img / 255.0, beta)
img_dark = np.uint8(img_dark * 255)
# 显示原始图像、变亮后的图像、变暗后的图像
plt.figure(figsize=(10, 5))
plt.subplot(131)
plt.imshow(img, cmap="gray")
plt.title("Original")
plt.axis("off")
plt.subplot(132)
plt.imshow(img_bright, cmap="gray")
plt.title("Bright")
plt.axis("off")
plt.subplot(133)
plt.imshow(img_dark, cmap="gray")
plt.title("Dark")
plt.axis("off")
plt.show()
```
这段代码首先通过 `cv.imread()` 读取指定路径下的灰度图像,然后分别进行图像灰度变换,实现了变亮和变暗的效果。最后使用 `plt.imshow()` 和 `plt.show()` 显示图像。
阅读全文