zl程序教程

您现在的位置是:首页 >  Python

当前栏目

基于Python的OpenCV有关像素的操作

2023-02-18 16:28:42 时间

·像素的操作(Array)

·像素

·确定像素的位置

·imread()读取图片

·img[x,y]坐标xy上的像素

·获取像素的BGR值

·print()xy坐标上的像素值

·修改像素的BGR值

·强制修改

·0:B;1:G;2R

·使用NumPy模块操作像素

·NumPy概述

·强大的N维数组对象ndarray

·广播功能方法

·线性代数、傅里叶变换、随机数生成、图形操作等功能

·整合C/C++/Fortran代码的工具

·数组的类型

·bool_

·存储为一个字节的布尔值

·int_

·默认整数,相当于C的long,通常为int32或int64

·intc

·相当于C语言的int,通常为int32或int64

·intp

·用于索引的整数,相当于C语言中的size_t,通常为int32或int64

·int8

·字节(-128~128)

·int16

·16位整数

·int32

·32位整数

·int64

·64位整数

·uint8

·8位无符号整数

·uint16

·16位无符号整数

·uint32

·32位无符号整数

·uint64

·64位无符号整数

·float_

·_float64的简写

·float16

·半精度浮点

·float32

·单精度浮点

·float64

·双精度浮点

·complex_

·complex128类型的简写

·complex64

·复数,由两个32 位浮点表示

·complex128

·复数,由两个64位浮点表示

·datatime64

·日期时间类型

·timedalta64

·两个时间之间的间隔

·创建数组:Array()方法

·numpy.array(object,dtype,copy,order,subok,ndmin)

·object:任何具有数组接口方法的对象

·dtype:数据类型

·copy:可选参数,布尔型,默认值为True,则object对象被复制;否则,只有当_array_返回副本,object参数为嵌套序列,或者需要副本满足数据类型的顺序要求时,才会生成副本。

·order:元素在内存中的出现顺序,其值为K、A、C、F。如果object参数不是数组,则新穿件的数组将按行数列,如果值为F,则按照列排列;如果object参数是一个数组,则以下顺序成立:C(按行)、F(按列)、A(原顺序)、K(元素在内存中的出现顺序)。

·subok:布尔型。如果值为True,则传递子类,否则返回的数组将强制为基类数组(默认值)

·ndmin:指定生成数组的最小维数

·创建随机数组

·numpy.random.randint(low,high,size)

·low:随机数最小取值范围

·high:可选参数,随机数最大取值范围。若high为空,取值范围为(0,low)。若high不为空,则high必须大于low。

·size:可选参数,数组维数

·randint()方法用于生成一定范围内的随机整数数组,左闭右开区间([low,high])

·操作数组

·幂运算:**

·比较运算:>=/==/<=/!=

·复制数组:copy()

·数组的索引和切片

·索引:x[obj]进行索引,x是数组,obj是选择方式

·切片式索引[start,stop,step]

·start:起始索引,若不写任何值,则表示从0开始的全部索引

·stop:终止索引,若不写任何值,则表示直到末尾的全部索引

·step:步长

·创建图像

·创建黑白图像

·像素值为0表示纯黑,像素值为255表示纯白

·纯白使用ones函数*255

·纯黑使用zeros函数

·彩色图像

·为每个通道复制一个img(图像),然后为每一个通道设置像素值

·随机图像

·使用random和randint函数实现

·拼接图像

·水平拼接数组

·array=numpy.hstack(tup)

·tup:要拼接的数组元组

·array:将参数元组中的数组水平拼接后生成的新数组

·hstack()方法可以拼接多个数组

·垂直拼接数组

·array=np.vstack(tup)

·tup:要拼接的数组

·array:将参数元组中的数组垂直拼接后生成的新数组

·vstack()方法可以拼接多个数组

下面是代码实例