pythonopencv伽马校正的代码
时间: 2023-04-02 22:00:21 浏览: 149
可以使用以下代码实现 Python OpenCV 中的伽马校正:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 伽马校正
gamma = 1.5
img_corrected = np.power(img / 255., gamma)
img_corrected = np.uint8(img_corrected * 255)
# 显示图像
cv2.imshow('Original Image', img)
cv2.imshow('Gamma Corrected Image', img_corrected)
cv2.waitKey()
cv2.destroyAllWindows()
```
其中,gamma 参数可以根据实际情况进行调整,一般取值在 .5 到 2.5 之间。
相关问题
伽马校正halcon代码
当涉及到伽马校正时,Halcon提供了一些函数来实现图像处理。以下是一个示例代码,可以帮助你进行伽马校正:
```halcon
read_image(Image, 'image.jpg') // 读取图像
gamma_value := 0.5 // 设置伽马值
// 进行伽马校正
gamma_image(Image, CorrectedImg, gamma_value, 'non-linear')
// 显示原始图像和校正后的图像
dev_open_window(0, 0, 512, 512, 'black', WindowHandle)
dev_display(Image)
dev_set_color('red')
dev_set_paint('margin')
dev_display_text(WindowHandle, 'Original Image', 'window', 12, 12, 'black', [], [])
dev_set_color('white')
dev_display(CorrectedImg)
dev_set_color('red')
dev_set_paint('margin')
dev_display_text(WindowHandle, 'Corrected Image', 'window', 12, 256, 'black', [], [])
// 关闭窗口
dev_close_window()
```
在这个示例代码中,我们首先使用`read_image`函数读取图像文件。然后,我们设置了一个`gamma_value`变量,用于定义伽马值。接下来,我们使用`gamma_image`函数进行伽马校正,将校正后的图像保存在`CorrectedImg`中。
最后,我们使用Halcon提供的图形显示函数来显示原始图像和校正后的图像。你可以使用`dev_open_window`函数打开一个窗口,并使用`dev_display`函数显示图像。使用`dev_set_color`和`dev_set_paint`函数可以设置文本和图形的颜色和样式。最后,使用`dev_close_window`函数关闭窗口。
请注意,以上代码仅为示例,你需要根据你自己的需求进行适当的修改。希望这可以帮助到你!
伽马校正python代码
伽马校正是一种图像处理技术,它可以通过调整图像的颜色和亮度来改善图像的质量。下面是一个简单的 Python 代码示例,用于实现伽马校正:
```python
import cv2
import numpy as np
def adjust_gamma(image, gamma=1.0):
invGamma = 1.0 / gamma
table = np.array([((i / 255.0) ** invGamma) * 255
for i in np.arange(0, 256)]).astype("uint8")
return cv2.LUT(image, table)
```
在这个代码中,我们使用了 OpenCV 库和 NumPy 库。`adjust_gamma` 函数接受一个图像和一个 gamma 参数作为输入。gamma 参数控制伽马值的大小。如果 gamma 值小于 1,则图像会变暗。如果 gamma 值大于 1,则图像会变亮。
在函数内部,我们首先计算 gamma 的倒数作为 invGamma 变量。然后,我们使用 NumPy 库创建一个查找表(look-up table)来映射每个像素值。最后,我们使用 `cv2.LUT` 函数将查找表应用到图像上,并返回结果。
你可以通过以下方式调用这个函数:
```python
image = cv2.imread("example.jpg")
adjusted = adjust_gamma(image, gamma=1.5)
cv2.imshow("Original", image)
cv2.imshow("Adjusted", adjusted)
cv2.waitKey(0)
```
在这个例子中,我们将 gamma 参数设置为 1.5,因此图像将变亮。你可以根据自己的需要调整 gamma 参数的值以获得最佳效果。
阅读全文