本文共 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
有三个通道 红,绿,蓝 通道是使用矩阵表示 有很多模式常用的 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()