Обработка изображений OpenCV - С++ vs C vs Python

Я думал попробовать OpenCV для проекта и заметил, что у него есть C, С++ и Python.

Я пытаюсь выяснить, должен ли я использовать С++, C или Python, и хотел бы использовать все, что имеет лучшую поддержку OpenCV.

Просто взглянув на страницу индекса для различной документации, похоже, что привязки С++ могут иметь больше возможностей, чем другие? Это правда?

Если у С++ больше привязок, кажется, это было бы более очевидным выбором для меня, но мне было просто любопытно, есть ли у него больше функций и т.д., чем другие?

Спасибо!

4 ответа

Интерфейс Python все еще разрабатывается, тогда как интерфейс С++ (особенно с новым классом Mat) довольно зрелый. Если вам удобно в С++, я бы очень рекомендовал его использовать, иначе вы можете начать использовать Python и вносить вклад в любые функции, которые, по вашему мнению, нужны OpenCV:)


Фактически привязка Python была завершена начиная с версии 2.2. Поэтому я бы пошел с python, если бы я был вами, потому что производительность будет практически одинаковой, так как вы используете библиотеки c в обоих случаях. Однако python доставит вас туда быстрее, безопасно, и вы потратите больше времени на свой алгоритм, а не на то, чтобы создавать и запускать вещи, не упоминая о проблемах управления памятью.


Я думаю, это зависит от того, насколько вы компетентны в С++. Интерфейс Mat кажется более современным, чем старый интерфейс IPLImage C. Проблема, с которой я сталкиваюсь, заключается в том, что большинство примеров, которые вы найдете в Интернете, или даже здесь, в stackoverflow, предназначены для интерфейса C (например, cvCvtColor), а не для интерфейса С++. Поэтому я действительно пытаюсь перенести примеры C на С++.


Даже если вы очень владеете C или С++, вы должны использовать python для ускорения вашего развития (я должен угадать 4-х фактор). Производительность на самом деле совершенно одинакова.

licensed under cc by-sa 3.0 with attribution.