当前位置:实例文章 » 其他实例» [文章]OpenCV for Python 学习第五天:图片属性的获取

OpenCV for Python 学习第五天:图片属性的获取

发布人:shili8 发布时间:2025-01-23 02:52 阅读次数:0

**OpenCV for Python 学习第五天:图片属性的获取**

在前几天,我们已经学习了如何使用 OpenCV 库读取、显示和保存图像。今天,我们将继续讨论图片属性的获取。

###1. 图片尺寸我们可以使用 `cv2.imread()` 函数读取一张图片,然后使用 `img.shape` 属性获取图片的尺寸。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 获取图片尺寸print(img.shape)


输出结果为 `(height, width, channels)`,其中 `height` 和 `width` 分别是图片高度和宽度,`channels` 是图片的通道数(RGB 或 RGBA)。

###2. 图片大小我们可以使用 `cv2.imread()` 函数读取一张图片,然后使用 `img.size` 属性获取图片的大小。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 获取图片大小print(img.size)


输出结果为 `(width * height * channels)`,其中 `width` 和 `height` 分别是图片宽度和高度,`channels` 是图片的通道数。

###3. 图片类型我们可以使用 `cv2.imread()` 函数读取一张图片,然后使用 `img.dtype` 属性获取图片的类型。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 获取图片类型print(img.dtype)


输出结果为 `uint8` 或 `float32` 等类型,表示图片的数据类型。

###4. 图片通道数我们可以使用 `cv2.imread()` 函数读取一张图片,然后使用 `img.shape[2]` 属性获取图片的通道数。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 获取图片通道数print(img.shape[2])


输出结果为 `3` 或 `4` 等数字,表示图片有多少个通道(RGB 或 RGBA)。

###5. 图片颜色空间我们可以使用 `cv2.cvtColor()` 函数将一张图片转换成不同的颜色空间,然后使用 `img.shape[2]` 属性获取新图像的通道数。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 将图片转换成 HSV 颜色空间hsv_img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

# 获取新图像的通道数print(hsv_img.shape[2])


输出结果为 `3` 或 `4` 等数字,表示新图像有多少个通道。

###6. 图片旋转我们可以使用 `cv2.getRotationMatrix2D()` 函数生成一个旋转矩阵,然后使用 `cv2.warpAffine()` 函数将一张图片旋转到指定角度。

import cv2#读取一张图片img = cv2.imread('image.jpg')

#生成旋转矩阵rotation_matrix = cv2.getRotationMatrix2D((img.shape[1] //2, img.shape[0] //2),45,1)

# 将图片旋转到指定角度rotated_img = cv2.warpAffine(img, rotation_matrix, (img.shape[1], img.shape[0]))

# 显示旋转后的图像cv2.imshow('Rotated Image', rotated_img)
cv2.waitKey(0)
cv2.destroyAllWindows()


输出结果为一张旋转后的图像。

###7. 图片缩放我们可以使用 `cv2.resize()` 函数将一张图片缩放到指定大小。

import cv2#读取一张图片img = cv2.imread('image.jpg')

# 缩放图片到指定大小resized_img = cv2.resize(img, (800,600))

# 显示缩放后的图像cv2.imshow('Resized Image', resized_img)
cv2.waitKey(0)
cv2.destroyAllWindows()


输出结果为一张缩放后的图像。

以上就是 OpenCV for Python 学习第五天的内容。通过本篇文章,我们学习了如何获取图片属性、将图片转换成不同的颜色空间、旋转和缩放图片等知识。

其他信息

其他资源

Top