edge_eval_python icon indicating copy to clipboard operation
edge_eval_python copied to clipboard

The results are different

Open cainiaoqiuzhu opened this issue 4 years ago • 7 comments

您好,我用您的python版本的eval测试了RCF的结果,同时也用matlab版本的eval做了对比,发现结果不一样的—— image 以上是python版本的 image 这个是matlab版本的 结果有误差这是一个问题,关键是OIS不可能会低于ODS的。 最后还是感谢您的python代码,根据您的代码思路,我也对matlab版本代码有了一定的了解

cainiaoqiuzhu avatar Apr 01 '21 03:04 cainiaoqiuzhu

感谢反馈,已更新。

Walstruzz avatar Apr 13 '21 04:04 Walstruzz

感谢反馈,已更新。

感谢您的更新,我其实还有些问题想问一下的,就是为什么我单纯地根据ODS的定义用不同的阈值迭代不同的图片,再计算tp,fp和fn不能得到论文一样的结果呢?在您的代码里哪里还对图像做了什么处理吗?不知您是否方便可以留个联系方式,有些问题想向您请教一下

cainiaoqiuzhu avatar Apr 13 '21 06:04 cainiaoqiuzhu

根据阈值迭代的时候主要是算了这个 https://github.com/Walstruzz/edge_eval_python/blob/3e2a532ab939f71794d4cc3eb74cbf0797982b4c/impl/correspond_pixels.py#L427

Walstruzz avatar Apr 16 '21 13:04 Walstruzz

根据阈值迭代的时候主要是算了这个 https://github.com/Walstruzz/edge_eval_python/blob/3e2a532ab939f71794d4cc3eb74cbf0797982b4c/impl/correspond_pixels.py#L427

这个是必须的吗?我计算阈值的时候是直接一个while循环从0.01到0.99

cainiaoqiuzhu avatar Apr 16 '21 13:04 cainiaoqiuzhu

根据阈值迭代的时候主要是算了这个 https://github.com/Walstruzz/edge_eval_python/blob/3e2a532ab939f71794d4cc3eb74cbf0797982b4c/impl/correspond_pixels.py#L427

我计算真阳性的时候直接拿二值化后的边缘图和gt想与操作&,最后得到的tp值和您的代码给出的tp值相差挺大的,您知道这是为什么吗?按照F1-score的公式中,tp的计算确实应该就是得到边缘图和gt图中相同的像素的个数吧?

cainiaoqiuzhu avatar Apr 17 '21 03:04 cainiaoqiuzhu

这个倒不太清楚,它在eval的时候其实是当某个点在一个小邻域存在gt中的像素点时则认为预测对了,而不是直接算&那么严格。

Walstruzz avatar Apr 18 '21 07:04 Walstruzz

Hello, I have a question that I don't quite understand. Is it necessary to refine the shape of the binary image? Is it okay not to refine? What is the basis for thinning? edge_eval_python/impl/edges_eval_dir.py 75
if _thin: _e1 = bwmorph_thin(_e1)

prinzROSE avatar Nov 07 '21 14:11 prinzROSE