openCV C ++中输出描述符Mat的类型是什么或者应该是什么?
C ++:void SIFT :: operator()(InputArray img,InputArray mask,vector& keypoints,OutputArray descriptors,bool useProvidedKeypoints = false) 参数:
img – Input 8-bit grayscale image
mask – Optional input mask that marks the regions where we should detect features.
keypoints – The input/output vector of keypoints
descriptors – The output matrix of descriptors. Pass cv::noArray() if you do not need them.
useProvidedKeypoints – Boolean flag. If it is true, the keypoint detector is not run. Instead, the provided vector of keypoints is used and the algorithm just computes their descriptors.
我的意思是“描述符 - 描述符的输出矩阵。”
感谢。
答案 0 :(得分:1)
作为经验法则:每当您看到OutputArray时,您都不必担心大小或类型。
只提供一个未初始化的Mat,该功能将填充它。
在这种情况下,输出将是NxM float Mat,其中N(行)将是关键点的数量,M(cols)将是128,即SIFT特征的长度。