Bien, recién completado o al menos antes de la depuración, de todos modos, el trabajo implica la conversión de Eigen SparseMatrix a OpenCV SparseMat.
Si no necesita material de imagen OpenCV, es mejor usar Eigen. Las operaciones individuales de Eigen Sparse Matrix son más rápidas PERO reservar espacio para Eigen Sparse Matrix ocupa una cantidad masiva de tiempo.
SparseMat de OpenCV no tiene el equivalente de la operación de reserva y las operaciones individuales son notablemente más lentas. En mi caso, convertí mi Eigen Sparse Matrix a OpenCV SparseMat porque uso OpenCV ampliamente.
En segundo lugar, la forma en que Eigen maneja las operaciones matriciales sigue de cerca el formato del álgebra matricial. No es así para OpenCV. La biblioteca es principalmente llamadas de función nulas, por lo que las matrices src y dest deben pasarse como parámetros.
- ¿Por qué el conjunto de polinomios de grado igual a dos no forma un espacio vectorial?
- Si [math] A, B \ in R ^ {nxn} [/ math], entonces ¿por qué es [math] Nul (A) [/ math] un subconjunto de [math] Nul (AB) [/ math]?
- Cómo demostrar que [math] \ operatorname {rank} (AB) = \ operatorname {rank} (B) – \ operatorname {dim} (\ operatorname {Nul} (A) \ cap \ operatorname {Col} (B)) [/matemáticas]
- ¿Cuál es una explicación intuitiva del teorema de Cayley-Hamilton?
- ¿Por qué la mayoría de los teoremas de álgebra lineal no llevan el nombre de una persona, como en el cálculo?
Es difícil decir cuál es mejor, pero hasta ahora, tengo la opinión de que si necesito usar la biblioteca OpenCV u otras llamadas de biblioteca específicas de la aplicación OpenCV, probablemente prefiera usar Eigen. Pero si el problema pudiera resolverse solo en Eigen, entonces lo resolvería.