OpenCV轻松入门(三)——Numpy基本 *** 作

OpenCV轻松入门(三)——Numpy基本 *** 作,第1张

OpenCV轻松入门(三)——Numpy基本 *** 作

import cv2
import numpy as np

# 创建数组 np.array()
np.array([1, 2, 3])  # 一维数据
np.array([[1, 2, 3], [2, 3, 4]])  # 二维数据
np.array([[[1, 2, 3], [2, 3, 4], [3, 4, 5]]])  # 三维数据

# 创建全0数组 np.zeros((高,宽),np.uint8)
a = np.zeros((4, 6), np.uint8)  # 定义4行,6列,只有1个通道(二维)的全0矩阵
b = np.zeros((4, 6, 3), np.uint8)  # 定义4行,6列,有3个通道(三维)的全0矩阵

# 创建全1数组 np.ones()
c = np.ones((4, 5, 3), np.uint8)

# 创建全值数组 np.full()
d = np.full((8, 8), 255, np.uint8)  # 定义一个值是255的二维矩阵
e = np.full((8, 8, 3), 255, np.uint8)  # 定义一个值是255的三维矩阵

# 创建单位(正方形,对角线为1)矩阵 np.identity()
f = np.identity(4)

# 创建非正方形矩阵且对角线相等 np.eye()
g = np.eye(5)  # 效果等同于单位矩阵
h = np.eye(5, 8)  # 长方形矩阵
i = np.eye(5, 8, k=3)  # 长方形矩阵,k表示对角线从第一行索引的第几位开始


# 检索:[y,x] 索引值从0开始
# 检索:[y,x,channel] channel 通道数
'''
在一个黑色的图上画一条白线:
1、创建一个全0的二维数组
2、将y的值改成255
'''

img = np.zeros((400, 200), np.uint8)  
print(img[100, 100])

count = 0
while count < 101:
    img[count, 100] = 255
    count += 1

cv2.imshow('img', img)
key = cv2.waitKey(0)
if key & 0xFF == ord('q'):
    cv2.destroyAllWindows()

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5680556.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存