zoukankan      html  css  js  c++  java
  • opencv简单卷积运用

    import  cv2 as cv

    import numpy as np

    img=cv.imread('learn.jpg',cv.IMREAD_GRAYSCALE)

    cv.imshow('first image',img)
    img_size=img.shape
    print(img_size)

    imgkernel=np.array([[-2,-1,0],
    [-1, 1,1],
    [ 0, 1,2]]
    )

    print(imgkernel)
    #利用CV的卷积核卷积图像

    dst=cv.filter2D(img,-1,imgkernel)
    cv.imshow('filter img',dst)
    print(dst.shape) #可以查看数组没变,说明为same方式卷积

    img_dst=np.hstack((img,dst))

    cv.imshow('merge img',img_dst)

    cv.waitKey()
    cv.destroyAllWindows()

    import  cv2 as cv

    import numpy as np
    img=cv.imread('learn.jpg',cv.IMREAD_GRAYSCALE)
    cv.imshow('first image',img)
    img_size=img.shape
    print(img_size)
    imgkernel=np.array([[-2,-1,0],
    [-1, 1,1],
    [ 0, 1,2]]
    )
    # print(imgkernel)
    #利用CV的卷积核卷积图像
    dst=cv.filter2D(img,-1,imgkernel)
    # cv.imshow('filter img',dst)
    # print(dst.shape) #可以查看数组没变,说明为same方式卷积
    img_dst=np.hstack((img,dst))
    cv.imshow('merge img',img_dst)
    img_cany=cv.Canny(img,100,200)
    # print(img_cany)
    # cv.imshow('canny image',img_cany)
    img_dst_canny=np.hstack((img_cany,img_cany))
    img_total=np.vstack(( img_dst,img_dst_canny))
    cv.imshow('all image',img_total)
    cv.waitKey()
    cv.destroyAllWindows()
    
    

    import  cv2 as cv
    import numpy as np
    img=cv.imread('learn.jpg',cv.IMREAD_GRAYSCALE)
    # cv.imshow('first image',img)
    # img_size=img.shape
    # print(img_size)
    imgkernel=np.array([[-2,-1,0],
    [-1, 1,1],
    [ 0, 1,2]]
    )
    # print(imgkernel)
    #利用CV的卷积核卷积图像
    dst=cv.filter2D(img,-1,imgkernel)
    # cv.imshow('filter img',dst)
    # print(dst.shape) #可以查看数组没变,说明为same方式卷积
    img_dst=np.hstack((img,dst))
    # cv.imshow('merge img',img_dst)
    img_cany=cv.Canny(img,100,200)
    # print(img_cany)
    # cv.imshow('canny image',img_cany)
    img_dst_canny=np.hstack((img_cany,img_cany))
    img_total=np.vstack(( img_dst,img_dst_canny))
    # cv.imshow('all image',img_total)
    ret,threshold=cv.threshold(img,100,200,0)
    print(ret)
    print(threshold)
    cv.imshow('threshold',threshold)
    img1=threshold-img
    ret1,threshold1=cv.threshold(img1,10,200,0)
    print(ret1)
    cv.imshow('threshold1',threshold1)
    cv.waitKey()
    cv.destroyAllWindows()







  • 相关阅读:
    oracle 如何用触发器实现更新刚插入的数据
    数据库好论坛
    不同的用户导入数据库
    用函数式编程技术编写优美的 JavaScript
    使用GridView自带的ToolTip隐藏过长的数据
    含有dropdownlist的gridview增删改查
    数据分析
    数据分析
    xshell链接vbox 上 nat 方式链接虚拟机
    测试开发方法概述
  • 原文地址:https://www.cnblogs.com/tangjunjun/p/11243361.html
Copyright © 2011-2022 走看看