Import numpy as np
Import cv2
Img=cv2.imread(“imagename”,0) 读入image
cv2.imshow(“myimage”,img) 显示图片img,窗口名称为myimage
cv2.waitKey(0)
cv2.destoryAllWindow(“winname”) 删除特定窗口或删除所有窗口
cv2.namedWindow(“myimage”,cv2.WINDOW_NORMAL) 可调窗口大小
cv2.imwrite(“myimage.png”,img) 保存img为myimage.png
print img[100,100] 输出img 100*100处的RGB值
img.itemset((100,100,0),255) 修改100*100处R的值
print img.shape 输出img大小及通道数
print img.size 输出img像素数目
print img.dtype 返回img数据类型(除debug时常用)
图像中的ROI(Region of Interset)
roi = img[100:200,100:200]
img[0:100,0:100] = roi 将img的[100:200,100:200]区域显示在[0:100,0:100]区域上
RGB拆分与合并
b,g,r=cv2.split(img) split输出与通道有区别
img=cv2.merge([b,g,r]) 参数为矩阵
r=img[:,:,0] 输出一个通道的像素值
为像素扩边(填充) 卷积运算或0填充时用到
cv2.copyMakeBorder(img,top,bottom,left,right,cv2.model)
plt.subplot(row,line,subnum)
plt.imshow(img)
plt.title(“imgname”)
plt.show()
dst=cvClor(src,code)
src为原图像,dst为转换后的图像,code为掩码表示由src到dst之间是怎么转的,比如是色彩转为灰度,还是彩色转为HST模式
cv2.threshold(src,thresh,maxval,type,dst=none)
返回二值图像 针对单通道图像 其中thresh为阀值,maxvalue为某些模式
图像上的和算术运算
mat=cv2.add(mat1,mat2) x+y>255时输出255
print mat
print mat1+mant 2 若x+y>255时输出(x+y)%255
图像混合
dst=cv2.addWeighted(img1,w1,img2,w2,gamma)
注:dst=w1*img1+w2*img2+gamma
cv2.imgshow(“dst”,dst)
图像的安慰运算(提取图像的一部分,选择非矩阵ROI时要用到的操作)