Mat矩阵 # Mat属性,主要分为header和data header储存以下属性: dims: 维度 channels:通道数 RGB是3 rows: 行数 size: 矩阵大小 cols:列数 type:dep+dt+chs CV_8UC3 depth:像素的位深 data:存放数据 # Mat浅拷贝,指向同一个内存地址data Mat A = cv.imread(file,IMREAD_COLOR) 可以这么浅拷贝: Mat B = A # Mat深拷贝,重新复制一份data Mat A = cv.imread(file,IMREAD_COLOR) Mat B = A.copy()
示例代码:
import cv2 as cv
import numpy as np
img = cv.imread('./img/img.png',cv.IMREAD_COLOR)
# 浅拷贝,指向同一个地址
img2 = img
# 深拷贝,重新复制一份
img3 = img.copy()
img[100:200,100:300] = [255,0,0]
# img[100:200, 100:300] = [255, 0, 0] # 对指定区域赋值
cv.imshow('img',img)
cv.imshow('img2',img2)
cv.imshow('img3',img3)
cv.waitKey(0)
cv.destroyAllWindows()