보안 제품정보


CCTV 영상의 고해상화 기술과 연구개발사례 2015.03.01

혼잡한 환경에서 기대되는 분석기술인 ‘군중 행동 분석기술’


[보안뉴스=일본전기 미야노 히로요시, 이케다 히로오, 오아미 료마] 거리나 공공장소 등 혼잡한 환경에 설치된 CCTV 영상에서 이상을 검지하는 군중 행동 분석기술의 경우, 각각의 인물을 개별적으로 검출, 추적해서 분석하기보다는 대상을 ‘군(群)’으로 간주해 덩어리로 분석할 필요가 있다. 특히, 사람끼리 겹치는 폭이 커서 개개인을 분석하기 어려운 혼잡한 상황에서의 이상을 검지하기 위해서는 다양한 군중에 대한 학습이 필요하며, 이를 효과적으로 분석하기 위해서는 다양한 종류의 군중 데이터를 인위적으로 작성한 기계식 학습방법이 필요하다. 



최근 안전한 사회를 구현하기 위해 세계 각국이 채택한 방법 중 하나는 CCTV 카메라가 대표적이다. CCTV의 증가가 사회안전을 위해 요구됐다면, 최근에는 사용자의 눈높이에 따른 고화질이 요구되고 있다. 특히, 이러한 영상 데이터의 효율적인 활용을 위한 방안으로 지능형 영상 분석의 필요성이 높아지고 있다. 특히, 거리나 공공시설 등에서 집단으로 발생하는 돌발상황에 대처하기 위한 기술이 강력하게 요구되고 있다.


CCTV에 대한 기존의 지능형 영상분석은 영상 중에 나타난 개개의 인물을 검출, 추적하는 것으로 인물의 상태를 이해하고 그 이상성을 판정한다. 개개의 인물을 검출하는 기술로는 Boosting을 사용한 검출방법 등 수많은 방법이 제안돼 왔다. 또, 인물 추적에 대해서도 인물의 검출 결과를 이용하고 있으며, Kalman Filter나 Particle Filter을 사용한 추적이 흔히 이뤄진다. 이러한 인물 검출·추적 베이스의 어프로치를 이용해 그림 1 왼쪽에 나타낸 것과 같이 출입금지구역에 침입자를 발견하는 것이나 한산한 환경에서 일정시간 동일 배회하는 인물을 인식할 수 있다.


그러나 혼잡한 환경인 경우 인물끼리 서로 겹치는 폭이 커서 검출, 추적 자체가 대단히 어렵다. 또, 추적 대상 인물도 많아지기 때문에 처리량도 방대해져 처리 리소스에도 부하가 걸린다. 혼잡한 환경에서 이상을 검지하기 위한 방법으로 위의 과제의 해결이 필요하다. 때문에 이번 연구에서는 각각의 인물을 검출, 추적하지 않고 그림 1 오른쪽에 나타내는 것과 같이 군중을 개개의 모임이 아닌 ‘군(群)’으로서 다뤘다.


이를 위해 화면을 메쉬로 분할하고 그 분할 단위를 분석했다. 이 경우 얻을 수 있는 것은 처음부터 겹쳐져 있는 사람들의 덩어리를 그대로 분석하기 때문에 사람들끼리 겹쳐있어도 적용할 수 있다. 또한, 그림 1 오른쪽과 같이 화면상의 메쉬 단위를 분석하기 때문에 사람 수가 많더라도 처리량이 일정한 장점이 있다.



혼잡한 환경의 군중 행동 분석기술

혼잡한 환경에서 어떠한 이상이 발생해도 CCTV로는 확인이 어려운 경우가 있다. 또한 지능형 영상 분석 기능을 활용하더라도 이상의 검지가 어렵다. 거리나 공공장소에서 어떠한 이상상황이 발생하면 그 범위는 개인에 한정되지 않고 주변에 있는 군중이나 집단에도 파급된다. 예를 들어 사람이 쓰러지면 주변 사람들이 멈춰 서거나 쓰러진 사람을 둘러싸는 변화가 생긴다. 또, 좁은 통로에서 발생한다면 이동의 흐름이 늦어지기 때문에 어떤 상황이 발생한 것을 알 수 있다.


