Schnellste Möglichkeit, mit OpenCV 3.0 eine Farbmatrix auf ein RGB-Bild anzuwenden?

Ich habe ein Farbbild, das als OpenCV Mat-Objekt dargestellt wird (C ++, Bildtyp CV_32FC3). Ich habe eine Farbkorrekturmatrix, die ich auf jedes Pixel des RGB-Farbbilds anwenden möchte (oder BGR unter Verwendung der OpenCV-Konvention, spielt hier keine Rolle). Die Farbkorrekturmatrix ist 3x3.

Ich könnte leicht über die Pixel iterieren und einen Vektor v (3x1) erstellen, der RGB darstellt, und dann M * v berechnen, aber dies wäre zu langsam für meine Echtzeit-Videoanwendung.

Die Funktion cv :: cvtColor ist schnell, scheint jedoch keine benutzerdefinierten Farbtransformationen zuzulassen.http: //docs.opencv.org/2.4/modules/imgproc/doc/miscellaneous_transformations.html#cvtcolo

Ähnlich wie die folgenden, aber ich verwende OpenCV für C ++, nicht Python.Transformationsmatrix auf Pixel in OpenCV-Bild anwenden

Antworten auf die Frage(4)

Ihre Antwort auf die Frage