python opencv3 使用numpy访问图像数据

Posted 稀里糊涂林老冷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python opencv3 使用numpy访问图像数据相关的知识,希望对你有一定的参考价值。

 

 1 # coding:utf8
 2 import cv2
 3 
 4 """
 5 将bgr在(0, 0)处改为白色像素
 6 
 7 0号为green 1号为blue 2号为red
 8 img的每一个位置存一个 3个长度的向量 分别表示gbr
 9 """
10 # img = cv2.imread("../data/mm2.jpeg")
11 # print(img[0, 0])    # [49 65 11]
12 # img[0, 0] = [255, 255, 255]
13 # cv2.imshow("", img)
14 # cv2.waitKey(0)
15 
16 
17 """
18 将坐标(150, 120) 的蓝色值改为255
19 
20 建议使用itemset函数完成, 这能避免访问原始索引
21 """
22 # img = cv2.imread("../data/mm2.jpeg")
23 # print(img.item(150, 120, 0))    # 打印出这个坐标的blue值
24 # cv2.imshow("", img)
25 # img.itemset((150, 120, 0), 255) # 将这个位置的blue值设为255
26 # print(img.item(150, 120, 0))    # 打印这个坐标的blue值
27 
28 
29 """
30 将图像所有的green值都设置为0
31 
32 不推荐使用循环,,使用索引方式能提高程序实现的效率
33 """
34 # img = cv2.imread("../data/mm1.jpg")
35 # img[:, :, 1] = 0
36 # cv2.imshow("", img)
37 # cv2.waitKey(0)
38 
39 
40 """
41 将某个区域与变量绑定,将值分配给第二个区域
42 """
43 # img = cv2.imread("../data/mm3.jpg")
44 # my_roi = img[0: 100, 0:100]     # 选定宽和高都是0到100的区域为感兴趣的区域
45 # img[300: 400, 300: 400] = my_roi    # 将my_roi区域的值赋给 宽和搞300到400像素的位置
46 # cv2.imshow("", img)
47 # cv2.waitKey()
48 
49 """
50 查看图像的一些属性
51 shape: 宽度 高度 和 通道数
52 size: 图像像素的大小
53 datatype: 图像的数据类型 一般为无符号整型
54 """
55 img = cv2.imread("../data/mm3.jpg")
56 print(img.shape)    # (750, 1000, 3)
57 print(img.size)     # 2250000
58 print(img.dtype)    # uint8

 

以上是关于python opencv3 使用numpy访问图像数据的主要内容,如果未能解决你的问题,请参考以下文章

python opencv3 图像与原始字节转换

『python』OpenCV3计算机视觉库第二弹_简单的图片处理

基于python3+opencv3图像基础IO操作

(Python)numpy 常用操作

opencv python 已经安装numpy 依然报错No module named 'numpy'和 No module named 'cv2'

python 当图像是2d numpy数组时,将图像分类。