
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.4.1 案例22:矩阵转向量
OpenCV中提供了用于矩阵转向量的函数reduce,该函数将矩阵的行/列视为一组一维向量,并对向量执行指定的操作(操作由ReduceTypes定义),直到获得单个行/列,从而将矩阵缩减为一个向量,该函数可用于计算光栅图像的水平和垂直投影。
reduce函数的Python语言函数定义如下:

该函数的参数说明如下。
● src:输入图像。
● dim:降维的维度索引,0代表矩阵降维为单行,1代表矩阵降维为单列。
● rtype:ReduceTypes定义的降维操作。
● dst:输出vector类型(返回值)。
● dtype:输出vector类型。
其中,ReduceTypes的定义如下:

reduce函数的使用案例代码如下:

执行后的结果如下:

案例中reduce函数降维的维度为0,即会将输入中的每一列取最大值,组成一个单行的vector,每个通道单独计算,因此最终输出的维度为1×512×3。