Die Position jedes Pixels wird durch Remapping ausgedrückt: g (x, y) = f (h (x, y)) und H (x, y) ist eine Mapping -Methodenfunktion. Wenn h (x, y) = (i.cols ()-x, y) bedeutet, dass die Ablenkung in der x-Achsenrichtung auftritt.
Funktion: Imgproc.remap (MAT SRC, MAT DST, MAT MAP1, MAT MAP2, INT Interpolation, int BorderMode, skalarer Bordervalue)
Parameterbeschreibung:
SRC: Quellbild
DST: Zielbild
MAP1: Es hat zwei mögliche Objekte, die dargestellt werden müssen, eine ist die erste Karte, die den Punkt (x, y) darstellt, und der andere ist der X -Wert des Typs CV_16SC2, CV_32FC1 und CV_32FC2
MAP2: Es hat zwei mögliche Objekte, die dargestellt werden müssen. Einer ist, wenn MAP1 die erste Karte von Punkt (x, y) darstellt, die keinen Wert darstellt. Der andere ist der Y -Wert des Typs CV_16UC1 und CV_32FC1
Interpolation: Interpolationsmethode, Inter_area unterstützt nicht
BorderMode: Grenzmodus, Standard Border_Contant
BorderValue: Der Wert, der verwendet wird, wenn es eine konstante Grenze gibt, ist die Standardeinstellung 0
Beispielcode:
public static void main (String [] args) {System.loadLibrary (core.Native_library_name); Mat src = imgcodecs.imread ("f: //t0105b07b97736d453d.jpg"); Mat dst = src.clone (); MAT map_x = new mat (src.size (), cvType.cv_32fc1); Mat map_y = new mat (src.size (), cvType.cv_32fc1); int key = 1; // Schlüsselwerte 1, 2, 3, 4 für (int i = 0; i <src.rows (); i ++) {für (int j = 0; j <src.cols (); src.rows () * 0.25 && i <src.rows () * 0.75) {map_x.put (i, j, 2 * (j - src.cols () * 0.25) + 0.5); map_y.put (i, j, 2 * (i - src.rows () * 0,25) + 0,5); } else {map_x.put (i, j, 0.0); map_y.put (i, j, 0.0); } brechen; Fall 2: // REMAP 2 MAP_X.PUT (i, j, j); map_y.put (i, j, src.rows () - i); brechen; Fall 3: // REMAP 3 MAP_X.PUT (i, j, src.cols () - j); map_y.put (i, j, i); brechen; Fall 4: // Remap 4 MAP_X.PUT (i, j, src.cols () - j); map_y.put (i, j, src.rows () - i); brechen; Standard: Break; }}} Imgproc.remap (src, dst, map_x, map_y, imgproc.inter_linear, core.border_constant, neuer Scalar (0, 0, 0)); Imgcodecs.imwrite ("f: //dst.jpg", dst); } Quellbild:
Die erste Zuordnung:
Die zweite Zuordnung:
Die dritte Zuordnung:
Die vierte Zuordnung:
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.