zoukankan      html  css  js  c++  java
  • 5-4 图片修补

    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)
  • 相关阅读:
    shell 重启 tomcat 脚本
    shell 复制/备份文件 脚本
    在 CentOS 上安装 node.js
    架构漫谈(一):什么是架构? -王概凯
    冷静审视人工智能技术的本质 | 一图看懂新一代人工智能知识体系大全
    时代在变
    什么是设计思维Design Thinking——风靡全球的创造力培养方法
    金融即服务(FaaS),将开启场景化金融新格局
    devops工具
    京东金融-供应链金融业务介绍
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/9740398.html
Copyright © 2011-2022 走看看