- cvtColor(src,dst )
img2 = cv2.cvtColor(img1,dst)##进行颜色空间变换
解释:第一个参数为要转化的图片,第二个参数为进行的颜色空间变换,返回的参数为变换颜色空间后的图片。
- view()
img2 = img1.view()##浅拷贝
- copy()
img2 = img1.copy()##深拷贝
- split(img)
b,g,r = cv2.split(img)##分离颜色通道
解释:输入的参数为要分离的图片,返回的三个参数分别为分离的三个颜色通道。
- merge((b,g,r))
img = cv2.merge((b,g,r))##将颜色通道合并
解释:输入的参数为三个要合并的颜色通道,返回的值为合并后的图片
- line(img,pt1,pt2,color,thinkness)
cv2.line(img,pt1,pt2,color,thinkness)##绘制直线
解释:第一个参数为要绘画的图片,第二个参数为起始点,第三个参数为终点,第四个参数为线的颜色,第五个参数为线的粗细程度。
- rectangle(img,pt1,pt2,color,thinkness)
cv2.rectangle(img,pt1,pt2,color,thinkness)##绘制矩形
解释:第一个参数为要绘画的图片,第二个参数为矩形左上角的点,第三个参数为右上角的点,第四个参数为线的颜色,第五个参数为线的粗细程度。
- circle(img,center,radius,color,thickness)
cv2.circle(img,center,radius,color,thickness)##绘制圆
解释:第一个参数为要绘画的图片,第二个参数为圆心坐标,第三个参数为圆的半径,第四个参数为线的颜色,第五个参数为线的粗细程度。
- ellipse(img,center,axes,angle,startAngle,endAngle,color)
cv2.ellipse(img,center,axes,angle,startAngle,endAngle,color)##绘制椭圆
解释:第一个参数为要绘画的图片,第二个参数为圆心坐标,第三个参数为(长轴,短轴),第四个参数为椭圆转动角度,第五个参数为椭圆圆弧起始角度,第六个参数为椭圆圆弧结束角度。
- polylines(img,pts,isCLosed,color,thickness)
cv2.polylines(img,pts,isCLosed,color,thickness)##绘制多边形
解释:第一个参数为要绘画的图片,第二个参数为多边形的点集,第三个参数为所绘制的图像是否闭合,第四个参数为线条的颜色,第五个参数为线条的颜色。
注:pts 是三维的。
- putText(img,text,org,fontFace,fontScale,color)
cv2.putText(img,text,org,fontFace,fontScale,color)##绘制文字
解释:第一个参数为要绘画的图片,第二个参数是所写的文字,第三个参数是文字起始坐标,第四个参数为字体类型,第五个参数为字的大小,第六个参数为字体颜色。
注:OpenCV不能直接绘制中文。
- cv2.add(img1,img2)
new_img = cv2.add(img1,img2)##两张图片相加
解释:输入的两个参数为两张图片,输出的参数为相加后的新图片。
注:输入的两张图片必须长宽一致,且通道数一致。add的规则是对应位置的元素相加,若和超过255,则变为255。
- cv2.subtract(img1,img2)
new_img = cv2.subtract(img1,img2)##两张图片相减
解释:输入的两个参数为两张图片,输出的参数为相减后的新图片。
- cv2.multiply(img1,img2)
new_img = cv2.multiply(img1,img2)##两张图片相乘
解释:输入的两个参数为两张图片,输出的参数为相乘后的新图片。
- cv2.divide(img1,img2)
new_img = cv2.divide(img1,img2)##两张图片相除
解释:输入的两个参数为两张图片,输出的参数为相除后的新图片。
- addWeighted(img1,alpha,img2,beta,gamma)
new_img = cv2.addWeighted(img1,alpha,img2,beta,gamma)##图片融合
解释:输入的第一个参数为第一张图片,第二个参数为第一张图片的权重,第三个参数为第二张图片,第四个参数为第二张图片的权重,第五个参数为偏差值。
- resize(img,dsize)
cv2.resize(img,dsize)##图片的放缩
解释:第一个参数为需要缩放的图片,第二个参数为放缩后图片的大小。
- flip(img,flipCode)
new_img = cv2.flip(img,flipCode)##图片翻转
解释:第一个参数为需要翻转的图片,第二个参数为翻转的类型,返回的参数为新的图片。其中第二个参数的取值:
flipCode = 0 表示上下翻转;
flipCode > 0 表示左右翻转;
flipCode < 0 表示上下+左右翻转。
- rotate(img,rotateCode)
new_img = cv2.rotate(img,rotateCode)##图片旋转
解释:第一个参数为需要旋转的图片,第二个参数为旋转的角度,返回的参数为新的图片。其中第二个参数的取值:
ROTATE_90_CLOCKWISE ,顺时针旋转90度;
ROTATE_90_COUNTERCLOCKWISE,逆时针旋转90度;
ROTATE_180,旋转180度。
- warpAffine(img,M,dsize)
new_img = cv2.warpAffine(img,M,dsize)##仿射变换之图片平移
解释:第一个参数为要进行平移的图片,第二个参数为变换矩阵,第三个参数为输出图片大小,返回的参数为平移变换后的新图片。
- getRotationMatrix2D(center,angle,scale)
M = cv2.getRotationMatrix2D(center,angle,scale)##获得变换矩阵
解释:第一个参数为旋转的中心,第二个参数为旋转的角度,第三个参数为缩放因子,返回的参数为变换矩阵。
- getAffineTransform(img[],dst[])
M = cv2.getAffineTransform(img[],dst[])##通过点获得变换矩阵
解释:第一个参数为初始图片对应的点集,第二个参数为变换后对应的点集,返回的参数为变换矩阵。
- getPerspectiveTransform(src[],dst[])
M = cv2.getPerspectiveTransform(src[],dst[])##获得透射变换的矩阵
解释:第一个参数为变换前四个点的坐标,第二个参数为变换后四个点的坐标,返回的参数为透射变换矩阵。
- warpPerspective(img,M,dsize)
cv2.warpPerspective(img,M,dsize)##仿射变换之透射变换
解释:第一个参数为要进行透射的图片,第二个参数为透射变换矩阵,第三个参数为输出图片大小,返回的参数为透射变换后的新图片。