YOLOv3(darknet版本)测试图像时在包围框上添加置信度

1.前言

  在原版的darknet版的YOLOv3中,图像定位检测的包围框上并不会显示置信度。在对测试样本进行检测后不能直接在图片上看到检测的置信度,只有在命令窗户上能够看到。当在图像上含有多个检测目标时,这会显得十分地不直观。因此有必要对源码进行改进,将置信度直接显示在对应的包围框上。

说明:我用的是YOLOv3(darknet-master),版本不一样也许不能添加成功。

PS:这个代码我是参考一位博主的,但是现在找不到了,请知道的小伙伴在评论区附一下链接,我会引用。

2.修改步骤

1.找到darknet-master\src\image.c文件。

2.打开该文件找到draw_detections_v3函数,在第431行加上下面的代码(复制粘贴下面的代码就好,注意缩进)。

        char buff[5];
        _gcvt((selected_detections[i].det.prob[selected_detections[i].best_class] * 100), 5, buff);
        char prob[] = ":";
        strcat(labelstr, prob);
        strcat(labelstr, buff);
        image prob_label = get_label_v3(alphabet, labelstr, (im.h*.03));
        draw_label(im, top + width , left , prob_label, rgb);
        free_image(prob_label);

修改过后的代码如下图所示:

在这里插入图片描述

前后对照版:

在这里插入图片描述

3.重新编译(make),一定要重新编译。

3.结果展示

在这里插入图片描述

暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