opencv-numpy基础操作(七)

# numpy创建矩阵
    常用API:
     创建数组array()
     创建全0数组zeros()/ones()
        zeros((行高,列高,通道层数(3),np.uint8)RGB色彩填3
     创建全值数组full()
     创建单元数组identity/eye()斜对角为1
     ROI区域截图
    numpy:具体操作看下图代码示例:

      

import numpy as np
import cv2 as cv

# 通过array()定义矩阵
a = np.array([1,2,3])
b = np.array([[1,2,3],[4,5,6]])

# zeros((行数,列数,通道数/层数),dtype=np.uint8)uint8最大值255
c = np.zeros((8,8,3), dtype=np.uint8)

# ones((行数,列数,通道数/层数))矩阵
d = np.ones((8,8),np.uint8)
# print(d)

# full((行数,列数,通道数/层数),255,dtype=np.uint8),255是每个元素的数值
e = np.full((8,8),255,dtype=np.uint8)
# print(e)

# 单元矩阵(斜对角为1),np.identity(正方形矩阵边长)
f = np.identity(5,dtype=np.uint8)
# print(f)

# eye(宽,长,第几列开始为1)可定义为长方形矩阵
g = np.eye(3,6,3)
# print(g)


# 使用cv显示创造矩阵后的图像
# img[y,x] img对图像操作是先y再x
img = np.zeros((480,640,3),np.uint8)
# img1 = np.full((480,640,3),255,np.uint8)
# img2 = np.ones((480,640,3),np.uint8)
# 从矩阵中读某个元素的值
print(img[100,100])
# ROI: img[y1:y2,x1:x2]注意y和x顺序,img[:,:]可以选择全部图像
# img[10:100,100:200] = [255,255,255]
count = 0
# 向矩阵中某元素赋值,其中img[count,100,index] = 255,索引表示为给BGR(依次是0,1,2)赋值.
# 也可以用[b,g,r]这样进行赋值
while count < 200:
    img[count,100,2] = 255
    count += 1
cv.imshow('img',img)
# cv.imshow('img1',img1)
# cv.imshow('img2',img2)
cv.waitKey(0)
cv.destroyAllWindows()

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值