【OpenCV】图像处理入门基础

0 前言

使用软件:Anaconda + Pycharm + VScode
OpenCV环境:

  • python=3.10
  • cv2.version = 4.8.0
  • numpy.version = 1.22.3

1 图像处理入门基础

图像的种类:

  • 二值化图像
  • 灰度图
  • RGB彩色图像(OpenCV中是BGR格式)

RGB转灰度 >>> 模式识别、人脸识别


2 像素处理

返回值 = 图像(位置参数)
用灰度图像

2.1 示例

import cv2
img=cv2.imread("H:\\PycharmProjects\\OpenCV\\A1_Photo\\photo\\goutou.png",cv2.IMREAD_UNCHANGED)#导入图片
cv2.imshow("demo",img)#显示图片,名称叫demo
cv2.waitKey(0)
cv2.destroyAllWindows()

print(img[10,10])#读取BGR格式数值
img[10,10]=[255,255,255]#三个通道值一起修改
print(img[100,100])#读取BGR格式数值

# img[10,10,1]=55#单个通道值修改
# print(img[10,10])#读取BGR格式数值

2.2 单个通道

还可以修改或读取不同的单个通道的数值

在这里插入图片描述

2.2 块修改

块修改

import cv2
import cv2
img=cv2.imread("H:\\PycharmProjects\\OpenCV\\A1_Photo\\photo\\goutou.png",cv2.IMREAD_UNCHANGED)#导入图片
cv2.imshow("original",img)#显示图片,名称叫demo

print(img[100,100])#读取BGR格式数值
img[150:400,250:450]=[0,255,255]#[100:200,100:200]这个范围内的像素修改成白色
cv2.imshow("result",img)

cv2.waitKey(0)
cv2.destroyAllWindows()

一次性获得三个通道的数值

在这里插入图片描述

对某个区域进行设置像素

#2023年11月26日15:47:19
import cv2
img = cv2.imread("F:\\PycharmProjects\\OpenCV\\A1_Photo_Input\\tsy.jpg",cv2.IMREAD_UNCHANGED)#导入图片
cv2.imshow("original",img)#显示图片,名称叫demo

print(img[100,100])#读取BGR格式数值
img[150:240,250:350]=[90,25,255]#[100:200,100:200]这个范围内的像素修改成白色
cv2.imshow("result",img)

cv2.waitKey(0)
cv2.destroyAllWindows()

在这里插入图片描述

效果不错!

在这里插入图片描述


3 使用numpy进行像素处理

  • 读取像素
  • 修改像素值

3.1 读取像素

  • 灰度图像,返回灰度值。

范例

p = img.item(88,123)
print(p)

在这里插入图片描述

3.2 修改像素

在这里插入图片描述

3.3 BGR图像

BGR图像需要指定图像的通道

在这里插入图片描述

#2023年11月26日19:52:53
import cv2
import numpy as np

#BGR图像
img = cv2.imread("H:\\PycharmProjects\\OpenCV\\A1_Photo\\photo\\goutou.png", cv2.IMREAD_UNCHANGED)

print(img.item(100,100,0))
img.itemset((100,100,0), 255)   #设置
print(img.item(100,100,0))
cv2.imshow("original",img)#显示图片,名称叫demo
cv2.waitKey(0)
cv2.destroyAllWindows()





放到下一批文章

4 获取图像属性

4.1 形状


4.2 像素数目


4.3 图像类型


  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北国无红豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值