gpt4 book ai didi

c# - DistanceTransform 在 OpenCVSharp 中不起作用吗?

转载 作者:太空宇宙 更新时间:2023-11-03 22:20:06 26 4
gpt4 key购买 nike

我的代码非常简单——我对图像进行阈值处理,然后尝试对其应用 DistanceTransform:

var source = new Mat(path, ImreadModes.AnyDepth | ImreadModes.AnyColor);
var bgr = new Mat[3];
var thresh = new Mat();
var dist = new Mat();
Cv2.Split(source, out bgr);
Cv2.AdaptiveThreshold(bgr[2], thresh, 255, AdaptiveThresholdTypes.MeanC, ThresholdTypes.Binary, 13, 2);
Cv2.ImShow("thresh", thresh);
Cv2.DistanceTransform(thresh, dist, DistanceTypes.L2, DistanceMaskSize.Mask5);
Cv2.ImShow("dist", dist);

但好像过滤器根本没有应用:

enter image description here

最佳答案

事实证明,未能将图像从 32 位规范化 回落到 8 位(如 this answer 所述)。

添加以下行后,图像符合预期:

Cv2.Normalize(dist, dist, 0, 1, NormTypes.MinMax);

enter image description here

关于c# - DistanceTransform 在 OpenCVSharp 中不起作用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50952525/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com