OpenCV 图像翻转:使用键盘控制图像翻转方向

本文将介绍如何使用 OpenCV 库,通过键盘输入控制图像翻转方向,实现图像的水平、垂直和水平垂直翻转。

代码示例:

img = cv2.imread('lena.png')
cv2.imshow('img', img)

while True:
    key = cv2.waitKey(0)
    if key == 48:
        img2 = img
    elif key == 49:
        img2 = cv2.flip(img, 0)
    elif key == 50:
        img2 = cv2.flip(img, 1)
    elif key == 51:
        img2 = cv2.flip(img, -1)
    cv2.imshow('img2', img2)
    if key == 27:  # 按下esc键
        break

cv2.destroyAllWindows()

代码解释:

  1. img = cv2.imread('lena.png'):读取名为 'lena.png' 的图像文件,并将其存储在变量 img 中。
  2. cv2.imshow('img', img):显示名为 'img' 的窗口,并在窗口中显示 img 中的图像。
  3. while True::开始一个循环,持续监听键盘输入。
  4. key = cv2.waitKey(0):等待键盘输入,并获取键盘输入的 ASCII 码值,存储在变量 key 中。
  5. if key == 48::如果按下数字键 '0',则将 img 复制到 img2 中,不进行翻转。
  6. elif key == 49::如果按下数字键 '1',则将 img 水平翻转,并将结果存储在 img2 中。
  7. elif key == 50::如果按下数字键 '2',则将 img 垂直翻转,并将结果存储在 img2 中。
  8. elif key == 51::如果按下数字键 '3',则将 img 水平垂直翻转,并将结果存储在 img2 中。
  9. cv2.imshow('img2', img2):显示名为 'img2' 的窗口,并在窗口中显示 img2 中的图像。
  10. if key == 27::如果按下 'esc' 键,则退出循环,并关闭所有窗口。
  11. cv2.destroyAllWindows():关闭所有打开的窗口。

使用说明:

  1. 运行代码后,将会出现一个名为 'img' 的窗口,显示原始图像。
  2. 按下数字键 '0'、'1'、'2'、'3',分别对应不翻转、水平翻转、垂直翻转和水平垂直翻转。
  3. 按下 'esc' 键退出程序。

注意:

  • 代码中的 'lena.png' 文件需要在程序运行目录中存在。
  • 可以将 'lena.png' 替换为其他图像文件。
  • 可以在代码中添加更多功能,例如调整窗口大小、保存翻转后的图像等。
OpenCV 图像翻转:使用键盘控制图像翻转方向

原文地址: https://www.cveoy.top/t/topic/Oio 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录