Estoy tratando de leer marcos de video con openCV, guardo datos en formato cv :: Mat. entonces quiero usar mi otro código que acepta "matriz de tipo int" para este marco de video. Sé que "cvMat" y "int type matrix" no son compatibles. Tal vez no estoy familiarizado con opencv, pero ¿puedo hacer algún tipo de conversión entre "cvMat" y "int mat", para que pueda usar mi código para los marcos de video capturados? digo "estera int", tal vez no es correcto, pero lo que quiero decir es lo siguiente:conversión entre matriz OpenCV y matriz int
cv::Mat videoFrame;
int inputData[600][400];
quiero hacer algo como:
inputData = videoFrame;
Gracias.
Querido Vasile, muchas gracias por tu respuesta. Su método sugerido es bastante bueno, pero tengo miedo de jugar con la asignación de memoria. Tal como lo mencionó, podría no ser seguro, y ya he experimentado muchos problemas de memoria hasta ahora (no en este caso). Entonces, ¿podría haber otra solución? Realmente no espero que mi código vuelva a estar muerto por problemas de memoria. Gracias de nuevo. –
La manera segura es no utilizar inputData en absoluto. Mire su algoritmo y vea si puede usar solo videoFrame. La duplicación de datos a veces es un signo de codificación incorrecta – Sam
Ok, gracias por su sugerencia. –