"Unsupported matrix depth"

Ask questions on using Emgu CV with C++
Post Reply
windman
Posts: 5
Joined: Tue Jun 01, 2010 1:52 am

"Unsupported matrix depth"

Post by windman » Tue Jun 01, 2010 4:26 am

I wrote the code:

Matrix<MCvPoint3D32f> objectpoints = new Matrix<MCvPoint3D32f>(objectpointsarray);

the compailer don't say anything but when i run it i get "Unsupported matrix depth"

someone know what this means and how to solve it?

canming
Site Admin
Posts: 1038
Joined: Thu Feb 28, 2008 4:16 pm

Re: "Unsupported matrix depth"

Post by canming » Wed Jun 02, 2010 10:54 pm

The supported matrix depth types are listed here:
http://www.emgu.com/wiki/index.php/Work ... h_Matrices

windman
Posts: 5
Joined: Tue Jun 01, 2010 1:52 am

Re: "Unsupported matrix depth"

Post by windman » Wed Jun 02, 2010 11:32 pm

I have a function that demands a matrix with matrix depth of
CV_32FC2 (pair of float) or CV_64FC2 (pair of double)
and two of then not supported.
how can it be?

canming
Site Admin
Posts: 1038
Joined: Thu Feb 28, 2008 4:16 pm

Re: "Unsupported matrix depth"

Post by canming » Thu Jun 03, 2010 7:29 am

Use the constructor

Code: Select all

public Matrix(
	int rows,
	int cols,
	int channels
)
to create multiple channel matrix. In your case, rows is the number of 2D points, cols is 1 and channels is 2. Depth is float for 32F and double for 64f.

Regards,
Canming

Post Reply