获取修改像素值

Posted nwpujun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取修改像素值相关的知识,希望对你有一定的参考价值。

 1 # -*- coding: utf-8 -*-
 2 """
 3 Created on Sun May 5 15:51:34 2019
 4 @author: nwpujun
 5 #获取修改像素值
 6 """
 7 import cv2
 8 import numpy as np
 9 img=cv2.imread(2018.png)
10 
11 px=img[100,100]
12 print px
13 blue=img[100,100,0]
14 print blue
15 
16 img[100,100]=[255,255,255]
17 print img[100,100]
18 
19 print img.item(10,10,2)
20 img.itemset((10,10,2),100)
21 print img.item(10,10,2)

 

警告:Numpy 是经过优化了的进行快速矩阵运算的软件包。所以我们不推荐
逐个获取像素值并修改,这样会很慢,能有矩阵运算就不要用循环。
注意:上面提到的方法被用来选取矩阵的一个区域,比如说前 5 行的后 3
列。对于获取每一个像素值,也许使用 Numpy 的 array.item() 和 ar-
ray.itemset() 会更好。但是返回值是标量。如果你想获得所有 B,G,R 的
值,你需要使用 array.item() 分割他们。

以上是关于获取修改像素值的主要内容,如果未能解决你的问题,请参考以下文章

针对opencv的提问!!!浮点型图像像素值范围是多少?

获取使用 gl.texImage2D 绘制的纹理的“红色”像素值

为啥使用 k-means(来自 Scipy)聚类到两个片段的图像会显示两个以上不同的像素值?

opencv如何计算图像中物体的像素值

片段着色器是不是处理来自顶点着色器的所有像素?

OpenCV学习笔记3基础:图像基本操作