【1】python-opencv3教程:图像数字化(图像灰度化,彩色图像通道的提取等)

第一节:图像数字化

1: 构造二维的ndarry,相当于就是构造灰度图像各个位置的像素值。

import numpy as np
import cv2

# 构造二维的ndarry    # 构造一个100*100的图像,像素值都是零,然后将其输出
z = np.zeros((100, 100), np.uint8)   # 100*100的图像,每个点像素值都为零
cv2.imshow('img', z)    # 显示图片
cv2.imwrite('img1.png', z)  # 将我们的结果进行保存
cv2.waitKey(0)   # 显示持续几毫秒   1000代表一秒,0表示永久
cv2.destroyAllWindows()

  程序的输出结果:

  

2:同理,我们可以构造三维的ndarry

# 构造三维的ndarry
z = np.ones((100, 100, 3), np.uint8)
cv2.imshow('img2', z)
cv2.imwrite('img2.png', z)
cv2.waitKey(0)
cv2.destroyAllWindows()

   (100, 100, 3)表示的是100*100的三通道图片,也就是彩色图片,但我们指定的像素值都是1,所以最后的输出还是黑色的。

3: ndarry的加减乘除,这里的乘包括点乘和矩阵乘。

# ndarry的加法
src1 = np.array([[23, 123, 90], [100, 250, 0]], np.uint8)
src2 = np.array([[125, 150, 60], [100, 10, 40]], np.uint8)
dst = src1 + src2
print(dst)   
# 123 + 150 = 273 array对于大于255的uchar类型的处理方式是:对255取模运算后减1,即: 273 % 255 - 1 = 17


# ndarry的减法
dst1 = src1 - src2
print(dst1)


# ndarry的点乘运算
dst2 = src1*src2  # 点乘就是对应点进行相乘
print(dst2)


# ndarry的点除运算
dst3 = src2 / src1  # 对应点进行相除
print(dst3)


# ndarry的乘法 即矩阵的乘法
src3 = np.array([[1, 2, 3], [4, 5, 6]], np.uint8)
src4 = np.array([[6, 5], [4, 3], [2, 1]], np.uint8)
dst4 = np.dot(src3, src4)
print(dst4)

    注意代码中的注释

4:灰度图像数字化。

     在这里我们先读入一张灰度图像,然后输出其各个位置的像素值,接着把图像显示出来。

# 灰度图像数字化
img = cv2.imread('p2.jpg', cv2.IMREAD_GRAYSCALE)   # 后面这个参数很有用,当你用这样的方式读入彩色图像时,可以将其转换为灰度图像
print(img)  # 打印出该图片的像素值
cv2.imshow('img', img)   # 显示图像
cv2.waitKey(0)
cv2.destroyAllWindows()

 输出结果:

 5:彩色图像数字化

   我们这里读一张彩色图像,然后将其各个通道的值读出来,输出。

# 彩色图像数字化
image = cv2.imread('p1.jpg')
b = image[:, :, 0]  # 第一个通道的值
g = image[:, :, 1]  # 第二个通道的值
r = image[:, :, 2]  # 第三个通道的值
# 显示三个颜色通道
cv2.imshow('b', b)
cv2.imshow('g', g)
cv2.imshow('r', r)
cv2.waitKey(0)
cv2.destroyAllWindows()

  输出结果:

未完待续。。。。下一节我们讲学习图像的几何变化。。

 

全部评论

相关推荐

已老实求offer😫:有点像徐坤(没有冒犯的意思哈)
点赞 评论 收藏
分享
评论
点赞
收藏
分享
正在热议
# 25届秋招总结 #
443459次浏览 4523人参与
# 春招别灰心,我们一人来一句鼓励 #
42266次浏览 539人参与
# 阿里云管培生offer #
120470次浏览 2221人参与
# 地方国企笔面经互助 #
7975次浏览 18人参与
# 同bg的你秋招战况如何? #
77249次浏览 569人参与
# 实习必须要去大厂吗? #
55816次浏览 961人参与
# 北方华创开奖 #
107476次浏览 600人参与
# 虾皮求职进展汇总 #
116395次浏览 887人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
11702次浏览 289人参与
# 实习,投递多份简历没人回复怎么办 #
2455021次浏览 34861人参与
# 提前批简历挂麻了怎么办 #
149962次浏览 1979人参与
# 在找工作求抱抱 #
906124次浏览 9423人参与
# 如果公司给你放一天假,你会怎么度过? #
4764次浏览 55人参与
# 你投递的公司有几家约面了? #
33209次浏览 188人参与
# 投递实习岗位前的准备 #
1196058次浏览 18550人参与
# 机械人春招想让哪家公司来捞你? #
157650次浏览 2267人参与
# 双非本科求职如何逆袭 #
662406次浏览 7397人参与
# 发工资后,你做的第一件事是什么 #
12808次浏览 62人参与
# 工作中,努力重要还是选择重要? #
35929次浏览 384人参与
# 简历中的项目经历要怎么写? #
86943次浏览 1516人参与
# 参加完秋招的机械人,还参加春招吗? #
20154次浏览 240人参与
# 我的上岸简历长这样 #
452080次浏览 8089人参与
牛客网
牛客企业服务