2012-05-06 41 views
5

tôi đang làm việc trên một ứng dụng OpenCV mà tôi tạo ra một số đối tượng CvMat như sau:Lưu trữ Đối tượng CvMat trong một mảng - OpenCV - iPhone

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

gì sau đó tôi muốn làm là lưu trữ kết quả (ở đây gọi là grayImg) trong NSMutableArray.

Có ai có thể đề xuất cách tôi có thể đạt được điều này không?

Cảm ơn bạn.

Trả lời

3

bất cứ đối tượng bạn cần lưu trữ trong NSArray, bạn có thể làm điều đó như dưới đây:

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

Dòng số 2 không thành công trên XCode mới nhất. – aledalgrande

+0

Đợi ... Bạn chỉ cần đưa 'cv :: Mat' vào' cv :: Mat * '? Bạn có chắc chắn rằng các công trình? – sudo

Các vấn đề liên quan