Привязывает функцию C с помощью OpenCV к python с помощью Swig
Я ежедневно использую OpenCV и его оболочки Python для создания алгоритмов компьютерного зрения.
Для нескольких сложных функций нам нужно сохранить версию C, которая позволяет сократить время вычислений и упростить повторное использование.
Таким образом, я хотел бы связать функции C, которые используют структуры opencv, такие как iplimage, чтобы использовать их в Python. Не могли бы вы дать мне несколько советов по этому поводу? Я действительно не знаю, с чего начать на самом деле.
Вот моя структура, которая содержит iplimages.
typedef struct{
int nbBlobs;
IplImage *labels;
IplImage *contours;
}ccl_conf_t;
А вот и прототипы моей функции:
int ccl_init(ccl_conf_t *conf, IplImage *frame);
void ccl_unInit(ccl_conf_t *conf);
int ccl_label(ccl_conf_t *conf, IplImage *frame, int option);
Буду признателен за любую подсказку, которую вы мне дадите!
1 ответ
Сделать загружаемый модуль Python в C довольно просто. Начните здесь: http://docs.python.org/c-api/
Легко взять небольшой пример из самого исходного кода Python и распространить его на себя. Посмотрите в директории 'Modules' исходного кода Python.