Python OpenCV 练习指南 02:图像基础操作

Python OpenCV 练习指南

02:图像基础操作

1 访问和修改像素值

练习题 1:编写一个Python脚本来加载一张图像,然后找到图像中左上角顶点坐标为(200, 200),边长为200个像素的正方形区域的像素值,并将该区域内的所有像素修改为红色。最后展示修改前后的图像对比。

import cv2
# 加载图像
image = cv2.imread(r"C:\Users\jinli\Desktop\photos\123.jpg")
# 确定正方形区域的位置和大小
x = 200  # 左上角顶点的x坐标
y = 200  # 左上角顶点的y坐标
side_length = 200  # 正方形的边长
# 找到正方形区域的像素值并将其修改为红色
for i in range(x, x + side_length):
    for j in range(y, y + side_length):
        image[j, i] = (0, 0, 255)  # 将像素值修改为红色,红色像素的BGR值为(0, 0, 255)
# 展示修改前后的图像对比
cv2.namedWindow('Original Image', cv2.WINDOW_NORMAL)
cv2.resizeWindow('Original Image', 600, 400)
cv2.imshow('Original Image', cv2.imread(r"C:\Users\jinli\Desktop\photos\123.jpg"))  # 显示原始图像
cv2.namedWindow('Modified Image', cv2.WINDOW_NORMAL)
cv2.resizeWindow('Modified Image', 600, 400)
cv2.imshow('Modified Image', image)  # 显示修改后的图像
cv2.waitKey(0)  # 等待按键继续
cv2.destroyAllWindows()  # 关闭所有窗口

练习题 2:编写一个程序,该程序顺序访问图像的每个像素,并将其更改为灰阶版本。提示:灰度值可以通过取每个像素的BGR值的平均值来计算。

import cv2
# 加载图像
image = cv2.imread(r"C:\Users\jinli\Desktop\photos\4.jpg")
# 获取图像的宽度和高度
height, width, _ = image.shape
# 遍历图像的每个像素并将其更改为灰阶版本
for y in range(height):
    for x in range(width):
        # 获取每个像素的BGR值
        blue, green, red = image[y, x]
        # 计算灰度值
        gray_value = int((int(blue) + i
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值