一、窗口
创建窗口对象 .nameWindow(“窗口标题”)
当前窗口当前图片、帧 .imshow(“窗口标题”,image\frame)
当前窗口显示时间 .waitKey(0) (单位:ms。0/不输入:无限停留)
销毁所有窗口 .destroyAllWindows()
二、分类器
调用分类器 .CascadeClassifier(“./opencv/…”)
Eg:a=a.CascadeClassifier(“./opencv/…”)
a. detectMultiScale(gray_image, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32)) # 人脸检测
# scaleFactor:图像缩放比例,如人脸取大计算快可能错过脸minNeighbors:匹配成功所需周围矩阵框数目(每一个特征
一个矩阵框),minSize:检测的最小区域,取大则忽略小物体
返回[[143 36 244 244]]
三、画框
在该图中画矩阵框 .rectangle(image\frame, (x,y矩形顶点↖), (x,y矩形对角线定点↘), color, thickness=2(矩阵线条粗细))
在该图中显示信息 .putText(image\frame, ‘mingzi’, (x,y坐标顶点↖), cv2.FONT_…(字体), 1(字号), (255,0,255颜色), 2(字的线宽))
四、图像
灰化图像/其它颜色 .cvtColor(image, cv2.COLOR_BGR2GRAY/(0,0,0))
保存图像 .imwrite(img_name, image)
改变图像大小 .resize(image(原图), (w, h新的宽高))
设图像边界 .copyMakeBorder(image, top, bottom, left, right, cv2.BORDER_CONSTANT, value=BLACK)
# top,bottom,left,right:边界( 窗口距离图片 )大小,cv2.BORDER_CONSTANT使边界颜色由value指定
五、视频
读取视频\摄像头 .VideoCapture(“./1.mp4”) \
.VideoCapture(0) ( 0为摄像头(可能为1、2…))
判断摄像头开启 .isOpened()
读取一帧数据 .read() (返回两个success, frame)
释放视频\摄像头 .release()
未完,持续更新…
附OpenCV应用 – 人脸识别流程
详细可转向个人人脸识别后续博客…