class-aware detector和class-agnostic detector区别

乐健
2023-12-01

https://www.quora.com/What-does-%E2%80%9Cclass-agnostic%E2%80%9D-in-most-of-the-object-detection-papers-mean

For a class-aware detector, if you feed it an image, it will return a set of bounding boxes, each box associated with the class of the object inside (i.e. dog, cat, car). It means that by the time the detector finished detecting, it knows what type of object was detected.

For class-agnostic detector, it detects a bunch of objects without knowing what class they belong to. To put it simply, they only detect “foreground” objects. Foreground is a broad term, but usually it is a set that contains all specific classes we want to find in an image, i.e. foreground = {cat, dog, car, airplane, …}. Since it doesn’t know the class of the object it detected, we call it class-agnostic.

Class-agnostic detectors are often used as a pre-processor: to produce a bunch of interesting bounding boxes that have a high chance of containing cat, dog, car, etc. Obviously, we need a specialized classifier after a class-agnostic detector to actually know what class each bounding box contains。

翻译过来大意是:

对于class-aware detector,如果我们把一张图喂进去,那么它就会返回一组bounding boxes,每个bounding box都会对应上相对应的目标在里面,例如狗,猫,汽车。这也就意味着当检测器完成检测后, 它是知道这个bounding box里面检测到的是什么。

但是对于class-agnostic detector,它也检测出一组bounding boxes,但是不知道里面是什么。简单来说,就是仅仅检测出前景目标,至于前景目标具体是什么类别并不知道。前景是个宽泛的概念,但这些bounding boxes经常包含了我们想知道感兴趣的具体目标在里面。

Class-agnostic detectors一般是用来做预检测器,就是产生一组极大可能包含猫啊狗啊我们想知道的具体目标。不过这种检测器后面一般都会跟着一个具体的分类器去确定每个bounding box里面究竟有没有包含目标,包含的又是什么。

 类似资料: