KR102052110B1 - 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법 - Google Patents

딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법 Download PDF

Info

Publication number
KR102052110B1
KR102052110B1 KR1020180059050A KR20180059050A KR102052110B1 KR 102052110 B1 KR102052110 B1 KR 102052110B1 KR 1020180059050 A KR1020180059050 A KR 1020180059050A KR 20180059050 A KR20180059050 A KR 20180059050A KR 102052110 B1 KR102052110 B1 KR 102052110B1
Authority
KR
South Korea
Prior art keywords
moving
moving object
data
region
classified
Prior art date
Application number
KR1020180059050A
Other languages
English (en)
Inventor
주영훈
Original Assignee
군산대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 군산대학교 산학협력단 filed Critical 군산대학교 산학협력단
Priority to KR1020180059050A priority Critical patent/KR102052110B1/ko
Application granted granted Critical
Publication of KR102052110B1 publication Critical patent/KR102052110B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • G08B13/19602Image analysis to detect motion of the intruder, e.g. by frame subtraction
    • G08B13/19606Discriminating between target movement or movement in an area of interest and other non-signicative movements, e.g. target movements induced by camera shake or movements of pets, falling leaves, rotating fan
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001Image restoration
    • G06T5/002Denoising; Smoothing
    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance

Abstract

본 발명은 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 기술에 관한 것으로서, 영상 감시 방법은, 카메라를 통해 촬영된 입력 영상으로부터 학습용 이동 물체를 추출하고 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키고, 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하고, 분류된 이동 물체의 이동 이력을 상기 유형별로 기록하고, 기록된 이동 이력으로부터 유형별로 각각의 이동 영역을 설정하며, 입력 영상으로부터 이동 물체를 탐지하되 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 이동 물체가 탐지된 경우 이상 상황으로 판단한다.

Description

딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법{A video surveillance apparatus for detecting agro-livestock theft based on deep learning and method thereof}
본 발명은 영상 감시 기술에 관한 것으로, 특히 축사를 대상으로 영상을 입력받아 영상 내의 다중 이동 물체를 식별하여 인간과 가축으로 분류하되, 분류된 이동 물체의 움직임으로부터 축사 내의 이상 상황을 판단할 수 있는 영상 감시 장치 및 방법, 그 방법을 기록한 기록매체에 관한 것이다.
최근 우리 사회에 강도, 도난과 같은 범죄가 빈번히 발생한다. 공공장소 및 제한 구역, 도심뿐만 아니라 농촌지역 또한 각종 사건, 사고가 발생하며 이는 도시지역에 비해 범죄자의 검거율도 낮은 실정이다. 그래서 현대 사회엔 CCTV(close circuit television)를 이용한 감시가 필수적으로 자리 잡고 있는데, 현재의 CCTV는 감시 인력을 투입해 보안을 하기 때문에 특정 상황이 발생했을 때 즉시 대처하기 힘들며 시간이 지날수록 감시 효율이 낮아진다는 보고도 있다.
이러한 범죄에 대해 더 효과적으로 대응하기 위해 제안된 종래의 축사 보안 방법에서는 적외선 센서와 CCTV를 이용하여 침입자가 센서에 감지됐을 때 스마트폰과 같은 모바일 기기에 문자를 전송하고, 앱(application)을 통해 CCTV를 원격으로 접속할 수 있는 축사 관리 시스템을 제공하거나, 비정상적인 소리를 탐지하는 등의 센서 기반의 보안 방법을 제공하였다. 하지만 상기된 종래의 방법들은 침입을 판단하고 대처를 함에 있어서 관리자가 직접 확인해야 하므로 범죄의 대응이 늦으며, 센서에 감지되는 조건을 만족하는 상황이 아닐 경우 범죄가 일어난 다음에 DVR(digital video recorder)과 같은 영상 저장 장치를 사후분석함으로써 별도의 대응을 하여야 한다는 번거로움이 있다.
따라서 축사 환경에 적합한 지능형 CCTV 시스템의 구축이 요구된다. 지능형 CCTV 시스템은 받아온 영상에 대한 영상 처리를 통해 컴퓨터가 스스로 이상 상황을 파악하고 알람이 필요할 경우 관리자 또는 유관기관에 직접 신고를 하기 때문에 범죄 또는 비상 상황에 대한 대응이 빠르며, 센서 같은 부가적인 부품이 필요하지 않으므로 비용을 절감할 수 있다.
한편, 이러한 지능형 CCTV 시스템의 연구는 단순한 상황 감시만이 아닌 특정 목적을 위한 솔루션들이 개발되고 있다. 축사 환경에서는 소의 움직임 이력을 통해 소의 건강 상태를 파악하고 주인이 적절한 조치를 취하도록 하는 기술이나, 소 우리를 자동으로 인식해 관심 영역으로 지정하는 기술, 또는 범용적으로는 피플 카운팅, 배회 감지, 화재 감지 등의 영상 데이터를 분석하고 처리하는 방법 등이 연구되고 있다.
Min Yoon and Jae-Woo Chang, "Design and Implementation of an Advanced Cattle Shed Management System using a Infrared Wireless Sensor nodes and Surveillance Camera," JOURNAL OF THE KOREA CONTENTS ASSOCIATION, Vol. 12, No. 10, pp. 22-34, 2012 Seunggeun Oh, Jonguk Lee, Yongwha Chung and Daihee Park, "A Cattle Shed Security System Based on Abnormal Audio Detection," 한국정보과학회 학술발표논문집, Vol. 38, No. 2B, pp. 396~399, 2011
본 발명이 해결하고자 하는 기술적 과제는, 축사를 대상으로 하는 종래의 영상 감시 기술들에서 관리자의 인지 내지 개입이 요구되는 한계를 극복하고, 축사 고유의 환경 또는 가축의 특성을 고려하지 않은 이동 물체의 추출 기술이 갖는 약점을 해결하며, 축사 내의 다양한 물체들을 빠르게 분류하여 분류된 물체들 간의 관계를 실시간으로 분석할 수 있는 기술적인 수단이 전무하였다는 문제를 해소하고자 한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 영상 감시 방법은, (a) 카메라를 통해 촬영된 입력 영상으로부터 학습용 이동 물체를 추출하고, 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키는 단계; (b) 상기 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하는 단계; (c) 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록하는 단계; (d) 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정하는 단계; 및 (e) 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단하는 단계를 포함한다.
일 실시예에 따른 영상 감시 방법에서, 상기 (a) 학습용 이동 물체를 미리 학습시키는 단계는, (a1) 카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출하는 단계; (a2) 추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거하는 단계; (a3) 상기 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장하는 단계; 및 (a4) 저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 단계를 포함할 수 있다. 또한, 상기 (a4) R-CNN을 이용하여 학습시키는 단계는, 최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 상기 학습용 데이터를 학습할 수 있다. 나아가, 상기 (a4) R-CNN을 이용하여 학습시키는 단계는, 합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습할 수 있다.
일 실시예에 따른 영상 감시 방법에서, 상기 (b) 이동 물체를 가축 또는 인간의 유형으로 분류하는 단계는, (b1) R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장하는 단계; 및 (b2) 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행하는 단계를 포함할 수 있다.
일 실시예에 따른 영상 감시 방법에서, 상기 (c) 이동 이력을 유형별로 기록하는 단계는, (c1) 분류된 상기 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적하는 단계; 및 (c2) 상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록하는 단계를 포함할 수 있다.
일 실시예에 따른 영상 감시 방법에서, 상기 (d) 이동 영역을 설정하는 단계는, (d1) 기록된 상기 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성하는 단계; 및 (d2) 상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정하는 단계를 포함할 수 있다. 또한, 상기 (d) 이동 영역을 설정하는 단계는, (d3) 상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지하는 단계를 더 포함할 수 있다.
일 실시예에 따른 영상 감시 방법에서, 상기 (e) 이상 상황으로 판단하는 단계는, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 인간으로 분류된 이동 물체가 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단하고, 가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단하며, 인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단할 수 있다.
한편, 이하에서는 상기 기재된 영상 감시 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 영상 감시 장치는, 카메라를 통해 촬영된 영상을 입력받는 입력부; 입력된 영상 내에 포함된 가축 및 인간의 움직임을 감시하는 영상 감시 프로그램을 저장하는 메모리; 및 상기 영상 감시 프로그램을 구동하는 적어도 하나의 프로세서를 포함하되, 상기 메모리에 저장된 영상 감시 프로그램은, 입력 영상으로부터 학습용 이동 물체를 추출하고 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키고, 상기 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하고, 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록하고, 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정하며, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단하는 명령을 포함하는 영상 감시 장치.
일 실시예에 따른 영상 감시 장치에서, 상기 메모리에 저장된 영상 감시 프로그램은, 카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출하고, 추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거하고, 상기 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장하며, 저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 명령을 수행할 수 있다. 또한, 상기 메모리에 저장된 영상 감시 프로그램은, 최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 상기 학습용 데이터를 학습하는 명령을 수행할 수 있다. 나아가, 상기 메모리에 저장된 영상 감시 프로그램은, 합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습하는 명령을 수행할 수 있다.
일 실시예에 따른 영상 감시 장치에서, 상기 메모리에 저장된 영상 감시 프로그램은, R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장하고, 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행하는 명령을 수행할 수 있다.
일 실시예에 따른 영상 감시 장치에서, 상기 메모리에 저장된 영상 감시 프로그램은, 분류된 상기 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적하며, 상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록하는 명령을 수행할 수 있다.
일 실시예에 따른 영상 감시 장치에서, 상기 메모리에 저장된 영상 감시 프로그램은, 기록된 상기 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성하고, 상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정하는 명령을 수행할 수 있다. 또한, 상기 메모리에 저장된 영상 감시 프로그램은, 상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지하는 명령을 더 수행할 수 있다.
일 실시예에 따른 영상 감시 장치에서, 상기 메모리에 저장된 영상 감시 프로그램은, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 인간으로 분류된 이동 물체가 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단하고, 가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단하며, 인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단하는 명령을 수행할 수 있다.
본 발명의 실시예들에 따르면, 관리자의 인지 내지 개입 없이도 CNN을 이용하여 인간과 가축을 자동으로 분류하고, 이동 물체의 추적과 누적을 통해 설정된 고유의 이동 영역 내에 위치한 이동 물체들 간의 관계를 실시간으로 분석함으로써 축사 내의 환경 변화와 가축의 영향에 강인한 영상 감시가 가능하다.
도 1은 본 발명의 일 실시예에 따른 농축산 도난을 감지하는 영상 감시 방법을 도시한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법의 각 과정을 예시 그림을 통해 시각화한 도면이다.
도 3은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 입력 영상으로부터 학습용 이동 물체를 추출하여 학습하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 4는 입력 영상으로부터 이동 물체를 검출하는 과정을 예시한 도면이다.
도 5는 축사 내에서 카메라와 이동 물체 간의 거리 또는 각도에 따른 입력 영상의 왜곡 내지 형태 변화를 예시한 도면이다.
도 6은 본 발명의 실시예들이 채택하고 있는 학습 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 이동 물체를 가축 또는 인간의 유형으로 분류하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 8은 미리 학습된 데이터를 이용하여 이동 물체를 분류하는 과정을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 이동 이력을 기록하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 10은 칼만 필터를 이용한 이동 물체의 이동 이력을 추출하기 위한 과정을 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 유형별 이동 영역을 설정하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 12는 이동 물체의 이동 이력을 추출하고 이동 영역을 설정하는 과정을 설명하기 위한 도면이다.
도 13은 유형별 이동 영역과 이동 물체의 위치를 고려한 다양한 이상 상황을 예시한 도면이다.
도 14는 본 발명의 일 실시예에 따른 농축산 도난을 감지하는 영상 감시 장치를 도시한 블록도이다.
도 15는 학습된 데이터를 이용하여 농축산 도난을 감지하는 알고리즘을 예시한 도면이다.
도 16 내지 도 19는 본 발명의 실시예들이 제안하는 영상 감시 방법을 구현한 프로토타입(prototype)을 통해 수행된 시뮬레이션(simulation)의 단계별 산출물을 예시한 도면이다.
본 발명의 실시예들을 설명하기에 앞서, 지능형 영상 감시 기술을 인간과 가축 등이 공존하는 축사 환경에 적용함에 있어서 기존의 영상 처리 과정에서 발생하는 문제점들을 개괄적으로 살펴보고, 이들 문제점을 해결하기 위해 본 발명의 실시예들이 채택하고 있는 기술적 수단을 순차적으로 소개하도록 한다.
지능형 CCTV 시스템에 있어서 사물을 검출하고 특징점을 추출하여 분류하는 것은 가장 기본적이고 중요한 부분이다. SIFT(scale invariant feature transform) 알고리즘은 영상의 크기와 회전등 변화에 불변하는 특징점을 추출하는 알고리즘으로 영상 크기, 조명, 평행이동, 회전과 은폐에 강인한 특징을 추출하는데 효과적이지만 계산량이 많은 단점이 있다. SIFT 알고리즘이 변화에 강인하다고 해도 위와 같은 변화 요인이 크게 발생하였을 때 인식률이 나빠지는 문제를 해결하기 위해 TF/IDF 방법과 적응적 임계치(adaptive threshold)를 적용하여 정확도와 인식률을 높이는 등 연구가 진행되었다.
또한, SURF(speeded-up robust features) 알고리즘은 SIFT 알고리즘의 단점인 복잡한 연산을 해결하기 위해 박스 필터와 적분 영상(Integral Image)을 사용하여 특징점을 추출함으로써 SIFT에 비해 처리속도를 크게 향상시켰다. 하지만 연산량을 개선한 SURF 알고리즘도 실시간 처리에는 한계가 있어 SURF와 옵티컬 플로우(optical flow)의 병렬 처리를 통해 처리속도를 개선하는 연구가 진행되었으며, 이외에도 영상에서 그래디언트(gradient)를 계산하여 로컬 히스토그램(local histogram)을 생성하여 특징을 추출하는 HOG(histogram of oriented gradients) 알고리즘, 영상에서 각 영역 간의 밝기 차이를 특징으로 물체에 대한 특징을 추출하는 Haar 알고리즘 등 특징점을 추출하기 위한 많은 연구가 진행되었다. 하지만 이와 같은 특징점 기반의 객체 인식 방법들은 변형이 크고 다양한 사람과 배경을 분류하는데 최적화된 특징이 아니기 때문에 실제의 축사에는 적용하기 어렵다.
앞서 소개한 SIFT, SURF, HOG, Harr와 같은 객체 특징점 검출 알고리즘은 사람의 지식에 기반하여 특징을 추출하였다면, 딥 러닝(deep learning) 즉, 인공 신경망(neural network)은 다층 인공 신경망을 이용해 유용한 특징들을 데이터로부터 직접 학습하는 방법을 통해 컴퓨터가 판단하기 유용한 특징들을 찾아 낼 수 있다.
딥러닝의 종류에는 RNN(Recurrent Neural Network : 순환 신경망), DNN(Deep Neural Network : 심층 신경망), CNN(Convolution Neural Network) 등이 존재하며, 그중 CNN은 이미지를 분류하는데 가장 적합한 신경망이다. CNN은 컨벌루션을 이용한 필기체 인식에 있어서 좋은 결과가 나왔지만 이를 범용화 하는 데에는 무리가 있었다. 이후 LeNet이라는 네트워크를 1998년에 제안하면서 최초의 CNN 구조를 정립하였으며, 2003년 Behnke와 Simard에 의해서 CNN이 단순화되었다.
CNN은 입력 데이터의 특징을 추출하고 분류하는 단계를 거쳐 데이터를 인식한다. 특징을 추출하는 단계는 컨벌루션 레이어(Convolution Layer), 풀링 레이어(Pooling Layer)로 구성되어 있으며 이를 이용해 입력 데이터의 특징을 추출한다. 추출한 특징을 풀리 컨넥티드 레이어(Fully Connected Layer)를 이용해 분류하는 구조를 갖는다.
하지만 CNN 알고리즘은 기본적으로 입력 이미지 내에서 하나의 물체만을 인식하고 분류하는 방법이다. 즉, 도심의 CCTV를 통해 바라본 도시의 모습이나 축사와 같이 환경 내에 여러 물체가 존재할 수 있는 실험 환경에서는 물체를 환경과 분리하는 추가적인 방법이 병행되어야 한다. 이러한 문제를 해결하기 위한 방법으로 R-CNN(Region based CNN) 알고리즘이 활용 가능하다. 물체를 검출하기 위해 물체 영역 후보군을 제안(Proposal)하고 가장 가능성이 높은 영역을 선택한 뒤 경계 상자(Bounding box)를 만든다. 하지만 이러한 R-CNN의 프로세스는 물체 위치 추정 프로세스와 물체 인식 프로세스가 분리되어 있을 뿐만 아니라 추정된 위치의 물체를 인식하기 위해서 검출된 모든 경계상자를 CNN을 통해 분류하여 가장 신뢰도 높은 물체를 인식하기 때문에 속도가 매우 느리며 학습해야 하는 네트워크 변수들의 규모가 굉장히 커지기 때문에 고사양의 GPU를 사용해야 한다는 단점이 있다. 이를 개선 하기 위해 이미지 전체를 한번의 컨벌루션(Convolution)을 통해 나온 특징들이 검출된 영역만을 추출한 뒤 풀링(pooling)과 풀리 컨넥티드 레이어(Fully Connected Layer)를 거쳐 하나의 시퀀스가 되어 소프트맥스(Softmax)를 통한 확률 추정과 경계 박스의 위치를 출력하는 Fast R-CNN 방법도 제안되었다.
따라서, 이하에서 제안되는 본 발명의 실시예들은 상기된 문제점을 해결하기 위해 안출된 것으로, 축사 환경에서 이상 행동을 감지하기 위해 먼저 사람과 소를 분류하는 방법을 제안하고, 각각의 이동 영역을 설정하는 방법을 제안한다. 축사의 CCTV로 얻어온 영상 정보에서 이동 물체를 추출하고 분류할 때 해당 물체의 특징을 추출하고 분류해야 하는데, 카메라와 물체 간의 거리와 각도에 따라서 물체가 온전히 인식되지 못하기 때문에 CNN을 이용한 학습을 통해 해결하는 방법을 제안한다. 그리고 축사 환경에서 사람과 소의 영역이 분리되어 있으므로, 각 이동 물체가 서로의 영역을 침범하는 경우 이를 이상 행동이라 판단할 수 있다. 이를 위해 물체의 유형별로 고유의 이동 영역을 설정한다. 마지막으로 여러 이상 행동들을 분류하고 실제의 환경에서 모의실험하여 본 발명의 실시예들이 제안한 방법의 응용 가능성을 제시하도록 한다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 구체적으로 설명하도록 한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 덧붙여, 명세서 전체에서, 어떤 구성 요소를 '포함'한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
특별히 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 농축산 도난을 감지하는 영상 감시 방법을 도시한 흐름도로서, 이하에서 정의되는 일련의 처리 과정을 수행하는 영상 감시 장치를 통해 구현될 수 있다.
S110 단계에서, 영상 감시 장치는, 카메라를 통해 촬영된 입력 영상으로부터 학습용 이동 물체를 추출하고, 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시킨다. 이 과정에서는 이후 주어지는 입력 영상에 대한 자동화된 유형(class) 분류를 실시간으로 처리하기 위해 미리 다량의 학습 데이터를 전처리(pre-processing)하는 것이 바람직하다. 본 발명의 실시예들에서는, 축사를 대상으로 하는 영상을 학습시키기 위한 알고리즘으로 영역 기반의 R-CNN(region based convolution neural network)을 이용하였다.
S120 단계에서, 상기 영상 감시 장치는, 상기 S110 단계를 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류한다. 앞서 미리 학습된 데이터 내에는 다양한 상황에서도 객체를 인간 또는 가축으로 인식할 수 있도록 학습된 결과와 그 유형을 나타내는 분류 데이터가 할당되어 있으며, 새로운 입력 영상으로부터 이동 물체를 식별하고 식별된 이동 물체가 어떠한 유형의 이동 물체인지를 분류하게 된다.
S130 단계에서, 상기 영상 감시 장치는, S120 단계를 통해 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록한다. 이 과정에서는 이동 물체를 지속적으로 추적하면서 그 궤적을 기록하되, 해당 이동 궤적이 어떠한 유형에 해당하는지를 함께 기록한다. 이러한 과정을 통해 다수의 이동 물체의 이동 이력을 축적함으로써 각각의 유형별 이동 이력을 획득할 수 있다. 예를 들어, 소나 돼지와 같은 가축의 이동 이력과 사람의 이동 이력을 각각 분리하여 기록할 수 있으며, 이후 유형별 이동 이력으로부터 서로 간의 관계를 도출할 수 있는 근거를 도출한다.
S140 단계에서, 상기 영상 감시 장치는, S130 단계를 통해 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정한다. 이 과정에서는 축적된 이동 이력으로부터 해당 유형 고유의 이동 영역을 도출할 수 있다. 이를 위해 시계열적이거나 단편적인 위치/점들의 집합인 이동 이력들을 아우르는 공간을 도출하기 위한 알고리즘이 요구된다. 본 발명의 실시예들에서는 이러한 공간을 도출함에 있어서 이동 이력들에 속하는 모든 위치/점을 포함하는 가장 넓은 영역을 해당 유형 고유의 이동 영역으로 설정하는 알고리즘을 제안한다.
S150 단계에서, 상기 영상 감시 장치는, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 S150 단계를 통해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단한다. 각 유형에 해당하는 이동 영역 내에 이동 물체가 위치하는 경우를 정상 상황으로 판단한다면, 이러한 정상 상황 이외에는 이상 상황으로 판단할 수 있을 것이다. 또한, 이상 상황의 경우에는 보다 다양한 위치 관계를 고려하여 구체적인 이상 상황(예를 들어, 사람이 축사에 침입한 경우, 가축이 축사를 탈출한 경우, 또는 도둑이 가축을 도난한 경우 등)에 대한 판단이 가능할 것이다.
도 2는 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법의 각 과정을 예시 그림을 통해 시각화한 도면으로서, 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 과정(S110)을 포함한다. 특히, 구현의 관점에서 이러한 학습 과정(S110)은, 최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 학습용 데이터를 학습시키는 것이 바람직하다. 즉, 실험 환경의 이동 물체와 여러 이미지 데이터를 GoogleLeNet 기반의 YOLO 네트워크를 통해 학습시킴으로써 사람과 소를 분류하고 이동 이력을 저장하여 각각의 이동 영역을 설정한다. 그 이후 설정된 각각의 이동 영역에 침범하거나 여러 가지 상황을 통해서 이상 행동을 감지한다.
보다 구체적으로, 사람과 소를 학습시키기 위해 먼저 각각의 이미지 데이터와 라벨 데이터를 추출해야 한다. 연속된 영상에서 단일 이미지를 추출하고 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 통해 움직임 영역을 추출한다. 그 다음 조도의 변화 및 환경 요소로 인하여 발생하는 잡음을 제거하기 위해 중간값 필터(Media Filter)를 적용한다. 이어서 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 이미지 데이터로 저장하는 과정을 통해 실험 환경에서 학습시킬 데이터를 추출한다.
다음으로, 실험 환경에서 얻어낸 이미지를 YOLO 네트워크(S110)를 통해 사람/소를 분류하고(S120) 칼만 필터(Kalman Filter)를 이용하여 사람/소의 위치를 보정한 값을 출력함으로써 이동 이력을 각각 저장한다(S130). 각 이동 물체에서 얻어낸 이동 이력 정보의 최외곽점을 컨벡스 헐(Convex Hull) 알고리즘을 통해 연결하여 해당 물체의 이동 영역으로 설정하며(S140), 빈 영역은 최초로 검출된 물체의 영역이 된다. 일정 수준 이상의 이동 이력 데이터가 수집되거나 소와 사람의 영역이 가까이 검출될 되면 영역의 확장을 멈추고 사람의 침입, 소의 탈출 또는 소의 도난 상황 등 이벤트를 통해 이상 행동을 판단한다(S150).
도 3은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 입력 영상으로부터 학습용 이동 물체를 추출하여 학습하는 과정(S110)을 보다 구체적으로 도시한 흐름도이다.
소와 사람을 CNN 알고리즘을 이용해 학습하기 위해서 Darknet 프레임워크를 사용한다. Darknet은 DNN(Deep Neural Network)를 학습시키고 실행시킬 수 있는 툴로서, 본 발명의 실시예들이 제안하는 영상 감시 방법에서는 YOLO(You Only Look Once)의 네트워크 구조를 기반으로 학습을 진행한다. YOLO는 R-CNN의 구조를 따르지만 최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할(Grid 형식의 분할)에 따른 추정 방식을 사용하여 물체의 검출과 인식 프로세스가 통합되어 보통의 R-CNN 방식보다 10배 이상 빨라졌음에도 거의 동등한 인식률을 보여준다.
Darknet 프레임워크를 이용하여 사물을 학습하기 위해서는 해당 사물이 포함된 이미지 데이터와 이미지 내에 사물을 특정 지을 수 있는 라벨(Label) 파일이 필요하다. 이 조건을 만족하기 위하여 먼저 입력 이미지에서 이동 물체를 추출하고 라벨링하는 과정이 필요하다.
S111 단계에서는, 카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출한다. 학습시키고자 하는 물체의 이미지 데이터와 라벨 데이터를 추출하기 위해 가장 먼저 연속된 영상에서 움직임 영역과 배경을 분리하는 기법으로 가우시안 혼합 모델을 이용한다. 가우시안 혼합 모델은 외부 환경에서의 조도의 변화나 나뭇가지의 흔들림 등 반복적인 움직임 환경 변화 요인에 적응, 학습하여 배경을 분리하는 방법으로서, 다음 수학식 1과 같이 표현될 수 있다.
Figure 112018051017388-pat00001
N은 가우시안 분포의 개수이고, x는 입력 데이터이며, gi는 입력 데이터에 대한 가우시안 분포 i번째 성분을 의미하며, p(x)는 x가 나타날 확률을 의미한다. 이러한 수학식 1을 모든 픽셀에 적용한다.
S112 단계에서는, S111 단계를 통해 추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거한다. 가우시안 혼합 모델을 통해 추출한 움직임 영역은 환경 요인에 적응하여 추출됐다 하더라도 적응하지 못한 잡음이 포함돼 있을 수 있기 때문에 중간값 필터를 적용하여 미세한 잡음들을 제거한다. 중간값 필터는 사용자가 정한 크기의 마스크를 이미지 내의 픽셀에 대입하여 마스크가 적용된 픽셀 영역 안의 값들 중 중간값을 마스크의 중간 위치에 저장하는 방법으로서, 이미지를 번지게(Blur) 하여 잡음을 제거하게 된다.
S113 단계에서는, S112 단계를 통해 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장한다.
도 4는 입력 영상으로부터 이동 물체를 검출하는 과정을 예시한 도면으로서, (a) 원본 이미지를 (b) GMM, (c) 중간값 필터, (d) 라벨링의 과정을 통해 처리한 결과를 도시하였다. 이제, 입력 이미지를 이상의 처리 과정을 거쳐서 출력된 라벨 데이터와 이미지를 학습하기 위해 저장한다.
S114 단계에서는, S113 단계를 통해 저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시킨다. 축사 환경에서 CCTV 영상을 받아오면 카메라와 이동 물체 간의 거리, 시야각에 따라 완전히 다른 형태(특징)를 갖는 경우가 발생한다. 기존의 특징점 추출 기반의 알고리즘들로는 이러한 환경에서 객체를 검출하기 어렵기 때문에 CNN을 이용한 학습을 통해 각 이동 물체의 특징을 학습시키고 분류하고자 한다.
도 5는 축사 내에서 카메라와 이동 물체 간의 거리 또는 각도에 따른 입력 영상의 왜곡 내지 형태 변화를 예시한 도면으로서, 실제 실험 환경에서 사람과 소가 CCTV와의 거리, 각도에 따라 변화하는 모습을 보여준다. CCTV와의 거리가 멀면 비교적 온전한 형태로 추출되는 모습을 보이지만 물체의 크기가 작아져 인식하는데 어려움이 있으며, 거리가 가까우면 물체의 크기가 커져 인식하기 쉽지만 온전한 모습으로 보이지 않는다.
CNN 알고리즘을 이용해 이동 물체를 분류하는 방법의 속도가 여러 연구를 통해 향상되었으나, 학습과 분류를 동시에 수행하는 것은 여전히 그 처리 속도가 매우 느려 실제 환경에 적용하기에 부적절하다. 따라서 상기 과정을 통해 추출된 이미지, 라벨 데이터를 미리 학습시켜, CNN을 통한 분류 과정에서는 미리 학습된 데이터를 이용해 분류를 하는 것이 바람직하다.
CNN과 같은 인공 신경망은 뉴런이 많고 복잡해지면 아무 관계가 없던 결합이 늘어나는 '과적합'의 원인이 된다. 따라서 아무 관계도 없는 결합을 제거하여 학습하는 방법을 사용할 필요가 있는데, 본 발명의 실시예들은 오류 역전파법(backpropagation)을 사용한다. 이 방법은 연산 뒤 나온 결과가 예상했던 수치와 다를 경우, 그 오차를 출력 쪽에서 역방향으로 분석해 각 뉴런의 오류를 정정하며 오차를 줄이는 방법이다. CNN에서 뉴런은 컨벌루션 레이어(Convolution Layer)를 의미한다. 도 6은 본 발명의 실시예들이 채택하고 있는 학습 과정을 설명하기 위한 도면으로서, 축사 데이터 중 하나를 CNN을 이용하여 특징점을 추출하고 학습하는 과정을 도시하였다.
합성곱 계층(Convolution Layer)을 통해 추출된 특징점을 RELU(Rectified Linear Unit, 소위 이진화)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(Max Pooling)하여 데이터의 크기를 줄인다. 이어서 풀리 컨넥션(Fully Connection)을 수행하여 데이터 벡터의 집합으로 만든다. 추출하고자 하는 값과의 오차를 오류 역전파법을 이용해 합성곱 계층으로 전달하여 오차를 줄이는 방향으로 변형시키도록 학습한다.
본 발명의 실시예들에서는 YOLO 네트워크를 통하여 학습 및 분류를 수행하며, 이러한 YOLO 네트워크의 구조는 앞서 설명한 도 2의 YOLO 박스의 구조(S110)와 같다. YOLO 네트워크는 GoogleLenet의 20개 합성곱 계층을 미리 학습(Pre-Training)하고, 이후 4 컨벌루션 레이어(Convolutional layer)와 2 풀리 컨넥티드 레이어(Fully Connected layer)를 추가하여 물체를 분류하는 방법을 사용한다.
요약하건대, 본 발명의 실시예들이 제안하는 학습 과정은, 합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습하는 것이 바람직하다. 이제, YOLO 네트워크를 통하여 추출된 데이터로 이동 물체를 분류하는 과정으로 진행한다.
도 7은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 이동 물체를 가축 또는 인간의 유형으로 분류하는 과정(S120)을 보다 구체적으로 도시한 흐름도이다.
S121 단계에서는, R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장한다.
도 8은 미리 학습된 데이터를 이용하여 이동 물체를 분류하는 과정을 설명하기 위한 도면으로서, 네트워크를 거치고 나면 49개의 그리드 셀이 생성되며 셀마다 12개의 데이터 벡터를 갖게 된다. 각 벡터는 2개의 경계 상자 데이터와 클래스 값을 가지며 각 경계 상자의 데이터는 x, y, 너비(width), 높이(height), 컨피던스(confidence)로 구성되고, 클래스 값은 경계 상자 안의 물체가 어떤 클래스에 포함되는지의 확률을 갖고 있다. 컨피던스(Confidence)란 해당 물체의 예측된 위치가 실제할 확률이며, 이를 클래스 값과 곱하여 해당 물체의 인식과 분류를 수행한다.
S122 단계에서는, 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행한다. 다음의 수학식 2는 YOLO에서 이동 물체를 분류하는 방법을 나타낸다.
Figure 112018051017388-pat00002
S2은 그리드 셀의 개수이며, B는 각 그리드 셀이 예측하는 경계 상자의 수이고, C는 컨피던스(Confidence) 값 이다. 그러므로 S2=49, B=2이다. λcoord와 λnoobj는 각각 오브젝트가 있는 경우와 없는 경우의 로스 함수이며, λcoord=5, λnoobj=0.5로 설정하여, 오브젝트가 있는 경우 로스를 키워 학습하도록 하고, 오브젝트가 없는 경우는 로스를 반으로 줄이도록 한다. 1obj, 1noobj로 오브젝트가 존재하는지 판단하며,
Figure 112018051017388-pat00003
는 오브젝트가 존재하는 셀이다. 마지막으로
Figure 112018051017388-pat00004
는 그리드 셀 i에 있는 j번째 경계 박스의 예측값이다. 위의 수학식 2과 같이 계산하면 오브젝트가 존재하는 셀에서만 로스가 발생하므로, 오브젝트가 존재하는 경계 상자에서만 예측을 수행하도록 한다.
이상의 과정을 통해 분류가 된 물체 각각의 이동 영역을 설정하고 이상 행동을 감지하는 과정을 수행한다.
축사와 같은 환경은 이동 물체라고 정의될 만한 물체가 소와 사람밖에 없고, 각 이동 물체의 공간 즉, 소와 사람이 이동할 수 있는 공간이 한정적이다. 축사의 주인이 개입하는 상황이 아니면 서로의 영역을 침범하는 행동 자체가 이상 행동으로 판단될 수 있다. 그러므로 각 이동 물체의 영역을 설정하는 방법을 통해 이상 행동을 감지하는 방법이 필요하다.
이상 행동을 감지함에 있어서, 축사의 구조적 특성을 이용하여 각 이동 물체의 영역을 판단할 수 있는데, 사람이 축사를 공간적으로 판단하고 소 우리의 모양을 판단하는 것과 같은 복잡한 인식 과정을 2차원 데이터인 이미지만으로 판단하기 어렵기 때문에 여러 환경에서 실용화되기 힘들다는 점이 지적되었다. 따라서 본 발명의 실시예들에서는 각 이동 물체의 이동 이력을 통해 각 물체의 이동 영역을 판단하고자 한다.
도 9는 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 이동 이력을 기록하는 과정(S130)을 보다 구체적으로 도시한 흐름도이다.
S131 단계에서는, 분류된 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적한다. 각 이동 물체의 이동 영역을 판단하기 위해서 분류된 사람과 소의 라벨 중심점을 칼만 필터를 이용하여 위치를 보정하고 추적하여 이동 이력을 추출한다. CNN을 이용하여 사람과 소가 분류되면 그 중심점을 칼만 필터를 통해 보정 및 추적을 하게 된다. 칼만 필터란 상태식에 의한 시간 전파와 측정하는 식에 의한 개선을 통해 상태값을 추정하며 실제 상태값과 추정된 상태값의 오차 공분산을 최소화하는 알고리즘이다.
도 10은 칼만 필터를 이용한 이동 물체의 이동 이력을 추출하기 위한 과정을 설명하기 위한 도면이다. 도 10을 참조하면,
Figure 112018051017388-pat00005
는 시간 k에서의 상태 벡터이고, uk은 사용자 입력이며, A는 이전 상태에 기반한 상태 전이 행렬, B는 사용자 입력에 의한 상태 전이 행렬이다.
Figure 112018051017388-pat00006
은 오차 공분산 값이며, Q는 공분산 행렬이다. Kk는 칼만 이득이며,
Figure 112018051017388-pat00007
는 최종 추정값이다. 이렇게 계산된 최종 추정값을 물체의 이동 이력으로 추출할 수 있다.
S132 단계에서는, 상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록한다. 이 과정을 통해 이동 물체의 유형별로 이동 이력을 누적할 수 있다.
도 11은 본 발명의 일 실시예에 따른 도 1의 영상 감시 방법에서 유형별 이동 영역을 설정하는 과정(S140)을 보다 구체적으로 도시한 흐름도이다.
S141 단계에서는, 기록된 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성한다. 컨벡스 헐이란 하나의 평면도형에 포함된 임의의 두 점을 잇는 선분 상의 모든 점들이 해당 평면도형 내에 포함되어 있는 것을 말한다.
S142 단계에서는, 상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정한다.
나아가, S143 단계에서는, 상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지할 수 있다. 상기된 바와 같이 이동 이력을 추출하여 이동 영역을 설정하는 과정은 실험 환경 내에서 어느 물체도 검출되지 않은 빈 공간을 물체의 영역으로 판단하기 위해 사용하며, 두 물체의 이동 영역이 가까워지거나 일정 수준 이상 이동 이력이 축적된 뒤엔 이동 영역 확장을 멈추는 것이 바람직하다.
도 12는 이동 물체의 이동 이력을 추출하고 이동 영역을 설정하는 과정을 설명하기 위한 도면으로서, 추출된 이동 영역을 관심 영역(region of interest, ROI)으로 설정하는 과정을 도시하였다. 도 12의 (a)는 검출과 분류가 완료된 물체의 이동 이력을 도시하였고, 이러한 이동 이력을 추출한 그림이 도 12의 (b)와 같이 추출된다. 추출된 이동 이력에 컨벡스 헐을 적용하면 도 12의 (c) 및 (d)와 같은 과정을 통해 해당 물체의 이동 영역 설정이 완료된다.
도 13은 유형별 이동 영역과 이동 물체의 위치를 고려한 다양한 이상 상황을 예시한 도면으로서, 소와 사람의 이상 행동 분류는 침범 여부와 물체 간의 거리 등으로 판단되며, 정상 상황은 도 13의 (a)와 같다. 따라서, 정상 상황 이외의 경우를 이상 상황으로 판단할 수 있는데, 보다 구체적으로, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우가 이상 상황으로 간주될 수 있다.
도 13의 (b)의 경우와 같이, 만약 인간으로 분류된 이동 물체가 인간의 이동 영역을 벗어나 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단할 수 있다. 이와 반대로, 도 13의 (c)의 경우와 같이, 만약 가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단할 수 있다. 한편, 도 13의 (d)의 경우와 같이, 만약 인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단할 수 있다. 이상의 예와 같이 각 물체의 이동 이력을 지속적으로 추출하면서 이상 행동을 감지할 수 있다.
도 14는 본 발명의 일 실시예에 따른 농축산 도난을 감지하는 영상 감시 장치(100)를 도시한 블록도로서, 앞서 도 1을 통해 설명한 영상 감시 방법의 각 과정을 하드웨어(hardware) 구성의 관점에서 재구성한 것이다. 따라서, 여기서는 설명의 중복을 피하고자 각 구성의 개요만을 약술하도록 한다.
입력부(10)는, 카메라(200)를 통해 촬영된 영상을 입력받는 구성이다.
메모리(30)는, 입력된 영상 내에 포함된 가축 및 인간의 움직임을 감시하는 영상 감시 프로그램을 저장하는 구성으로, 영상 감시 시스템(100)은, 상기 영상 감시 프로그램을 구동하는 적어도 하나의 프로세서(20)를 포함한다. 이때, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 입력 영상으로부터 학습용 이동 물체를 추출하고 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키고, 상기 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하고, 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록하고, 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정하며, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단하는 명령을 포함한다.
학습용 이동 물체를 미리 학습시킴에 있어서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출하고, 추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거하고, 상기 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장하며, 저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 명령을 수행할 수 있다.
구현의 관점에서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 상기 학습용 데이터를 학습하는 명령을 수행하는 것이 바람직하다. 또한, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습하는 명령을 수행하는 것이 바람직하다.
이동 물체를 가축 또는 인간의 유형으로 분류함에 있어서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장하고, 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행하는 명령을 수행할 수 있다.
이동 물체의 이동 이력을 상기 유형별로 기록함에 있어서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 분류된 상기 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적하며, 상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록하는 명령을 수행할 수 있다.
이동 이력으로부터 유형별 이동 영역을 설정함에 있어서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 기록된 상기 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성하고, 상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정하는 명령을 수행할 수 있다. 또한, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지하는 명령을 더 수행할 수 있다.
입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우 이상 상황을 판단함에 있어서, 상기 메모리(30)에 저장된 영상 감시 프로그램은, 인간으로 분류된 이동 물체가 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단하고, 가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단하며, 인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단하는 명령을 수행할 수 있다.
도 15는 학습된 데이터를 이용하여 농축산 도난을 감지하는 알고리즘을 예시한 도면으로서, 연속적으로 입력되는 입력 이미지에 대해 다음과 같은 영상 처리를 수행함으로써 이상 상황을 감지하게 된다.
우선, 입력 이미지에 대해 학습된 데이터를 이용한 분류를 수행하고(S1501), 분류된 클래스(유형)를 통해 이동 물체가 소인지 사람이지 여부를 판단한다(S1502). 이동 물체가 소로 판단된 경우 칼만 필터를 이용해 소의 중심점을 보정하고(S1503), 반면 이동 물체가 사람으로 판단된 경우 칼만 필터를 이용해 사람의 중심점을 보정한다(S1504). 그런 다음, 보정된 좌표값을 각각 이동 물체의 이동 이력으로 저장하고(S1505), 각각의 이동 이력에 컨벡스 헐을 적용하여 이동 영역을 설정한다(S1506).
이제, 유형별로 설정된 이동 영역이 아닌 다른 영역에서 이동 물체가 검출되었다면(S1507), 사람의 이동 영역에서 소가 검출된 경우 소의 탈출 상황으로 판단하고(S1508), 반면 소의 이동 영역에서 사람이 검출된 경우 사람의 침입 상황으로 판단한다(S1509). 만약, 소와 사람의 이격 거리가 미리 설정된 임계 거리(예를 들어 2m) 이내인 경우라면(S1510), 가축의 도난 상황으로 판단할 수 있다(S1511). 이러한 이상 상황(타 영역에서 물체가 검출되는 상황)이 아니라면 정상 상황으로 판단한다(S1512).
도 16 내지 도 19는 본 발명의 실시예들이 제안하는 영상 감시 방법을 구현한 프로토타입(prototype)을 통해 수행된 시뮬레이션(simulation)의 단계별 산출물을 예시한 도면으로서, Intel(R) Core(TM) i7-7700 CPU @3.60GHz, RAM 16.0GB, NVIDIA GeForce GTX 1060 3GB, Windows 10 64bit의 사양을 갖는 PC와 640*480해상도와 30fps를 갖는 실험 영상을 통해 수행되었으며, 학습 데이터의 추출 과정은 앞서 소개한 도 4와 같다.
도 16은 본 시뮬레이션에서 사용한 데이터로서, 800장의 학습 데이터와 200장의 테스트 데이터로 80200번 학습을 하였고 약 57시간이 소요되었다. 도 17은 YOLO 네트워크를 이용하여 이동 물체를 분류한 결과를 예시한 것으로서, 인식된 Person(사람)과 Cow(소)를 보여준다. 도 18은 칼만 필터를 이용한 이동 이력 추출과 이동 영역을 설정한 결과를 예시한 것으로서, 시간에 지남에 따라 각 이동 물체의 이동 이력이 축적되고 이를 이용하여 이동 영역이 설정되는 결과를 확인할 수 있다. 도 19는 이상 행동을 감지한 결과를 예시한 것으로서, 이동 물체 위에 표시된 주황색 라벨은 영역을 침범하였을 때 나타나는 라벨이며, 사람과 소의 중심점 거리가 일정 거리 이하로 가까워진 경우 도난 행동으로 판단하여 적색 라벨을 표시하였다.
본 발명의 실시예들에 따르면, 관리자의 인지 내지 개입 없이도 CNN을 이용하여 인간과 가축을 자동으로 분류하고, 이동 물체의 추적과 누적을 통해 설정된 고유의 이동 영역 내에 위치한 이동 물체들 간의 관계를 실시간으로 분석함으로써 축사 내의 환경 변화와 가축의 영향에 강인한 영상 감시가 가능하다.
한편, 본 발명은 실시예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100 : 영상 감시 장치 200 : 카메라
10 : 입력부 20 : 프로세서
30 : 메모리

