>  기사  >  백엔드 개발  >  Python의 미러 구현 방법

Python의 미러 구현 방법

PHPz
PHPz원래의
2017-04-02 13:50:075453검색

이미지를 미러링해도 이미지의 모양은 변경되지 않습니다. 이미지 미러링 변환에는 수평 미러링, 수직 미러링, 대각선 미러링의 세 가지 유형이 있습니다

이미지의 크기가 M×N이라고 가정하면

수평 미러링은 크기에 따라 수행될 수 있습니다. 공식

I = i

J = N - j + 1

수직 미러링은 공식

I = M - i +에 따라 계산할 수 있습니다. 1

J = j

대각선 대칭은 다음 공식에 따라 계산할 수 있습니다.

I = M - i + 1

J = N - j + 1

OpenCV에서 중간 좌표는 [0,0]부터 시작한다는 점에 주목할 가치가 있습니다.

따라서 일 때 수식의 +1을 -1로 변경해야 합니다. 프로그래밍

여기의 실행 환경은 다음과 같습니다.

Python은: Python2.7.6
OpenCV2.4.10 버전
numpy는: numpy-1.9 .1-win32-superpack-python2.7

아래 코드는 여전히 아기 사진을 예로 들어 구체적인 절차는 다음과 같습니다.

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)

Python의 미러 구현 방법

위 내용은 Python의 미러 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.