神经网络与深度学习 Class 6 :数字图像基础

目录

6.1 数字图像基本概念

6.2 Pillow图像处理库

1.导入模块

2.图像操作

6.3 手写数字数据集 


6.1 数字图像基本概念

数字图像:连续的图像数字化、离散化之后的图像,是对连续图像的一种近似

像素:图像的最小单位

位图:记录每个像素值来存储和表达的图像

色彩深度/位深度:位图中每个像素点要用多少个二进制位表示

BMP格式:Windows系统标准位图格式

·二值图像(仅有两种颜色的图像)

每个像素只有两种可能取值,使用1位二进制表示,位深度为1

·灰度图像

每个像素使用一个字节表示,位深度为8(0为黑色,255为白色)

·彩色图像

 每个像素都有红、绿、蓝三个分量

每个像素点使用三个字节,位深度为24

·RGBA图像

RGB图像+8位透明度信息

BMP格式无法压缩图像,所占空间较大。

JPEG格式:有损压缩,占空间小

PNG格式:无损压缩

GIF格式:支持静态与动态格式

TIFF格式:较复杂

6.2 Pillow图像处理库

matplotlib中有image库,仅支持导入PNG格式图像

PIL功能丰富,但已停止更新

Pillow:在PIL基础上发展而成

1.导入模块

from PIL import Image

2.图像操作

·打开图像Image.open

from PIL import Image
path="D:\Python Code\lena.tiff"
Img=Image.open(path)    
Im.show()

·保存图像

Img.save("test.tiff")

·图像属性

·显示图像 

from PIL import Image
import matplotlib.pyplot as plt
path="D:\Python Code\lena.tiff"
Img=Image.open(path)    

plt.figure(figsize=(5,5))
plt.imshow(Img)
plt.show()

·转换图像的色彩模式

Img_gray=Img.convert("L")

·颜色通道的分离与合并

·转换成数组 

import numpy as np

path="D:\Python Code\lena.tiff"
Img=Image.open(path)    

arr_img=np.array(Img)
print("shape:",arr_img.shape)
print(arr_img)

·缩放图像

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np

path="D:\Python Code\lena.tiff"
img=Image.open(path)    

plt.figure(figsize=(5,5))
img_small=img.resize((64,64))
plt.imshow(img_small)
plt.show()

·旋转、镜像

 ·裁剪图像

6.3 手写数字数据集 

MNIST数据集:含手写字

·加载数据

mnist=tf.keras.datasets.mnist
(train_x,train_y),(test_x,test_y)=mnist.load_data()

·显示数据

plt.imshow(train_x[0],cmap="gray")
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值