Claims (19)

  1. (a) 영상 감시 장치가 카메라를 통해 촬영된 입력 영상으로부터 학습용 이동 물체를 추출하고, 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키는 단계;
    (b) 상기 영상 감시 장치가 상기 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하는 단계;
    (c) 상기 영상 감시 장치가 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록하는 단계;
    (d) 상기 영상 감시 장치가 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정하는 단계; 및
    (e) 상기 영상 감시 장치가 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단하는 단계를 포함하고,
    상기 (b) 단계는,
    (b1) R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장하는 단계; 및
    (b2) 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행하는 단계를 포함하는 영상 감시 방법.
  2. 제 1 항에 있어서,
    상기 (a) 단계는,
    (a1) 카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출하는 단계;
    (a2) 추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거하는 단계;
    (a3) 상기 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장하는 단계; 및
    (a4) 저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 단계를 포함하는 영상 감시 방법.
  3. 제 2 항에 있어서,
    상기 (a4) 단계는,
    최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 상기 학습용 데이터를 학습하는 것을 특징으로 하는 영상 감시 방법.
  4. 제 2 항에 있어서,
    상기 (a4) 단계는,
    합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습하는 것을 특징으로 하는 영상 감시 방법.
  5. 삭제
  6. 제 1 항에 있어서,
    상기 (c) 단계는,
    (c1) 분류된 상기 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적하는 단계; 및
    (c2) 상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록하는 단계를 포함하는 영상 감시 방법.
  7. 제 1 항에 있어서,
    상기 (d) 단계는,
    (d1) 기록된 상기 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성하는 단계; 및
    (d2) 상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정하는 단계를 포함하는 영상 감시 방법.
  8. 제 7 항에 있어서,
    상기 (d) 단계는,
    (d3) 상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지하는 단계를 더 포함하는 영상 감시 방법.
  9. 제 1 항에 있어서,
    상기 (e) 단계는,
    입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우,
    인간으로 분류된 이동 물체가 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단하고,
    가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단하며,
    인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단하는 것을 특징으로 하는 영상 감시 방법.
  10. 제 1 항 내지 제 4 항, 제 6 항 내지 제 9 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  11. 카메라를 통해 촬영된 영상을 입력받는 입력부;
    입력된 영상 내에 포함된 가축 및 인간의 움직임을 감시하는 영상 감시 프로그램을 저장하는 메모리; 및
    상기 영상 감시 프로그램을 구동하는 적어도 하나의 프로세서를 포함하되,
    상기 메모리에 저장된 영상 감시 프로그램은,
    입력 영상으로부터 학습용 이동 물체를 추출하고 추출된 학습용 이동 물체에 대한 이미지 데이터와 라벨(label) 데이터를 이용하여 각각의 학습용 이동 물체를 미리 학습시키고, 상기 미리 학습된 데이터를 이용하여 새로운 입력 영상 내의 이동 물체를 가축 또는 인간의 유형으로 분류하고, 분류된 상기 이동 물체의 이동 이력을 상기 유형별로 기록하고, 기록된 상기 이동 이력으로부터 상기 유형별로 각각의 이동 영역을 설정하며, 입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우, 이상 상황으로 판단하는 명령을 포함하되,
    R-CNN을 통해 미리 학습된 데이터를 이용하여 새로운 입력 영상으로부터 그리드 셀(grid cell)을 생성하고, 상기 셀마다 물체를 검출하기 위한 물체 영역 후보군 중 가장 가능성이 높은 영역을 선택함으로써 생성된 경계 상자(bounding box) 데이터 및 상기 경계 상자 내의 물체가 어떤 클래스(class)에 포함되는지의 확률을 나타내는 클래스 값을 저장하고, 상기 경계 상자 데이터에 포함된 물체의 예측된 위치가 실제할 확률과 상기 클래스 값을 승산함으로써 상기 새로운 입력 영상 내의 이동 물체의 인식 및 분류를 수행하는 명령을 수행하는 영상 감시 장치.
  12. 제 11 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    카메라를 통해 촬영된 입력 영상으로부터 가우시안 혼합 모델(Gaussian Mixture Model, GMM)을 이용하여 움직임 영역을 추출하고,
    추출된 상기 움직임 영역에 대해 중간값 필터(Media Filter)를 적용하여 조도의 변화 또는 환경 요소로 인하여 발생하는 잡음을 제거하고,
    상기 잡음이 제거된 움직임 영역을 라벨링(labeling)을 통해 인식하고 라벨 내의 영역에 대한 이미지 데이터를 학습용 데이터로서 저장하며,
    저장된 상기 학습용 데이터를 영역 기반의 R-CNN(region based convolution neural network)을 이용하여 학습시키는 명령을 수행하는 영상 감시 장치.
  13. 제 12 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    최종 출력층의 노드 구성과 입력 영상에 대한 고정 분할에 따른 추정 방식을 사용하여 물체의 검출과 인식이 통합된 YOLO(you only look once)의 네트워크 구조를 기반으로 상기 학습용 데이터를 학습하는 명령을 수행하는 영상 감시 장치.
  14. 제 12 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    합성곱 계층(convolution layer)을 통해 추출된 특징점을 RELU(rectified linear unit)을 수행하여 학습하기 용이한 특징점만 추출하고, 맥스 풀링(max pooling)을 통해 데이터의 크기를 감소시킨 후, 풀리 컨넥션(fully connection)을 수행하여 데이터 벡터(data vector)의 집합을 생성하되, 추출하고자 하는 값과의 오차를 오류 역전파법(backpropagation)을 이용해 상기 합성곱 계층으로 전달하여 오차를 감소시키도록 상기 학습용 데이터를 학습하는 명령을 수행하는 영상 감시 장치.
  15. 삭제
  16. 제 11 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    분류된 상기 이동 물체의 라벨 중심점을 칼만 필터(Kalman Filter)를 이용하여 실제 상태값과 추정된 상태값의 오차 공분산을 최소화함으로써 상기 이동 물체의 위치를 보정하고 추적하며,
    상기 이동 물체에 대해 추정된 위치의 변화를 이동 이력으로 추출하되 상기 이동 물체의 유형과 함께 매칭(matching)하여 기록하는 명령을 수행하는 영상 감시 장치.
  17. 제 11 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    기록된 상기 이동 이력 내의 각 위치에 대해 컨벡스 헐(convex hull)을 이용하여 최외곽점을 연결함으로써 다각형 영역을 생성하고,
    상기 이동 이력을 포함하는 상기 다각형 영역을 상기 이동 물체의 유형에 대한 이동 영역으로 설정하는 명령을 수행하는 영상 감시 장치.
  18. 제 17 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    상기 이동 이력이 미리 설정된 수준으로 축적되었거나 상기 유형별 이동 영역이 임계 거리만큼 인접한 경우, 상기 이동 영역을 고정시킴으로써 상기 이동 영역의 확장 또는 변경을 중지하는 명령을 더 수행하는 영상 감시 장치.
  19. 제 11 항에 있어서,
    상기 메모리에 저장된 영상 감시 프로그램은,
    입력 영상으로부터 이동 물체를 탐지하되, 분류된 유형에 대해 설정된 이동 영역이 아닌 영역에서 상기 이동 물체가 탐지된 경우,
    인간으로 분류된 이동 물체가 가축의 이동 영역에서 탐지되면, 인간의 침입으로 판단하고,
    가축으로 분류된 이동 물체가 인간의 이동 영역에서 탐지되면, 가축의 탈출로 판단하며,
    인간으로 분류된 이동 물체와 가축으로 분류된 이동 물체가 함께 소정 거리 이내에 위치한 것으로 탐지되면, 가축의 도난 상황으로 판단하는 명령을 수행하는 영상 감시 장치.
KR1020180059050A 2018-05-24 2018-05-24 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법 KR102052110B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180059050A KR102052110B1 (ko) 2018-05-24 2018-05-24 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180059050A KR102052110B1 (ko) 2018-05-24 2018-05-24 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR102052110B1 true KR102052110B1 (ko) 2019-12-04

Family

ID=69004311

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180059050A KR102052110B1 (ko) 2018-05-24 2018-05-24 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR102052110B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210105141A (ko) * 2020-02-18 2021-08-26 금오공과대학교 산학협력단 카메라를 이용한 차량 내부 인원 모니터링 방법
CN113807026A (zh) * 2021-10-08 2021-12-17 青岛理工大学 地铁站内客流流线优化及动态引导指示牌系统及设计方法
WO2022037587A1 (en) * 2020-08-19 2022-02-24 Zhejiang Dahua Technology Co., Ltd. Methods and systems for video processing
KR102459293B1 (ko) * 2022-04-20 2022-10-27 국방과학연구소 사람 또는 4족 보행 동물에 대한 메쉬 모델 생성 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160065505A (ko) * 2014-12-01 2016-06-09 한양대학교 산학협력단 보행 동작 생성 및 제어 방법, 보행 컨트롤러
KR20160081190A (ko) * 2014-12-31 2016-07-08 서경대학교 산학협력단 카메라를 이용한 보행자 인식 방법 및 그 기록 매체
KR20160135004A (ko) * 2015-05-14 2016-11-24 군산대학교산학협력단 실시간 가축 도난 감지를 위한 모듈화 기반의 지능형 영상 감시 시스템 및 그 방법
KR20160144149A (ko) * 2015-06-08 2016-12-16 군산대학교산학협력단 다중 이동 물체의 겹침 제거 및 추적을 위한 영상 감시 장치 및 방법
KR101720781B1 (ko) * 2015-12-21 2017-03-28 고려대학교 산학협력단 객체에 대한 이상 행동 예측 장치 및 이를 이용한 이상 행동 예측 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160065505A (ko) * 2014-12-01 2016-06-09 한양대학교 산학협력단 보행 동작 생성 및 제어 방법, 보행 컨트롤러
KR20160081190A (ko) * 2014-12-31 2016-07-08 서경대학교 산학협력단 카메라를 이용한 보행자 인식 방법 및 그 기록 매체
KR20160135004A (ko) * 2015-05-14 2016-11-24 군산대학교산학협력단 실시간 가축 도난 감지를 위한 모듈화 기반의 지능형 영상 감시 시스템 및 그 방법
KR20160144149A (ko) * 2015-06-08 2016-12-16 군산대학교산학협력단 다중 이동 물체의 겹침 제거 및 추적을 위한 영상 감시 장치 및 방법
KR101720781B1 (ko) * 2015-12-21 2017-03-28 고려대학교 산학협력단 객체에 대한 이상 행동 예측 장치 및 이를 이용한 이상 행동 예측 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Min Yoon and Jae-Woo Chang, "Design and Implementation of an Advanced Cattle Shed Management System using a Infrared Wireless Sensor nodes and Surveillance Camera," JOURNAL OF THE KOREA CONTENTS ASSOCIATION, Vol. 12, No. 10, pp. 22-34, 2012
Seunggeun Oh, Jonguk Lee, Yongwha Chung and Daihee Park, "A Cattle Shed Security System Based on Abnormal Audio Detection," 한국정보과학회 학술발표논문집, Vol. 38, No. 2B, pp. 396~399, 2011

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210105141A (ko) * 2020-02-18 2021-08-26 금오공과대학교 산학협력단 카메라를 이용한 차량 내부 인원 모니터링 방법
KR102338777B1 (ko) * 2020-02-18 2021-12-10 금오공과대학교 산학협력단 카메라를 이용한 차량 내부 인원 모니터링 방법
WO2022037587A1 (en) * 2020-08-19 2022-02-24 Zhejiang Dahua Technology Co., Ltd. Methods and systems for video processing
CN113807026A (zh) * 2021-10-08 2021-12-17 青岛理工大学 地铁站内客流流线优化及动态引导指示牌系统及设计方法
KR102459293B1 (ko) * 2022-04-20 2022-10-27 국방과학연구소 사람 또는 4족 보행 동물에 대한 메쉬 모델 생성 장치 및 방법

