• python--openCV--图像处理


    安装 pip3 install opencv-python  

    图像处理:

    import cv2    #导入opencv库
    import numpy as np
    
    img = cv2.imread("ma.jpg")  #读取一张图片,地址不能带中文
    """
    第二个参数,取值可为:
    cv2.IMREAD_COLOR=1:默认参数,读入一副彩色图片,忽略alpha通道
    cv2.IMREAD_GRAYSCALE=0:读入灰度图片
    cv2.IMREAD_UNCHANGED=-1:读入完整图片,包括alpha通道(png有,jpg无)
    """
    
    img1 = cv2.imread("ma.jpg",cv2.IMREAD_GRAYSCALE)
    cv2.namedWindow("new window")  #创建一个窗口,中文显示会出乱码
        #参数 窗口标题
    
    cv2.imshow("new window", img1)   #显示图片
        #参数1:窗口标题--不能是Pyqt的窗口;如果找不到参数1的窗口就新建一个
        #imread读入的图像
    
    cv2.imshow("new", img)
    
    print(img.shape)    #输出:(452, 400, 3) 高像素(行数),宽像素(列数),通道数(一个像素有三个通道RGB)
    # 灰度图由于没有颜色通道,使用shape属性返回的是(图像的高度,图像的宽度)。
    print(img.size) # 542400 总通道数=高* 宽* 通道数 print(img.dtype)# uint8 3个通道每个通道占的位数(8位,一个字节) #print(img) #输出每个像素点的参数( B , G , R ) #print(np.array(img)) #输出每个像素点的参数( B , G , R ) print(cv2.mean(img)) #获取图片 B G R 各个均值 #(210.87173119469026, 222.68342920353982, 228.77969579646017, 0.0) #而pixel mean的话,其实是图片的所有R通道像素,求了均值,G,B通道类似,所以求出来就是三个数值(R_mean,G_mean,B_mean) print(cv2.meanStdDev(img)) #获取均值和方差,可用均值方差都为零判断图片无效 #(array([[210.87173119],[222.6834292 ],[228.7796958 ]]), array([[67.49584092],[54.39694368],[46.32777341]])) #array([[210.87173119],[222.6834292 ],[228.7796958 ]]) 是B G R 各个均值 #array([[67.49584092],[54.39694368],[46.32777341]]) 是方差 #方差的概念:https://wenku.baidu.com/view/474731e31b37f111f18583d049649b6648d709d4.html img2=img.copy() #复制图片 cv2.imshow("fuzi", img2) cv2.waitKey(5000) #窗口等待任意键盘按键输入,0为一直等待,其他数字为毫秒数 cv2.destroyAllWindows() #销毁窗口,退出程序
    cv2.namedWindow("operation", cv2.WINDOW_AUTOSIZE)  #创建窗口--方式一
    #cv2.namedWindow('image',cv2.WINDOW_AUTOSIZE)  #创建窗口--方式二
    #cv2.WINDOW_NORMAL  窗口大小可以改变
    #cv2.WINDOW_AUTOSIZE   窗口大小不可以改变
    #cv2.WINDOW_FREERATIO  窗口大小自适应比例
    #cv2.WINDOW_KEEPRATIO  窗口大小保持比例
    #cv2.WINDOW_GUI_EXPANDED  显示色彩变成暗色

    cv2.imwrite("2.jpg",img)     # 存储图片

    参数1 文件名

    参数2 图片(图片矩阵数据)

    参数3 可选参数,可以指定使用特定格式编码保存的参数,一般情况下我们很少用到

    img = 255*np.ones((240,480,3),np.uint8)  #自定义一张彩色图像
    #240 高;480 宽;3 通道数

     

    img = 255*np.ones((240,480,3),np.uint8)  #自定义一张彩色图像
    #240 高;480 宽;3 通道数
  • 相关阅读:
    Python XPath抓取小说《三国演义》《一》
    Python 爬虫学习路径
    Python爬虫练习:抓取笔趣阁小说(一)
    import win32api 安装pip install pypiwin32
    pycharm 选中多行,点back space键无法删除
    No module named 'wx'
    python GUI wxPython
    python -m pip install --upgrade pip 失败
    停更一年了,要不要回归呢,离开了运维行业也一年了。
    zabbix使用percona的mysql监控模板监控
  • 原文地址:https://www.cnblogs.com/liming19680104/p/12073623.html
Copyright © 2020-2023  润新知