终止python循环

2024-05-29 04:47:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我做了一个程序,可以从相机上读取像素。我用了一段时间的循环。但是我不能在没有按“Cltrl+C”的情况下从终端关闭程序。我想用ESC按钮(ASCII 27)关闭程序。我尝试了以下代码,但不起作用。任何帮助都将不胜感激

import cv2 as cv
import numpy as np

cap = cv2.VideoCapture(0)

while True:
   _, frame = cap.read()

   redimage = frame[:,:,2]
   print(redimage)

   k = cv.waitKey(1) & 0xFF
   if k == 27:
      break

Tags: import程序终端as情况像素cv2按钮
2条回答

用途:

if k == chr(27):
   break

cv.waitKey(1)仅为opencvgui工作。使用此功能无法在控制台中捕获键盘事件。你知道吗

因此,您可以更改代码以显示您正在从相机读取的帧。你知道吗

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while True:
   _, frame = cap.read()
   redimage = frame[:,:,2]
   cv2.imshow('frame', frame)
   print(redimage)
   k = cv2.waitKey(1) & 0xFF
   if k == 27:
      break

cap.release()
cv2.destroyAllWindows()

您可以在this answer中找到一种在控制台中捕获键盘事件的方法。你知道吗

相关问题 更多 >

    热门问题