[英]pixel values of image are changed without modification in opencv python
[英]how to change pixel values in python (opencv) without for loops
我从Python中的OpenCV开始,但遇到了问题。
我有一个从kinect相机拍摄的深度图像。 该图像的边框的像素值为零。 我想将这些值更改为图像的最大值(即2880),而不使用for循环。
直到这里的代码是:
import cv2
depthImage = cv2.imread('depthImageName',cv2.IMREAD_UNCHANGED)
if depthImage.any() == 0:
depthImage = 2880
但是它不起作用,并且保留等于零的值。
谁能帮助我?
如果我忘记了有用的信息,请告诉我。
在此先感谢大家! :)
有一个可以创建边框的函数copyMakeBorder , 这是python教程 :
img1 = cv2.imread('opencv_logo.png')
constant= cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_CONSTANT,value=BLUE)
使用imread
读取图像文件时,该文件存储在numpy数组中。 因此,您可以使用numpy数组的索引。 像这样:
depthImage[depthImage==0] = 2880
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.