opencvsharp Cv.Threshold即使对于ThresholdType.Otsu也返回void

本文关键字:Otsu ThresholdType 返回 void Cv Threshold opencvsharp | 更新日期: 2023-09-27 18:33:11

所以我在OpenCV的C++版本中使用了cvThreshold,当使用CV_THRESHOLD_OTSU时,我得到一个双精度作为返回,显示我使用的阈值是什么。

在 OpenCVSharp 中,函数被定义为仅返回 void。是我滥用了它,还是我们不再有那个选项了?

opencvsharp Cv.Threshold即使对于ThresholdType.Otsu也返回void

OpenCVsharp 中的阈值函数调用被编写为返回 void,这不会处理thresholdType_Otsu。

它需要修改为

public static double Threshold( CvArr src, CvArr dst, double threshold, double max_value, ThresholdType threshold_type )
    {
        if (src == null)
            throw new ArgumentNullException("src");
        if (dst == null)
            throw new ArgumentNullException("dst");
        return CvInvoke.cvThreshold(src.CvPtr, dst.CvPtr, threshold, max_value, threshold_type);
    }

这在返回阈值时以及返回无效的其他情况中有效。