Similar Documents

Publication Publication Date Title
US10248860B2 (en) System and method for object re-identification
KR102052110B1 (ko) 딥 러닝에 기반하여 농축산 도난을 감지하는 영상 감시 장치 및 그 방법
KR101995107B1 (ko) 딥 러닝을 이용한 인공지능 기반 영상 감시 방법 및 시스템
Dick et al. Issues in automated visual surveillance
EP3340104B1 (en) A method for generating alerts in a video surveillance system
Kalsotra et al. Background subtraction for moving object detection: explorations of recent developments and challenges
KR101731243B1 (ko) 유사한 색상을 지닌 다중 이동 물체의 식별 및 추적을 위한 영상 감시 장치 및 방법
US8744125B2 (en) Clustering-based object classification
Andrews Sobral et al. Highway traffic congestion classification using holistic properties
KR101764845B1 (ko) 다중 이동 물체의 겹침 제거 및 추적을 위한 영상 감시 장치 및 방법
US10445885B1 (en) Methods and systems for tracking objects in videos and images using a cost matrix
US11354819B2 (en) Methods for context-aware object tracking
US20220076022A1 (en) System and method for object tracking using feature-based similarities
KR102019301B1 (ko) 농축산 도난을 감지하는 영상 감시 장치 및 그 방법
CN106384089A (zh) 基于终生学习的人体可靠检测方法
WO2022228325A1 (zh) 行为检测方法、电子设备以及计算机可读存储介质
Siddique et al. Analysis of Real-Time Hostile Activitiy Detection from Spatiotemporal Features Using Time Distributed Deep CNNs, RNNs and Attention-Based Mechanisms
Sadeghi-Tehran et al. A real-time approach for novelty detection and trajectories analysis for anomaly recognition in video surveillance systems
Sarker et al. Illegal trash thrower detection based on HOGSVM for a real-time monitoring system
Roy et al. Real-time record sensitive background classifier (RSBC)
KR101192163B1 (ko) 물체 단위의 배경 영상 분석을 통한 움직이는 물체의 검출 방법 및 장치
US20230360402A1 (en) Video-based public safety incident prediction system and method therefor
Kang Intelligent Video Analysis with Deep Learning
Bakana et al. Mitigating Wild Animals Poaching Through State-of-the-art Multimedia Data Mining Techniques: A Review
Kumar et al. Multi-shift spatio-temporal features assisted deep neural network for detecting the intrusion of wild animals using surveillance cameras

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant