image with CV

"""

视觉:基本API应用(OPENCV)

"""

复制代码
import cv2
import numpy as np

"""
    图像读取方式3.  1.cv2.imread(filename or path, flags)
    flags=0:灰度图像;flags=1表示RGB图像;flags=-1表示alpha透明通道图像
"""
复制代码
import cv2
import numpy as np

"""
    图像读取方式3.  1.cv2.imread(filename or path, flags)
    flags=0:灰度图像;flags=1表示RGB图像;flags=-1表示alpha透明通道图像
"""

img = cv2.imread('000000005620.jpg')
# Gray是灰度图像;除以255是将像素转为0-1区间的值
Gray = img[:, :, 2]*0.3 + img[:, :, 1] * 0.59 + img[:, :, 0] * 0.11
gray = Gray/255
imgray = cv2.imread('000000005620.jpg', 0)

# 加载透明通道图像
imalpha = cv2.imread('000000005620.jpg', -1)
print(gray)
if img is None:
    print('Image read error!')
else:
    # 图像可视化
    cv2.imshow('RGB of image', img)
    # 保存RGB图像
    cv2.imwrite('RGB.png', img)
    cv2.imshow('Gray of image', imgray)
    # 保存灰度图像
    cv2.imwrite('hd.png', imgray)
    cv2.imshow('alpha of image', imalpha)
    # 保存透明通道图像
    cv2.imwrite('alpha.png', imalpha)
    
    # cv2.imshow('Gray of image', gray)
    print(type(imalpha), imalpha.shape)
    # 等待读者操作:让图像显示暂停delay毫秒,当delay秒设置为0的时候,表示永远,当键盘任意输入的时候,结束暂停
    cv2.waitKey(0)
    # 窗口对象销毁
    cv2.destroyAllWindows()

RGB:

Gray:

alpha(透明通道图像只有加载.png格式并带有净色的图像才会显示透明):

E:\myprogram\anaconda\envs\python3.6\python.exe E:/XXX/OPENCV/CV.py

\[0.96862745 0.96078431 0.96470588 ... 0.97254902 0.97254902 0.97254902

0.96862745 0.96078431 0.96078431 ... 0.94901961 0.95686275 0.96078431

0.97254902 0.96470588 0.96470588 ... 0.98431373 0.98431373 0.98431373

...

0.94117647 0.94117647 0.94117647 ... 0.95686275 0.95686275 0.95686275

0.94901961 0.94901961 0.94901961 ... 0.95294118 0.95294118 0.95294118

0.96078431 0.96078431 0.96078431 ... 0.9372549 0.9372549 0.9372549 \]

<class 'numpy.ndarray'> (612, 612, 3)

Process finished with exit code 0


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

"""
    图像显示除了使用opencv,还可以采用matplotlib.pyplot
"""

img = cv2.imread('000000005620.jpg', 1)
img2 = np.zeros_like(img, dtype=img.dtype)
# 将opencv读取图像的方式转化为plt读取图像方式--->
# BGR---RGB
img2[:,:,0] = img[:,:,2]
img2[:,:,1] = img[:,:,1]
img2[:,:,2] = img[:,:,0]

print(img2.shape)
plt.imshow(img)
plt.show()

RGB & BGR

相关推荐
万粉变现经纪人2 小时前
如何解决 pip install -r requirements.txt 私有索引未设为 trusted-host 导致拒绝 问题
开发语言·python·scrapy·flask·beautifulsoup·pandas·pip
查士丁尼·绵3 小时前
笔试-九宫格三阶积幻方
python·九宫格·三阶积幻方
l1t5 小时前
DeepSeek辅助利用搬移底层xml实现快速编辑xlsx文件的python程序
xml·开发语言·python·xlsx
大飞记Python5 小时前
部门管理|“编辑部门”功能实现(Django5零基础Web平台)
前端·数据库·python·django
查士丁尼·绵7 小时前
笔试-羊狼过河
python
摸鱼的老谭7 小时前
构建Agent该选Python还是Java ?
java·python·agent
鄃鳕8 小时前
python 字典 列表 类比c++【python】
c++·python
可触的未来,发芽的智生8 小时前
新奇特:黑猫警长的纳米世界,忆阻器与神经网络的智慧
javascript·人工智能·python·神经网络·架构
程序员三藏8 小时前
Jmeter接口测试与压力测试
自动化测试·软件测试·python·测试工具·jmeter·接口测试·压力测试
WWZZ20258 小时前
快速上手大模型:机器学习2(一元线性回归、代价函数、梯度下降法)
人工智能·算法·机器学习·计算机视觉·机器人·大模型·slam