import cv2 import numpy as np img = cv2.imread('image0.jpg',1) for i in range(200,300): # 直接修改像素值 从200画到300这样一个位置上 img[i,200] = (255,255,255)#当前这样一根线占三个像素 img[i,200+1] = (255,255,255) img[i,200-1] = (255,255,255) for i in range(150,250): # 想让这条线构成一个十字交叉线 img[250,i] = (255,255,255) img[250+1,i] = (255,255,255) img[250-1,i] = (255,255,255) cv2.imwrite('damaged.jpg',img) cv2.imshow('image',img) cv2.waitKey(0)
import cv2 import numpy as np img = cv2.imread('image0.jpg',1) cv2.imshow('src',img) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] paint = np.zeros((height,width,1),np.uint8) for i in range(200,300): # 直接修改像素值 从200画到300这样一个位置上 paint[i,200] = 255#当前这样一根线占三个像素 paint[i,200+1] = 255 paint[i,200-1] = 255 for i in range(150,250): # 想让这条线构成一个十字交叉线 paint[250,i] = 255 paint[250+1,i] = 255 paint[250-1,i] = 255 cv2.imshow('paint',paint) imgDst = cv2.inpaint(img,paint,3,cv2.INPAINT_TELEA) #cv2.imwrite('damaged.jpg',img) #cv2.imshow('image',img) cv2.imshow('image',imgDst) cv2.waitKey(0)
import cv2 import numpy as np img = cv2.imread('damaged.jpg',1) cv2.imshow('src',img) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] paint = np.zeros((height,width,1),np.uint8) for i in range(200,300): # 直接修改像素值 从200画到300这样一个位置上 paint[i,200] = 255#当前这样一根线占三个像素 paint[i,200+1] = 255 paint[i,200-1] = 255 for i in range(150,250): # 想让这条线构成一个十字交叉线 paint[250,i] = 255 paint[250+1,i] = 255 paint[250-1,i] = 255 cv2.imshow('paint',paint) imgDst = cv2.inpaint(img,paint,3,cv2.INPAINT_TELEA) #cv2.imwrite('damaged.jpg',img) #cv2.imshow('image',img) cv2.imshow('image',imgDst) cv2.waitKey(0)