博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Image
阅读量:2062 次
发布时间:2019-04-29

本文共 2035 字,大约阅读时间需要 6 分钟。

基础知识

矩阵概念

一个由m(行)*n(列)组成的数组

模式概念

由颜色多少区分为颜色,一般使用rgp构图,cmy印刷

坐标系统

图像处理、立体视觉等等方向常常涉及到四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系    世界坐标系--- 描述相机位置  空间    相机坐标系--- 描述相机光心位置 空间    图像坐标系--  光心为中点 平面    像素坐标系 --- 左上角为顶点 平面    参考https://blog.csdn.net/chentravelling/article/details/53558096

滤波

NEAREST:最近滤波。从输入图像中选取最近的像素作为输出像素。它忽略了所有其他的像素。    BILINEAR:双线性滤波。在输入图像的2x2矩阵上进行线性插值。注意:PIL的当前版本,做下采样时该滤波器使用了固定输入模板。    BICUBIC:双立方滤波。在输入图像的4x4矩阵上进行立方插值。注意:PIL的当前版本,做下采样时该滤波器使用了固定输入模板。    ANTIALIAS:平滑滤波。这是PIL 1.1.3版本中新的滤波器。对所有可以影响输出像素的输入像素进行高质量的重采样滤波,以计算输出像素值。在当前的PIL版本中,这个滤波器只用于改变尺寸和缩略图方法。    注意:在当前的PIL版本中,ANTIALIAS滤波器是下采样(例如,将一个大的图像转换为小图)时唯一正确的滤波器。BILIEAR和BICUBIC滤波器使用固定的输入模板,用于固定比例的几何变换和上采样是最好的。    参考  https://blog.csdn.net/icamera0/article/details/50647465

图像(iamge 组成)

有三个通道 红,绿,蓝 通道是使用矩阵表示    有很多模式常用的 L(简单理解为灰度模式)黑白颜色,rgp红绿蓝,CMYK C(青)、M(品红)、Y(黄)和k(黑)组成    size 图像大小,像素密度.    坐标系统,简单理解为像素坐标系    调色板实际上是一个有256个表项的RGB颜色表,颜色表的每项是一个24位的RGB颜色值。 调色板模式 ("P")使用一个颜色调色板为每个像素定义具体的颜色值    信息 像元的属性类型或量值所提供的信息。使用info属性可以为一张图片添加一些辅助信息。这个是字典对象。加载和保存图像文件时,多少信息需要处理取决于文件格式。    滤波器 对于将多个输入像素映射为一个输出像素的几何操作    注:系统库比较陈旧,一般使用pillow,pillow依托于Image库,现在支持python3
import osfrom PIL import Image, ImageDraw, ImageFontpath  = "~/下载"image1 = os.path.join(path,'timg.jpeg')ttf = os.path.join(path,'eRQCBJr9.ttf')im = Image.open(image1)print im.format  #属性print im.size   #像素大小,也可以看成尺寸print im.palette #print im.info   #于图像无关的信息#模式转换l = im.convert('L').show()#设置大小size = im.resize((128,128)).show()#旋转rotate = im.rotate(45).show()#剪切box = (100,100,400,400) #(左,上,右,下)region = im.crop(box)#旋转并复制回去region = region.transpose(Image.ROTATE_180)im.paste(region,box)#创建图片word = "Hello word"#创建图片img = Image.new('RGBA',(1024, 768), (255, 255, 255))#修改图片draw = ImageDraw.Draw(img)#划线draw.line([100,100,100,600],fill = 10)draw.line([(100,100),600,100],fill = 128)draw.line([(600,100),(600,600)],"black")draw.line((100,600,600,600),fill = "yellow")img.show()#使用默认字体draw.text([300,350],word,"red")#引入字体ft = ImageFont.truetype(ttf, 20)draw.text((10, 10), word, font = ft, fill = 'black')img.show()
你可能感兴趣的文章
(模板 重要)Tarjan算法解决LCA问题(PAT 1151 LCA in a Binary Tree)
查看>>
(PAT 1154) Vertex Coloring (图的广度优先遍历)
查看>>
(PAT 1115) Counting Nodes in a BST (二叉查找树-统计指定层元素个数)
查看>>
(PAT 1143) Lowest Common Ancestor (二叉查找树的LCA)
查看>>
(PAT 1061) Dating (字符串处理)
查看>>
(PAT 1118) Birds in Forest (并查集)
查看>>
数据结构 拓扑排序
查看>>
(PAT 1040) Longest Symmetric String (DP-最长回文子串)
查看>>
(PAT 1145) Hashing - Average Search Time (哈希表冲突处理)
查看>>
(1129) Recommendation System 排序
查看>>
PAT1090 Highest Price in Supply Chain 树DFS
查看>>
(PAT 1096) Consecutive Factors (质因子分解)
查看>>
(PAT 1019) General Palindromic Number (进制转换)
查看>>
(PAT 1073) Scientific Notation (字符串模拟题)
查看>>
(PAT 1080) Graduate Admission (排序)
查看>>
Play on Words UVA - 10129 (欧拉路径)
查看>>
mininet+floodlight搭建sdn环境并创建简答topo
查看>>
【linux】nohup和&的作用
查看>>
【UML】《Theach yourself uml in 24hours》——hour4
查看>>
Set、WeakSet、Map以及WeakMap结构基本知识点
查看>>