OpenCV入门02:图像对象的创建和赋值

教程开源

本教程开源,地址:https://gitee.com/zccbbg/opencv_study

图像对象的创建

numpy.zeros_like:返回与指定数组具有相同形状和数据类型的数组,并且数组中的值都为0。

>>> x = np.arange(6)
>>> x = x.reshape((2, 3))
>>> x
array([[0, 1, 2],
[3, 4, 5]])
>>> np.zeros_like(x)
array([[0, 0, 0],
[0, 0, 0]])
>>>
>>> y = np.arange(3, dtype=float)
>>> y
array([ 0., 1., 2.])
>>> np.zeros_like(y)
array([ 0., 0., 0.])
def mat_demo1():
    image = cv.imread("../images/test.jpg")
    print(image.shape)
    '''
    创建一个和加载的图像image具有相同形状的全黑图像
    np.zeros_like函数会生成一个与输入图像相同尺寸的全零矩阵,用于存储在变量blank中
    '''
    blank = np.zeros_like(image)
    cv.imshow("blank", blank)
    cv.imshow("image", image)
    cv.waitKey(0)
    cv.destroyAllWindows()


if __name__ == '__main__':
    mat_demo1()

图像对象的赋值

def mat_demo2():
    image = cv.imread("../images/test.jpg")
    print(image.shape)
    '''
    创建一个和加载的图像image具有相同形状的全黑图像
    np.zeros_like函数生成一个与输入图像相同尺寸的全零矩阵,用于存储在变量blank中。
    '''
    blank = np.zeros_like(image)
    '''
    从加载的原始图像image中选择一个特定的区域,
    这个区域的左上角坐标为(100, 100),右下角坐标为(200, 200),
    并将这个区域的像素值复制到全黑图像blank的对应位置
    '''
    blank[100:200,100:200,:] = image[100:200,100:200,:]
    cv.imshow("blank", blank)
    cv.imshow("image", image)
    cv.waitKey(0)
    cv.destroyAllWindows()

if __name__ == '__main__':
    mat_demo2()

你可能感兴趣的:(#,opencv入门,opencv,人工智能,计算机视觉)