Mat属性和深浅拷贝
代码和笔记
python
import cv2
import numpy as np
"""
Mat属性
dims:维度
rows:行数
cols:列数
depth:像素的位深
channels:通道数 RGB 3
size:矩阵大小
type:类型
data:存放数据
Mat的深浅拷贝-在python中即ndarray的深浅拷贝
"""
img = cv2.imread("./img/cat.jpeg")
# 浅拷贝 == 原始数据的视图 形状可以不一致但数据相同
img2 = img.view()
# 深拷贝 == 完全独立的对象,通过深拷贝得到的变量互不干扰 指向的是不同的内存地址。
img3 = img.copy()
img[10:100, 10:100] = [0, 0, 255]
# hstack横向堆叠,vstack纵向堆叠
cv2.imshow('img', np.hstack((img, img2, img3)))
cv2.waitKey(0)
cv2.destroyAllWindows()