소스 뷰어
import numpy as np
import cv2
import matplotlib.pyplot as plt

# 이미지 불러오기
image = cv2.imread('lena.jpg')
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# NumPy를 이용한 반사 변환
horizontal_flip = image_rgb[:, ::-1]  # 좌우 반사
vertical_flip = image_rgb[::-1, :]    # 상하 반사
diagonal_flip = image_rgb[::-1, ::-1] # 대각선 반사

# 결과 출력
plt.figure(figsize=(8, 9))
fs = 15  # 폰트 크기

# 원본 이미지
plt.subplot(2, 2, 1)
plt.imshow(image_rgb)
plt.title("Original Image", fontsize=fs)
plt.axis("off")

# 좌우 반사 이미지
plt.subplot(2, 2, 2)
plt.imshow(horizontal_flip)
plt.title("Horizontally Flipped (NumPy)", fontsize=fs)
plt.axis("off")

# 상하 반사 이미지
plt.subplot(2, 2, 3)
plt.imshow(vertical_flip)
plt.title("Vertically Flipped (NumPy)", fontsize=fs)
plt.axis("off")

# 대각선 반사 이미지
plt.subplot(2, 2, 4)
plt.imshow(diagonal_flip)
plt.title("Diagonally Flipped (NumPy)", fontsize=fs)
plt.axis("off")

plt.tight_layout()
plt.show()
No description has been provided for this image