使用 python openCV 进行图像搜索。
打开简历的链接
opencv_python-4.1.0+contrib-cp35-cp35m-win_amd64.whl
下载导入 cv2
import numpy as np
从 matplotlib 导入 pyplot 作为 plt
img = cv2.imread('watch.jpg',cv2.IMREAD_GRAYSCALE)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
pip 安装 numpy
pip 安装 matplotlib
Matplotlib 用于显示视频或图像中的帧。
Numpy 用于所有“数字和 Python”。
我们主要是利用 Numpy 的数组功能。
import cv2
将 numpy 导入为 np
从 matplotlib 导入 pyplot 作为 plt
img = cv2.imread('watch.jpg',cv2.IMREAD_GRAYSCALE)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
首先我们要导入一些东西
接下来,我们将 img 定义为 cv2.read(image file, parms)。
默认值为 IMREAD_COLOR,即没有任何 Alpha 通道的颜色。
对于第二个参数,可以使用-1、0或1。颜色为1,灰度为0,不变的是-1。因此,对于灰度,可以执行 img = cv2.imread('watch.jpg', 0)
加载后,我们使用 cv2.imshow(title,image) 来显示图像。从这里,
我们使用cv2.waitKey(0) 等到按下任意键。一旦完成,
我们使用cv2.destroyAllWindows() 关闭所有内容。
加载视频源 Open CV Python
带有视频和网络摄像头。
处理视频中的帧与处理图像相同。
代码--
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
while(True):
ret, frame = cap.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
我们导入 numpy 和 cv2 接下来,我们可以使用 cap = cv2.VideoCapture(0)。
while(True):
ret, frame = cap.read()
我们将 ret 和 frame 定义为 cap.read()。
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
*我们定义了一个新的变量gray,作为frame,转换为gray。
注意**
*OpenCV 将颜色读取为 BGR(蓝绿红),
大多数计算机应用程序读取为 RGB(红绿蓝)。
cv2.imshow('frame',gray)
在这里,我们显示的是转换为灰色的 Feed。
if cv2.waitKey(1) & 0xFF == ord('q'):
break
如果 key 是 q,我们将退出 while 循环,然后运行:
cap.release()
cv2.destroyAllWindows()
这会释放网络摄像头,然后关闭所有 imshow() 窗口。
如果你想保存录音,然后使用,
import numpy as np
import cv2
cap = cv2.VideoCapture(1)
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))
while(True):
ret, frame = cap.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
out.write(frame)
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
out.release()
cv2.destroyAllWindows()