用figure,imshow()分别将Lenna.jpg和camema.jpg显示出来,观察两幅图像的质量
时间: 2024-02-01 07:13:44 浏览: 79
好的,我来演示一下。首先,需要导入matplotlib库和使用OpenCV库读取图像数据。以下是代码实现:
```python
import cv2
import matplotlib.pyplot as plt
# 读取图像文件
img_lenna = cv2.imread("Lenna.jpg")
img_camema = cv2.imread("camema.jpg")
# 将BGR格式转化为RGB格式
img_lenna_rgb = cv2.cvtColor(img_lenna, cv2.COLOR_BGR2RGB)
img_camema_rgb = cv2.cvtColor(img_camema, cv2.COLOR_BGR2RGB)
# 显示图像
plt.figure(figsize=(10,10))
plt.subplot(121)
plt.imshow(img_lenna_rgb)
plt.title("Lenna")
plt.subplot(122)
plt.imshow(img_camema_rgb)
plt.title("Camema")
plt.show()
```
运行结果如下图所示:
![image.png](attachment:image.png)
从图像质量来看,Lenna的图像清晰度和细节更好,而Camema的图像有些模糊,可能是因为图像压缩或者分辨率不够造成的。
相关问题
用figure,imshow()分别将Lenna.jpg和camema.jpg显示出来,观察两幅图像的质量。
好的,我会用Python来完成这个任务。请确认你已经将Lenna.jpg和cameraman.jpg这两幅图像保存在当前工作目录中。以下是代码实现:
```python
import matplotlib.pyplot as plt
from matplotlib.image import imread
# 读取Lenna.jpg并显示
lenna = imread('Lenna.jpg')
plt.figure(figsize=(5,5))
plt.imshow(lenna)
plt.axis('off')
plt.title('Lenna.jpg')
plt.show()
# 读取cameraman.jpg并显示
cameraman = imread('cameraman.jpg')
plt.figure(figsize=(5,5))
plt.imshow(cameraman)
plt.axis('off')
plt.title('cameraman.jpg')
plt.show()
```
运行上述代码后,会分别弹出两个窗口,分别显示Lenna.jpg和cameraman.jpg的图像。你可以对比两幅图像的质量,并观察它们的细节和颜色。
5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为flower.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。 6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。 7.用imread()读入图像:Lenna.jpg 和camema.jpg; 8.用imfinfo()获取图像Lenna.jpg和camema.jpg 的大小; 9.用figure,imshow()分别将Lenna.jpg和camema.jpg显示出来,观察两幅图像的质量。 10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
5. 压缩图像并保存为jpg文件:
```matlab
img = imread('flower.tif');
imwrite(img, 'flower.jpg', 'quality', 50);
```
这里将原图像压缩为质量因子为50的jpg文件。
6. 将tif图像保存为bmp文件:
```matlab
img = imread('flower.tif');
imwrite(img, 'flower.bmp');
```
7. 读入图像Lenna.jpg和cameraman.jpg:
```matlab
img1 = imread('Lenna.jpg');
img2 = imread('cameraman.jpg');
```
8. 获取图像Lenna.jpg和cameraman.jpg的大小:
```matlab
info1 = imfinfo('Lenna.jpg');
info2 = imfinfo('cameraman.jpg');
size1 = info1.Width * info1.Height;
size2 = info2.Width * info2.Height;
```
这里使用imfinfo函数获取图像信息,然后计算出图像的大小。
9. 显示图像Lenna.jpg和cameraman.jpg:
```matlab
figure, imshow(img1);
figure, imshow(img2);
```
10. 将灰度图像转化为二值图像并且显示出来:
```matlab
gray_img = imread('gray_image.tif');
bw_img = im2bw(gray_img, 0.5);
imshow(bw_img);
```
这里将灰度图像转化为二值图像,阈值为0.5,然后显示出来观察图像的特征。
阅读全文