Python OpenCV threshold函数为不同的参数生成相同的结果

Python OpenCV threshold函数为不同的参数生成相同的结果,python,opencv,threshold,Python,Opencv,Threshold,我有一个灰度图像,它的像素是从-1到1的浮点值,这 我使用ConvertScaleAbs功能转换为uint8(0-255) 我想设置此图像的阈值,但它不起作用:阈值结果与任何限制相同(Thresh和MaxValue)。例如,如果它们是100-150或100-255,则结果相同 代码: import cv2 import numpy as np import numpy img = cv2.imread("C:\Python27\Archivos\Vinedo Casablanca\Vuelo

我有一个灰度图像,它的像素是从-1到1的浮点值,这 我使用
ConvertScaleAbs
功能转换为
uint8
(0-255)

我想设置此图像的阈值,但它不起作用:阈值结果与任何限制相同(
Thresh
MaxValue
)。例如,如果它们是100-150或100-255,则结果相同

代码:

import cv2
import numpy as np
import numpy

img = cv2.imread("C:\Python27\Archivos\Vinedo  Casablanca\Vuelo1\PythonOpencv\Seccion\Sin suelo\NDVI_hileras.tif", cv2.IMREAD_ANYCOLOR | cv2.IMREAD_ANYDEPTH)

out = cv2.convertScaleAbs(img, alpha=(255.0/1.0))

rows,cols = out.shape
thresh = 104
maxValue = 120
th, mask= cv2.threshold(out, thresh, maxValue, cv2.THRESH_BINARY_INV)

更具体的标题。将问题澄清为1)我有什么(灰度uint8图像),2)我想要什么(阈值),3)什么失败(总是相同的结果)。我能够修复它!我将图像转换为HSV,所以我使用了InRange函数而不是Threshold函数。更具体的标题。将问题澄清为1)我有什么(灰度uint8图像),2)我想要什么(阈值),3)什么失败(总是相同的结果)。我能够修复它!我将图像转换为HSV,所以我使用了InRange函数而不是Threshold函数。