python给图片加入不同的光线
时间: 2023-06-13 10:08:55 浏览: 62
可以使用Python的PIL库来给图片加入不同的光线。
步骤如下:
1. 读取图片:
```python
from PIL import Image
img = Image.open('path/to/image.jpg')
```
2. 将图片转换为灰度图:
```python
img_gray = img.convert('L')
```
3. 对灰度图进行滤波处理,模拟光线,例如使用高斯滤波:
```python
from PIL import ImageFilter
img_filtered = img_gray.filter(ImageFilter.GaussianBlur(radius=10))
```
4. 将滤波后的灰度图与原图进行叠加,可以使用PIL库的blend()函数进行叠加:
```python
img_final = Image.blend(img, img_filtered, alpha=0.5)
```
其中alpha参数控制叠加的透明度,可以根据实际需求进行调整。
5. 保存处理后的图片:
```python
img_final.save('path/to/new_image.jpg')
```
这样就可以给图片加入不同的光线了。
相关问题
python给图片加入滤镜
可以使用Python中的Pillow库来给图片加入滤镜。下面是一个简单的例子,使用Pillow库实现将图片转换为黑白色。
```python
from PIL import Image, ImageFilter
# 打开图片
image = Image.open('example.jpg')
# 转换为黑白色
bw_image = image.convert('L')
# 保存图片
bw_image.save('example_bw.jpg')
```
在这个例子中,我们首先使用`Image.open()`方法打开图片,然后使用`convert()`方法将其转换为黑白色。最后使用`save()`方法保存图片。
除了将图片转换为黑白色,Pillow库还支持其它滤镜效果,例如模糊、锐化等。你可以通过使用`ImageFilter`模块来实现这些效果。下面是一个例子,使用Pillow库实现将图片模糊处理。
```python
from PIL import Image, ImageFilter
# 打开图片
image = Image.open('example.jpg')
# 模糊处理
blurred_image = image.filter(ImageFilter.BLUR)
# 保存图片
blurred_image.save('example_blurred.jpg')
```
在这个例子中,我们使用`filter()`方法对图片进行模糊处理,然后使用`save()`方法保存图片。
python中opencv给图片加入高斯噪声
以下是使用Python中OpenCV给图片加入高斯噪声的示例代码:
``` python
import cv2
import numpy as np
# 加载图片
img = cv2.imread('image.jpg')
# 获取图片的高度和宽度
height, width = img.shape[:2]
# 创建一个与原图像大小相同的矩阵
noise = np.zeros((height, width, 3), np.uint8)
# 生成高斯噪声
cv2.randn(noise, 0, 50)
# 将高斯噪声添加到原图像中
img_noise = cv2.add(img, noise)
# 显示原图像和加入噪声后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Image with Gaussian Noise', img_noise)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这段代码首先加载一张图片,然后创建一个与原图像大小相同的矩阵用于生成高斯噪声。使用`cv2.randn()`函数生成高斯噪声,第一个参数为噪声矩阵,第二个参数为平均值,第三个参数为标准差。最后,将高斯噪声添加到原图像中,并显示原图像和加入噪声后的图像。