常用操作
1.导入图片
import cv2
img = cv2.imread('watch.jpg',0) #颜色为1,灰度为0,不变为-1
cv2.imshow('image',img)
cv2.waitKey(0) #等待
cv2.destroyAllWindows() #关闭窗口
使用cv2.imread()加载图片并且使用cv2.imshow()显示图片
2.加载视频源
import numpy as np
import cv2
cap = cv2.VideoCapture(0) #加载视频源(由摄像头0加载)
while(True):
ret, frame = cap.read() #读取视频帧 ret为是否有返回的布尔值
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #提取灰度(由bgr转换为灰度)
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'): #检测到按下q时停止
breakcap.release()
cv2.destroyAllWindows()
3.绘制图形
绘制直线
cv2.line(img,(0,0),(150,150),(255,255,255),15)
参数:起点坐标 终点坐标 颜色 线条粗细
绘制矩形
cv2.rectangle(img,(15,25),(200,150),(0,0,255),15)
参数:左上坐标 右下坐标 颜色 线条粗细
绘制圆
cv2.circle(img,(100,63), 55, (0,255,0), -1)
参数:圆心坐标 半径 颜色 线条粗细(-1为填充图形)
4.图像操作
操作像素
import cv2
import numpy as np
img = cv2.imread('watch.jpg',cv2.IMREAD_COLOR)
px = img[55,55] #引用像素
px = [255,255,255] #修改像素
px = img[100:150,100:150] print(px)
引用区域(ROI)print(img.shape) print(img.size print(img.dtype)
引用特征
修改图片分辨率
pic= cv2.resize(hsv, (481, 321))