| 에이전트 탐색을 이용한 물체의 추적, 식별 | 2010.08.23 |
여기에서는 옥외 주차장을 상정해 설치된 카메라로 사람과 차량의 추적과 식별을 시행하는 시스템에 대해 설명한다. 제안 시스템은 에이전트 탐색 알고리즘을 이용하고 단안(單眼) 카메라의 영상으로부터 주차장내 보행자 등의 물체를 추적하고, 부스팅(Boosting)에 의한 기계적 학습에 의해서 물체가 사람인지 차량인지를 식별할 수 있다. 에이전트 탐색 알고리즘의 주된 특징은 3가지이다. 첫 번째는 오크루 존이나 교차에 대한 로버스트 형태의 시스템이며, 두 번째는 국소적인 영역에 주목해 추적이나 식별을 시행할 수 있는 것이고, 세 번째는 추적에서 식별까지의 모든 처리에 있어서 일정 길이의 시계열 데이터를 통해 처리하는 것이다. 여기서는 필자 등이 실현한 추적·식별 시스템 가운데 특히 에이전트 탐색에 의한 추적 수법에 대해 중점적으로 설명한다.
처음으로 물체추적에 관해 현재까지 여러 가지 접근방법이 연구·보고 되고 있다. 예를 들면 특징량의 연구로 SIFT를 이용한 추적1), 입체고차국소자기상관 특징을 이용한 보행자 추적2) 등이 있으며, 저마다 높은 성과를 올리고 있다. 또 다른 한편으로 연구로 시공간 MRF를 이용한 차량 추적3)이나 색정보로부터 파티클 필터4)를 이용한 추적5) 등이 연구되고 있어, 부분적인 오크루 존의 대응이 시도되고 있다. 그러나 이러한 수법에 관한 연구는 특정 국소영역에 주목할 수 없기 때문에, 물체의 일부가 숨은 상태에서 계속적인 추적을 실시하는 것이 어렵다. 또한 스테레오 영상 카메라에 의해서 물체 추적을 진행하는 방법6)도 연구되고 있지만, 스테레오 카메라는 단안에 비해 원가 측면에서 불리하고 추후 대중화를 목표로 하는데 있어서는 단안 카메라가 보다 바람직하다. 물체 식별에 관해서는 형상의 복잡도 등에 주목한 연구7)나 카메라의 줌 배율 등 몇 가지 파라미터를 추가해 뉴럴 네트워크(neural network)에 의한 식별을 실시하는 수법8), 대상의 에지 정보로 주목해 SVM에 의한 분리를 실시하는 수법9), Haar-like 특징을 이용해 AdaBoost10)~12)에 의해 식별하는 수법13), 14) 등이 제안되고 있다. 다만, 오크루 존 등의 외관 변화가 발생하는 상황에 있어서는 전처리 추적의 방법과 성능이 식별에 크게 영향을 주는 것은 분명하다. 여기에서는 부감(俯瞰) 시점의 단안 카메라에 의해 얻어진 시계열 화상으로부터 물체를 검출·추적하여, 해당 물체가 사람인지 차인지를 식별할 때까지 통합적으로 추적하는 추적식별 시스템을 제안한다. 또한 상정하는 운용 환경은 옥외 주차장으로 하며, 식별 클래스는 사람인지 차량인지의 2종류로 하기로 한다. 식별 시스템을 위한 추적 처리는 식별 성능의 저하를 막기 위해서 시간적·공간적인 숨은 요소에 로버스트인 것, 보다 구체적으로는 일시적인 대상의 완전 소실이나 어느 정도 장시간의 일부 숨김 및 물체끼리의 교차에 대해서 로버스트인 것을 구할 수 있다. 즉, 물체가 과거에 보였을 때의 각 특징량을 참조할 수 있고 또, 현재 보이고 있는 국소적인 영역에 주목하는 것이 바람직하다. 그래서 제안 시스템에서는 검출·추적에서부터 식별까지 일관되게 시계열 순서의 화상 배열에 의한 데이터 흐름을 이용함으로써, 화상으로부터의 물체의 일시적인 소실에 대해서 해결을 시도한다. 더불어 물체추적 수법으로써 오크루 존이나 교차에 대해 로버스트 형태인 에이전트 탐색 알고리즘을 이용한다. 이 탐색 알고리즘은 참조 영역이 한정적인 다수의 에이전트를 이용해 물체 추적을 실시하는 수법이며, 오크루 존이나 물체의 교차를 해결하면서, 물체의 국소적인 영역에 주목하는 것이 가능하다. 또한, 식별 처리에서는 형상이나 텍스처, 움직임 벡터 등의 특징량을 이용해 AdaBoost에 의한 사람과 차량의 식별이 실시된다. AdaBoost에 의한 물체 식별은 특징량을 선택할 수 있어 시계열 화상 배열이나 에이전트 탐색과 조합된다. 이것에 따라서 오크루 존에 의한 외관의 변화가 발생해도 과거에 보였던 때의 화상이나 현재 보이고 있는 국소영역으로부터 유용한 특징량을 얻을 수 있어 정밀도 높은 식별을 실시할 수 있다.
추적 식별 시스템 시스템 개요 제안 시스템의 개요를 그림 1에 나타냈다. 제안 시스템은 우선 입력되는 비디오 스트림인 시계열 화상을 화상 시퀀스로 버퍼링한다. 여기서 데이터의 출납 룰은 기다리는 행렬과 같은 First In First Out으로 새로운 프레임 화상이 들어올 때마다 제일 오래된 화상 프레임이 파기된다. 다음으로 제안 시스템은 화상 시퀀스로부터 1프레임씩 화상을 꺼내 처리 프로세스에 건넨다. 제안 시스템은 크게 3개의 처리부를 가진다. 그림 가운데 실선으로 둘러싸여 있는 것이 추적부와 식별부이며, 점선으로 둘러싸여 있는 것이 학습부이다. 화상은 우선 추적부에 건네진다. 여기에서는 입력 데이터의 화상으로부터 물체의 검출이 실시돼 새롭게 발견된 물체는 고유의 ID를 부여받는다. 발견된 물체는 라벨링에 의해서 화상 밖으로 사라지든지 화상 안에서 소실할 때까지 추적이 계속된다. 아울러 에이전트에 의한 탐색 알고리즘에 의해서 적절한 ID가 보관 유지된다. 추적된 물체의 화상은 식별부로 보내져 다양한 특징량으로부터 추적 중의 물체가 사람인지 차량인지를 식별한다. 제안 시스템은 운용환경으로써 주차장 내를 상정하고 있어 화상 안의 물체는 반드시 사람 또는 차량이라고 가정하고 있다. 부스팅 학습에 따라서 강화된 2클래스 식별기에 의해 사람과 차의 식별을 실시하고 결과를 유저에게 제시한다.
제안 시스템에 있어서 화상은 한 변이 임의의 픽셀 길이인 정방형의 블록으로 구분된다. 인식 대상이 되는 물체(오브젝트)는 모두 이 블록마다 인식된다. 블록 영역에 의해서 구분되는 화상의 예를 그림 2에 나타낸다. 그림에서는 물체가 존재한다고 보여진 블록 영역이 착색되어 있다. 블록을 적절한 크기로 설정하는 것으로 사람이나 차량의 국소 영역을 취급하기 쉬워지고, 블록 단위로 오브젝트를 인식함으로써 처리 전체의 계산 원가를 절감할 수 있게 된다. 게다가 움직임 벡터나 휘도의 평균·분산 등의 국소적 특징량은 블록 영역마다 구할 수 있기 때문에 특징량 계산에 있어서의 참조 범위를 명확하게 할 수 있다. 제안 시스템에 있어서 ID에 대응하는 오브젝트가 화상 중의 어느 영역에 존재하는지는 각각의 블록 영역에 대해서 오브젝트 ID를 할당하는 것으로 표현된다. 오브젝트의 라벨링 제안 시스템은 추적 처리에 있어서 물체를 배경차분과 프레임간 차분을 종합적으로 이용해 검출한다. 그 후, 검출된 해당 오브젝트가 전(前) 시각 프레임 화상에 있어서 이미 검출된 오브젝트 내 어느 오브젝트와 동일한가의 판정을 실시한다. 구체적으로는 현 시각 프레임에서 추출된 해당 오브젝트 영역과 전 시각 프레임에서 추출된 임의의 오브젝트 영역을 대응시키는 것이 가능한가를 조사한다. 대응은 블록 영역마다 실시된다. 그리고 현 시각 프레임에 존재하는 오브젝트의 각 블록에 대해서, 그 움직임 벡터를 시간축 방향에 대해서 역방향, 즉 과거 방향으로 더듬어간다. 이렇게 해서 더듬어간 곳의 전 시각 프레임에 있어서의 블록 영역과의 유사도를 누적 화소 히스토그램의 비교에 의해 조사하고, 유사도가 일정한 역치 이상이면 그 블록 영역과의 대응 관계가 있다고 본다. 또한, 블록 영역의 움직임 벡터는 블록 매칭15)에 의해서 사전에 요구되고 있다. 여기서 전 시각 프레임 화상 안에 대응하는 블록 영역이 발견되었을 경우, 발견된 블록 영역의 오브젝트 ID를 원래의 블록에 계승시킨다. 대응하는 블록 영역이 발견되지 않았을 경우에는 신규 오브젝트가 발생했다고 간주하여 오브젝트 ID를 신규로 발행한다.
물체 추적을 곤란하게 하는 원인이 되는 것이 오크루 존의 발생이다. 그림 3에 오크루 존의 예를 나타냈다. 여기서 오크루 존이란 오브젝트의 일부 또는 전부가 장애물 혹은 다른 물체에 숨어 버리는 것이다. 이와 같은 외관의 변화에 대응하기 위해 여기서는 화상 안의 오브젝트에 오크루 존이 발생했을 경우에도 로버스트의 탐색 추적이 가능한 알고리즘을 제안한다. 여기서의 에이전트 탐색은 멀티 에이전트 탐색16), 17)의 응용이며, 복수 에이전트에 의한 화상 안에 있어서의 물체의 국소영역의 동시탐색이다. 이 알고리즘은 일종의 에이전트를 오브젝트마다 다수 생성해 탐색 및 추적에 이용한다. 여기서 에이전트는 화상 정보를 얻어 자율적으로 탐색 행동을 실시하는 주체이다. 오브젝트가 존재하는 영역 상에 똑같이 분포하도록 초기 생성되어 저마다 물체의 국소영역을 추적하도록 이동하고, 이동한 곳에서 주변 영역의 특징 정보로부터 적합도를 구한다. 여기에서는 에이전트 탐색 알고리즘을 대략적으로 초기화·선택, 예측, 평가, 출력의 4단계로 나누어 설명한다. 프레임마다 각 단계가 일순한다. 초기화·선택 단계 오브젝트가 검출된 직후라면, 오브젝트에 대응하는 에이전트를 오브젝트 영역에 생성한다. 이미 생성된 에이전트에 관해서는 유전적 알고리즘과 같은 룰렛 선택을 이용함으로써 적합도가 높은 확률적으로 대치한다. 예측 단계 예측 단계에서는 각 에이전트에 대해 과거 프레임에서부터 현재 프레임에의 이동 벡터를 추정한다. 추정에는 과거 프레임에 있어서 에이전트가 존재하고 있던 블록의 움직임 벡터를 이용한다.
평가 단계에서는 각 에이전트의 적합도가 2개의 척도로부터 갱신된다. 하나는 과거 프레임과 현재 프레임에 있어서의 에이전트 주변의 누적 화소 히스토그램의 일치도이며, 다른 하나는 오브젝트의 중심으로부터의 거리에 따라 1에서 0까지 가우스 함수적으로 감소하는 거리 척도이다. 각 에이전트의 적합도는 과거 프레임에 있어서의 적합도에 2개의 척도를 곱셈한 값으로 계산된다. 출력 단계 출력 단계에서는 얻어진 에이전트의 예측 위치와 적합도로부터 각 블록이 어느 오브젝트에 속하는지를 결정한다. 각 에이전트는 대응하는 오브젝트가 정해져 있으므로, 그 적합도에 따라 에이전트가 위치하고 있는 블록의 오브젝트 ID를 고쳐 쓴다. 같은 블록에 다른 오브젝트에 대응하는 복수의 에이전트가 존재하는 경우, 가장 높은 적합도를 가지는 에이전트가 대응하는 오브젝트의 ID로 갱신한다. 에이전트 탐색 알고리즘은 이상과 같은 일련의 처리에 따라서 정밀도가 좋은 고유 ID의 라벨링을 실현하려고 하는 것이다. 그림 4는 부분적인 오크루존 발생시에 에이전트가 추적을 계속하는 모습을 모식도로 나타내 보인 예이다. 여기에서 각 에이전트가 참조하는 범위는 3×3 화소의 크기이다. 오크루 존이 발생하기 전에 에이전트는 인물의 각 국소영역의 움직임 벡터에 따라서 이동한다. 오크루 존이 발생하면, 숨어 있지 않은 머리 부분에 추종하고 있던 에이전트는 그대로 이동하지만, 숨어 있는 부위에 추종하고 있던 에이전트는 움직임 벡터를 잃어, 이전까지의 움직임 벡터에 의한 관성 및 가우스 잡음에 의한 랜덤 워크의 영향이 상대적으로 커진다. 또 숨어 있는 부위 주변의 에이전트는 적합도가 낮아져 도태될 가능성이 높아지지만, 사전에 충분한 수의 에이전트가 발생하고 있다면 소수는 생존한다. 오크루 존이 없어져 인물의 전체가 다시 나타나면, 부위를 잃고 있던 에이전트는 다시 포착할 수 있다. 또한, 내려가고 있던 적합도가 다시 높아지므로 에이전트 수의 편향은 룰렛 선택의 반복을 거쳐 원래대로 돌아간다. 부스팅에 의한 식별
식별 처리부에서는 탐색 추적 단계에 의해서 ID가 부여된 오브젝트가 사람인지 차량인지를 식별한다. 구체적으로는 높은 식별율, 고속처리 및 특징량 선택의 유연성을 고려해 AdaBoost에 의한 머신 러닝 수법19)을 이용한다. AdaBoost에 대표되는 Boosting 알고리즘의 경우 유효한 특징량을 식별할 때의 무게가 자동적으로 늘어난다. 따라서 유효한 특징량이 사전에 자명되지 않는 이러한 시스템과 같은 식별 용도에 있어서 Boosting의 이용은 효과적이라고 생각된다. 제안 시스템에서는 앞서 기술한 에이전트 탐색 알고리즘에 의해서 물체의 일부 밖에 보이지 않는 경우에 있어서도 국소적인 영역으로부터 노이즈 요소가 적은 특징량을 추출하고 있다. 또 그것과 합쳐, 과거에서부터 현 시각까지의 시계열 화상으로부터 얻은 특징량의 평균치를 이용함으로써, 공간적·시간적 노이즈에 로버스트인 식별의 실현을 목표로 하고 있다. 특징량으로써는 오브젝트 영역의 휘도치 분산, 농도공기행렬 특징, 런 랭스(Run Length) 특징, 에스펙트 비, 면적주위 길이 비, 움직임 벡터 분산을 이용하고 있다. 평가실험 시스템의 유효성을 평가하기 위한 실험을 실시했다. 실험 조건 평가 실험에 이용하는 입력 화상으로써 주간의 옥외 주차장에서 사람 또는 차가 화면 내를 횡단하는 신을 촬영했다. 이 실험의 취지는 외관의 변화에 대한 로버스트성의 평가이기 때문에 실험 협력자에게는 1신당 반드시 「차량에 숨기」 혹은 「보행자끼리의 교차」의 어느 쪽이든 1번만 발생하도록 행동하게 했다. 촬영한 총 신 수는 40이며, 결과적으로 영상 시퀀스 중에서는 80개의 오브젝트가 존재하고, 80개의 궤적(軌跡)이 발생했다. 그 40신 가운데, 반인 20신이 사람과 사람의 교차 신, 나머지 20신이 사람과 차가 숨은 신이다. 오브젝트 80개 가운데 보행자는 50개, 차량은 30개였다. 물체추적 실험에 대해서는, 위에서 기술한 대로 화면 내를 횡단하도록 움직이는 사람 또는 차가 찍힌 영상을 입력함으로써 그 검출 및 추적을 시도하여 성공율에 의해 성능을 평가했다. 추적의 성공율에 관해서는 오크루 존이나 교차라고 하는 물체의 외관이 크게 변화하는 순간의 전후에서 연속적으로 올바른 추적을 유지하고 있는 비율과 신 전체에 있어서의 전 프레임 수내에서 올바른 추적을 실시하고 있는 프레임수의 비율이라고 하는 2개의 지표로 평가했다. 이후, 전자의 지표를 오크루 존 해결율(Occlusion-solving Rate), 후자의 지표를 추적 정밀도(Tracking Accuracy)라고 부르기로 한다. 추적 성공 여부의 판정은 실험자가 눈으로 보는 것으로 실시했다. 같은 방법으로 식별의 성공 여부에 대해서도 눈으로 보는 것으로 판정했다. 즉, 올바른 식별이란 신에 있어서의 추적 프레임의 반수 이상으로 식별을 올바르게 해석하고 있는 것으로 정의했다. 또한, 물체식별 실험에 대해서는 물건추적 실험과 같은 입력 영상 내의 물체에 대해서, 동일한 추적 후에 사람인지 차량인지의 식별을 시도하고, 올바르게 추적하는 한편, 식별이 되는 비율을 사람차량 식별율(Personvehicleclassification Rate)로서 성능 평가를 실시했다.
실험 결과와 고찰 표 1에 물체추적실험과 물체식별실험의 결과를 나타낸다. 실험은 오브젝트의 크기 1블록당 생성하는 에이전트 수를 각각 5, 10, 20으로 변화시켜 실시했다. 또, 비교대상으로써 블록 매칭법(BM법)을 이용한 오브젝트의 미래위치 추정에 의한 추적을 실시했다. 참고로 식별은 본 수법과 같은 AdaBoost로 실시했다. BM법에 따른 결과를 아울러 표 1에 나타낸다. 에이전트 탐색의 결과는, 물체추적 실험에 있어서의 오크루 존 해결율은 최대 95.0%, 추적 정밀도는 최대 97.5%이며, 또한 물체식별실험에 있어서의 사람차량 식별율은 최대 87.9%였다. 실험 결과로부터, 에이전트의 생성 수를 늘리는 것에 따라서 전체적으로 추적 성능이 향상되고 있다는 것을 알 수 있다. 한편으로, 식별율에 대해서는 에이전트 수와의 상관성은 낮지만, 이번 실험에서는 식별 전에 추적 실패하고 있는 경우도 식별 실패로 카운트하고 있기 때문에, 결과적으로 에이전트 수에 의존하게 되어 있다. 또한, 블록 매칭법에 의한 추적은 오크루 존에의 대응 실패가 많았기 때문에, 성능이 매우 낮아졌다. 실제로 교차가 발생했을 경우의 실행 예를 그림 5에 나타낸다. 교차 직전까지 각 에이전트가 오브젝트의 국소영역의 움직임 벡터나 히스토그램 정보를 보관·유지하고 있으므로 교차 후에도 올바르게 ID의 할당을 계속할 수 있게 되어 있다. 마지막으로 여기서는 에이전트 탐색에 의해서 옥외 환경에 있어서의 카메라 영상으로부터 물체 추적 및 식별을 실시하는 알고리즘을 소개했다. 제안 시스템은 시계열 화상 배열을 입력함으로써 에이전트 탐색 알고리즘 등을 이용한 물체 추적을 시행하고, 그 추적 결과로부터 AdaBoost에 의한 물체 식별을 실시함으로써 오크루 존이나 교차 등의 숨은 것에 로버스트인 추적·식별 처리가 가능하다. 이후의 과제로써는 강우나 야간 등의 악조건에 대처할 수 있는 보다 실용적인 수법의 개발 등을 들 수 있다. <글 : 이노마타 텟페이(Inomata Teppei), 하기와라 마사후미(Hagiwara Masahumi) 게이오기주쿠대학 / 키무라 코우지(kimura kouzi) 코이토공업(주)> [월간 시큐리티월드 통권 제163호(info@boannews.com)] <저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지> |
|
|
|