图像处理
共 1524字,需浏览 4分钟
·
2020-10-28 11:55
一、图像处理基本知识
二维图形表示:像素和图像
• 像素Pixel:组成图像的基本小方格,具有大小和位置,规则排列
• 像素的属性:形状、大小、位置、颜色值
• 图像Image:由规则排列的像素构成的矩形,可以描绘各种视觉形象
• 图像的属性:分辨率、像素密度、颜色模型
图像颜色模型:RGB
三原色模型RGB
• 用3个字节表示颜色
• 分别表示红、绿、蓝颜色值
• 0-255,一共有255*255*255种
• 引入第四个字节表示透明度的RGBA模型
• 另一种常用颜色模型HSV
• 辉度、饱和度、亮度
像素密度:PPI(Pixel Per Inch)
• 每英寸像素点数量
• 密度越高图像越精细
• 视网膜分辨率:人眼在常规距离上无法分辨出视网膜屏幕的像素点,标准视力5.0,看手机的距离,300ppi达到无法分辨像素点
二、PIL:图像处理库
PIL:图像处理库
• Python 3安装Pillow
• Python上事实标准库
• 功能强大,可以对图像做各种处理,如:缩放、裁剪、旋转、滤镜、文字、调色板等等
PIL:缩放图像操作
PIL查看图像信息
PIL生成验证码
ASCII字符图形艺术
numpy库
• numpy是Python用于处理大型矩阵的一个速度极快的数学库
• 可以做向量和矩阵的运算,包括各种创建矩阵的方法,以及一般的矩阵运算、求逆、求转置
• 它的很多底层的函数都是用C写的,可以得到在普通Python中无法达到的运行速度
矩阵计算
• 创建矩阵 a = np.matrix([ ])
• 矩阵求逆 a.I
• 矩阵转置 a.T
• 矩阵乘法 a*b或np.dot(a,b)
对象属性
• np.shape 数组形状,矩阵则为n行m列
• np.size 对象元素的个数
• np.dtype 指定当前numpy对象的整体数据类型
三、数据可视化:Matplotlib
Matplotlib
Matplotlib 是 Python的一个绘图库。它包含了大量的工具,可以使用这些工具创建各种图形,包括简单的散点图,折线图,甚至是三维图形、动画等,Python科学计算社区经常使用它完成数据可视化的工作,功能异常强大。
绘制函数图像基本思路
• 基本思路:通过将图像上一些点的坐标连接起来,即可绘制函数的近似图像,当点越多时,所绘图像越接近函数图像
• numpy库的linspace(
)函数生成数组:numpy.linspace(
• matplotlib库的plot(
)函数用来画图:可以设定图形颜色、线条线型、以及做标注等
matplotlib:简单图形
matplotlib:多个简单图形
matplotlib:散点图
matplotlib:直方图
matplotlib:标题,标签和图例
公众号推荐
数据思践
数据思践公众号记录和分享数据人思考和践行的内容与故事。
Python语言群
诚邀您加入
《数据科学与人工智能》公众号推荐朋友们学习和使用Python语言,需要加入Python语言群的,请扫码加我个人微信,备注【姓名-Python群】,我诚邀你入群,大家学习和分享。