본 발명에서 사용되는 용어는 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어도 있는데 이 경우에는 단순한 용어의 명칭이 아닌 발명의 상세한 설명 부분에 기재되거나 사용된 의미를 고려하여 그 의미가 파악되어야 할 것이다.
이하, 첨부한 도면 및 바람직한 실시예들을 참조하여 본 발명의 기술적 구성 을 상세하게 설명한다.
그러나, 본 발명은 여기서 설명되는 실시예에 한정되지 않고 다른 형태로 구체화 될 수도 있다. 명세서 전체에 걸쳐 동일한 참조번호는 동일한 구성요소를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 폭행상황 검출방법을 수행하기 위한 폭행상황 검출시스템을 보여주는 도면, 도 2는 본 발명의 일 실시예에 따른 폭행상황 검출방법의 머리추적박스를 설명하기 위한 도면, 도 3은 본 발명의 일 실시예에 따른 폭행상황 검출방법의 프레임 영상들을 보여주는 도면, 도 4는 본 발명의 일 실시예에 따른 폭행상황 검출방법의 폭행 후보 영상 선정방법을 설명하기 위한 도면, 도 5는 본 발명의 일 실시예에 따른 폭행상황 검출방법의 머리이동벡터를 설명하기 위한 도면, 도 6은 본 발명의 일 실시예에 따른 폭행상황 검출방법의 머리위치벡터를 설명하기 위한 도면, 도 7은 본 발명의 일 실시예에 따른 폭행상황 검출방법의 흐름도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 폭행상황 검출방법은 폭행상황 검출시스템(100)을 이용하여 수행되며, 상기 폭행상황 검출시스템(100)은 배경삭제모듈(110), 객체추적모듈(120), 음성분석모듈(130), 폭행상황 판단모듈(140), 폭행상황 알람모듈(150), 디스플레이 수단(160) 및 스피커 수단(170)을 포함하여 이루어진다.
또한, 상기 폭행상황 검출시스템(100)의 각 모듈들은 프로그래밍되어 컴퓨터의 저장매체에 저장되어 기능을 수행한다.
또한, 상기 폭행상황 검출시스템(100)의 각 구성요소의 기능들은 도 7을 참조하여 설명하기로 한다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 폭행상황 검출방법은 먼저, 상기 배경삭제모듈(110)이 CCTV(10)로부터 실시간으로 영상들을 입력받아, 현재 입력된 영상인 현재 프레임 영상(11) 중 움직임이 없는 배경은 삭제하고, 움직이는 객체들 중 사람객체들(11a,11b)을 검출한다(S1000).
도 2를 참조하여 더욱 자세하게 설명하면, 먼저 상기 배경삭제모듈(110)은 가우시안 믹스쳐 모델(GMM:Gaussian Mixture Model)을 이용하여 상기 현재 프레임 영상(11) 중 움직임이 없는 배경은 삭제하고 상기 움직이는 객체들을 검출한다. 다음, 미디언 필터링(Median filtering) 및 마스크 연산(Masking)을 통해 상기 움직이는 객체들의 영상잡음을 제거하며, 상기 각각의 움직이는 객체들을 포함하는 사람객체박스들(11a',11b')을 생성하여 상기 사람객체박스들(11a',11b')의 영상을 분석하고, 상기 움직이는 객체들이 각각 사람객체(11a,11b)인지 판단한다.
또한, 상기 사람객체(11a,11b)의 판단방법은 먼저, 상기 각 사람객체박스(11a',11b')의 영상 히스토그램(Image histogram)을 계산하고, 다음, 계산된 각 사람객체박스(11a',11b')의 영상 히스토그램과 일반적인 사람의 표본인 사람객체표본이 갖는 영상 히스토그램의 유사성을 비교하여 상기 각 사람객체박스(11a',11b') 내의 움직이는 객체가 사람객체(11a,11b)인지 판단한다.
또한, 상기 영상 히스토그램을 이용하여 사람객체(11a,11b)로 판단된 각 사람객체박스(11a',11b')의 가로(x) 및 세로(y)의 비율을 계산하여 일반적인 사람객체표본이 갖는 가로(x) 및 세로(y)의 비율과 비교하여 유사성을 판단한 후 상기 움직이는 객체가 진정한 사람객체(11a,11b)인지 판단한다.
즉, 상기 현재 프레임 영상(11)에서 상기 사람객체를 검출하는 단계(S1000)는 상기 각 사람객체박스(11a',11b') 영상 히스토그램 및 가로 및 세로비율을 복합적으로 이용하여 움직이는 객체 중 사람객체(11a,11b)만을 정확하게 판단해낼 수 있다.
다음, 상기 객체추적모듈(120)은 상기 각 사람객체박스(11a',11b') 중에서 상기 각 사람객체(11a,11b)의 머리영역을 포함하는 머리추적박스(121a,121b)를 생성한다(S2000).
또한, 상기 머리추적박스들(121a,121b)은 상기 각 사람객체박스(11a',11b')를 y축으로 삼등분하여 세 개의 박스로 분할한 후, 상기 세 개의 박스들 중 최상위 박스의 y축 히스토그램을 구하여 그 값의 도함수의 최고점, 즉, y축 상에서 객체의 폭이 가장 좁은 좌표를 상기 각 사람객체(11a,11b)의 목 좌표로 설정하고, 상기 목 좌표로부터 상기 각 사람객체(11a,11b)의 최상위 좌표까지의 영역으로 생성된다.
여기서 상기 사람객체박스들(11a',11b') 중 상기 머리추적박스들(121a,121b)을 생성하여 추적하는 이유는 사람의 머리영역은 각 프레임 영상들(11-2,11-1,11,11+1)에서 변화가 가장 작게 일어나는 부분이므로, 추적이 쉽고 추적의 정확도도 높기 때문이다.
또한, 상기 머리추적박스들(121a,121b)은 각각 RGB데이터와 중심좌표(H1,H2)로 캐쉬메모리(도시하지 않음)에 저장된다.
다음, 상기 객체추적모듈(120)은 상기 머리추적박스들(121a,121b)이 서로 일정한 거리에 위치하는지 판단하여 상기 머리추적박스들(121a,121b)이 일정한 거리 내에 위치할 경우 상기 현재 프레임 영상(11)을 폭행 후보 영상으로 선정한다(S3000).
도 3 및 도 4를 참조하면, 상기 객체추적모듈(120)은 상기 현재 프레임 영상(11) 내의 각 머리추적박스들(121a,121b)을 포함한 일정한 영역을 갖는 후보영상 검출영역들(122a,122b)을 설정하고, 상기 현재 프레임 영상(11) 내의 후보영상 검출영역들(122a,122b)이 서로 교차하면, 상기 현재 프레임 영상(11)을 상기 폭행 후보 영상으로 선정한다.
다시 말해서, 상기 각 머리추적박스들(121a,121b)의 중심좌표들(H1,H2)이 서로 일정한 거리에 위치하면 상기 현재 프레임 영상(11)을 상기 폭행 후보 영상으로 선정하게 되는 것이다.
또한, 상기 후보영상 검출영역들(122a,122b)의 영역범위는 감시자의 요구에 따라 조절이 가능하며, 영역범위를 크게 할 경우 검출의 감도가 높으나 폭행상황 검출에 계산량이 많아지고, 영역범위를 작게 할 경우 검출의 감도는 낮으나 계산량이 적어지게 되므로 선택적으로 조절할 수 있다.
또한, 상기 후보영상 검출영역들(122a,122b)은 사각형의 영역으로 도시하였 으나 원형의 영역으로 선정될 수도 있다.
다음, 상기 객체추적모듈(120)은 상기 머리추적박스들(121a,121b) 각각의 RGB데이터와 중심좌표(H1,H2)를 이용하여 상기 현재 프레임 영상(11)의 이전 프레임 영상들(11-1)(11-2) 각각의 중심좌표들(H1-1,H2-1)(H1-2,H2-2)을 구한다.
이때, 상기 각 프레임 영상(11)(11-1)(11-2) 간의 머리추적박스들의 동일성은 상기 RGB데이터의 유사성과 상기 중심좌표들(H1,H2)(H1-1,H2-1)(H1-2,H2-2)의 거리를 이용하여 판단되며, 상기 RGB데이터가 서로 다르거나 상기 각 프레임 영상(11)(11-1)(11-2) 내의 동일한 중심좌표들(H1,H2)(H1-1,H2-1)(H1-2,H2-2)이 갑자기 멀어질 경우 동일성이 서로 낮은 것으로 판단하여 배경으로 처리된다.
다음, 상기 객체추적모듈(120)은 상기 이전 프레임 영상들(11-1,11-2)부터 상기 현재 프레임 영상(11)까지 상기 현재 프레임 영상(11)의 중심좌표(H1,H2)가 이동한 이동궤적을 이용하여 상기 각 중심좌표(H1,H2)의 움직임벡터인 제1머리이동벡터들(V1',V1")을 계산한다.
즉, 상기 제1머리이동벡터들(V1',V1")은 하나의 사람객체가 과거에서부터 현재까지 이동한 움직임벡터로써, 폭행상황이 발생하기 이전의 움직임정보를 제공한다.
또한, 상기 제1머리이동벡터들(V1',V1")은 각각 x-y평면에서 이동한 방향에 관한 정보인 각도정보와, 얼마나 빨리 이동했는지에 관한 정보인 가속도정보를 포함한다.
다음, 상기 객체추적모듈(120)은 상기 현재 프레임 영상(11)의 다음 프레임 영상(11+1) 내의 각 중심좌표들(H1+1,H2+1)을 추출하고, 상기 현재 프레임 영상(11)의 각 중심좌표(H1,H2)가 상기 다음 프레임 영상(11+1)에서 이동한 움직임벡터인 제2머리이동벡터들(V1'+1,V1"+1)를 도출한다(S4000a).
또한, 상기 각 제2머리이동벡터들(V1'+1,V1"+1) 역시 상기 제1머리이동벡터들(V1',V1")과 마찬가지로 각각 각도정보와 가속도정보를 포함한다.
다음, 상기 각 제2머리이동벡터들(V1'+1,V1"+1)과 상기 각 제1머리이동벡터들(V1',V1")의 각도차인 제1각도차(θ1',θ1") 및 상기 각 제2머리이동벡터들(V1'+1,V1"+1)의 가속도정보를 이용하여, 상기 현재 프레임 영상(11)의 각 중심좌표(H1,H2)와 상기 다음 프레임 영상(11+1)의 각 중심좌표(H1+1,H2+1) 간의 움직임벡터인 제1변화벡터들(V1)을 도출한다(S4000b).
또한, 상기 각 제1변화벡터들(V1)은 아래의 수학식 3에 의해 도출된다.
여기서, V1은 상기 제1변화벡터, θ1은 상기 제1각도차, α1은 상기 각 제2머리이동벡터(V1'+1,V1"+1)의 가속도정보이다.
즉, 상기 제1변화벡터(V1)는 상기 다음 프레임 영상(11+1) 내의 각각의 중심좌표(H1+1,H2+1)에 대해 도출된다.
한편, 상기 다음 프레임 영상(11+1)의 그 다음 프레임 영상(11+2)의 각 제1변화벡터들(V1)은 상기 다음 프레임 영상(11+1)의 제1각도차(θ1',θ1")와 상기 그 다음 프레임 영상(11+2)의 제1각도차의 변화량 및 상기 다음 프레임 영상(11+1)의 가속도정보(α1)와 상기 그 다음 프레임 영상(11+2)의 가속도정보의 변화량에 의해 도출된다.
따라서, 상기 그 다음 프레임 영상(11+2)부터의 제1변화벡터들(V1)은 아래의 수학식 4에 의해 도출된다.
여기서, 상기 △θ1은 상기 다음 프레임 영상(11+1)의 제1각도차(θ1',θ1") 및 상기 그 다음 프레임 영상(11+2)의 제1각도차의 변화량이고, 상기 △α1은 상기 다음 프레임 영상(11+1) 및 상기 그 다음 프레임 영상(11+1)의 제2머리이동벡터들의 가속도정보의 변화량이다.
다음, 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터들(V1)을 분석하여 상기 다음 프레임 영상(11+1)이 폭행상황인지 아닌지 판단한다(S5000).
더욱 자세하게는 상기 폭행상황 판단모듈(140)은 상기 다음 프레임 영상(11+1) 내의 각각의 중심좌표(H1+1,H2+1)에 대한 제1변화벡터들(V1) 중 어느 하나의 제1변화벡터(V1)의 값이 40 내지 100 사이의 일정한 값일 경우, 상기 다음 프레임 영상(11+1)을 폭행상황으로 판단한다.
참고로, 상기 사람객체(11a,11b)가 이동할 경우 상기 제1변화벡터(V1)는 10 내지 30의 값을 갖는다.
즉, 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터(V1)의 값이 갑자기 커질 경우 폭행상황으로 판단하는 것이다.
다음, 상기 폭행상황 알람모듈(150)은 상기 다음 프레임 영상(11+1)이 폭행상황으로 판단될 경우, 영상 메시지 및 음성 메시지를 생성하여 각각 디스플레이수단(160) 및 스피커 수단(170)으로 출력해준다.
예들 들면, 상기 영상 메시지는 상기 CCTV(10)로부터 입력되는 프레임 영상들에 붉은색 영상을 주기적으로 오버랩하는 방법을 사용할 수 있고, 상기 음성 메시지는 사이렌음성과 같은 경보 음성일 수 있다.
그러나 상기 폭행상황 알람모듈(150)은 SMS(Short Message Service:단문메시지서비스)나 MMS(Multimedia Messaging Service:멀티미디어메시지서비스)를 이용하 여 감시자의 휴대전화 등으로 폭행상황 발생을 알려 줄 수도 있다.
한편, 도 6을 참조하면, 상기 객체추적모듈(120)은 상기 현재 프레임 영상(11)이 폭행 후보 영상으로 선정되면, 상기 현재 프레임 영상(11) 내의 중심좌표(H1,H2)들 간의 위치벡터인 제1머리위치벡터(V2')를 더 도출한다.
또한, 상기 제1머리위치벡터(V2')의 도출은 상기 제1변화벡터(V1)의 도출 후에 도출될 수도 있으며, 상기 제1변화벡터(V1)의 도출과 동시에 이루어질 수 있다.
다음, 상기 객체추적모듈(120)은 다음 프레임 영상(11+1) 내의 중심좌표들(H1+1,H2+1) 간의 위치벡터인 제2머리위치벡터(V2")를 도출한다(S4000c).
다음, 상기 객체추적모듈(120)은 상기 제1머리위치벡터(V2')와 상기 제2머리위치벡터(V2")의 변화벡터인 제2변화벡터(V2)를 도출한다.
더욱 자세하게는 상기 제2변화벡터(V2)는 상기 제1머리위치벡터(V2')와 상기 제2머리위치벡터(V2")를 비교하여 상기 머리위치벡터들(V2',V2") 간의 각도차인 제2각도차(θ2)를 계산하고, 상기 제2각도차(θ2)와 상기 제2머리위치벡터의 가속도정보를 이용하여(α2) 상기 제2변화벡터(V2)를 도출한다(S4000d).
또한, 상기 제2변화벡터(V2)는 아래의 수학식 4에 의해 도출된다.
여기서, V2은 상기 제2변화벡터, θ2은 상기 제2각도차, α2은 상기 제2머리위치벡터(V2")의 가속도정보이다.
한편, 상기 그 다음 프레임 영상(11+2)의 제2변화벡터(V2)는 상기 다음 프레임 영상(11+1)의 제2각도차(θ2)와 상기 그 다음 프레임 영상(11+2)의 제2각도차(θ2)의 변화량 및 상기 다음 프레임 영상(11+1)의 제2머리위치벡터(V2")의 가속도정보(α1)와 상기 그 다음 프레임 영상(11+2)의 제2머리위치벡터(V2"')의 가속도정보의 변화량에 의해 도출된다.
따라서, 상기 그 다음 프레임 영상(11+2)부터의 제2변화벡터들(V2)은 아래의 수학식 6에 의해 도출된다.
여기서, 여기서, 상기 △θ2은 상기 다음 프레임 영상(11+1)과 상기 그 다음 프레임 영상(11+2)의 제2각도차 간의 변화량이고, 상기 △α2은 상기 다음 프레임 영상(11+1)과 상기 그 다음 프레임 영상(11+2)의 제2변화벡터들(V2) 간의 가속도정 보(α2)의 변화량이다.
즉, 상기 제1변화벡터(V1)는 하나의 중심좌표가 여러 프레임 영상에서 이동한 움직임정보에 의해 도출되고, 상기 제2변화벡터(V2)는 하나의 프레임 영상의 여러 중심좌표들 간의 거리 정보에 의해 도출되는 것이다.
또한, 상기 폭행상황 판단모듈(140)은 상기 제2변화벡터(V2)의 값이 일정한 값으로 계산될 경우 상기 다음 프레임 영상(11+1)을 폭행상황이 발생한 것으로 판단한다.
즉, 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터(V1)와 제2변화벡터(V2)가 모두 폭행상황으로 판단될 경우 상기 다음 프레임 영상(11+1)을 폭행상황으로 판단하는 것이다.
그러나, 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터(V1)와 제2변화벡터(V2) 중 어느 하나의 벡터만이 폭행상황으로 판단되더라도 상기 다음 프레임 영상(11+1)을 폭행상황으로 판단할 수 있다.
또 한편, 상기 음성분석모듈(130)은 상기 CCTV(10)로부터 상기 현재 프레임 영상(11) 또는 상기 다음 프레임 영상(11+1)의 음성정보를 입력받고, 상기 음성정보가 폭행음성인지 아닌지 판단한다(S4000e).
또한, 상기 폭행음성의 판단은 상기 제1변화벡터(V1)와 제2변화벡터(V2)의 도출과정 이후에 이루어질 수도 있고, 상기 제1변화벡터(V1)와 제2변화벡터(V2)의 도출과정과 동시에 이루어질 수 있다.
예를 들면, 상기 음성분석모듈(130)은 상기 음성정보가 일정한 범위 내의 데시벨(dB) 값일 경우 상기 음성정보를 폭행음성으로 판단할 수 있고, 상기 음성정보의 음절정보가 "살려줘" 등의 폭행상황에서 발생하는 음절일 경우, 상기 음성정보를 폭생상황으로 판단할 수 있다.
즉, 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터(V1), 상기 제2변화벡터(V2) 및 상기 음성정보가 모두 폭행상황으로 판단될 경우 상기 다음 프레임 영상(11+1)을 폭행상황으로 판단하는 것이다.
그러나 상기 폭행상황 판단모듈(140)은 상기 제1변화벡터(V1), 상기 제2변화벡터(V2) 및 상기 음성정보 중 어느 하나가 폭행상황으로 판단될 경우, 상기 다음 프레임 영상(11+1)을 폭행상황으로 판단할 수도 있다.
따라서, 상기 CCTV의 영상정보 및 음성정보를 복합적으로 이용하여 폭행상황을 정확하게 검출할 수 있는 효과가 있다.
이상에서 살펴본 바와 같이 본 발명은 바람직한 실시예를 들어 도시하고 설명하였으나, 상기한 실시예에 한정되지 아니하며 본 발명의 정신을 벗어나지 않는 범위 내에서 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양 한 변경과 수정이 가능할 것이다.