군중 행동 분석기술에서는 이러한 군중이나 집단의 변화를 사람들을 덩어리 단위로 분석·파악해 혼잡 환경에서 이상을 검지한다. 구체적으로는 그림 1 오른쪽과 같이 화면상을 메쉬로 분할하고 메쉬 단위에서 사람들의 밀도와 흐름, 2종류의 특징량을 추출한다. 그리고 추출된 밀도와 흐름의 특징량 변화에서 그림 3에 나타낸 것과 같이 이상 혼잡이나 집단에서 달아나는 행동, 에워싸는 행동이나 집단 체류와 같은 이변을 검지한다.


예를 들면 밀도가 높은 상황이 일정시간 지속되면 이상 혼잡이라고 판정할 수 있다. 또한, 큰 흐름이 갑자기 발생하면 어떠한 패닉상태가 현장에서 발생했기 때문에 달아나는 행동이 생겼다고 추정할 수 있다.


그리고 특정 개소에서 흐름이 없어지고 밀도가 높은 상태가 일정시간 지속되고 있으면 사람들이 에워싸고 있는 상황이나 집단 체류가 발생했다고 추정할 수 있다. 에워싼 상태에서는 쓰러진 인물이 있을 가능성이나 싸움 등의 이상상태를 예상할 수 있고 사람들의 흐름을 방해하는 것과 같이 집단이 체류하고 있는 상태는 앞에서 언급한 이상 혼잡 등으로 볼 수 있다. 이렇게 밀도와 흐름의 특징량을 추출하면 다양한 군중과 집단의 이변을 검지할 수 있게 된다. 또, 메쉬 단위로 분석하기 때문에 CCTV에 촬영되는 사람 수에 상관없이 처리량이 일정하다는 장점이 있다.


개개인이 아닌 집단에 대한 영상 분석을 하는 어프로치도 없지는 않다. 이 경우 영상 속의 사람들의 혼잡 상황을 추정하는 방법으로 배경 차분 베이스 방법이 흔히 사용돼 왔다. 배경 차분 베이스 방법은 배경과의 차분이 큰 영역을 인물영역이라고 간주하고 인물영역의 면적 크기로부터 사람 수를 추정해 혼잡 상황을 파악한다.


그러나 이 방법은 인물 이외의 배경 변화에 영향을 받기 쉽고 일정 이상의 혼잡 상황이 발생하면, 대부분의 면적이 변화되지 않기 때문에 혼잡한 상황에서는 밀도 변화의 검지가 어렵다. 혼잡한 환경에서의 이상 검지에는 활용할 수 없다. 하지만 군중 패치 학습에 의한 사람 수 추정 방법은 혼잡한 환경일 때도 밀도 추정에 어려움이 없다. 기존의 방법과 비교해 큰 우위성이 지니고 있다고 할 수 있다.



군중 패치 학습에 의한 혼잡 환경 하에서의 사람 수 추정


군중 패치 학습

인물끼리 겹치는 부분을 포함한 군중의 상태를 복수의 인물 이미지를 합성한 국소 이미지(군중 패치)로 나타냈다. 그리고 군중 패치와 그 안에 포함된 사람 수와의 관계를 회귀 학습하는 것으로 혼잡 환경에 있어서도 정밀도 높은 사람 수 추정을 가능하게 했다.


회귀 학습에 사용하는 함수 모델로 군중상태라고 하는 복잡한 패턴을 갖는 이미지를 학습해야 하기 때문에 특징 추출은 하지 않고 이미지로부터 직접 비선형 변환함수 학습이 가능한 CNN(Convolutional Neural Network, 이하 ConvNet)8)을 사용했다. 다양한 화상인식처리에서 그 유용성이 나타나고 있는 ConvNet는 뉴럴 네트워크(neural network)의 일종이며, 학습에 의해 요구된 필터를 사용해서 저장한 저장층과 이미지를 축소하는 부분 샘플링층을 반복하는 구조를 갖는다.


이용하는 ConvNet은 구체적으로 그림 4에 나타낸 바와 같은 입력을 60×60의 휘도 이미지로 하고 5×5나 3×3의 필터에 의한 저장을 한 저장층과 이미지를 반으로 축소하는 부분인 샘플링층의 처리를 반복 적용해 출력 결과를 취득하는 구조를 채용했다.


