百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python计算机视觉编程 第一章 基本的图像操作和处理

off999 2025-05-05 18:07 20 浏览 0 评论

以下是使用Python进行基本图像操作和处理的示例代码:

  1. 使用PIL库加载图像:
from PIL import Image

image = Image.open("image.jpg")
  1. 转换图像格式:
image.save("new_image.png")
  1. 创建缩略图:
thumbnail = image.thumbnail((100, 100))
thumbnail.save("thumbnail.jpg")
  1. 复制和粘贴图像区域:
# 创建一个新的图像副本
copy_image = image.copy()

# 粘贴图像区域
region = (100, 100, 200, 200)  # 定义区域的左上角和右下角坐标
paste_image = Image.new("RGB", (100, 100))
paste_image.paste(image.crop(region), (0, 0))

paste_image.save("paste_image.jpg")
  1. 调整尺寸和旋转:
# 调整尺寸
resized_image = image.resize((500, 500))
resized_image.save("resized_image.jpg")

# 旋转图像
rotated_image = image.rotate(90)
rotated_image.save("rotated_image.jpg")

这些示例代码演示了一些基本的图像操作和处理技术,使用PIL库可以方便地进行图像处理和编辑。请注意,以上示例代码仅供参考,具体的操作和处理取决于您的需求和图像的特点。

以下是使用Python计算机视觉编程库matplotlib进行图像绘制、点和线绘制、图像轮廓和直方图绘制以及交互式标注的示例代码:

  1. 绘制图像:
import matplotlib.pyplot as plt
import cv2

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

# 将BGR图像转换为RGB图像
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# 绘制图像
plt.imshow(image_rgb)
plt.axis('off')  # 关闭坐标轴显示
plt.show()
  1. 绘制点和线:
import matplotlib.pyplot as plt

# 定义点和线的坐标
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]

# 绘制点和线
plt.plot(x, y, marker='o', linestyle='-', color='blue')
plt.xlabel('X轴')
plt.ylabel('Y轴')
plt.title('点和线示例')
plt.grid(True)
plt.show()
  1. 绘制图像轮廓:
import matplotlib.pyplot as plt
import cv2

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

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

# 提取图像轮廓
contours, _ = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

# 绘制图像轮廓
plt.imshow(cv2.drawContours(image.copy(), contours, -1, (0, 255, 0), 2))
plt.axis('off')
plt.show()
  1. 绘制直方图:
import matplotlib.pyplot as plt
import cv2

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

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

# 计算直方图
hist = cv2.calcHist([gray], [0], None, [256], [0, 256])

# 绘制直方图
plt.plot(hist, color='black')
plt.xlabel('灰度级别')
plt.ylabel('像素数')
plt.title('灰度直方图')
plt.show()
  1. 交互式标注:
import matplotlib.pyplot as plt

# 定义数据
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]

# 创建图像对象
fig, ax = plt.subplots()

# 绘制点和线
ax.plot(x, y, marker='o', linestyle='-', color='blue')

# 添加文本标注
for i, j in zip(x, y):
    ax.annotate(f'({i}, {j})', xy=(i, j), xytext=(i+0.1, j+0.5))

# 设置坐标轴标签和标题
ax.set_xlabel('X轴')
ax.set_ylabel('Y轴')
ax.set_title('点和线示例')

plt.show()

这些示例可以帮助你开始使用matplotlib进行图像绘制、点和线绘制、图像轮廓和直方图绘制,以及交互式标注。你可以根据自己的需求进行修改和扩展。

下面是一个使用Python进行计算机视觉编程的示例,包括使用NumPy库进行图像数组表示、灰度变换、图像缩放、直方图均衡化、图像平均、主成分分析(PCA)以及使用pickle模块保存图像。

首先,我们需要导入所需的库和模块:

import numpy as np
import cv2
from sklearn.decomposition import PCA
import pickle
  1. 图像数组表示:
# 读取图像
image = cv2.imread('image.jpg')

# 将图像转换为NumPy数组
image_array = np.array(image)
  1. 灰度变换:
# 将彩色图像转换为灰度图像
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
  1. 图像缩放:
# 缩放图像到指定尺寸
resized_image = cv2.resize(image, (new_width, new_height))
  1. 直方图均衡化:
# 将灰度图像进行直方图均衡化
equalized_image = cv2.equalizeHist(gray_image)
  1. 图像平均:
# 读取多张图像
image1 = cv2.imread('image1.jpg')
image2 = cv2.imread('image2.jpg')

# 计算图像平均
average_image = np.mean([image1, image2], axis=0).astype(np.uint8)
  1. 图像的主成分分析(PCA):
# 将图像转换为一维向量
flatten_image = image_array.flatten()

# 进行主成分分析
pca = PCA(n_components=2)
pca_result = pca.fit_transform(flatten_image)
  1. 使用pickle模块保存图像:
# 保存图像到文件
with open('image.pickle', 'wb') as f:
    pickle.dump(image, f)

请注意,以上只是一些示例代码,实际应用中可能需要根据具体需求进行适当的调整和扩展。

