2012-05-06 13 views
5

Estoy trabajando en una aplicación OpenCV donde puedo crear una serie de objetos cvMat de la siguiente manera:almacenar objetos cvMat en una matriz - OpenCV - iPhone

UIImage *testImage = [UIImage imageNamed:@"Image.jpg"]; 
cv::Mat tempMat = [testImage CVMat]; 
cv::cvtColor(tempMat, grayImg, cv::COLOR_RGB2GRAY); 

Entonces, ¿qué quiero hacer es almacenar el resultado (en este caso llamado grayImg) en un NSMutableArray.

¿Alguien puede sugerir cómo puedo lograr esto?

Gracias.

Respuesta

3

cualquier objeto que necesita almacenar en NSArray, puede hacerlo, como a continuación:

cv::Mat tempMat = [testImage CVMat]; 
cv::Mat *pointer = (cv::Mat *)tempMat; 
id object = [NSValue valueWithPointer:pointer]; 
NSArray *array = [[NSArray alloc] initWithObjects: object, nil]; 
+2

número Línea 2 falla en última XCode. – aledalgrande

+0

Espera ... ¿Acabas de lanzar un 'cv :: Mat' a un' cv :: Mat * '? ¿Estás seguro de que funciona? – sudo