1.读取图片并进行灰度处理,最后展示图片。2.将原图片进行平滑处理(使用均值、方框、高斯以及中值滤波进行3.将两张图片融合(图片任选)处理,并对比)
时间: 2024-02-17 14:01:51 浏览: 170
好的,以下是Python代码实现这三个任务:
1. 读取图片并进行灰度处理,最后展示图片
```python
import cv2
# 读取图片
img = cv2.imread('img.jpg')
# 灰度处理
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 展示图片
cv2.imshow('gray', gray)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
2. 将原图片进行平滑处理(使用均值、方框、高斯以及中值滤波进行)
```python
import cv2
# 读取图片
img = cv2.imread('img.jpg')
# 均值滤波
blur_mean = cv2.blur(img, (5, 5))
# 方框滤波
blur_box = cv2.boxFilter(img, -1, (5, 5))
# 高斯滤波
blur_gaussian = cv2.GaussianBlur(img, (5, 5), 0)
# 中值滤波
blur_median = cv2.medianBlur(img, 5)
# 展示图片
cv2.imshow('img', img)
cv2.imshow('blur_mean', blur_mean)
cv2.imshow('blur_box', blur_box)
cv2.imshow('blur_gaussian', blur_gaussian)
cv2.imshow('blur_median', blur_median)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
3. 将两张图片融合(图片任选)处理,并对比
```python
import cv2
# 读取图片
img1 = cv2.imread('img1.jpg')
img2 = cv2.imread('img2.jpg')
# 调整大小
img2 = cv2.resize(img2, (img1.shape[1], img1.shape[0]))
# 加权融合
alpha = 0.5
beta = 1 - alpha
blend = cv2.addWeighted(img1, alpha, img2, beta, 0)
# 展示图片
cv2.imshow('img1', img1)
cv2.imshow('img2', img2)
cv2.imshow('blend', blend)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
注意:以上代码中图片路径需要根据实际情况修改,并且第三个任务中用到的两张图片需要保证大小一致才能进行融合。
阅读全文