OpenCV笔记003————Image Create

Image Create代码注释如下:

import cv2 as cv
import numpy as np
# Numpy  在使用NumPy库之前,首先必须导入该函数库,导入方式为import numpy as np。
# 由于机器学习算法在数据处理过程中大都涉及线性代数的知识,需要用到矩阵操作,Python本身没有处理矩阵的数据类型,因此需要使用附加的函数库。
# 其中NumPy函数库是Python开发环境的一个独立模块,是Python的一种开源的数值计算扩展工具。
# NumPy的发音是【'numpai】,取自”Numeric(数值)“和”Python“的简写。顾名思义,它是处理数值计算最为基础的类库。
# NumPy参考了CPython(用C语言实现的pyhton及其解释器)的设计,其本身也是由C语言开发而成的。
# 这种工具可以用来存储和处理大型多维矩阵,比Python自身的列表结构要高效的多。尽管Python的list类型已经提供了类似于矩阵的表示形式,
# 但是NumPy提供了更多的科学计算函数。
# NumPy被定位为数学基础库,属于比较底层的Python库,其地位趋向于成为一个被其它库调用的核心库。

src = cv.imread("dataset/train/bees/1.png")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)

m1 = np.copy(src)
# 克隆图像

m2 = src
src[100:200, 200:300, :] = 255
cv.imshow("m2", m2)
# 处理图像中的特定部分 255代表白色。
# 在m2中src[100:200,200:300,:] = 255 第一、二部分分别是指图片的长和宽,第三部分是指图片的通道。
# [100:200,200:300,:] 将图片中长的100-200像素和宽的200-300像素部分指定为255,所以经过转换后m2图片中出现了一块白色的方块。

m3 = np.zeros(src.shape, src.dtype)
cv.imshow("m3", m3)
#  在m3中np.zeros(src.shape, src.dtype) 取图像的shape和dtype类型,创建一个数值为0的numpy数组,
#  然后通过imshow将图像展示出来,由于数值为0,故产生一个与原图大小相同的黑色图像。
#  uint8是专门用于存储各种图像的(包括RGB,灰度图像等),范围是从0–255

m4 = np.zeros([512,512], np.uint8)
cv.imshow("m4", m4)
# 在m4中np.zeros([512,512], np.uint8) 创建了一个大小为512512的图像,
# 同样赋值为0,所以产生了一个512512的黑色图像。

m5 = np.ones(shape=[512,512,3], dtype=np.uint8)
m5[:,:,0] = 255
cv.imshow("m5", m5)
# 0代表第0号通道,0,1,2号通道分别代表R、G、B通道
# 灰度图像是单通道图像,其中每个像素只携带有关光强度的信息
# RGB图像是三通道的。每个像素由三个通道组成,每个通道代表一种颜色。
# m5中B通道为255,所以结果为一个蓝色图像。

cv.waitKey(0)
cv.destroyAllWindows()

# 多行注释用   ctrl+/

运行结果如图:
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值