OpenCV常用方法

来源:互联网 发布:qq堂 for mac 编辑:程序博客网 时间:2024/06/06 01:34

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时要用到的操作)

0 0
原创粉丝点击