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

相关推荐
风吹夏回4 小时前
Python 全局异常处理:从“满屏 try-except”到优雅兜底
开发语言·python
小熊Coding5 小时前
Python爬取当当网二手图书项目实战!
开发语言·爬虫·python·beautifulsoup·requests·二手图书
秋95 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本5 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
田里的水稻6 小时前
OE_ubuntu26.04与宿主机之间复制粘贴内容
人工智能·python·机器人
_李小白6 小时前
【android opencv学习笔记】Day 26: 滤波算法之低通滤波与图像缩放插值
android·opencv·学习
2401_876964136 小时前
【湖北专升本】2026湖北专升本真题PDF+备考资料汇总
数据结构·人工智能·经验分享·深度学习·算法·计算机视觉
jiayong237 小时前
02 创建虚拟环境
python
旺仔来了7 小时前
不联网的Linux下部署python环境
linux·开发语言·python
小江的记录本7 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试