相关推荐

ps手机版下载中文免费版2025

ps2023对电脑要求高。ps2022版本对电脑配置要求是:1、内存要求在一32G和64G之间。2、硬盘要求选择7200转机械硬盘,4k以上分辨,就选择SSD固态硬盘。3、CPU要求睿频在4.1GHZ...

苹果电脑如何下载windows系统

下载后安装BootCamp,之后在[应用程序]的[实用程序]中找到BootCamp助理,下面就可以开始安装Windows前的准备工作了。  第一步是要用BootCamp助理刻录一张驱动程序的CD...

efi系统分区什么意思(efi系统分区的作用)

ud空间是指存放PE启动文件的分区;efi空间是指存放UEFI启动文件的分区。系统U盘(PE启动盘)的制作方法,一共分为三种。三分区法是其中的一种,三分区法就是一个U盘被分成了三个区,两边的分区是隐藏...

无需u盘重装系统(无需u盘安装系统)

可以通过以下步骤在不使用U盘的情况下重装Win7系统:首先需要备份您的电脑中的重要数据,以免在系统重装时丢失。进入系统的“控制面板”,找到“系统与安全”选项并单击进入。在“系统与安全”页面中,找到“备...

改无线网密码的网址(改无线网密码的网站)

  移动宽带无线网改密码,可以在移动网上营业厅办理,但更简单的办法是通过短信办理(详见如下第2条):  移动无线宽带短信操作方式:  1)开通业务:编写短信“KTWLAN”发送至10086。  注:短...

英伟达驱动怎么更新(英伟达驱动在哪儿更新)
  • 英伟达驱动怎么更新(英伟达驱动在哪儿更新)
  • 英伟达驱动怎么更新(英伟达驱动在哪儿更新)
  • 英伟达驱动怎么更新(英伟达驱动在哪儿更新)
  • 英伟达驱动怎么更新(英伟达驱动在哪儿更新)
c盘满了却不敢删(c盘满了清不掉)

1、运用磁盘清理软件清理C盘,大约可为C盘释放50M-800M空间。2、关闭休眠功能,在开始菜单的运行里输入powercfg-hoff指令,关闭休眠,此文件实际大小和物理内存是一样的,大约可以...

联想笔记本电脑怎么打开摄像头
联想笔记本电脑怎么打开摄像头

联想笔记本怎么打开摄像头?1、点击电脑开始菜单栏,在弹出的窗口中点击【设置】。2、在”隐私和安全性“面板中点击【相机】选项。3、将【摄像头访问】右侧的开关打开。材料/工具:以联想Y460笔记本为例。操作步骤如下:1、在电脑的桌面,打开我...

2025-12-12 19:51 off999

win732纯净版系统gho(win732纯净版下载)

一,win7x32gho指的是32位的Windows7操作系统,gho指的是ghost方式封装的镜像文件,一般这种都是盗版系统。二,如果自己需要安装64位系统就不要选这个,内存低于3GB可以安装win...

pscs6激活账户(pscs6激活账户和序列号免费)

pscs6破解补丁是AdobePhotoShopCs6版本的破解激活补丁,使用后不会弹出购买窗口,实现完美破解,无任何限制破解版软件扩展功能好像不好用!要用需要的扩展功能可以在网上下载需要的插件...

键盘皮肤下载(键盘皮肤下载软件免费有音效)

1、vivo自带的输入法不能更换键盘皮肤;2、建议可以下载第三方输入法更换皮肤,比如:搜狗输入法等;3、下载第三方输入法之后需要在设置-更多设置-输入法中设置为第三方的输入法使用;4、然后在输入法界面...

win11如何格式化硬盘(win11硬盘分区怎么改成gpt)

win11系统格式化电脑和硬盘的方法如下1、打开本地磁盘管理页面,右键点击需要格式化的磁盘,选择【格式化】。2、在弹出的窗口中,勾选【快速格式化】,点击【开始】。3、最后等待格式化完成即可。1.首先我...

手机u盘怎么打开(手机u盘怎么打开怎么使用)
  • 手机u盘怎么打开(手机u盘怎么打开怎么使用)
  • 手机u盘怎么打开(手机u盘怎么打开怎么使用)
  • 手机u盘怎么打开(手机u盘怎么打开怎么使用)
  • 手机u盘怎么打开(手机u盘怎么打开怎么使用)
还原ghost文件(ghost怎么还原)

ghost还原系统的前提是你的电脑里面装有ghost备份还原软件,并已经为计算机做过ghost系统备份,它使得电脑系统出现小故障,不能启动时,能够快速的恢复系统。其操作方法步骤如下:1、下载ghost...

安卓虚拟机运行windows(安卓虚拟机运行机制)

安卓无法直接安装Windows虚拟机,但是可以通过使用虚拟机应用或者远程桌面软件来连接已安装了Windows系统的电脑,达到在安卓系统中使用Windows的效果。其中,使用虚拟机应用需要先root安卓...

取消回复欢迎 发表评论: