zoukankan      html  css  js  c++  java
  • openCV的imread()函数

    1 path = 'E:\pythoncodes\learningopenCV\read_image.jpg'
    2 img = cv2.imread(path,cv2.IMREAD_COLOR)
    3 print(img.shape)

    cv2.imread(path,读取方式)

    1.读取方式分为:cv2.IMREAD_COLOR:读入一副彩色图片;cv2.IMREAD_GRAYSCALE:以灰度模式读入图片;cv2.IMREAD_UNCHANGED:读入一幅图片,并包括其alpha通道。

    2.该函数的返回值是一个三维ndarray数组,上面的程序运行结果如下图:

    然后再来看一下图片read_image.jpg的属性信息,如下图:

    仔细观察不难看出,程序返回的元组的前两个值220,280分别为图片的“高度”和“宽度”。剩下的那个数3,应该是代表每个像素点是由BGR三个元素组成的。

    import cv2
    import numpy as np
    
    
    arr = np.arange(15)
    print(len(arr))
    arr1 = arr.reshape(5,3)
    print(arr1)
    print(len(arr1))
    arr2 = np.array([1,2])
    print(arr2)
    print(arr2.size)
    
    img = cv2.imread('C:\Users\96294\Pictures\Saved Pictures\1.jpg', cv2.IMREAD_COLOR)
    
    print(isinstance(img, np.ndarray))
    if isinstance(img, np.ndarray):  #判断图片是否读取成功
        print(len(img))
        cv2.imshow('pic',img)
        cv2.waitKey(0)

     img是<class 'numpy.ndarray'>类型的,img.shape是一个包含三个元素的元祖,img.data是<class 'memoryview'>类型的。

    numpy中是这样解释ndarray.data的:

    data

    Python buffer object pointing to the start of the array's data.

    所以我们可以将ndarray.data理解为一个指向存储array数组数据的内存的一个指针。

  • 相关阅读:
    分析WordPress数据表之用户表(功能篇)
    Android.mk简介:
    win10 mars xlog编译
    sudo apt-get install libstdc++6
    WebRTC 入门教程(二)| WebRTC信令控制与STUN/TURN服务器搭建
    Mars Android 接入指南
    Mars Sample 使用说明
    RxJava2 方法总结
    mqtt client api: 阻塞API
    idea使用git进行项目管理
  • 原文地址:https://www.cnblogs.com/ACPIE-liusiqi/p/10590929.html
Copyright © 2011-2022 走看看