Opencv-python从入门到放弃 —— 图像的加载、显示与存储(1)

自己是一个菜鸡,希望通过写博客的方式提升自己,最近正好接触到了opencv,想把学习路程以博客的形式记录下来,也算是学习opencv的一种动力吧,好吧,话不多说,干就完了!

一、加载必要的库

import cv2
import os

二、图像的加载、显示与存储

# 加载图片,支持jpg, png, jpeg, tif等主流格式图片。。
path = '/Users/mazhenyu/Code/opencv-python'  # 图片所在路径
image = cv2.imread(os.path.join(path, 'newimage.jpg'))
# 高,宽,通道数
print('图像高度: %d' % image.shape[0])
print('图像宽度: %d' % image.shape[1])
print('图像通道数: %d' % image.shape[2])
print('图像数据存储格式:', image.shape)
# 显示, window是图像所依赖的窗口
window = 'Image'
cv2.imshow(window, image)
cv2.waitKey(0)   # 敲击键盘关闭窗口
# 存储
cv2.imwrite('Firstimage.jpg', image)

运行结果:
Firstimage.jpg
图像高度: 228
图像宽度: 350
图像通道数: 3
图像数据存储格式: (228, 350, 3)

  1. opencv将图片读到内存中后目标图像就变成了一个numpy的ndarray格式,因此可以对这个矩阵进行任何符合numpy语法规则的操作。
  2. 图像中通道的排列顺序是BGR,而不是人们所普遍认为的RGB排列顺序。
  3. opencv与numpy的坐标原点虽然都在图像左上角,但是x轴与y轴的顺序是相反的!opencv中水平方向是x轴,而numpy中竖直方向是x轴,这一点要谨记,否则容易出错。。

Emmmm,希望本菜鸡能把写博客的这个好习惯坚持下去。。

猜你喜欢

转载自blog.csdn.net/Annihilation7/article/details/82500755