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

相关推荐
lindsayshuo13 分钟前
jetson orin系列开发版安装cuda的gpu版本的opencv
人工智能·opencv
向阳逐梦13 分钟前
ROS机器视觉入门:从基础到人脸识别与目标检测
人工智能·目标检测·计算机视觉
Mr.Q21 分钟前
OpenCV和Qt坐标系不一致问题
qt·opencv
有Li1 小时前
跨视角差异-依赖网络用于体积医学图像分割|文献速递-生成式模型与transformer在医学影像中的应用
人工智能·计算机视觉
傻啦嘿哟1 小时前
如何使用 Python 开发一个简单的文本数据转换为 Excel 工具
开发语言·python·excel
B站计算机毕业设计超人1 小时前
计算机毕业设计SparkStreaming+Kafka旅游推荐系统 旅游景点客流量预测 旅游可视化 旅游大数据 Hive数据仓库 机器学习 深度学习
大数据·数据仓库·hadoop·python·kafka·课程设计·数据可视化
GOTXX2 小时前
基于Opencv的图像处理软件
图像处理·人工智能·深度学习·opencv·卷积神经网络
IT古董2 小时前
【人工智能】Python在机器学习与人工智能中的应用
开发语言·人工智能·python·机器学习
嵌入式大圣2 小时前
单片机结合OpenCV
单片机·嵌入式硬件·opencv
湫ccc2 小时前
《Python基础》之pip换国内镜像源
开发语言·python·pip