0

私たちが知っているように、CvKnearest ネイバーはこの方法で入力を取得します

CvKNearest::CvKNearest(const Mat& trainData, const Mat& responses, const Mat& sampleIdx=Mat(), bool isRegression=false, int max_k=32 )
またはこの方法で

CvKNearest::CvKNearest(const CvMat* trainData, const CvMat* responses, const CvMat* sampleIdx=0, bool isRegression=false, int max_k=32 )

しかし、trainData と応答用に 2 つの cv::Mat* があります。CvKnearest のこれら 2 つの入力形式のいずれかに一致するように変換するにはどうすればよいですか?

4

1 に答える 1

2

持っているポインターを逆参照して、最初のポインターを使用できます。

たとえば、 と がある場合、次のようにcv::Mat* myTrainDataなりますcv::Mat* myResponses

CvKNearest::CvKNearest(*myTrainData, *myResponses, const Mat& sampleIdx=Mat(), bool isRegression=false, int max_k=32 )     
于 2012-08-20T17:07:42.837 に答える