赞
踩
1.countNonZero()
用来统计元素值为非0值的像素点个数。
cv2.countNonZero(src) -> retval
src:输入图像,必须为单通道图像;
retval:非零像素值个数
absdiff()
计算了2幅图像差异后得到的新图像
零值元素数量可以由元素总数减去非零值数量得到
2.minMaxLoc()
函数返回图像中的元素值的最小值和最大值,以及最小值和最大值的坐标。
cv2.minMaxLoc(src[, mask])->minVal, maxVal, minLoc, maxLoc
src:输入图像,必须为单通道图像;
mask:掩码;
minVal, maxVal, minLoc, maxLoc:依次为最小值,最大值,最小值的坐标,最大值的坐标;
返回minLoc和maxLoc的坐标位置是以OpenCV中(x,y)的形式组织的,但是在numpy中下标访问是按照array[行][列]形式,类似于array[y][x]的形式,所以minLoc和maxLoc的坐标值不能直接用于numpy的下标访问,需要对调后才可以使用.
3.sumElems()
统计所有元素值之和,如果有多通道,分通道计算,返回的是一个四元组,依次对应图像可能包含的第0,1,2,3通道,如果单通道图像则只有下标0对应的元素有意义,如果是3通道则只有前3个元素有意义。
cv2.sumElems(src) -> retval
src:输入图像,可以是单通道,3通道或4通道图像;
retval:返回的是一个4元组,分别对应各通道元素的和。
4.mean()
用来统计单个通道内像素值的平均值,如果有多个通道,分通道计算。
cv2.mean(src[, mask]) ->retval
src:输入图像,可以是单通道,3通道或4通道图像;
mask:可选的掩码;
retval:返回的是一个4元组,分别对应各通道元素的平均值。
5.meanStdDev()
用来统计单通道内像素值的平均值和标准差,一次调用返回2个结果。
cv2.meanStdDev(src[, mean[, stddev[, mask]]]) ->mean, stddev
src:输入图像,必须为单通道图像;
mask:可选的掩码;
mean:平均值;
stddev:标准差;
meanStdDev()返回的是一个元组,下标0为平均值mean,下标1为标准差stddev。
6.reduce()
用来统计二维数组的每一行或每一列中的最小值、最大值、平均值、和。这里reduce的含义也可以理解为将二维矩阵压缩成一维向量,压缩后的值根据入参类型可以是最小值、最大值、平均值或者和。
cv2.reduce(src, dim, rtype[, dst[, dtype]]) ->dst
src:源图像,可以是单通道也可以是多通道,多通道时分通道计算;
dim:如果为0表示统计每列的数据等价于压缩成行(row),如果为1表示统计每行的数据等价于压缩成列(column);
rtype:reduce操作的类型;
dst:目标图像;
dtype:目标图像的类型,如果不指定默认为-1表示用源图像src的数据类型;
dim参数的理解:如果为0表示生成新的数据将是一个行向量,所以是在每一列上操作,将单个的列压缩成一个数值从而组成一个行向量;如果为1则表示生成新的数据是一个列向量,在每一行上操作,将单个的行压缩成一个数值从而组成一个列向量。
rtype标志 含义
REDUCE_SUM 所有行或列的和
REDUCE_AVG 所有行或列的平均值
REDUCE_MAX 所有行或列的最大值
REDUCE_MIN 所有行或列的最小值
countNonZero()用来统计的是非零元素的数量;minMaxLoc()返回位置参数是按照OpenCV格式组织的,在numpy数组中使用时需要对调下标组织形式,返回的坐标是按行扫描方式得到的最开始的坐标;sumElems()用来计算单个通道内所有元素的和,其原生的C接口函数为sum();meanStdDev()返回的平均值和标准差是一个numpy数组,其数组长度依赖输入图像的通道数,这点和mean()、sumElems()计算的结果默认包含4个元素有所区别;reduce()计算单行/列的和、均值时dtype类型需要指定为能精确表示的数据类型。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。