Heim > Backend-Entwicklung > Python-Tutorial > Spiegelimplementierungsmethode in Python

Spiegelimplementierungsmethode in Python

PHPz
Freigeben: 2017-04-02 13:50:07
Original
5560 Leute haben es durchsucht

Das Spiegeln eines Bildes verändert nicht die Form des Bildes. Es gibt drei Arten von Bildspiegelungstransformationen: horizontale Spiegelung, vertikale Spiegelung und diagonale Spiegelung

Angenommen, die Größe des Bildes beträgt M×N, dann

kann die horizontale Spiegelung entsprechend durchgeführt werden Formel

I = i

J = N - j + 1

Vertikale Spiegelung kann nach der Formel

I = M - i + berechnet werden 1

J = j

Diagonale Spiegelung kann nach der Formel

I = M - i + 1

J = N - j + berechnet werden 1

Es ist erwähnenswert, dass in OpenCV die mittlere Koordinate bei [0,0] beginnt

Also muss +1 in der Formel in -1 geändert werden, wenn Programmierung

Die laufende Umgebung hier ist:

Python ist: Python2.7.6
OpenCV2.4.10-Version
numpy ist: numpy-1.9 .1-win32-superpack-python2.7

unten Der Code verwendet weiterhin Babybilder als Beispiel. Die spezifische Vorgehensweise ist wie folgt:

import cv2.cv as cv
image = cv.LoadImage('angelababy.jpg',1)
size = (image.width,image.height)
iUD = cv.CreateImage(size,image.depth,image.nChannels)
iLR = cv.CreateImage(size,image.depth,image.nChannels)
iAcross = cv.CreateImage(size,image.depth,image.nChannels)
h = image.height
w = image.width
for i in range(h):
  for j in range(w):
    iUD[h-1-i,j] = image[i,j]
    iLR[i,w-1-j] = image[i,j]
    iAcross[h-1-i,w-1-j] = image[i,j]
cv.ShowImage('image',image)
cv.ShowImage('iUD',iUD)
cv.ShowImage('iLR',iLR)
cv.ShowImage('iAcross',iAcross)
cv.WaitKey(0)
Nach dem Login kopieren

Spiegelimplementierungsmethode in Python

Das obige ist der detaillierte Inhalt vonSpiegelimplementierungsmethode in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage