OpenCV 函数学习05-图像的属性
作者:互联网
5. 数字图像的属性
OpenCV 中图像对象的数据结构是 ndarray 多维数组,因此 ndarray 数组的属性和操作方法也都适用于 OpenCV 的图像对象。
- img.ndim:查看图像的维数,彩色图像的维数为 3,灰度图像的维数为 2。
- img.shape:查看图像的形状,即图像栅格的行数(高度)、列数(宽度)、通道数。
- img.size:查看图像数组元素总数,灰度图像的数组元素总数为像素数量,彩色图像的数组元素总数为像素数量与通道数的乘积。
基本例程:
# 1.11 图像数组的属性
imgFile = "../images/imgLena.tif" # 读取文件的路径
img1 = cv2.imread(imgFile, flags=1) # flags=1 读取彩色图像(BGR)
img2 = cv2.imread(imgFile, flags=0) # flags=0 读取为灰度图像
# cv2.imshow("Demo1", img1) # 在窗口显示图像
# key = cv2.waitKey(0) # 等待按键命令
# 维数(ndim), 形状(shape), 元素总数(size), 元素类型(dtype)
print("Ndim of img1(BGR): {}, img2(Gray): {}".format(img1.ndim, img2.ndim)) # number of rows, columns and channels
print("Shape of img1(BGR): {}, img2(Gray): {}".format(img1.shape, img2.shape)) # number of rows, columns and channels
print("Size of img1(BGR): {}, img2(Gray): {}".format(img1.size, img2.size)) # size = rows * columns * channels
print("Dtype of img1(BGR): {}, img2(Gray): {}".format(img1.dtype, img2.dtype)) # uint8
本例程的运行结果如下:
Ndim of img1(BGR): 3, img2(Gray): 2
Shape of img1(BGR): (512, 512, 3), img2(Gray): (512, 512)
Size of img1(BGR): 786432, img2(Gray): 262144
Dtype of img1(BGR): uint8, img2(Gray): uint8
通过资源管理器查看彩色图像和灰度图像的属性如下图,彩色图像的位深度为 24,灰度图像的位深度为 8。
标签:Gray,05,OpenCV,BGR,灰度,图像,img2,img1 来源: https://blog.csdn.net/youcans/article/details/121169179