opencv3 学习笔记(二)

1、OpenCv 颜色追踪

import cv2
import numpy as np
cap=cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 120);
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 240);
while(1):
# 获取每一帧
ret,frame=cap.read()
# 转换到 HSV
hsv=cv2.cvtColor(frame,cv2.COLOR_BGR2HSV)
# 设定蓝色的阈值
lower_blue=np.array([100,43,46])
upper_blue=np.array([124,255,255])
# 根据阈值构建掩模
mask=cv2.inRange(hsv,lower_blue,upper_blue)
# 对原图像和掩模进行位运算
res=cv2.bitwise_and(frame,frame,mask=mask)
# 显示图像
cv2.imshow('frame',frame)
cv2.imshow('mask',mask)
cv2.imshow('res',res)
k=cv2.waitKey(5)&0xFF
if k==27:
break
# 关闭窗口
cv2.destroyAllWindows()

 

2、RGB 转 HSV

import cv2
import numpy as np

green=np.uint8([[[0,255,0]]])
# 不能用 [0,255,0],而要用 [[[0,255,0]]]
# 这里的三层括号应该分别对应于 cvArray, cvMat, IplImage
hsv_green=cv2.cvtColor(green,cv2.COLOR_BGR2HSV)
print (hsv_green)

3、指定比例大小缩放图片

import cv2
import numpy as np
img=cv2.imread('messi5.jpg')
# 下面的 None 本应该是输出图像的尺寸,但是因为后边我们设置了缩放因子
# 因此这里为 None
res=cv2.resize(img,None,fx=2,fy=2,interpolation=cv2.INTER_CUBIC)

#缩放至固定尺寸

res=cv2.resize(img,(2*width,2*height),interpolation=cv2.INTER_CUBIC)

#默认情况下所有改变图像尺寸大小的操作使用的插值方法都是 cv2.INTER_LINEAR(快),在扩展时我们推荐使用 cv2.INTER_CUBIC(慢),两种不同的插值算法

 

posted @ 2017-06-30 16:46  oftenlin  阅读(1700)  评论(0编辑  收藏  举报