#img=cv2.imread
rows,cols,channels=img.shape
cropped=img[0:479,0:cols]
#转换hsv
hsv=cv2.cvtcolor
#图片二值化处理,把[240,240,240][255,255,255]以外的颜色变成0
thresh=cv2.inrange,np.array)
erode=cv2.erode
dilate=cv2.dilate
#创建形状和尺寸的结构元素
kernel=np.ones,np.uint
2、图像修复:
在扩张修复区域的基础上外加调整像素值图片处理。
其中腐蚀操作详细如下:
定义了一个十字形结构元素其实是一个矩阵,我们知道在图片的腐蚀过程,对图片的每个点,使用这个结构扫描每一个点,用结构元素与其覆盖的二值图像做“与”操作,如果都为1,结果图像的该像素为1。否则为0,腐蚀处理的结果是使原来的二值图像减小一圈。使用的函数:cv2.erode;
膨胀操作详细如下:
使用同样的结构,对图片的每个点,使用这个结构扫描每一个点,用结构元素与其覆盖的二值图像做“与”操作,如果出现1,结果图像的该像素为1。否则为0,腐蚀处理的结果是使原来的二值图像扩大一圈。使用的函数:cv2.dilate
详细代码如下:
#扩张待修复区域
hi_mask=cv2.dilate
specular=cv2.inpaint
#合并
htich=np.vstack)
‘
blue=[]
#获取mask,调整lower中h控制颜色
lower_blue=np.array
upper_blue=np.array
mask=cv2.inrange
erode=cv2.erode
dilate=cv2.dilate
#腐蚀膨胀
erode=cv2.erode
cv2.imshow
dilate=cv2.dilate
cv2.imshow
foriinrange:
forjinrange:
ifdilate[i,j]==255:
blue.append
forwinblue:
x=w[0]
y=w[1]
img[x,y]=[255,255,255]
‘
cv2.imwrite+“.jpg“,htich)
‘
cv2.imshow
cv2.waitkey
cv2.destroyallwindows
‘