2

我正在使用 dlib 进行人脸检测,我想在图像中写一个文本。我试过这个win.add_overlay(dets, rgb_pixel(255,0,0),"test" ); ,但它不工作

你能帮我么。

4

2 回答 2

8

根据dlib 文档,该add_overlay方法将叠加层作为参数。由于要显示矩形,因此必须创建一个overlay_rect. 您应该尝试以下代码:

win.add_overlay(dlib::image_window::overlay_rect(dets, rgb_pixel(255,0,0),"test" ));

dlib 文档确实做得很好(戴维斯金的道具)你应该花一些时间阅读和理解它。

于 2016-06-01T08:47:37.433 回答
0

从这个PR开始,您可以直接在图像上写入文本(上面提出的方法依赖于 gui 窗口,因此不会将文本写入图像,即不会修改图像)。

你可以像这样使用它:

draw_string(image, point{10, 15}, string{"cat"}, rgb_pixel{255, 255, 255});

它也接受任何dlib::bdf_font.

于 2021-01-14T07:49:12.527 回答