MATLAB vs C ++ vs OpenCV - imresize
Ich habe den folgenden MATLAB-Code, den ich in C ++ transportieren möchte
AnnehmenGr
ist 2d Matrix und1/newscale == 0.5
Gr = imresize(Gr, 1 / newScale);
B = imresize (A, scale) gibt Bild B zurück, das skaliert mal der Größe von A entspricht. Das Eingabebild A kann ein Graustufen-, RGB- oder Binärbild sein. Wenn der Maßstab zwischen 0 und 1,0 liegt, ist B kleiner als A. Wenn der Maßstab größer als 1,0 ist, ist B größer als A.
So bedeutet dies, dass ich eine 2D-Matrix == matrix_width / 2 und matrix_height / 2 bekomme
Wie berechne ich die Werte? Die Standardeinstellungen laut Dokumentation stammen aus der kubischen Interpolation für das nächste 4X4.
Ich kann keinen Beispielcode für C ++ finden, der dasselbe tut. Können Sie bitte einen Link zu einem solchen Code bereitstellen?
Ich fand auchdiese OpenCV-Funktion,resize
.
Gleicht es dem MATLAB?