ConvNet의 학습을 실행하기 위해서 미리 학습 데이터로서 N매의 학습 데이터(60×60의 군중 패치 휘도 이미지)를 준비한다. 이하에서는 N매의 군중 패치 휘도 이미지 및 그 이미지 속에 포함된 사람 수를 각각 xi,yi(i=1,…,N)라고 표기하고 ConvNet가 나타내는 함수를 f라고 표기한다. 학습에 있어서는 아래에 나타내는 평가함수 S를 예로 들면 확률적 강하법 등의 최적화 방법을 이용해서 최소화하는 것으로 적절한 함수 f를 얻을 수 있다.



ConvNet에 의한 사람 수 추정

ConvNet를 이용해 실제로 사람 수를 추정하는 방법을 살펴보면, 실제 영상은 화면상의 장소에 따라 인물의 찍힘이 다르다. 때문에 장소에 따라 적절한 크기의 탐색창을 설정할 필요가 있다. 구체적으로 설명하면 카메라의 위치·자세를 나타내는 카메라 파라미터를 이용해서 이미지 속 머리의 크기를 구하고 학습에 이용한 군중 패치에 있어 머리의 크기와 같아지도록 탐색창의 크기를 설정한다. 카메라 파라미터를 근거로 산출한 탐색창의 예는 그림 5와 같다. 이 탐색창을 이용해 탐색창별로 입력 이미지의 크기를 60×60으로 정규화하고 ConvNet를 적용해서 사람 수를 추정한다.


학습에 이용하는 군중 패치의 자동 생성

사람 수를 고정밀도로 추정하기 위해서는 다양한 종류의 학습 샘플을 모으는 것이 필요불가결하다. 그러나 오브젝트 검출 등에서 흔히 이뤄지는 학습과는 달리 군중 패치에 의한 학습의 경우, 학습 샘플의 수집에 2가지의 문제가 있다.


첫째, 군중상태는 통상 같은 흐름으로 움직이고 있는 경우가 많아 이상한 상태를 포함하는 다양한 종류의 상황을 균일적으로 취득하기가 어렵다. 둘째, 프라이버시의 문제가 있기 때문에 군중 영상을 취득하는 것 자체가 어렵고 엑스트라를 고용해서 대량의 군중 영상을 촬영하기에는 비용이 많이 든다.


이러한 문제를 해결하기 위해 실제 이미지에서 원하는 이미지를 일일이 수집하지 않고 이미지 합성을 통해 자동 생성했다. 즉, 미리 준비한 인물 이미지를 제어해서 의도하는 군중상태로 합성해 학습 샘플인 군중 패치를 대량으로 자동 생성했다. 이 결과 군중상태를 능동적으로 제어하기 때문에 학습에 필요한 군중 패치 내 사람 수의 정보도 동시에 자동 취득할 수 있게 됐다.


군중 패치를 이미지 합성에 의해 자동 생성하는 프레임 워크를 그림 6에 나타낸다. 먼저 미리 배경 이미지, 여러 가지 각도에서 촬영한 인물 이미지, 인물 이미지에 대응하는 인물영역 이미지의 데이터베이스(이하 DB)를 준비한다. 그 다음에 배경 이미지 DB 중에서 배경 이미지를 선택하고 선택한 배경 이미지로부터 군중 패치의 합성에 사용할 배경영역을 잘라낸다.


그 다음에 배경 일부에 포함할 인물영역을 선택해 배경과 합성한다. 구체적으로는 인물 이미지 DB로부터 인물 이미지를 선택하고 군중상태를 구성하는 머리가 극단적으로 기준 사이즈와 다르거나 혹은 군중 패치 내에 들어가지 않도록 제어해 배경과 합성한다. 그리고 앞쪽 배경으로 취급할 사람 계수의 대상이 되는 인물 이미지를 인물 이미지 DB에서 선택하고 기준 사이즈와 같은 정도로 패치 내에 들어가도록 제어해 배경과 합성, 군중 패치를 생성한다. 여기에서 이미지 선택은 랜덤으로 한다.


자동 생성된 합성 군중 패치의 예를 그림 7에 나타낸다. 실제 이미지와 비교해 위화감 없이 인물끼리의 겹침을 재현할 수 있다는 것을 알 수 있다.


[실험] 합성 이미지에 의한 군중  패치 학습의 효과

