- int M = 192;
- int N = 168;
- int K = 7;
- int size[] = { M, N, K };//设定矩阵各个维度的大小
- //创建一个三维矩阵 第一维的大小是size[0],第二维的大小是size[1],第三维的大小是size[2]
- CvMatND* mXOrigin = cvCreateMatND( 3, size, CV_32FC1 );
- //矩阵清零
- cvSetZero( mXOrigin );
- float c = 0;
- //给矩阵元素赋值
- for ( int k=0; k<K ; k++)
- {
- for ( int i=0; i<M; i++)
- {
- for ( int j=0; j<N; j++)
- {
- *(mXOrigin->data.fl + ( M*N*k + N*i + j) ) = c;
- c = c+1;
- }
- }
- }
- //输出矩阵中的元素
- for ( int k=0; k<K; k++)
- {
- for ( int i=0; i<M; i++)
- {
- for ( int j=0; j<N; j++)
- {
- cout << *(mXOrigin->data.fl + ( M*N*k + N*i + j) ) << "\t";
- }
- cout << endl;
- }
- cout << endl;
- }
- cvReleaseMatND( &mXOrigin );
CvMatND多维数组的使用
最新推荐文章于 2016-05-02 16:30:14 发布