Search

[Archive] Selective Search for Object Detection

Created
2022/07/15
Last modified date
Tags
ai
URL
작성일: 2022.07.15 (Fri)

What is Selective Search?

Object 인식이나 검출을 위한 가능한 후보 영역을 알아낼 수 있는 방법 제공
Main Idea 1
고정된 window 사이즈는 각기 다른 object의 size나 shape를 포착하기 어려운데, object들이 각기 다른 shape를 가지고 있는 경우 windows로 scan하여 region proposal 하는 것이 옳은 방법일까?
→ 비슷한 질감, 색, 강도를 갖는 인접 픽셀로 구성된 다양한 크기의 window 생성
Main Idea 2
Object recognition 실행 전, 이미지를 올바르게 segment하면 segmented result에 대해서 candidate object로 사용할 수 있지 않을까?

Selective Search Process (Simply)

1.
입력 영상에 대해 segmentation 실시, 이를 기반으로 후보 영역 찾기 위한 seed 설정
2.
다수의 후보 생성
3.
다수의 후보를 적절하게 통합해 나가면, segmentation은 후보 영역의 개수가 줄어들고, 결과적으로 이를 바탕으로 box의 후보 개수도 줄어듦

Key Points

1.
Capture All Scales → hierarchical 알고리즘 사용
Object는 이미지 내 어떤 크기(any scale)로도 나타날 수 있음
일부 object는 다른 object보다 boundary가 명확하지 않음
따라서, selective search에서는 모든 object의 크기(scales)를 고려해야 함
2.
Diversification
영역은 색상, 질감, 또는 parts가 둘러싸여 있기 때문에 객체 형성 가능
음영 및 빛의 색상과 같은 lighting condition은 regions이 물체를 형성하는 방식에 영향을 미칠 수 있음
따라서, 대부분의 경우 잘 작동하는 single strategy 대신 모든 경우 처리 가능한 diverse set of strategies 필요
3.
Fast to Compute
Selective search의 목표는 실제 object recognition framework에서 사용 가능한 object locations 집합 생성하는 것임
이 집합의 생성은 computational bottleneck이 되어서는 안됨
따라서, 알고리즘 속도 빠름

Selective Search Process (Detail)

1.
Input 이미지에 sub-segmentation 진행
2.
Greedy algorithm 사용하여 반복적으로 작은 영역을 큰 영역으로 결합
Greedy Algorithm : 1. Set of regions에서, 가장 유사한 두 가지 선택 2. 상기 두 가지를 하나의 큰 영역으로 결합 3. Step a~b를 여러 iteration 동안 반복
3.
Segmented region proposals 사용하여 candidate object locations 생성

Weakness

Region proposal 과정이 실제 object detection CNN과 별도로 이루어지기에,
End-to-end로 학습이 불가
실시간 적용에 어려움 존재

Similarity in Segmentation

Color Similarity
Scolor(ri,rj)=k=1nmin(cik,cjk)S_{color}(r_i, r_j) = \sum^n_{k=1}{min(c^k_i, c^k_j)}
Texture Similarity
Stexture(ri,rj)=k=1nmin(tik,tjk)S_{texture}(r_i, r_j) = \sum^n_{k=1}{min(t^k_i, t^k_j)}
Size Similarity
Ssize(ri,rj)=1(size(ri)+size(rj))÷size(img)S_{size}(r_i, r_j) = 1-(size(r_i) + size(r_j)) \div {size(img)}
Fill Similarity
Sfill(ri,rj)=1(size(BBij)size(ri)size(rj))÷size(img)S_{fill}(r_i, r_j) = 1-(size(BB_{ij}) - size(r_i) - size(r_j)) \div {size(img)}
Reference