학습에 사용하는 군중 패치를 실제 이미지에서 사람 손으로 모았을 경우와 이미지 합성에 의해 자동으로 생성했을 경우를 각각 학습해 사람 수를 추정할 때 그 정밀도를 비교한다. 학습에 사용하는 군중 패치는 양쪽 모두 1,200장을 준비한다. 정밀도의 지표로서 사람 수에 대한 추정 오차를 나타내는 평균제곱오차를 사용했으며, 이를 그림 8에 나타냈다.



평가 결과, 평균제곱오차는 실제 이미지 1.65, 합성 이미지 1.41(제안 방법)로 거의 같은 정밀도였다. 합성 이미지에 의한 방법은 합성으로 학습 샘플을 자유롭게 늘릴 수 있기 때문에 실제 이미지로부터 수집하는 것보다 우위에 있다고 할 수 있다. 또, 동일한 학습 데이터 수에서 합성 이미지가 실제 이미지보다 정밀도가 약간 높은 것은 수작업에 의해 모은 실제 이미지와 달리 합성 시 파라미터의 제어로 편중 없는 다양한 데이터를 취득할 수 있었다는 것에 기인한다.


기존 방법과의 정밀도 비교

기존 방법인 배경 차분 베이스 방법6)과 군중 패치 학습방법의 정밀도를 비교했다. 학습 샘플은 각각 12만장을 준비했다. 기존 방법은 12만장의 인물영역 이미지를 바탕으로 면적율과 사람 수의 관계를 회귀 학습했다. 정밀도 지표로서 상기에 제시한 추정 사람 수의 평균제곱오차를 사용했으며, 그림 9에 비교 결과를 나타냈다.



평가 결과, 평균제곱오차는 기존 방법이 1.90인데 비해 군중 패치 학습 방법에서는 0.25로 약 1/8로 감소시킬 수 있다는 것을 알 수 있었다. 기존 방법의 정밀도 저하 원인은 실루엣에 기인하는 인물끼리의 겹침, 머리 외 부위의 오추정 등에 인한 것이다.


또, 조명 변화 등이 있는 영상에 대해 두 방법을 이용해서 화면상 사람 수 총합을 계산해 화면상의 정답 사람 수 총합과 비교했다. 평가 결과를 그림 10에 나타낸다.


전체 프레임에 걸쳐 기존 방법에 비해 군중 패치 학습 방법이 더 오차율이 적은 것을 확인 할 수 있다. 기존 방법은 머리 이외의 부위나 그림자 등의 영향에 의한 오추정이 있기 때문에 사람이 없는 경우도 인원수를 추정하는 경우가 많다.



군중행동분석, 새로운 기준 제시

이번 연구에서는 CCTV에 대한 지능형 영상 분석으로서 특히 혼잡한 환경에 있어서 분석기술로서 기대되는 군중 행동 분석기술에 대해서 설명했다. 군중 행동 분석기술은 영상 속 개개의 인물을 검출·추적하는 것이 아니라 군중을 하나의 ‘군(群)’으로 간주하고 화면을 메쉬로 분할해 그 분할 단위로 분석을 한다. 이것에 의해 사람끼리의 겹침에도 적응할 수 있고 또 영상 속, 사람 수에 상관없이 처리량을 일정하게 할 수 있다.


구체적으로는 메쉬 단위로 사람들의 밀도나 흐름을 계산하고 그것들을 통합하는 것으로 군중 속의 다양한 이변을 검지 할 수 있는 것이다. 또, 군중 행동 분석기술에서 중요한 혼잡 환경에서 사람들의 밀도를 추정하는 방법에 대해서 합성 군중 패치의 ConvNet 학습을 근거로 한 사람수 추정방법을 소개했다.

소개한 방법은 ConvNet에 의해 학습된 변환 함수에 의해 메쉬 단위의 이미지로부터 직접 사람 수를 추정한다. 이것에 의해 혼잡한 환경에서도 고정밀도 추정을 실현할 수 있다는 것을 제시했다. 그리고 학습 샘플이 모아지지 않는다는 군중 패치 학습 특유의 문제를 인물 이미지 합성으로 해결했다.

[글_일본전기 미야노 히로요시, 이케다 히로오, 오아미 료마]


<저작권자: 보안뉴스(http://www.boannews.com/) 무단전재-재배포금지>