c语言编程笔录

首页 >   > 笔记大全

笔记大全

python图像处理第二课+图像处理Python

更新时间:2023-12-16

1. 图像的读取和显示

在使用Python进行图像处理之前,首先我们需要了解如何读取和显示图像。Python提供了许多图像处理库,其中最常用的是OpenCV库。

import cv2

# 读取图像
img = cv2.imread('image.jpg')

# 显示图像
cv2.imshow('Image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

以上代码中,我们首先使用imread函数来读取图像文件。然后使用imshow函数将图像显示在窗口上。最后使用waitKeydestroyAllWindows函数来保持窗口的显示和关闭图像窗口。

2. 图像的灰度化处理

灰度化处理是图像处理中常用的一种方式,可以将彩色图像转换为灰度图像进行处理。

import cv2

# 读取图像
img = cv2.imread('image.jpg')

# 将图像转换为灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# 显示图像
cv2.imshow('Gray Image', gray_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

以上代码中,我们使用cvtColor函数将彩色图像转换为灰度图像,并将结果保存在gray_img变量中。然后使用imshow函数显示灰度图像。

3. 图像的裁剪和缩放

在图像处理中,常常需要对图像进行裁剪和缩放操作。

import cv2

# 读取图像
img = cv2.imread('image.jpg')

# 裁剪图像
crop_img = img[100:300, 200:400]

# 缩放图像
scale_img = cv2.resize(img, (300, 300))

# 显示图像
cv2.imshow('Cropped Image', crop_img)
cv2.imshow('Scaled Image', scale_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

以上代码中,我们使用索引方式对图像进行裁剪,将指定区域的图像保存在crop_img变量中。然后使用resize函数对图像进行缩放,将图像的宽度和高度设置为300,并将结果保存在scale_img变量中。

4. 图像的滤波处理

滤波是图像处理中常用的一种操作,可以对图像进行平滑去噪或者增强边缘等效果。

import cv2
import numpy as np

# 读取图像
img = cv2.imread('image.jpg')

# 高斯滤波
blur_img = cv2.GaussianBlur(img, (5, 5), 0)

# 锐化滤波
kernel = np.array([[0, -1, 0], [-1, 5, -1], [0, -1, 0]])
sharpen_img = cv2.filter2D(img, -1, kernel)

# 显示图像
cv2.imshow('Blurred Image', blur_img)
cv2.imshow('Sharpened Image', sharpen_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

以上代码中,我们使用GaussianBlur函数对图像进行高斯滤波,将模糊的结果保存在blur_img变量中。然后使用自定义的核对图像进行锐化滤波,将结果保存在sharpen_img变量中。

总结:本文介绍了图像处理中常用的几种操作,包括图像的读取和显示、灰度化处理、图像的裁剪和缩放以及图像的滤波处理。通过对这些操作的学习和掌握,我们可以在Python中实现各种图像处理任务,如图像分割、边缘检测、目标识别等。同时,我们也可以结合其他图像处理库和算法来进行更加复杂的图像处理操作。图像处理是计算机视觉领域的重要基础和核心技术之一,在图像处理的学习和实践中不断提升自己的技能,可以为我们开拓更多的应用场景和机会。