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

相关推荐
工业互联网专业38 分钟前
基于协同过滤算法的小说推荐系统_django+spider
python·django·毕业设计·源码·课程设计·spider·协同过滤算法
星星的月亮叫太阳1 小时前
large-scale-DRL-exploration 代码阅读 总结
python·算法
王哈哈^_^1 小时前
YOLOv11视觉检测实战:安全距离测算全解析
人工智能·数码相机·算法·yolo·计算机视觉·目标跟踪·视觉检测
Q_Q19632884751 小时前
python+django/flask基于Echarts+Python的图书零售监测系统设计与实现(带大屏)
spring boot·python·django·flask·node.js·php
AI technophile1 小时前
OpenCV计算机视觉实战(29)——OpenCV DNN模块
opencv·计算机视觉·dnn
深度学习lover1 小时前
<数据集>yolo航拍交通目标识别数据集<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·航拍交通目标识别
程序猿20232 小时前
Python每日一练---第二天:合并两个有序数组
开发语言·python
权泽谦2 小时前
用 Flask + OpenAI API 打造一个智能聊天机器人(附完整源码与部署教程)
python·机器人·flask
njxiejing2 小时前
Numpy一维、二维、三维数组切片实例
开发语言·python·numpy
王哈哈^_^3 小时前
【数据集+完整源码】水稻病害数据集,yolov8水稻病害检测数据集 6715 张,目标检测水稻识别算法实战训推教程
人工智能·算法·yolo·目标检测·计算机视觉·视觉检测·毕业设计