Использование C ++ в xcode для обработки изображений и видео - PullRequest
0 голосов
/ 01 декабря 2009

Я учусь в области обработки изображений и видео - в частности, в области распознавания образов (объекты, люди и т. Д.). Я хочу использовать язык программирования, чтобы применить преобразование к изображениям и видео (что более важно, к видео). Я думаю об использовании C ++ в Xcode, чтобы сделать это. Алгоритмы, которые я хочу построить, я хочу взять данные из Интернета (например, представленные видео) - обработать их и затем дать вывод. Мой вопрос состоит из нескольких частей:

(1) Является ли C ++ лучшим языком для этого? Это можно сделать в Python? (Я предполагаю, что C ++ быстрее, чем Python, и, вероятно, может обрабатывать большие файлы / более интенсивные алгоритмы)

(2) Каков наилучший способ настроить проект для этого в xcode - это прямой (A) инструмент командной строки «ванильный» проект или я должен пойти (B) на приложение Какао в задаче C ? (Мне нужно будет изучить Obj-C)

Моя краткосрочная цель - написать несколько простых алгоритмов и посмотреть, как они работают на видео. Затем подключите это (на заднем конце) к веб-интерфейсу внешнего интерфейса (чтобы я мог отправить видео в свой код). Объемы не будут огромными, но размеры файлов могут быть существенными.

Любое понимание будет высоко ценится.

Макс.

Ответы [ 4 ]

0 голосов
/ 02 декабря 2009

1) Если вы знаете, какой язык вы бы использовали , выучите его. C ++ быстрый, но это глубокий язык. К счастью, это популярно, и вы сможете легко найти помощь по нему. Выбор остается за вами; Есть ли библиотеки, которые вы хотели бы использовать? Какой язык они используют? Я предвзят, но я бы порекомендовал C ++ вместо C (я понимаю, это не то, что вы просили).

2) a) Инструмент командной строки: C ++. Это будет достаточно сложно, нет необходимости добавлять Cocoa / Objective-C и пользовательские интерфейсы в сложность. Если у вас есть рабочий алгоритм, добавьте его в библиотеку. Не забудьте также создавать тестовые случаи.

0 голосов
/ 02 декабря 2009

Если вы хотите специализироваться в этой области, сразу используйте C ++ для алгоритмических частей - вам все равно придется научиться эффективно использовать C ++.

Относительно типа проекта - это не имеет особого значения, хотя вы должны выбрать Cocoa, если хотите позже обернуть приятный графический интерфейс, и приложение командной строки, если это не нужно.
Для использования C ++ его не имеет значения, вы можете смешивать источники C ++ где угодно, если не упустите некоторые предостережения. Использование C ++ с Objective-C дает некоторое представление об этом.

0 голосов
/ 02 декабря 2009

Если вы решите использовать C ++ (который кажется грешным для этого сценария), вы должны проверить эти ссылки:

  • IPP - также полезно для процессоров не-Intel, особенно в сочетании с компилятором Intel C ++, но это дорого
  • Intel предлагает множество инструментов, которые полезны для распараллеливания высокопроизводительных вычислений чисел (связанные с процессором), например TBB и OpenMP (я думаю, что это не Intel)
  • Может быть OpenCV полезен для вас

Надеюсь, это поможет.

0 голосов
/ 02 декабря 2009

Мой совет - заставить прототип работать на python, а затем использовать интеграцию с python для boost, чтобы переписать компоненты с высокой производительностью в C ++, как только ваш алгоритм заработает.

...