0
我有一個使用OpenCV lib在Python中編寫的圖像處理函數(IMP)。如何使用OpenCV將幀緩衝從C傳遞到Python
現在我想從C代碼調用IMP:
#include "/usr/include/python2.7/Python.h"
int main()
{
PyObject *pName, *pModule, *pDict, *pFun, *pValue, main_module;
// Initialize the Python Interpreter
Py_Initialize();
// Build the name object
pName = PyString_FromString("test");
if(pName)printf("OK\n");
// Load the module object
pModule = PyImport_Import(pName);
// pFunc is also a borrowed reference
pFun = PyObject_GetAttrString(pModule, "IMP");
if (PyCallable_Check(pFun))
{
//PyObject_CallObject(pFun, NULL);
PyObject_CallFunction(pFun,"o",framebuffer);
}
else
{
PyErr_Print();
}
// Clean up
Py_DECREF(pModule);
Py_DECREF(pName);
Py_DECREF(pFun);
// Finish the Python Interpreter
Py_Finalize();
getchar();
return 0;
}
如何準備「幀緩衝」傳遞到我的IMP Python函數?
任何人都可以幫助向我展示一個封裝在CV2理解的對象中的示例圖像,並使用上面的示例C代碼將它傳遞給IMP?非常感謝你的幫助。
你的'IMP'在做什麼?它可能更容易,將其轉移到C++。 – berak 2014-11-24 18:21:45
它只是試圖識別某些功能並返回yes或no。由於它是在嵌入式系統中運行,所以我使用C作爲目標代碼,但CV2 C接口已棄用,因此我將直接調用我的Python代碼進行開發。如果它被證明了,那麼我將來可能會把它翻譯成C++,並且稍後再C調用C++ dll。 – 2014-11-24 18:54:42