使用DLib进行感兴趣区域提取

3
我正在进行一项图像处理项目。我需要从一个变量 (cv_image <bgr_pixel>) 提取感兴趣的区域并将其存储到另一个变量 (cv_image <bgr_pixel>) 中,使用的是一个 dlib::rectangle 变量
在OpenCV中,它的代码如下:
Mat mainImage=cv::imread(location,0);
Mat roi = mainImage(cv::Rect(0,0,100,100))

Dlib 有没有类似的方法?

dlib的矩形与OpenCV的Rect不同。如果你有一个cv::Rect r,那么它的dlib::rectangle rec(r.x, r.y, r.x+r.width, r.y+r.height)。 - berak
1个回答

6
你可以使用dlib::extract_image_chips()。它允许您以多种方式指定芯片的来源,但也可以简单地执行extract_image_chips(in_img, some_rectangle, out_img)。然而,out_img不能是cv_image。它必须是像dlib::array2ddlib::matrix这样的东西。更一般地说,如果您只想在OpenCV对象之间进行复制,则不需要dlib。

2
为什么叫芯片?我花了一些时间才找到这个,我以为子图像听起来很对。 - lahjaton_j
@lahjaton_j 这只是人们称呼它的方式。 - Davis King
1
可能只是因为英语不是我的母语,但是芯片会让我想起这些东西:https://www.google.fi/search?q=image+chip - lahjaton_j

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接