1. 서 론
산업계의 과학기술의 빠른 진보는 머신분야, 로봇분야, 게임분야, 유비쿼터스 및 홈네트워크 분야 등 다양한 분야에서 다양한 기술들을 적용하고 발전시켜왔다. 요즘 사회적, 개인적인 위험에 대한 대처방안 등에 관한 관심이 대두되며 이에 대한 요구에 적합한 감시시스템이 보편화 되었고 그 응용분야가 확장되면서 ‘지능형 영상 감시 시스템’ 이라는 주제로 연구되고 있다. 지능형 영상 감시 시스템은 감시카메라로 입력되는 영상정보를 디지털 화하여 관심 객체의 위치와 패턴을 분석하여 상황을 인지하고 대응조치를 취할 수 있도록 한다[1]. 이것은 객체 또는 물체가 물리적인 보안 정책에 해당하는 이벤트를 발생시켰는지를 판단 및 분석하여 관리자에게 정보를 제공하거나 데이터 및 이벤트 내용을 저장한 후 사후 예방 관리 및 검색의 효율성을 극대화 시킬 수 있는 기술로서 영상분석을 통해 인간의 행동 패턴을 분석해 다양한 정보를 얻어 다양한 분야에 적용이 가능하다[2,3]. 이와 같이 컴퓨터를 이용하여 영상을 분석해 인간의 행동을 인식 및 분류하는 것은 인체의 각 부위가 시간의 흐름에 따라 어떤 모습으로 변화하는지를 찾아내어 분석함으로 가능하다.
비디오카메라를 이용하여 입력된 영상에서 관심있는 객체를 추출한 후 객체의 특징 및 행동을 인식하는 방법을 영상인식을 기반으로 하여 꾸준히 연구되고 발전되어 왔다. 이와 같은 인간의 행동인식은 입력되는 영상에서 관심의 대상이 되는 관심객체를 추출하고 배경을 제거하는 전 처리[4], 인간의 행동을 모델링하고 그로부터 인식에 필요한 특징정보를 얻는 행동모델링, 추출된 객체의 특징정보를 이용하여 발생되는 이벤트를 결합하여 사람의 행동을 인식하는 행동인식의 세 단계로 구분된다[5-8]. 행동인식을 위한 특징정보로는 객체의 형태, 윤곽, 텍스쳐, 실루엣, 위치, 궤적, 속도와 같은 정보 등이 있으며 간단하고 계산이 적어 널리 사용되고 있다[9]. 인간 몸의 특징 정보를 추출하는 방법은 기하학적 방법과 마커를 이용하여 특징을 추출하는 방법이 있다[10]. 이와 같은 방법은 행동 인식률이 저조하거나 마커를 사용하는 방법은 장비가 고가이거나 실시간 인식이 어려운 단점이 있다. 배경 모델링을 통하여 객체를 분할하는 방법으로는 그래프 분할방법, 그래프 컷 방법이 있다[11,12]. 객체 분할 방법은 다중 카메라를 사용하기 때문에 비용이 많이 들고 조명변화에 민감하다는 단점이 있다. 또한 카메라를 인체를 부위별로 찾아내는 것이 어렵고 계산이 많으며 행동 인식을 위해서는 신체의 각 부위 움직임으로부터 행동을 추론하는 방법이 필요하므로 행동인식에 적용이 어렵다. 따라서 인체의 포괄적 특징을 이용하는 기법이 많이 사용되며 인체를 전체적인 시각에서 모델링하므로 간단하고 계산 량이 적다[13].
본 논문은 실내에서 발생할 수 있는 위급 상황을 감지하여 알림서비스를 하는 것을 목적으로 단일 카메라에서 실시간 수집된 정보를 바탕으로 인간의 움직임을 추적하며 움직임 추적의 과정에서 기절이나 쓰러짐 등의 위급상황이 발생할 경우 이를 인식하여 알림 메시지를 실행한다. 이를 위해 인간의 기본적인 행위를 인식하는 알고리즘과 위급 상황을 판별하는 알고리즘을 제안한다. 기존의 알고리즘은 객체의 행위 인식 및 자세 추정 등을 위해 인체의 정보로부터 추출된 특징을 학습하고 학습된 데이터를 이용하여 입력되는 영상데이터를 이용하여 행위를 인식하거나 자세를 추정하는 과정을 필요로 하므로 많은 량의 학습 데이터와 복잡한 학습 알고리즘이 필요하다. 그러나 본 논문에서는 위급 상황판별을 목적으로 인간의 행위를 인식하므로 좀 더 단순화된 특징과 단순한 알고리즘으로 효율적으로 객체의 행동을 인식할 수 있는 방법이 필요하다. 제안방법은 움직임 객체의 행위를 걷기, 대각선 걷기, 앉기, 일어서기 등으로 정의하고 정의된 행동을 인식하기 위해 객체의 모멘트와 이동정보, 객체의 크기비율 등을 이용한다.
2장에서는 객체추출 및 행동 분류와 비정상 행위알림 서비스에 관하여 기술하고 3장에서는 제안방법의 성능을 평가하며 4장에서 결론을 맺는다.
2. 제안방법
본 논문에서는 입력되는 비디오 영상에서 관심객체의 움직임을 추적하며 추적중인 객체의 움직임에서 비정상적인 행위를 판별한다. 만약 객체가 비정상적인 행위로 판명이 나면 위급상황을 표시하고 그렇지 않을 경우 객체의 행위를 인식하기 위한 과정을 수행한다.
먼저 배경을 모델링하고 단일 카메라에서 입력되는 입력영상과 모델링 된 배경과 입력되는 영상의 차영상을 이용하여 객체와 배경을 분리한다. 배경정보를 이용하여 객체를 추출하고 추출된 객체의 특징을 구하여 객체의 움직임을 추적한다. 움직임 추적을 위한 특징은 객체의 모멘트 정보를 이용하며 위급상황을 판별하고 객체의 행위를 분류하기 위해서는 모멘트의 변화의 부호와 객체의 크기 비율을 이용한다. 그림 1은 제안 알고리즘의 흐름도이다.
Fig. 1.Flowchart of the proposed method.
2.1 배경모델링과 객체 추출
제안방법은 객체의 추출은 참고문헌 [13]의 방법을 사용하였다. 제안방법은 먼저 모델링된 배경과 입력되는 각 프레임의 차영상을 구한다. 구해진 차영상은 배경과 객체로 분리된 영상이며 입력된 영상이 세 평면에서 하위 임계 값과 상위 임계 값 사이에 화소 값이 있다면 배경으로 그렇지 않으면 객체로 간주한다. 다음은 다음을 배경과 객체를 분리를 위한 수식이다.
여기서 x, y는 입력된 영상의 위치(position of input image)이고 객체는 흰색(255)으로 배경은 검은색(0)으로 이진화한다. 이진화된 세 평면의 결과를 합하여 최종 결과 영상을 얻는다.
이진화 한 결과 영상은 객체 영역 이외의 미세영역이 다수 존재한다. 따라서 모폴로지컬 필터를 이용하여 미세영역 및 잡음을 제거하고 영역제한을 두어 중심객체 이외의 미세영역을 제거함으로 배경-객체 분할 영상(B(x, y))을 생성한다.
2.2 움직임 객체의 특징정보 추출
본 논문에서는 움직임 객체를 추적하며 추적중인 객체의 움직임에서 비정상적인 행위를 판별한다. 만약 객체의 행동이 비정상적인 행위 로 인식될 경우 위급상황(emergency situation)을 알리는 메시지를 실행하며 그렇지 않을 경우 객체의 행위를 인식하기 위한 과정을 수행한다. 객체의 행위는 걷기, 대각선 걷기, 앉기, 일어서기의 네 가지 기본 동작으로 정의하고 이 행위 중 걷기는 위(U), 아래(D), 오른쪽(R), 왼쪽(L) 움직임으로 다시 분류하여 행위를 인식하며 대각선은 위-오른쪽(UR), 아래-오른쪽(DR), 위-왼쪽(UL), 아래-왼쪽(DL) 방향으로 다시 분류하여 객체 추적에 사용된다.
객체는 이전프레임과 현재프레임의 모멘트를 구하여 모멘트를 추적함으로 객체의 이동 및 방향을 검출하며 검출된 객체의 이동방향으로 걷기와 대각선 걷기 등 객체의 일부 행위의 판별이 가능하다. 그러나 이 정보만으로는 위/아래 걷기와 앉기, 서기 등과 걷기의 행위 인식의 판별이 어려우며 이를 구분하기 위하여 현재프레임과 이전프레임의 객체의 크기 변화율을 사용한다. 그림 2와 그림 3은 객체의 걷기 및 대각선 걷기의 움직임 방향과 객체의 특징정보인 모멘트 변화와 객체의 크기 변화율을 보여준다.
Fig. 2.The direction of walking and diagonal-walking of the object.
Fig. 3.The characteristic information of the object (a) Change of the moment and (b) change ratio of the object.
모멘트는 객체영역의 무게중심점으로 객체의 이동 시 모멘트도 같이 이동되며 따라서 객체의 추적에 적합한 특징이다. 객체영역의 모멘트는 다음과 같이 구한다.
여기서 n은 객체의 화소수(pixel)이며 xi, yi 는 i번째 화소의 x, y 위치(poisition of xi, yi)이다. 이전프레임과 현재 프레임의 모멘트의 변화량은 다음과 같이 구한다.
여기서 Cmx, Cmy는 모멘트의 변화량(change amount of monent), Rmx, Rmy는 현재프레임의 모멘트(monent of current frame), Bmx, Bmy는 이전 프레임의 모멘트(monent of prvious frame)의 x, y 좌표(position)이다. 제안 방법은 Cmx와 Cmy를 이용하여 비정상행위를 판별하기 위한 특징으로 사용한다. 또한 Cmx와 Cmy의 부호를 특징으로 하여 객체의 행위를 인식하며 방향성분 값은 Cmx와 Cmy의 부호를 이용하여 표 1과 같이 분류한다. 여기서 ‘*’는 값에 관계없음을 의미한다.
Table 1.Chaging value of movement of moment between previous frame and current rame
객체의 크기변화율은 모멘트와 객체의 상한까지의 거리(distance of upper limit : Su)및 하한까지의 거리(distance of lower limit : Sl)의 변화율로 다음과 같이 구한다.
여기서 Rsu와 Rsl는 객체의 상한 비율과 하한 비율(ratio of upper and lower limit)이고 Su와 Sl및 Su'와 Sl' 는 이전 프레임과 현재 프레임의 객체의 상한까지의 거리(distance of upper limit about curent and previous frame) 및 하한까지(distance of lower limit)의 거리이다.
2.3 객체의 비정상 행위 판별 및 행위 인식
2.3.1. 객체의 비정상 행위 판별
객체는 카메라로부터 연속적으로 입력되는 프레임에서 객체를 추출하여 추출된 객체의 모멘트(Mx, My)와 변화 및 크기 비율로 객체를 추적하고 비정상행위(ES: Emergency Situation)를 판별한다. 그림 4는 객체의 비정상 행위 판별 알고리즘이다.
Fig. 4.discrimenting algorithm of unusual action of object.
객체가 걷기 또는 다른 행위 중 갑자기 쓰러지거나 기절하는 등의 일이 발생할 경우 객체의 움직임 값인 Cmx와 Cmy 중 Cmy가 갑자기 커지며 아래로 이동된다. 또한 Rsu와 Rsl은 갑자기 작아진다. 따라서 Cmx와 Cmy 가 임계 값보다 크고 Rsu와 Rsl이 작을 경우 1차적으로 비정상행위로 분류한다. 이때 Cmy의 임계 값은 20, Rsu와 Rsl의 임계 값은 0.8로 하였다. 그러나 객체가 쓰러졌다 해도 다시 움직이거나 활동할 경우는 위험상황으로 분류하지 않아도 된다. 따라서 1차적으로 비정상 행위로 분류되어도 객체의 움직임 관찰을 위해 비정상행위 판별 후 입력되는 프레임에서 객체의 움직임 여부를 검출하여 움직임 판별 정보로 저장하여 일정 시간 또는 일정 프레임에서 객체의 움직임이 검출되지 않을 경우 비정상 행위로 인식한다. 이와 같이 비정상 행위로 인식될 경우 위급상황 표시를 한다. 제안방법에서는 5프레임정도 객체의 움직임을 관찰한 후 움직임이 없을 경우 위급상황으로 표시한다.
2.3.2. 객체의 행위 인식
본 논문에서는 객체의 행위를 걷기, 대각선 걷기, 앉기, 일어서기의 4가지 동작으로 분류하며 그 중 걷기를 위/아래/오른쪽/왼쪽 의 4방향으로 다시 분류하였다. 대각선 걷기의 4방향은 객체의 추적에만 적용하고 행위 인식에는 적용하지 않았다. 그림 5는 행위인식 분류 알고리즘을 간략히 보여주며 Y는 ‘예’, N은 ‘아니오’를 의미하며 분류기준은 C.X(X: 분류 번호)로 표 2에서 보여준다.
Fig. 5.Classification of action-recognition of object.
Table 2.Condition of action-recognition
3. 실험 및 결과 분석
제안방법의 성능을 분석하기 위하여 카메라를 이용하여 배경영상과 입력 영상을 실시간적으로 처리하였다. 실험영상은 걷기(위/아래/오른쪽/왼쪽), 대각선 걷기, 앉기, 일어서기, 비정상행위(쓰러짐, 기절) 등4가지의 행동을 연속적으로 하고 있는 영상으로 총 8명의 사람의 영상을 이용하였다. 인간의 동일한 행동을 하더라도 특징에 따라 다른 유형으로 행동하므로 걷기, 대각선 걷기, 앉기, 일어서기 등의 모습이 다를 수 있다. 8명의 실험군은 다수의 사람 중 행위의 특성이 일정하지 않은 사람들로 선정했으며 복장 또한 일치하지 않는 다양성을 갖도록 선별하였다. 시스템은 Intel cpu 2.0GHz, RAM, 비주얼 스튜디오 2010과 OpenCV 2.4를 이용하여 구현하였다. 입력되는 영상의 해상도 1G는 640 × 480 24bit 영상으로 초당 15 프레임을 전송받는다. 그림 6은 제안방법의 실험을 위해 구현한 프로그램의 초기 화면으로 ‘start’ 버튼을 클릭하여 제안알고리즘을 실행하며 ‘close’버튼 클릭 시 프로그램이 종료된다.
Fig. 6.Screen of the program of the proposed method (a) initial screen and (b) executing screen.
그림 7은 처음 입력되어온 영상과 두 번째 입력된 영상에 제안방법을 적용한 결과로 객체 추출 결과를 보여준다.
Fig. 7.Extracting image of the proposed method (a) background image, (b) First input image, (c) second input image, (d) object-extracting image of (b), and (e) object-extracting image of (c).
실험 영상 중 객체의 움직임은 추출된 객체의 모멘트의 추적을 통하여 이루어진다. 그림 8은 제안방법을 이용하여 객체의 움직임 궤적을 표현한 영상으로 객체의 움직임을 정확하게 추적함을 보여준다.
Fig. 8.Tracing result of object (a) test image and (b) object- tracing image of (a).
표 3은 그림 8(a)의 테스트 영상을 이용하여 식 (3)과 식 (4), 그리고 표 1에 의하여 프레임별 특징을 추출한 결과 및 이를 이용하여 행위를 분류한 결과를 보여준다. 각 모멘트의 변화량 ΔCmx, ΔCmy의 미세값은 오차를 감안하여 ±2까지는 변화가 없는 것으로 간주하였고 그에 따라 Δx, Δy를 계산하였다. 표 3은 걷기 영상을 기준으로 한 특징 값과 그에 따른 행동분류결과가 잘 판단되었음을 보여준다.
Table 3.Result of action calssification and charactistic value of waking image
그림 9는 다양한 영상을 입력으로 하여 실험한 결과를 보여준다. 객체의 움직임을 추적하여 행위를 판별한 결과를 보여준다. 표 4는 오른쪽으로 걷던 객체에게 갑작스런 위험상황이 발생되는 테스트 영상을 이용하여 식 (3)과 식 (4), 그리고 표 1에 의하여 프레임별 특징을 추출한 결과 및 이를 이용하여 행위를 분류한 결과를 보여준다. 특징값 및 행위분류는 위험 상황이 발생된 프레임을 중심으로 2프레임씩 증가시켜 그 결과를 측정하였다. 284∼288 프레임 사이에 객체는 쓰러지는 상황이 되고 그 때 행위분류 결과는 ESR로 ES의 예측단계이다. 288 프레임에서 ESR 신호 후 292까지의 5프레임 관측 후 객체의 움직임 변화가 없어 ES로 분류되며 이때 비정상적인 위급상황 알림신호가 표시된다.
Fig. 9Action-recognition of the proposed method (a) sitting, (b) left-direction walking, and (c) risk situation.
Table 4.Result of Action calssification and charactistic value of risk situation
표 5는 8명의 피 실험자를 대상으로 제안 방법을 적용하였을 때 인간의 행동을 인식한 결과를 나타낸다. 각 사람은 자유로이 움직이며 걷기, 대각선 걷기, 앉기, 서기 등의 행위와 갑자기 쓰러지는 위험행동을 하였고 제안알고리즘을 적용하여 인식한 프레임 수와 평균 인식율을 보여준다. 비정상적인 행동은 갑자기 발생하므로 프레임에 제한을 두지 아니하였다. 제안된 방법을 실험영상에 적용하여 행동을 인식한 결과 97% 이상의 인식율 을 보였다. 또한 위급상황 발생시 100%의 인식 율을 보였다. 행위인식 시 오차가 발생한 것은 실험영상의 획득 시 실내조명의 깜박임과 카메라의 자동 초점 보정기능으로 인한 초점이 흐려진 영상 등의 발생이 객체의 오인식이 주된 원인이었다. 또한 계속적인 걷기 동작 중 앉기로 동작이 변경되는 경우 등에서 오차가 발생되었다. 이것은 행동인식을 위한 분류 과정 중 특징정보의 임계영역으로 인해 발생하는 오차이다.
Table 5.Result of action-recognition
4. 결 론
본 논문에서는 단일 카메라에서 입력되는 입력영상과 배경 영상의 차영상을 이용하여 객체를 추출하고 추출된 객체를 추적하며 행동을 분류하여 위험상황 시 알림 메세지를 제공하는 알고리즘을 제안한다. 객체분리를 효율적으로 하기 위해 배경영상은 다수의 배경 프레임으로 모델링되며 인간의 활동 중 가장 많이 발생하는 걷기, 대각선 걷기, 앉기, 일어서기 등 4가지의 일상행위와 갑자기 발생하는 쓰러짐이나 기절 등의 위급상황 등의 행위를 분류한다. 객체의 추적은 추출된 객체 영역의 모멘트 정보를 이용하며 행위 인식을 위한 파라메터로는 프레임 간 객체의 모멘트 정보 변화량과 객체의 크기변화율을 사용한다. 위험상황은 모멘트정보와 크기비율을 이용하여 일차적으로 분류되며 정확한 판단을 위해 연속적으로 입력되는 프레임에서 객체의 움직임 여부를 검출하여 움직임이 검출되지 않을 경우 비정상 행위로 인식한다. 객체의 행위는 프레임간 객체의 모멘트 변화의 방향정보를 이용하여 분류한 후 객체의 크기비율의 변화로 최종 판별된다.
본 논문에서 제안된 방법은 웹 카메라에서 입력되는 비디오에서 실험하였으며 객체의 추적 및 위험상황이 발생하였을 경우 적절히 알림서비스를 할 수 있다. 제안된 방법을 실험영상에 적용하여 행동을 인식한 결과 97% 이상의 인식 율을 보였다. 갑작스런 조명의 변화와 카메라의 자동 촛점 기능으로 인한 객체의 오인식과 행동인식을 위한 분류 과정 중 특징 정보의 임계영역에서 발생한 오차이다. 그러나 또한 위급상황 발생시 100%의 인식 율을 보였으며 이것은 많은 양의 학습데이터나 복잡한 학습알고리즘을 필요로 하지 않는 장점을 고려할 때 다양한 유비쿼터스 환경 하에서 유헬스 및 감시카메라 등 다양한 응용에 적용이 가능하다.
참고문헌
- R.T. Collins, A.J. Lipton, T. Kanade, H. Fujiyoshi, D. Duggins, L. Wixson et al, A System for Video Survelliance and Monitioring, Technical Report CMU-RI-TR-00-12, 2000.
- G. Gasser, N. Bird, O. Masoud, and N. Papanikolopoulos, "Human Activities Monitoring at Bus Stops," Proceeding of the IEEE International Conference on Robotics & Automation, pp. 90-95, 2004.
- J. Tao and Y.P. Tan, "A Probabilistic Reasoning Approach to Closed-Room People Monitoring," Proceeding of the IEEE ISCAS, pp. 185-188, 2004.
- J. Park, A. Tabb, and A. Kak, "Hierarchical Data Structure for Real-Time Background Subtraction," Proceeding of the IEEE International Conference on Image Processing, pp. 1849-185, 2006.
- A. Utsumi, H. Yang, and J. Ohya, "Adaptive Human Motion Tracking using Non-Symchromous Multiple Viewpoint Observations," Proceeding of the IEEE 15th International Conference on Pattern Recognition, Vol. 4, pp. 607-610, 2000.
- T.E. de Campos and D.W. Murray, "Regression- based Hand Pose Estimation from Multiple Cameras," Proceeding of the EEE Computer Society Conference on Computer Vision and Pattern Recognition, Vol. 1, pp. 782-789, 2006.
- C.W. Jung and D.J. Kang, "A Recognition Algotithm of Human Behaviors Hidden MarKov Model in an Surveillance System," Journal of Multimedia Society, Vol. 11, No. 11 pp. 1491-1500, 2008.
- D.Y. Kim, J.W. Park, and C.W. Lee, "Object-Tracking System Using Combination of CAMshift and Kalman filter Algorithm," Journal of Korea Multimedia Society, Vol. 16, No. 5, pp. 619-618, 2013. https://doi.org/10.9717/kmms.2013.16.5.619
- A. Yilmaz and M. Shah, "Actions Sketch: A Novel Action Representation," Proceeding of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, Vol. 1, pp. 984-989, 2005.
- A. Utsumi, H. Yamg, and J. Ohya, "Adaptive Human Motion Tracking using Non-Synchronous Multiple Viewpoint Observations," Proceeding of the IEEE 15th International Conference on Pattern Recognition, Vol. 4, pp. 607-610, 2000.
- X.U. Stella, R. Gross, and J. Shi, "Concurrent Object Recognition and Segmentation by Graph Partitioning," Proceeding of the Neutral Information Processing Systems, pp. 1380-1390, 2002.
- Y.Y. Boykov and M.P. Jolly, "Iterative Graph Cuts for Optimal Boundary and Region Segmentation of Objects in N-D Images," Proceeding of the IEEE 8th International Conference On Computer Vision, Vol. 1, pp. 105-112, 2001.
- A.F. Bobick and J.W. Davis, "Action Recognition using Temporal Templates," Computational Imaging and Vision Series, Vol. 9, pp. 125-146, 1997. https://doi.org/10.1007/978-94-015-8935-2_6
- N.J. Kwak and T.S. Song, "Human Action Classification and Unusual Action Recognition Algorithm for Intelligent Surveillance System," Lecture Notes in Electrical Engineering, Vol. 215, pp. 797-804, 2012.
피인용 문헌
- A multi-level behavior network-based dangerous situation recognition method in cloud computing environments vol.73, pp.7, 2017, https://doi.org/10.1007/s11227-017-1982-1
- 비디오에서 동체의 행위인지를 위한 효율적 학습 단위에 관한 연구 vol.20, pp.2, 2017, https://doi.org/10.9717/kmms.2017.20.2.196
- 보행자 타입에 따른 보행자의 관절 점 자동 추출 알고리즘 vol.21, pp.3, 2014, https://doi.org/10.9717/kmms.2018.21.3.333