OpenCV для iPhone: как запустить следующий код в приложении iOS - PullRequest
1 голос
/ 14 февраля 2012

Я создаю приложение для iOS с использованием среды OpenCV (которая предварительно скомпилирована, интегрирована и готова к использованию), которую я взял из следующего проекта (который я смог без проблем запустить на симуляторе): http://aptogo.co.uk/2011/09/opencv-framework-for-ios/

Я хочу изменить этот проект, включив в него следующую функцию find_obj, которая находится здесь и написана на C ++: https://code.ros.org/trac/opencv/browser/trunk/opencv/samples/c/find_obj.cpp?rev=2065

Вопросы, которые я хочу задать:

1- Как мне интегрировать функцию find_obj в моем проекте iOS, зная, что в найденном мной коде она написана внутри main(), а не как функция?

Я хочу, чтобы в моем проекте iOS было что-то подобное:

- (void) find_obj:(UIImage*)image1 with:(UIImage*)image2{
    //code
}

2- Есть ли способ сохранить код на C ++ без его преобразования в Objective-C?

Я, конечно, не ожидаю полного ответа с кодом, только некоторые подсказки, которые могут мне немного помочь. Спасибо!

Ответы [ 2 ]

1 голос
/ 14 февраля 2012

Я не знаю об OpenCV, но если вы хотите использовать код C ++, смешанный с Objective C, просто измените имя файла на someFile.mm

0 голосов
/ 14 февраля 2012

В общем: вы можете просто использовать обычный C ++ в своем приложении для iOS, если измените расширение файла с «.m» на «.mm».Я делаю это с OpenCV, и он отлично работает.

Пример, на который вы ссылаетесь, использует старый C-интерфейс OpenCV ... Если вы хотите использовать SURF в своем приложении, вам следует попробовать этот пример: https://code.ros.org/trac/opencv/browser/trunk/opencv/samples/cpp/matching_to_many_images.cpp Также взгляните на документацию OpenCV: http://opencv.willowgarage.com/documentation/cpp/features2d__feature_detection_and_descriptor_extraction.html

Если SIFT тоже интересен: http://blogs.oregonstate.edu/hess/code/sift/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...