img =cv2.imread(‘zfx.png’)#读取
cv2.namedWindow(‘image’,cv2.WINDOW_NORMAL)
cv2.namedWindow(‘image3’,cv2.WINDOW_NORMAL)
cv2.namedWindow(‘image2’,cv2.WINDOW_NORMAL)
cv2.namedWindow(‘image1’,cv2.WINDOW_NORMAL)
cv2.namedWindow(‘img’,cv2.WINDOW_NORMAL)
cv2.imshow(‘image’,img)
img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)#转化为hsv的的图
cv2.imshow(‘image3’,img2)
lower_blue=np.array([110,50,50])#红色下限
upper_blue=np.array([255,255,200])#红色上限
mask=cv2.inRange(img2,lower_blue,upper_blue)#追踪你所需要的颜色的物品#读取红色物体,但未灰色
cv2.imshow(‘image2’,mask)
res=cv2.bitwise_and(img,img,mask=mask)#让hsv的图有色彩#二值化处理,让其有颜色
cv2.imshow(‘image1’,res)
rows,cols,num=res.shape
这里的第一个参数为旋转中心,第二个为旋转角度,第三个为旋转后的缩放因子
可以通过设置旋转中心,缩放因子,以及窗口大小来防止旋转后超出边界的问题
M=cv2.getRotationMatrix2D((cols/2,rows/2),-20,0.6)
M=cv2.getRotationMatrix2D((cols/2,rows/2),-20,0.6)
第三个参数是输出图像的尺寸中心
dst=cv2.warpAffine(mask,M,(1cols,1rows))
while(1):
cv2.imshow(‘img’,dst)
if cv2.waitKey(1)&0xFF==27:
break
cv2.destroyAllWindows()
在这里插入图片描述