Python Opencv实践 - 图像属性相关

复制代码
import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt

img = cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)
plt.imshow(img[:,:,::-1])

#像素操作
pixel = img[320,370]
print(pixel)

#只获取蓝色通道的值
pixel_blue = img[320,370,0]
print(pixel_blue)


#只获取绿色通道的值
pixel_green = img[320,370,1]
print(pixel_green)

#只获取红色通道的值
pixel_red = img[320,370,2]
print(pixel_red)

#修改像素颜色
#索引的第一个数是行数,第二个数是列数
img[320,370] = [0,0,255]
img[321,370] = [0,0,255]
img[322,370] = [0,0,255]
plt.imshow(img[:,:,::-1])

#获取图像属性
#图像形状
print(img.shape)
#图像大小
print(img.size)
#图像数据类型
print(img.dtype)


#图像通道的拆分
b,g,r = cv.split(img)
print(b[320,370])
print(g[320,370])
print(r[320,370])

#图像通道的合并,恢复被修改的像素各个通道的颜色后进行合并
b[320,370] = 25
g[320,370] = 30
r[320,370] = 41
b[321,370] = 25
g[321,370] = 30
r[321,370] = 41
b[322,370] = 25
g[322,370] = 30
r[322,370] = 41
img = cv.merge((b,g,r))
plt.imshow(img[:,:,::-1])

#颜色空间转换
#cv.cvtColor(image, flag)
# flag: cv.COLOR_BGR2GRAY, cv.COLOR_BGR2HSV等等
#参考资料:https://blog.csdn.net/guduruyu/article/details/68941554
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
plt.imshow(img_gray, cmap=plt.cm.gray)

img_hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)
plt.imshow(img_hsv, cmap=plt.cm.hsv)
相关推荐
Είναι η κοπέλα3 分钟前
PyTorch 安装与验证
人工智能·pytorch·python
“AI国潮设计-小江”7 分钟前
Python实战 | SDXL批量生成“潮汕英歌舞”国潮甜品IP,附核心Prompt与商用授权思路
开发语言·人工智能·python·prompt·aigc
H.莓飛17 分钟前
【数据结构】栈
linux·开发语言·数据结构·算法·centos
无糖可乐没有灵魂19 分钟前
用一篇文章来精通“进程/线程/协程/锁“多并发任务
开发语言·php
2601_9628857220 分钟前
如何用 Python 分析股票的日历效应?(星期效应与月份效应,附数据挖掘陷阱)
开发语言·python·数据挖掘
czq_268671948722 分钟前
Python打卡第30天
python·机器学习
FYKJ_201029 分钟前
SSM校园互助与闲置交易平台62145-计算机课程设计、毕业设计
java·spring boot·python·mysql·架构·spark·课程设计
“AI国潮设计-小江”32 分钟前
Python实战 | SDXL批量生成“带炸英歌”国潮IP:从海报到门店落地(附核心Prompt与授权思路)
开发语言·人工智能·python·prompt·aigc
字节渡客34 分钟前
PHP项目复盘:foreach 引用残留造成的诡异数据错乱
开发语言·php