KR102054366B1 - 무인 경비 시스템의 제어 방법 및 그 장치 - Google Patents

무인 경비 시스템의 제어 방법 및 그 장치 Download PDF

Info

Publication number
KR102054366B1
KR102054366B1 KR1020190093607A KR20190093607A KR102054366B1 KR 102054366 B1 KR102054366 B1 KR 102054366B1 KR 1020190093607 A KR1020190093607 A KR 1020190093607A KR 20190093607 A KR20190093607 A KR 20190093607A KR 102054366 B1 KR102054366 B1 KR 102054366B1
Authority
KR
South Korea
Prior art keywords
abnormal
mobile cameras
mobile
cameras
images
Prior art date
Application number
KR1020190093607A
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 KR1020190093607A priority Critical patent/KR102054366B1/ko
Application granted granted Critical
Publication of KR102054366B1 publication Critical patent/KR102054366B1/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/19639Details of the system layout
    • G08B13/19647Systems specially adapted for intrusion detection in or around a vehicle
    • 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
    • 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/19654Details concerning communication with a camera
    • 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/19663Surveillance related processing done local to the camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • H04N5/247
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • H04N7/185Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source from a mobile camera, e.g. for remote control

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Alarm Systems (AREA)

Abstract

무인 경비 시스템의 제어 방법 및 그 장치가 개시된다. 일 실시예에 따른 무인 경비 시스템을 제어하기 위한 방법은 미리 설정된 무인 경비 구역에 구비된 하나 이상의 센서에 대응하는 이상 신호를 감지하고, 서로 다른 상수(constant)들에 각각 대응하는 이동형 카메라들을 센서 이상 신호가 감지된 이상 구역으로 배치하여 촬영된 제 1 이미지들을 획득하고, 제 1 이미지들에 기초하여 복수의 이미지들로부터 미리 학습된 컨볼루션 신경망(convolutional neural network)의 입력 레이어(input layer)에 대응하는 입력 벡터를 생성하고, 입력 벡터를 컨볼루션 신경망에 적용하여 출력 벡터를 획득하며, 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 복수의 이동형 카메라들의 촬영 위치들을 정렬하도록 하는 위치 조정 데이터를 생성하고, 위치 조정 데이터에 기초한 대형으로 복수의 이동형 카메라들을 정렬하고, 정렬된 복수의 이동형 카메라들에 의해 촬영된 제 2 이미지들을 획득하고, 제 2 이미지들에 기초하여 이상 구역의 목표 파노라마 이미지를 생성하고, 생성된 파노라마 이미지에 기초하여 무인 경비 시스템을 제어하기 위한 제어 동작을 결정할 수 있다.

Description

무인 경비 시스템의 제어 방법 및 그 장치{METHOD AND APPARATUS FOR CONTROLLING UNMANNED SECURITY SYSTEM}
아래 실시예들은 무인 경비 시스템과 이를 제어하는 기술에 관한 것이다.
관공서, 학교, 공동주택, 금융기관과 같은 건물 내부와 도로, 인도, 공원, 광장과 같은 건물 외부 등 보안과 방범이 중요한 구역은 방범용 카메라, 자석 감지기, 열선 감지기, 유리 파손 감지기, 적외선 감지기, 카드 리더기 및 경광등, 경고 신호음 발생기 등과 같은 각종 센서 및 보안 장치에 의해 보호되고 있다. 이러한 각종 방범용 센서들에 의해 사람이 직접 경비 구역에 상주하지 않아도 경비 구역에서 발생할 수 있는 비정상 이벤트를 감지할 수 있게 되었다. 그러나, 노후 센서의 오작동, 낮은 해상도, 동물의 출현 및 사각지대의 존재 등과 같이 위험성이 낮은 이벤트가 발생한 경우에도 비정상 이벤트가 발생한 것으로 간주되어 대상 이벤트의 유형과 위험성에 대해 구체적으로 인식함이 없이 직접 경비 업체 인력이 파견되어야 하는 경우가 있었다. 또한, 비정상 이벤트가 발생한 것으로 간주되더라도 경비 업체 인력을 일일이 출동시켜 비정상 이벤트들을 해결하는 것은 많은 인력이 필요하여 효율적이고 안전하지 못하며, 추후 보다 긴급하고 위험한 이벤트가 발생할 경우 신속하게 대처하지 못할 가능성이 있었다. 따라서, 비정상 이벤트가 발생할 경우 보다 구체적이고 정확한 이벤트의 유형 및 위험 정도를 파악할 수 있고, 이벤트 유형 및 심각도에 대응하는 적절한 보안 시스템의 제어 신호를 생성하는 기술이 요구되고 있다.
KR100974465 KR101049341 KR101224675 KR19970003277
실시예들은 무인 경비 구역 내 이상 신호가 감지된 이상 구역의 목표 이미지를 인공지능을 기반으로 생성하여, 비정상 이벤트의 발생 유형 및 위험 정도의 정확도를 높이고자 한다.
실시예들은 무인 경비 구역에 대한 보안 제어 신호를 인공 지능을 기반으로 추론하여 무인 경비 시스템의 제어를 최적화하고자 한다.
실시예들은 무인 경비 구역에 발생한 비정상 이벤트가 이상 객체를 포함하는 경우, 이동형 카메라들 중 하나의 이동형 카메라를 기준점으로 설정할 수 있고, 기준점이 되는 이동형 카메라는 객체를 추종하며, 인식된 객체의 인식률이 미리 설정된 기준값을 충족하지 못하는 경우, 이동형 카메라들의 위치 조정 데이터를 조절하여 이상 객체를 정밀하게 확인하고자 한다.
실시예들은 무인 경비 구역에 발생한 비정상 이벤트가 이상 객체를 포함하는 경우, 이동형 카메라들의 상대적 위치 및 타임스탬프를 기반으로 이상 객체의 경로를 추척하고자 한다.
일 실시예에 따른 무인 경비 시스템을 제어하기 위한 방법은 미리 설정된 무인 경비 구역에 구비된 하나 이상의 센서에 대응하는 이상 신호를 감지하는 단계; 서로 다른 상수(constant)들에 각각 대응하는 복수의 이동형 카메라들을 상기 무인 경비 구역 중 센서 이상 신호가 감지된 이상 구역으로 배치하도록 제어하는 단계; 상기 이상 구역에 배치된 상기 복수의 이동형 카메라들에 의해 촬영된 제 1 이미지들을 획득하는 단계; 획득된 상기 제 1 이미지들에 기초하여 컨볼루션 신경망(convolution neural network)의 입력 레이어(input layer)에 대응하는 입력 벡터를 생성하는 단계; 상기 입력 벡터를 컨볼루션 신경망에 입력하여 출력 벡터를 획득하는 단계; 상기 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 상기 복수의 이동형 카메라들의 촬영 위치들을 정렬하는 위치 조정 데이터를 생성하는 단계; 상기 위치 조정 데이터에 따른 대형으로 상기 복수의 이동형 카메라들을 정렬하는 단계; 정렬된 상기 복수의 이동형 카메라들에 의해 촬영된 제 2 이미지들을 획득하는 단계; 획득한 상기 제 2 이미지들에 기초하여 상기 이상 구역의 파노라마 이미지를 생성하는 단계; 생성된 상기 파노라마 이미지를 이벤트 유형 결정 모델의 입력 레이어에 인가하는 단계; 상기 이벤트 유형 결정 모델의 출력 레이어로부터 이벤트 유형 정보를 획득하는 단계; 상기 파노라마 이미지를 상기 이벤트 유형 정보에 대응하는 이벤트 심각도 결정 모델의 입력 레이어로 인가하는 단계; 상기 이벤트 심각도 결정 모델의 출력 레이어로부터 상기 이벤트 유형 정보에 대응하는 이벤트 심각도 정보를 획득하는 단계; 상기 이벤트 유형 정보 및 상기 이벤트 심각도 정보에 기초하여 보안 동작을 결정하는 단계; 상기 보안 동작에 대응하는 제어 동작을 수행하는 단계를 포함하고, 상기 이벤트 유형 결정 모델 및 상기 이벤트 심각도 결정 모델은 뉴럴 네트워크로 구성될 수 있다.
일 실시예에 따르면, 상기 출력 벡터는 상기 복수의 이동형 카메라들 중 어느 하나의 이동형 카메라가 촬영한 제 1 이미지에서 나머지 이동형 카메라들이 촬영한 제 1 이미지들과 중복되는 부분들의 위치 및 크기 데이터를 각각의 이동형 카메라들별로 그룹화한 제 1 중복 부분 데이터를 포함하며, 상기 대형은 상기 상수들에 기초하여 정의된 순서에 따라 기준 위치의 방위각(azimuthal) 방향으로 상기 상수들에 각각 대응하는 상기 복수의 이동형 카메라들이 순차로 배치되는 대형이며, 상기 위치 조정 데이터를 생성하는 단계는 상기 제 1 중복 부분 데이터에 기초하여, 상기 복수의 이동형 카메라들의 제 1 상대적 위치들을 획득하는 단계; 상기 복수의 이동형 카메라들이 상기 대형으로 촬영 위치를 정렬했을 경우, 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 서로 중복되는 부분들이 상기 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 차지하는 위치 및 크기가 미리 정의된 제 2 중복 부분 데이터와 일치하도록 만드는 상기 복수의 이동형 카메라들의 제 2 상대적 위치들을 계산하는 단계; 상기 복수의 이동형 카메라들이 상기 제 1 상대적 위치들로부터 상기 제 2 상대적 위치들로 각각 이동하도록 제어하는 위치 조정 데이터를 생성하는 단계를 포함할 수 있다.
일 실시예에 따르면, 복수의 이동형 카메라들을 상기 이상 구역으로 배치하도록 제어하는 단계는 상기 이상 구역 내에 이상 객체를 감지하는 단계; 상기 이상 객체를 추적하도록 상기 복수의 이동형 카메라들 중 어느 하나의 이동형 카메라를 객체 추적 카메라로 설정하는 단계; 상기 객체 추적 카메라로 설정되지 않은 나머지 이동형 카메라들이 상기 객체 추적 카메라로 설정된 이동형 카메라를 기준으로 미리 설정된 거리를 유지하도록, 상기 나머지 이동형 카메라들의 상대적 위치를 결정하는 단계를 포함하고, 상기 객체 추적 카메라는 열 센서, 움직임 센서, 이미지 센서, 음향 센서, 초음파 센서, 적외선 센서, 지자기 센서(Magnetic sensor), 위치 센서(예컨대, GPS), 근접 센서, 및 RGB 센서 중 하나 이상을 포함하고, 상기 객체 추적 카메라와 상기 이상 객체와의 거리는 상기 나머지 이동형 카메라들과 상기 이상 객체와의 거리보다 큰 것일 수 있다.
일 실시예에 따르면, 상기 객체 추적 카메라는 상기 무인 경비 구역 내 미리 설정된 경로를 따라 이동할 수 있다.
일 실시예에 따르면, 획득한 상기 제 2 이미지들에 기초하여 상기 이상 구역의 파노라마 이미지를 생성하는 단계 후에, 생성된 상기 파노라마 이미지로부터 상기 이상 객체를 검출하는 단계; 및 상기 파노라마 이미지에서 검출된 상기 이상 객체의 인식률이 미리 설정된 기준 값을 충족하지 못하는 경우, 상기 복수의 이동형 카메라의 대형을 상기 이상 객체를 기준으로 미리 정해진 방향으로 이동하도록 상기 위치 조정 데이터의 방위각을 재설정하는 단계를 더 포함할 수 있다.
본 발명에 따른 실시예들은 복수의 이동형 카메라들을 비정상 이벤트가 발생한 무인 경비 구역에 배치하도록 제어함으로써, 비정상 이벤트에 대한 정확도 높은 파노라마 이미지를 얻을 수 있으며, 미리 학습된 이벤트 이벤트 유형 결정 모델 및 심각도 결정 모델의 입력 레이어에 해당 파노라마 이미지를 인가함으로써 비정상 이벤트의 유형과 위험 정도를 사전에 정확히 알 수 있다.
또한, 경비 구역에 이상 객체가 감지된 경우, 신속히 복수의 이동형 카메라들을 파견하여 해당 이상 객체의 크기, 형태, 온도, 움직임 등을 파악할 수 있으며, 복수의 이동형 카메라들의 상대 위치 및 타임스탬프를 이용함으로써 이상 객체의 이동 경로를 추적할 수 있다.
한편, 실시예들에 따른 효과는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 설명하기 위한 도면이다.
도 2a 내지 도 2b는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템의 제어 방법을 설명하기 위한 순서도이다.
도 3은 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는데 채용되는 컨볼루션 신경망의 학습 과정을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 이동형 카메라(100)의 블록도이다.
도 7은 일 실시예에 따른 제어 장치(200)의 블록도이다.
도 8은 일 실시예에 따른 복수의 이동형 카메라들이 객체를 인식하고, 객체의 경로를 추적하는 예시를 나타내는 도면이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제 1 또는 제 2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소는 제 1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다.
도 1은 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 복수의 이동형 카메라들을 이용한 무인 경비 시스템은 복수의 이동형 카메라들(100)과 무인 경비 시스템 제어 장치(200)를 포함한다. 복수의 이동형 카메라들은 예컨대, 드론일 수 있다. 복수의 이동형 카메라들(100) 중 각각의 카메라(100a, 100b, 100c)는 서로 다른 상수(constant)를 이용하여 표현할 수 있으며, 가령, 상수 1, 2, 및 3을 이용하여 각각의 카메라를 카메라 1, 카메라 2, 카메라 3 또는 제 1 카메라, 제 2 카메라, 제 3 카메라와 같은 식으로 표현할 수 있다. 상수들은 반드시 숫자일 필요는 없으며, 각각의 이동형 카메라들(100a, 100b, 100c)을 구별해 줄 수만 있으면, 문자, 특수문자, 숫자, 또는 이들의 조합으로 이루어질 수도 있다. 복수의 이동형 카메라들(100)의 수는 반드시 3 개로 제한되지 않으며, 상황과 목적에 따라 이동형 카메라들의 수는 더 많아지거나 더 적어질 수 있다.
각각의 이동형 카메라들(100a, 100b, 100c)의 위치는 원통형 좌표계(cylindrical coordinate, O)를 통해 표현될 수 있다. 원통형 좌표계(O)의 원점은 미리 정의될 수 있으며, 예를 들어 무인 경비 구역의 미리 설정된 구역에 설치된 일 센서를 기준으로 미리 정의된 거리만큼 떨어진 위치일 수 있다. 또는, 복수의 이동형 카메라들(100a, 100b, 100c) 중 하나의 이동형 카메라(예컨대, 100a)를 기준으로 원통형 좌표계(O)의 원점이 설정되고, 다른 이동형 카메라(예컨대, 100,b 100c)가 미리 설정된 거리를 유지하며 복수의 이동형 카메라들(100)의 대형(formation)을 유지할 수도 있다. 원통형 좌표계(O)를 중심으로, 카메라(100a)는 방위각(φ)의 값이 가장 큰 관심 영역의 세부 영역을 촬영하고, 카메라(100b)는 방위각(φ)의 값이 그 다음으로 큰 관심 영역의 세부 영역을 촬영하고, 카메라(100c)는 방위각(φ)의 값이 가장 작은 관심 영역의 세부 영역을 촬영할 수 있다. 관심 영역은 복수의 이동형 카메라들(100)을 운용하는 의도에 따라 다양한 실시예들이 있을 수 있다.
무인 경비 시스템 제어 장치(200)는 디스플레이를 포함할 수 있으며, 복수의 이동형 카메라들(100)의 비행을 제어하는 한편, 복수의 이동형 카메라들(100)이 전송한 이미지 데이터 및 관심 영역에 관한 정보를 수집하여 디스플레이에 표시할 수 있다. 제어 장치(200)는 수집된 정보에 기초하여 복수의 이동형 카메라들(100)의 운용 계획을 변경할 수 있다. 예를 들어, 제어 장치(200)는 복수의 이동형 카메라들(100) 모두에게 비행 방향을 변경하라는 일괄적인 운용 계획을 전송할 수 있다. 또는, 제어 장치(200)는 각각의 이동형 카메라들(100a, 100b, 100c)에게 각각의 방향으로 비행하라는 차별적인 운용 계획을 전송할 수 있다. 이 때, 각각의 이동형 카메라들(100a, 100b, 100c)은 각자 자신의 이동 운용 계획을 식별하여 수신할 수 있다. 이동 운용 계획의 일괄적 전송 및 차별적 전송에 관해서는 설계 의도 또는 시스템 효율에 따라 다양한 실시예가 채용될 수 있다.
외부 기기(110)는 통신 기능이 포함된 전자 장치일 수 있으며, 제어 장치(200)가 전송한 이미지 데이터 및 관심 영역에 관한 정보, 복수의 이동형 카메라들(100)의 운용 계획을 수집하여 디스플레이에 표시할 수 있다. 또한, 외부 기기(110)는 제어 장치(200)의 이벤트 유형 결정 모델 및 이벤트 심각도 결정 모델을 포함하는 뉴럴 네트워크로부터 획득한 출력 신호를 수집하여 디스플레이에 표시할 수 있다. 사용자는 외부 기기(110)의 디스플레이로부터 표시된 출력 신호를 기반으로 제어 장치(200)에 비정상 이벤트의 유형 및 심각도에 상응하는 보안 동작 제어 신호를 입력할 수 있다. 또는, 제어 장치(200)가 비정상 이벤트의 유형 및 심각도에 상응하는 보안 동작 제어 신호를 생성하고 보안 동작을 실행한 후, 그 결과 값을 외부 기기(110)의 디스플레이에 표시할 수도 있다. 보안 동작 제어 신호의 생성과 보안 동작의 실행에 관해서는 설계 의도 또는 시스템 효율에 따라 다양한 실시예가 채용될 수 있다.
일 실시예에 따르면, 전자 장치는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상전화기, 전자북 리더기(e-book reader), 데스크톱 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 전자 안경과 같은 head-mounted-device(HMD), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 스마트카(smart car) 또는 스마트 와치(smartwatch)중 적어도 하나를 포함할 수 있다.
복수의 이동형 카메라들(100), 제어 장치(200) 및 외부 기기(110) 간의 데이터 전달은 무선 네트워크(120)를 통해 이루어질 수 있다. 각각의 이동형 카메라들(100a, 100b, 100c), 제어 장치(200), 및 외부 기기(110)는 무선 네트워크를 위한 통신 안테나, 하드웨어, 소프트웨어 및 이들의 조합을 포함할 수 있으며, 무선 네트워크는 표준 통신 기술 및/또는 프로토콜들을 사용할 수 있다.
도 2a 내지 도 2b는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템의 제어 방법을 설명하기 위한 순서도이다.
일 실시예에 따르면, 제어 장치(200)는 미리 설정된 무인 경비 구역에 구비된 하나 이상의 센서에 대응하는 이상 신호를 감지할 수 있다(S101). 이상 신호는, 예를 들어, 출입문에 장착된 전자석 센서의 이상 신호, 열선 감지기에 의한 이상 신호, 유리 파손 감지기에 의한 이상 신호, 적외선 탐지기에 의한 이상 신호 등을 포함할 수 있다. 감지된 이상 신호는 제어 장치(200)의 디스플레이에 의해 표시될 수 있거나, 제어 장치(200)에 구비된 음성 출력 장치 및 광 출력 장치에 의해 음성 신호 및 광 신호로서 출력되어 감지될 수 있다.
일 실시예에 따르면, 제어 장치(200)는 복수의 이동형 카메라들(100a, 100b, 100c)을 무인 경비 구역 중 센서 이상 신호가 감지된 이상 구역으로 이동하도록 제어할 수 있다(S102). 복수의 이동형 카메라들(100a, 100b, 100c)는 무인 경비 구역 내부 혹은 외부에 미리 정해진 장소에 배치되어 있을 수 있다. 복수의 이동형 카메라들(100a, 100b, 100c)은 서로 다른 상수(constant)들에 각각 대응하고, 상수들에 기초한 대형(formation)으로 비행 위치를 정렬할 수 있다. 제어 장치(200)는 이상 신호를 감지함에 따라 자동적으로 복수의 이동형 카메라들(100a, 100b, 100c)을 센서 이상 신호가 감지된 이상 구역으로 배치할 수도 있거나, 또는 감지된 이상 신호를 제어 장치(200) 및 외부 기기(110) 중 하나 이상의 디스플레이에 표시하고, 복수의 이동형 카메라들(100a, 100b, 100c)에 대한 사용자의 이동 명령에 따라, 복수의 이동형 카메라들(100a, 100b, 100c)을 센서 이상 신호가 감지된 이상 구역으로 배치할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 무인 경비 구역 중 센서 이상 신호가 감지된 이상 구역으로 배치된 복수의 이동형 카메라들(100a, 100b, 100c) 각각으로부터 촬영된 제 1 이미지들을 획득할 수 있다(S103). 제어 장치(200)가 획득한 제 1 이미지들은 디스플레이에 표시될 수 있다.
일 실시예에 따르면, 제어 장치(200)는 제 1 이미지들에 기초하여 미리 학습된 컨볼루션 신경망(convolutional neural network)의 입력 레이어(input layer)에 대응하는 제 1 입력 벡터를 생성할 수 있다(S104). 제어 장치(200)는 제 1 입력 벡터를 컨볼루션 신경망에 입력하고 제 1 출력 벡터를 획득할 수 있다(S105). 제어 장치(200)는 제 1 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 복수의 이동형 카메라들(100a, 100b, 100c)의 촬영 위치들을 정렬하도록 하는 위치 조정 데이터를 생성하고, 위치 조정 데이터에 따른 대형으로 복수의 이동형 카메라들(100a, 100b, 100c)을 정렬할 수 있다(S106). 각각의 이동형 카메라들(100a, 100b, 100c)은 위치 조정 데이터에서 각자 자신에게 할당된 데이터를 식별하여, 각자 자신에게 할당된 이동 명령을 수행함으로써, 각각의 이동형 카메라와 일대일 대응관계로 대응하는 상수들에 기초한 대형(formation)으로 촬영 위치를 정렬할 수 있다. 정렬이 이루어진 상태에서, 각 이동형 카메라들(100a, 100b, 100c)은 제 2 이미지를 촬영할 수 있다. 촬영을 마친 복수의 이동형 카메라들(100a, 100b, 100c)은 제 2 이미지들을 제어 장치(200)에게 전송할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 정렬된 복수의 이동형 카메라들(100a, 100b, 100c)에 의해 각각 촬영된 제 2 이미지들을 획득할 수 있다(S107). 제어 장치(200)는 제 2 이미지들에 기초하여 무인 경비 구역 중 센서 이상 신호가 감지된 이상 구역의 파노라마 이미지를 생성할 수 있다(S108). 제어 장치(200)는 제 2 이미지들에 기초하여, 목표 이미지, 가령 관심 영역의 파노라마(panorama) 이미지를 생성할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 생성된 파노라마 이미지를 이벤트 유형 결정 모델의 입력 레이어로 인가할 수 있다(S109). 이벤트 유형 결정 모델은 뉴럴 네트워크로 구성된 학습 모델로서, 예를 들어 기계 오작동, 동물의 출연, 건물 내부 침입, 화재, 및 건물 내외부 시설 파손 등과 같이 생성된 파노라마 이미지가 각종 비정상 이벤트 중 어느 이벤트에 해당하는지를 출력할 수 있다. 이벤트 유형 결정 모델의 입력 레이어에 파노라마 이미지를 인가한다는 것은, 파노라마 이미지에 기초하여 이벤트 유형 결정 모델의 입력 레이어에 대응하는 제 2 입력 벡터를 생성하고, 생성된 제 2 입력 벡터를 이벤트 유형 결정 모델의 입력 레이어에 인가하는 것을 의미할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 이벤트 유형 결정 모델의 출력 레이어로부터, 입력된 파노라마 이미지에 상응하는 이벤트 유형 정보를 획득할 수 있다(S110). 예를 들어, 미리 설정된 무인 경비 구역에 화재가 난 경우라면, 이벤트 유형 결정 모델은 입력된 파노라마 이미지에 기초하여 '화재'에 해당하는 이벤트 유형 정보를 출력할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 생성된 파노라마 이미지를 획득한 이벤트 유형 정보에 대응하는 이벤트 심각도 결정 모델의 입력 레이어로 인가할 수 있다(S111). 예를 들어, '화재'에 해당하는 이벤트 유형 정보가 이벤트 유형 결정 모델로부터 출력된 경우, 제어 장치(200)는 '화재'에 대응하는 이벤트 심각도 결정 모델의 입력 레이어로 생성된 파노라마 이미지를 인가할 수 있다. 이벤트 심각도 결정 모델의 입력 레이어에 파노라마 이미지를 인가한다는 것은, 파노라마 이미지에 기초하여 이벤트 심각도 결정 모델의 입력 레이어에 대응하는 제 3 입력 벡터를 생성하고, 생성된 제 3 입력 벡터를 이벤트 심각도 결정 모델의 입력 레이어에 인가하는 것을 의미할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 이벤트 심각도 결정 모델의 출력 레이어로부터 획득한 이벤트 유형 정보에 대응하는 이벤트 심각도 정보를 획득할 수 있다(S112). 이벤트 심각도 결정 모델은 뉴럴 네트워크로 구성된 학습 모델로서, 예를 들어 인가된 파노라마 이미지에 해당하는 이벤트가 '초기-주의-경계-위험'의 4 단계 중 어떤 단계에 해당하는지를 출력할 수 있거나, 또는 이벤트의 심각도 레벨이 0 부터 100까지의 범위 중 어느 레벨에 해당하는지를 출력할 수 있다. 예를 들어, '화재'에 대응하는 이벤트 심각도 결정 모델의 입력 레이어로 파노라마 이미지가 인가된 경우, 출력 레이어로 '화재-주의' 또는 '화재-30'(즉, 이벤트 유형은 화재이고, 이벤트 심각도는 주의 단계 또는 30 레벨)에 해당하는 이벤트 심각도 정보를 출력할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 획득한 이벤트 유형 정보 및 획득한 이벤트 심각도 정보에 기초하여 무인 경비 시스템의 보안 동작을 결정할 수 있다(S113). 보안 동작은 무인 경비 시스템을 제어하기 위한 기계적, 물리적, 전자적 명령 프로파일들을 포함할 수 있다. 보안 동작들은 제어 장치(200)에서 획득한 이벤트 유형 정보 및 이벤트 심각도 정보에 따라 미리 정해진 알고리즘에 따라 결정될 수도 있고, 제어 장치(200) 또는 외부 기기(110)로부터 입력된 사용자의 명령에 따라 결정될 수도 있다. 예를 들어, 무인 경비 시스템의 보안 동작은 이벤트가 발생한 위치의 확인, 이벤트가 발생한 위치로의 이동 경로 검색, 보안 구역 및 안심 구역 설정, 현장음 청취, 음성 신호 및 광신호를 이용한 SOS 기능, 안내 방송, 및 이상 객체 확인 중 하나 이상에 해당할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 결정된 무인 경비 시스템의 보안 동작에 대응하는 제어 동작을 수행할 수 있다(S114). 제어 동작은 무인 경비 시스템의 물리적 동작, 센서 동작, 설정 정보의 변경 등을 제어할 수 있으며, 제어 동작에 따른 무인 경비 시스템의 보안 상황은 외부 기기(110)의 디스플레이에 의해 사용자에게 실시간으로 보고될 수 있다. 예를 들어, 제어 장치(200)는 GPS 센서 활성화, 출입문 개폐 센서 차단, 보안 구역 및 안심 구역의 경비 강화, 안내 방송 송출, 이상 객체의 이미지 데이터 획득 및 경로 추적 중 하나 이상에 해당하는 제어 동작을 수행할 수 있다.
일 실시예에 따르면, 뉴럴 네트워크는 트레이닝 샘플들이 입력되는 입력 레이어와 트레이닝 출력들을 출력하는 출력 레이어를 포함하고, 트레이닝 출력들과 레이블들 사이의 차이에 기초하여 학습될 수 있다. 여기서, 레이블들은 이동형 카메라들(100a, 100b, 100c)을 제어하기 위한 제어 명령들에 대한 추정 결과들에 기초하여 정의될 수 있다. 뉴럴 네트워크는 복수의 노드들의 그룹으로 연결되어 있고, 연결된 노드들 사이의 가중치들, 각 노드들의 편향(bias) 및 각 노드들을 활성화시키는 활성화 함수에 의해 정의된다.
구체적으로, 이벤트 유형 결정 모델은 생성된 파노라마 이미지 및 복수의 센서 데이터에 관한 특성 정보를 기초로 학습될 수 있다. 예를 들어, 이벤트 유형 결정 모델의 학습 데이터는 화재, 침입, 기계 오작동, 동물의 출현에 관한 이미지 데이터 또는 온도 정보, 소리 정보, 진동 정보, 그리고 이벤트 유형을 나타내는 라벨 정보 등을 포함할 수 있다. 일 실시예로서, '화재'를 포함하는 이벤트 유형 결정 모델을 학습하는 경우, 학습 데이터 중의 일부는 화재 상황에 관한 이미지 데이터, 온도 정보, 그리고 화재라는 상황을 나타내는 라벨 정보를 포함할 수 있다. 그리고, 이벤트 유형 결정 모델은 학습 데이터에 포함된 이미지 데이터 및 온도 정보가 입력 레이어에 입력되면, 출력 레이어에서 '화재' 발생 여부 또는 '화재' 발생 가능성을 포함하는 이벤트 유형 정보를 출력할 수 있다. 그리고, 이벤트 유형 결정 모델은 출력 레이어에서 출력되는 이벤트 유형 정보와 학습 데이터에 포함된 라벨 정보를 비교하여, 그 차이를 줄이는 방향으로 지도 학습될 수 있다. 여기서, 이벤트 유형 결정 모델은 이미지 데이터를 처리하기 위한 컨볼루션 신경망(Convolutional Neural Network)를 포함할 수 있다. 이러한 학습 모델은 제어 장치의 메모리 내에 저장될 수 있다.
또한, 이벤트 심각도 결정 모델은 생성된 파노라마 이미지 및 복수의 센서 데이터에 관한 특성 정보를 기초로 학습될 수 있다. 여기서, 이벤트 심각도 결정 모델은 각 이벤트 유형별로 구분되어 개별적으로 학습 및 관리될 수 있다. 제어 장치(200)는, 이벤트 유형 결정 모델로부터 이벤트 유형 정보를 획득함에 따라, 해당 이벤트 유형 정보에 대응하는 이벤트 심각도 결정 모델을 이용하여 이벤트 심각도 정보를 획득할 수 있다. 예를 들어, 이벤트 유형 결정 모델로부터 이벤트 유형 정보가 '화재'로 결정되는 경우, '화재'에 대응하는 이벤트 심각도 결정 모델을 이용하여 화재의 심각도가 레벨 30(예컨대, 심각도는 0 부터 100 까지의 범위를 가짐)임을 획득될 수 있다.
이벤트 심각도 결정 모델에 대한 학습 데이터는 다음과 같이 결정될 수 있다. 예를 들어, '화재'에 해당하는 이벤트 유형 정보에 대응하는 이벤트 심각도 결정 모델의 경우, 학습 데이터는 최고 온도, 화재의 범위, 소재 정보, 그리고 이벤트 심각도를 나타내는 라벨 정보 등을 포함할 수 있다. 일 실시예로서, 하기 [표 1]은 이벤트 심각도 판단 모델의 학습에 이용되는 학습 데이터의 예시를 나타낸다.
최고 온도(℃) 화재 범위(m2) 주요 소재 심각도(0~100)
데이터 1 150 20 목재 40
데이터 2 250 3 석재 10
데이터 3 320 12 플라스틱 25
데이터 4 550 40 가연성 액체 70
데이터 5 4000 5 전자 기기 90
상기 [표 1]을 참조하면, '화재'에 대응하는 이벤트 심각도 판단 모델은 최고 온도, 범위, 주요 소재에 기초하여 설정된 라벨 정보를 이용하여 지도 학습될 수 있다. 또한, '화재'에 대응하는 이벤트 심각도 정보는 기상 정보, 화재 발생 경과 시간 등을 추가로 이용하여 결정할 수 있고, 예를 들어, 기상 정보에는 습도 온도, 건조주의보 발생 여부가 포함될 수 있다. 일 실시예에 따르면, 학습 장치는 GD(Gradient Decent) 기법 또는 SGD(Stochastic Gradient Descent) 기법을 이용하여 뉴럴 네트워크를 학습시킬 수 있다. 학습 장치는 뉴럴 네트워크의 출력들 및 레이블들 의해 설계된 손실 함수를 이용할 수 있다.
일 실시예에 따르면, 학습 장치는 미리 정의된 손실 함수(loss function)을 이용하여 트레이닝 에러를 계산할 수 있다. 손실 함수는 레이블, 출력 및 파라미터를 입력 변수로 미리 정의될 수 있고, 여기서 파라미터는 뉴럴 네트워크 내 가중치들에 의해 설정될 수 있다. 예를 들어, 손실 함수는 MSE(Mean Square Error) 형태, 엔트로피(entropy) 형태 등으로 설계될 수 있는데, 손실 함수가 설계되는 실시예에는 다양한 기법 또는 방식이 채용될 수 있다.
일 실시예에 따르면, 학습 장치는 역전파(backpropagation) 기법을 이용하여 트레이닝 에러에 영향을 주는 가중치들을 갱신할 수 있다. 여기서, 가중치들은 뉴럴 네트워크 내 노드들 사이의 관계들이다. 학습 장치는 역전파 기법을 통해 찾아낸 가중치들을 최적화시키기 위해 레이블들 및 출력들을 이용한 SGD 기법을 이용할 수 있다. 예를 들어, 학습 장치는 레이블들, 출력들 및 가중치들에 기초하여 정의된 손실 함수의 가중치들을 SGD 기법을 이용하여 갱신할 수 있다.
일 실시예에 따르면, 제어 장치(200)는 학습이 완료된 뉴럴 네트워크를 이용하여 출력 신호를 획득하고, 이동형 카메라들(100a, 100b, 100c)을 제어하기 위한 제어 명령들과 관련된 정보를 추정할 수 있다.
도 3은 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 3을 참조하면, 제어 장치(200)는 획득한 제 1 이미지들에 기초하여 컨볼루션 신경망(400)의 입력 레이어(input layer)에 대응하는 입력 벡터(300)를 생성할 수 있다. 제 1 이미지들로부터 입력 벡터(300)를 생성함에 있어, 각각의 제 1 이미지의 가로 길이와 세로 길이가 서로 동일하도록 처리하는 과정이 있을 수 있다. 길이 단위는 cm, mm, inch 등 물리적인 길이 단위일 수 있으며, dpi, ppi 등의 화상 단위일 수도 있다. 각각의 제 1 이미지의 사이즈를 통일시키는 것을 통해, 제어 장치(200)는 컨볼루션 신경망(400)이 각각의 이미지를 용이하게 비교할 수 있는 입력 벡터(300)를 생성할 수 있다.
또한, 제 1 이미지들로부터 입력 벡터(300)를 생성함에 있어, 제 1 이미지들을 흑백 이미지로 처리하거나, RGB 색상 중에서 특정 색상으로 처리하는 과정이 있을 수 있다. 이를 통해 입력 벡터(300)는 색상 정보가 통일된 단일 채널(channel)의 이미지 파일이 될 수 있다. 단일 채널의 이미지 파일이 컨볼루션 신경망(400)으로 입력될 경우, 컨볼루션 신경망은 높이(height)와 너비(width)만 가지며 깊이(depth)는 가지지 않는 특징맵(feature map)을 연산하면 되므로, 보다 적은 컴퓨팅 파워를 가지고도 보다 빠른 속도로 목표하는 출력을 얻을 수 있다. 이를 통해, 제어 장치(200)가 전용서버나 슈퍼컴퓨터 등이 아닌 경우라도 컨볼루션 신경망(400)의 연산이 용이하게 수행되도록 할 수 있다.
이어서, 제어 장치(200)는 생성한 입력 벡터(300)를 컨볼루션 신경망(400)에 적용하여 출력 벡터를 획득할 수 있다. 출력 벡터는 각각의 카메라들이 촬영한 제 1 이미지에서 나머지 카메라들이 촬영한 제 1 이미지들과 중복되는 부분들의 위치 및 크기 데이터를 각각의 이동형 카메라들별로 그룹화한 제 1 중복 부분 데이터(311)일 수 있다.
컨볼루션 신경망(400)의 출력인 제 1 중복 부분 데이터(311)를 살펴보면, 미리 설정된 픽셀 단위별 데이터(data per pixel unit)가 원으로 도시되며, 이동형 카메라 1에 의해 촬영된 이미지의 픽셀 단위별 데이터들은 좌측 직사각형에, 이동형 카메라 2에 의해 촬영된 이미지의 픽셀 단위별 데이터들은 가운데 직사각형에, 이동형 카메라 3에 의해 촬영된 이미지의 픽셀 단위별 데이터들은 우측 직사각형에 도시되어 있다.
한편, 각 픽셀 단위별 데이터는 0 또는 1의 값을 가질 수 있다. 도 3에서 픽셀 단위별 데이터가 0의 값을 가지면 색칠되지 않은 원으로, 픽셀 단위별 데이터가 1의 값을 가지면 색칠된 원으로 도시되어 있다. 한 개의 이동형 카메라가 촬영한 제 1 이미지에서 미리 설정된 픽셀 단위 하나에 해당하는 부분 이미지에 대하여, 컨볼루션 신경망(400)이 나머지 이동형 카메라들이 촬영한 제 1 이미지들에 해당 픽셀 단위의 부분 이미지와 중복되는 부분 이미지를 가지는 픽셀 단위가 존재한다고 추론할 경우, 해당 픽셀 단위의 픽셀 단위별 데이터는 1의 값을 가지며, 도 3에서 색칠된 원으로 도시된다. 한편, 한 개의 이동형 카메라가 촬영한 제 1 이미지에서 미리 설정된 픽셀 단위 하나에 해당하는 부분 이미지에 대하여, 컨볼루션 신경망(400)이 나머지 이동형 카메라들이 촬영한 제 1 이미지들에 해당 픽셀 단위의 부분 이미지와 중복되는 부분 이미지를 가지는 픽셀 단위가 존재하지 않는다고 추론할 경우, 해당 픽셀의 픽셀 단위별 데이터는 0의 값을 가지며, 색칠되지 않은 원으로 도시된다.
구체적으로, 제 1 중복 부분 데이터(311)의 경우, 이동형 카메라 1(100a)에 의해 촬영된 이미지에 대응하는 좌측 직사각형의 픽셀 단위별 데이터들 중에서, 미리 설정된 픽셀 단위를 기준으로 우측의 다섯 열(column)의 모든 행(row)의 픽셀 단위별 데이터가 1에 해당한다. 이는 이동형 카메라 1(100a)에 의해 촬영된 이미지에서 미리 설정된 픽셀 단위를 기준으로 우측의 다섯 열(column)의 모든 행(row)에 해당하는 픽셀들로 이루어진 부분 이미지가 이동형 카메라 2(100b)에 의해 촬영된 이미지의 일부와 중복된다는 것을 의미한다.
또한, 이동형 카메라 2(100b)에 의해 촬영된 이미지에 대응하는 가운데 직사각형의 픽셀 단위별 데이터들 중에서, 미리 설정된 픽셀 단위를 기준으로 우측 및 좌측의 세 열(column)의 가운데 부분의 다섯 행(row)의 픽셀 단위별 데이터가 1에 해당한다. 이는 이동형 카메라 2(100b)에 의해 촬영된 이미지에서 미리 설정된 픽셀 단위를 기준으로 우측 및 좌측의 세 열(column)의 가운데 부분의 다섯 행(row)에 해당하는 픽셀들로 이루어진 부분 이미지들이 이동형 카메라 1(100a) 및 이동형 카메라 3(100c)에 의해 촬영된 이미지들의 일부와 중복된다는 것을 의미한다.
또한, 이동형 카메라 3(100c)에 의해 촬영된 이미지에 대응하는 우측 직사각형의 픽셀 단위별 데이터들 중에서, 미리 설정된 픽셀 단위를 기준으로 좌측의 다섯 열(column)의 모든 행(row)의 픽셀 단위별 데이터가 1에 해당한다. 이는 이동형 카메라 3(100c)에 의해 촬영된 이미지에서, 미리 설정된 픽셀 단위를 기준으로 좌측의 다섯 열(column)의 모든 행(row)에 해당하는 픽셀들로 이루어진 부분 이미지가 이동형 카메라 2(100b)에 의해 촬영된 이미지 일부와 중복된다는 것을 의미한다.
이와 같이, 제어 장치(200)는 각각의 이동형 카메라들(100a, 100b, 100c)에 의해 촬영된 제 1 이미지들을 기초로 입력 벡터(300)를 생성한 후, 입력 벡터(300)를 컨볼루션 신경망(400)에 적용하여 출력인 제 1 중복 부분 데이터(311)를 획득할 수 있으며, 제 1 중복 부분 데이터(311)는 각각의 이동형 카메라가 촬영한 제 1 이미지에서 나머지 카메라들이 촬영한 제 1 이미지들과 중복되는 부분들의 위치 및 크기 데이터를 각각의 이동형 카메라별로 그룹화한 데이터일 수 있다. 이때, 도 3에 도시된 바와 같이, 제 1 중복 부분 데이터(311)는 한 가지 값으로 고정되지 않으며, 각각의 이동형 카메라(100a, 100b, 100c)의 상대적 위치에 따라 다르게 촬영되는 제 1 이미지들이 서로 어떻게 중복 되느냐에 따라 다른 값을 가질 수 있다(312, 313). 입력 벡터(300)를 획득하여 출력 벡터를 생성하는 컨볼루션 신경망(400)의 구체적인 구성 및 동작은 후술된다.
다음으로, 제어 장치(200)는 획득한 출력 벡터에 기초하여, 서로 다른 상수와 일대일 대응관계를 가지는 이동형 카메라들(100a, 100b, 100c)에게 상수들에 기초한 대형(formation)으로 촬영 위치를 정렬하도록 하는 위치 조정 데이터(320)를 생성할 수 있다. 여기서 상수들에 기초한 대형은, 상수들에 각각 대응하는 복수의 이동형 카메라들이 상수들에 기초하여 정의된 순서에 따라 원통형 좌표계(O)의 방위각(azimuthal) 방향으로 순차로 배치되는 대형일 수 있다. 즉, 원통형 좌표계(O)를 기준으로, 복수의 이동형 카메라들(100a, 100b, 100c)이 동일한 거리(r)와 높이(z) 값을 가지면서, 상수 1에 대응하는 이동형 카메라 1(100a)은 가장 큰 방위각(
Figure 112019078956616-pat00001
) 값을 가지고, 상수 2에 대응하는 이동형 카메라 2(100b)는 그 다음으로 큰 방위각(
Figure 112019078956616-pat00002
) 값을 가지고, 상수 3에 대응하는 이동형 카메라 3(100c)은 가장 작은 방위각(
Figure 112019078956616-pat00003
) 값을 가지는 대형일 수 있다. 이 때, 원통형 좌표계(O)의 원점은 미리 정의된 경비 구역에 설치된 일 센서일 수도 있고, 복수의 이동형 카메라들(100a, 100b, 100c) 중 하나의 이동형 카메라가 원통형 좌표계(O)의 원점으로 설정될 수도 있다.
한편, 각각의 이동형 카메라들(100a, 100b, 100c)이 상수들에 기초한 대형으로 이동하도록 제어하는 위치 조정 데이터(320)는 다음과 같은 과정을 통해 생성할 수 있다. 제어 장치는 제 1 중복 부분 데이터(311)에 기초하여, 이동형 카메라들(100a, 100b, 100c)의 제 1 상대적 위치들을 계산할 수 있다. 제어 장치는 컨볼루션 신경망(400)의 출력 벡터가 제 1 중복 부분 데이터(311)와 같을 경우, 각각의 이동형 카메라들(100a, 100b, 100c)이 촬영한 이미지들의 중복 관계로부터 각각의 카메라들(100a, 100b, 100c)이 서로에 대해 어떤 위치 관계를 가지는지 계산할 수 있으며, 이를 바탕으로 각각의 이동형 카메라들(100a, 100b, 100c)의 상대적인 위치들을 계산할 수 있다.
예를 들어, 컨볼루션 신경망(400)의 출력 벡터가 제 1 중복 부분 데이터(311)와 같을 경우, 제어 장치(200)는 각각의 이동형 카메라(100a, 100b, 100c)의 상대적인 촬영 위치가 원통형 좌표계(O)를 기준으로, 이동형 카메라 1(100a), 이동형 카메라 2(100b), 및 이동형 카메라 3(100c)의 높이(z)가 동일하다고 계산할 수 있다. 또한, 이동형 카메라 1(100a)은 가장 큰 방위각(
Figure 112019078956616-pat00004
) 값을 가지고, 이동형 카메라 2(100b)는 그 다음으로 큰 방위각(
Figure 112019078956616-pat00005
) 값을 가지고, 이동형 카메라 3(100c)은 가장 작은 방위각(φ) 값을 가지는 것을 계산할 수 있다. 또한, 이동형 카메라 1(100a) 및 이동형 카메라 3(100c)은 원통형 좌표계(O)의 원점으로부터 동일한 거리(r)만큼 떨어져 있고, 이동형 카메라 2(100b)는 이들보다 원점에 가까운 거리(r)에 위치한다는 것을 계산할 수 있다. 제어 장치(200)는 이러한 계산 결과들을 바탕으로 복수의 이동형 카메라들의 제 1 상대적 위치들을 계산할 수 있다
다음으로, 제어 장치(200)는 각각의 이동형 카메라들(100a, 100b, 100c)이 상수들에 기초한 대형으로 촬영 위치를 정렬했을 경우, 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 서로 중복되는 부분들이 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 차지하는 위치 및 크기가 미리 정의된 제 2 중복 부분 데이터와 일치하도록 만드는 복수의 이동형 카메라들(100a, 100b, 100c)의 제 2 상대적 위치들을 계산할 수 있다.
제 2 중복 부분 데이터는, 미리 설정된 픽셀 단위별 데이터(data per pixel unit)가 원으로 도시될 수 있으며, 각각의 이동형 카메라들(100a, 100b, 100c)이 상수들에 기초한 대형으로 촬영 위치를 정렬한다고 했을 때, 이동형 카메라 1(100a)에 의해 촬영될 이미지의 픽셀 단위별 데이터들은 좌측 직사각형에, 이동형 카메라 2(100b)에 의해 촬영될 이미지의 픽셀 단위별 데이터들은 가운데 직사각형에, 이동형 카메라 3(100c)에 의해 촬영될 이미지의 픽셀 단위별 데이터들은 우측 직사각형에 도시될 수 있다. 각 픽셀 단위별 데이터는 0 또는 1의 값을 가질 수 있다.
한편, 제어 장치(200)는 각각의 이동형 카메라들(100a, 100b, 100c)이 상수들에 기초한 대형으로 촬영 위치를 정렬했을 경우, 정렬된 상태의 각각의 이동형 카메라들(100a, 100b, 100c)이 촬영할 제 2 이미지들 간에 서로 중복되는 부분이 미리 정의된 제 2 중복 부분 데이터와 일치하도록 만드는 제 2 상대적 위치들을 계산할 수 있다. 보다 구체적으로, 제어 장치(200)는 원통형 좌표계(O)를 기준으로 각각의 카메라들이 동일한 거리(r)와 높이(z) 값을 가지면서; 이동형 카메라 1(100a)은 가장 큰 방위각(
Figure 112019078956616-pat00006
) 값을 가지고, 이동형 카메라 2(100b)는 그 다음으로 큰 방위각(
Figure 112019078956616-pat00007
) 값을 가지고, 이동형 카메라 3(100c)은 가장 작은 방위각(
Figure 112019078956616-pat00008
) 값을 가지며; 이동형 카메라 1(100a)과 이동형 카메라 2(100b) 사이의 방위각의 차이값과 이동형 카메라 2(100b)와 이동형 카메라 3(100c) 사이의 방위각의 차이값이 동일하고; 이동형 카메라 1(100a)과 이동형 카메라 2(100b) 사이의 방위각의 차이값은 이동형 카메라 1(100a)과 이동형 카메라 2(100b)에 의해 촬영될 이미지들의 중복되는 부분이 제 2 중복 부분 데이터처럼 미리 설정된 픽셀 단위를 기준으로 각각의 이미지의 서로 인접하는 우측 또는 좌측의 한 열(column)의 모든 행(row)에 해당하는 픽셀들로 이루어진 부분이 되도록 만드는 값인; 각각의 이동형 카메라들의 제 2 상대적 위치들을 계산하여 구할 수 있다.
다음으로, 제어 장치(200)는 제 1 상대적 위치들 및 제 2 상대적 위치들을 바탕으로, 각각의 이동형 카메라들이 제 1 상대적 위치들로부터 제 2 상대적 위치들로 각각 이동하도록 제어하는 위치 조정 데이터(320)를 생성할 수 있다. 제어 장치(200)는 이동형 카메라들에게 위치 조정 데이터(320)를 전송할 수 있으며, 각각의 이동형 카메라들(100a, 100b, 100c)은 위치 조정 데이터(320)에서 각자 자신에게 할당된 데이터를 식별하여, 각자 자신에게 할당된 이동 명령을 수행함으로써, 각각의 이동형 카메라들(100a, 100b, 100c)과 일대일 대응관계로 대응하는 상수들에 기초한 정확한 대형으로 촬영 위치를 정렬할 수 있다. 이동형 카메라들(100a, 100b, 100c)은 정렬이 이루어진 상태에서 제 2 이미지들을 촬영할 수 있다. 촬영된 각각의 제 2 이미지에서 나머지 제 2 이미지들과 중복되는 부분들은 제 2 중복 부분 데이터에서 픽셀 단위별 데이터가 1의 값을 가지는 부분들에 해당할 것이다. 촬영을 마친 복수의 이동형 카메라들(100a, 100b, 100c)은 제 2 이미지들을 제어 장치(200)에게 전송할 수 있다. 제 2 이미지들을 획득한 제어 장치(200)는 제 2 이미지들에 기초하여 목표 이미지를 획득할 수 있다.
도 4는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 컨볼루션 신경망(400)은 각각의 복수의 이동형 카메라들(100a, 100b, 100c)이 촬영한 이미지들을 통해 생성된 입력 벡터(300)에 기초하여, 각각의 이미지에서 나머지 이미지들과 중복되는 부분들의 위치 및 크기의 데이터인 제 1 중복 데이터(311)를 출력으로 생성할 수 있다. 컨볼루션 신경망(400)은 미리 구축된 데이터베이스로부터 커널(kernel) 또는 입력 벡터(300)를 로딩할 수 있고, 데이터베이스는 제어 장치에 포함된 메모리로 구현되거나 제어 장치와 유선, 무선, 또는 네트워크 등으로 연결 가능한 서버 등의 외부 장치로 구현될 수 있다.
기계 학습(machine learning)에 있어서, 신경망(neural network)의 일종인 컨볼루션 신경망(400)은 컨볼루션 연산을 수행하도록 설계된 컨볼루션 레이어(convolution layer, 410, 420)들을 포함한다. 컨볼루션 신경망(400)을 구성하는 컨볼루션 레이어(410, 420)는 적어도 하나의 커널을 이용하여 입력과 연관된 컨볼루션 연산을 수행할 수 있다. 도 4와 같이, 컨볼루션 신경망(400)이 복수의 컨볼루션 레이어(410, 420)들을 포함하면, 제어 장치는 각 컨볼루션 레이어(410, 420)에 대응하는 각 컨볼루션 연산을 수행함으로써 복수의 컨볼루션 연산들이 수행되도록 할 수 있다. 각 컨볼루션 레이어(410, 420)의 입력, 커널 및 출력의 크기는 해당 컨볼루션 레이어가 설계된 양상에 따라 정의될 수 있다.
구체적으로, 제 1 컨볼루션 레이어(410)는 입력 벡터(300)를 받아들이는 입력 레이어(input layer)로서의 역할을 수행하며, 입력 벡터(300)는 커널과 컨볼루션 되어 제 1 특징맵(feature map, 412)을 생성할 수 있다. 커널은 입력 벡터(300)의 명도 특징을 감지하거나 에지 특징을 감지하는 커널 등으로 구성될 수 있으며, 기 알려진 AlexNet 모델, ConvNet 모델, LeNet-5모델, GoogLeNet 모델 등에서의 커널들이 이용될 수 있다. 그러나 이에 제한되는 것은 아니며, 다양한 컨볼루션 신경망 모델들에서 이용되는 커널들이 이용될 수 있다.
이 과정에서, 제어 장치(200)는 제 1 특징맵(412)에 활성화함수(activation function, 411)를 적용할 수 있다. 이를 통해, 기계학습이 비선형적인 딥 러닝으로 이루어지도록 할 수 있다. 활성화함수는 기 알려진 시그모이드 함수(sigmoid function), 하이퍼볼릭 탄젠트 함수(hyperbolic tangent function), ReLU(rectified linear unit) 등이 이용될 수 있다. 그러나 이에 제한되는 것은 아니며, 다양한 컨볼루션 신경망 모델들에서 이용되는 활성화함수들이 이용될 수 있다.
다음으로, 제어 장치(200)는 제 1 특징맵들(412)을 풀링(pooling, 413)하여, 제 1 풀링된 특징맵(pooled feature map, 414)을 생성할 수 있다. 풀링은 기 알려진 최대값 풀링(max pooling), 평균값 풀링(mean pooling) 등이 이용될 수 있다. 그러나 이에 제한되는 것은 아니며, 다양한 컨볼루션 신경망 모델들에서 이용되는 풀링들이 이용될 수 있다.
풀링(413)을 통해 유의미한 정보는 남겨둔 채 컨볼루션 신경망(400)의 전체 노드(node)의 개수 및 전체 연산량을 줄일 수 있으므로, 보다 적은 컴퓨팅 파워를 가지고도 보다 빠른 속도로 목표하는 출력을 얻을 수 있다. 이를 통해, 제어 장치(200)가 전용 서버나 슈퍼 컴퓨터 등이 아닌 경우라도 컨볼루션 신경망(400)의 연산이 용이하게 수행되도록 할 수 있다.
한편, 제어 장치(200)가 컨볼루션 레이어를 통해 특징맵을 생성하고, 특징맵에 활성화함수를 적용한 후 풀링하는 과정은 복수 회 이루어질 수 있다. 구체적으로, 컨볼루션 신경망(400)의 제 2 컨볼루션 레이어(420)는 제 1 풀링된 특징맵(414)을 입력으로서 획득하여, 컨볼루션 연산을 통해 제 2 특징맵(422)을 생성할 수 있다. 이어서, 제 2 특징맵(422)에 활성화함수(421)가 적용될 수 있으며, 활성화함수가 적용된 제 2 특징맵(422)을 풀링(423)하여 제 2 풀링된 특징맵(424)을 생성할 수 있다.
또한, 도시되지 않았지만, 제 n 컨볼루션 레이어가 있을 수 있다. 제 n 컨볼루션 레이어는 제 n-1 풀링된 특징맵을 입력으로서 획득하여, 컨볼루션 연산을 통해 제 n 특징맵을 생성할 수 있다. 이어서, 제 n 특징맵에 활성화함수가 적용될 수 있으며, 활성화함수가 적용된 제 n 특징맵을 풀링하여 제 n 풀링된 특징맵을 생성할 수 있다. 이처럼 풀링된 특징맵을 복수 회 생성하는 과정을 통해, 유의미한 정보는 남겨둔 채 컨볼루션 신경망의 전체 노드의 개수 및 전체 연산량을 줄일 수 있으므로, 보다 적은 컴퓨팅 파워를 가지고도 보다 빠른 속도로 목표하는 출력을 얻을 수 있다.
마지막으로, 제어 장치(200)는 풀링된 특징맵(424)을 모두 풀리 커넥티드 레이어(fully connected layer, 490)에 연결하고, 풀리 커넥티드 레이어(490)로부터 출력인 제 1 중복 부분 데이터(311)를 생성할 수 있다.
도 5는 일 실시예에 따른 복수의 이동형 카메라들을 이용한 무인 경비 시스템을 위한 파노라마 이미지를 생성하는데 채용되는 컨볼루션 신경망의 학습 과정을 설명하기 위한 도면이다.
일 실시예에 따르면, 상술한 무인 경비 시스템을 제어하기 위해 제어 장치(200)의 메모리에 포함되는 학습 모델은 컨볼루션 신경망의 학습은 학습 장치에 의해 수행될 수 있다. 학습 장치는 서로 중복되는 부분들을 포함할 수 있는 복수의 이미지들에서 서로 중복되는 부분들의 위치 및 크기를 추론하는 컨볼루션 신경망을 학습시키는 장치로서, 예를 들어 소프트웨어 모듈, 하드웨어 모듈 또는 이들의 조합으로 구현될 수 있다.
학습 장치는 서로 중복되는 부분들을 포함할 수 있는 이미지들을 트레이닝 데이터(training data)로 획득하고, 획득한 트레이닝 데이터에 기초하여 컨볼루션 신경망의 입력 레이어에 대응하는 트레이닝 데이터의 입력 벡터를 생성할 수 있다. 이후, 학습 장치는 트레이닝 데이터의 입력 벡터를 컨볼루션 신경망에 적용하여, 컨볼루션 신경망에 의해 생성된 트레이닝 데이터의 출력 벡터를 획득할 수 있고, 이어서, 트레이닝 데이터의 출력을 레이블(label)과 비교하여 컨볼루션 신경망을 최적화할 수 있다.
구체적으로, 도 5를 참조하면, 학습 장치는 서로 중복되는 부분들을 포함할 수 있는 이미지들을 트레이닝 데이터(1100)로 삼을 수 있다. 학습 장치는 트레이닝 데이터(1100)에 기초하여 생성한 트레이닝 데이터의 입력(1110)을 컨볼루션 신경망(400)에 적용하여, 트레이닝 데이터의 출력(1120)을 획득할 수 있다. 보다 구체적으로, 컨볼루션 신경망(400)은 컨볼루션 레이어를 통해 입력된 데이터와 커널을 컨볼루션 연산하여 특징맵을 생성하는 단계; 특징맵에 활성화함수를 적용하는 단계; 및 활성화함수가 적용된 특징맵을 풀링하여 풀링된 특징맵을 생성하는 단계를 복수 회 수행할 수 있다. 이후, 컨볼루션 신경망(400)은 풀리 커넥티드 레이어를 통해 마지막으로 풀링된 특징맵으로부터 트레이닝 데이터의 출력(1120)을 생성할 수 있다. 다음으로, 학습 장치는 트레이닝 데이터의 출력(1120)과 레이블(1130)을 비교하여 컨볼루션 신경망(400)을 최적화할 수 있다(1140).
여기서, 레이블(1130)은 트레이닝 데이터(1100)의 각각의 이미지에서 나머지 이미지들과 중복되는 부분들의 위치 및 크기를 미리 기록한 데이터일 수 있다. 구체적으로, 레이블(1130)은 트레이닝 데이터(1100)의 각각의 이미지별로, 미리 설정된 픽셀 단위(pixel unit)마다 0 또는 1로 이루어진 픽셀 단위별 데이터(data per pixel unit)가 미리 부여된 데이터일 수 있다. 보다 구체적으로, 레이블(1130)은 트레이닝 데이터(1100)의 각각의 이미지별로, 미리 설정된 픽셀 단위에 대하여, 해당 이미지에서 나머지 이미지들과 중복되는 픽셀 단위들에 대해서는 픽셀 단위별 데이터로 1의 값이 부여되고, 해당 이미지에서 나머지 이미지들과 중복되지 않는 픽셀 단위들에 대해서는 픽셀 단위별 데이터로 0의 값이 미리 부여된 데이터일 수 있다.
한편, 트레이닝 데이터의 출력(1120)은 트레이닝 데이터(1100)의 각각의 이미지에서 나머지 이미지들과 중복되는 부분들의 위치 및 크기의 값을 컨볼루션 신경망(400)이 추론한 데이터일 수 있다. 구체적으로, 트레이닝 데이터의 출력(1120)은, 컨볼루션 신경망(400)의 추론 결과에 따라, 트레이닝 데이터(1100)의 각각의 이미지별로, 미리 설정된 픽셀 단위(pixel unit)마다 0 또는 1의 픽셀 단위별 데이터(data per pixel unit)를 가질 수 있다. 보다 구체적으로, 컨볼루션 신경망(400)은 트레이닝 데이터(1100)의 각각의 이미지별로, 미리 설정된 픽셀 단위에 대하여, 해당 이미지에서 나머지 이미지들과 중복된다고 추론한 픽셀 단위들에 대해서는 트레이닝 데이터의 출력(1120)의 대응하는 픽셀 단위별 데이터에 1의 값을 기록하고, 해당 이미지에서 나머지 이미지들과 중복되지 않는다고 추론한 픽셀 단위들에 대해서는 트레이닝 데이터의 출력(1120)의 대응하는 픽셀 단위별 데이터에 0의 값을 기록하는 과정을 통해, 트레이닝 데이터의 출력(1120)을 생성할 수 있다.
학습 장치는 위와 같은 추론 결과에 해당하는 트레이닝 데이터의 출력(1120)과 정답에 해당하는 레이블드 데이터(1130)를 비교하여 컨볼루션 신경망(400)을 최적화할 수 있다(1140). 트레이닝 데이터의 출력(1120)과 레이블드 데이터(1130)의 비교는 손실함수(loss function)를 통해 이루어질 수 있다. 손실함수는 기 알려진 평균 제곱 오차(mean squared error, MSE), 교차 엔트로피 오차(cross entropy error, CEE) 등이 이용될 수 있다. 그러나, 이에 제한되는 것은 아니며, 트레이닝 데이터의 출력(1120)과 레이블드 데이터(1130)의 편차 내지는 오차를 측정할 수 있다면, 다양한 컨볼루션 신경망 모델들에서 이용되는 손실함수들이 이용될 수 있다.
한편, 손실함수의 최소값을 추정하여, 손실함수가 최소값 추정치가 되도록 컨볼루션 신경망의 웨이트(weight)를 재설정하는 과정을 반복함으로써 컨볼루션 신경망(400)을 최적화할 수 있다. 컨볼루션 신경망(400)의 최적화를 위해 기 알려진 역전파(backpropagation) 알고리즘, 확률론적 경사하강법(stochastic gradient descent) 등이 이용될 수 있다. 그러나, 이에 제한되는 것은 아니며, 다양한 컨볼루션 신경망 모델들에서 이용되는 웨이트의 최적화 알고리즘이 이용될 수 있다.
도 6은 일 실시예에 따른 이동형 카메라(100)의 블록도이다.
도 6에 도시된 바와 같이, 일부 실시예에 따른 이동형 카메라(100)는, 통신부(101), 입력부(102), 센싱부(103), 메모리(104), 출력부(105), 구동부(106), 프로세서(107) 중에서 적어도 하나 이상을 포함할 수 있다. 그러나, 도 6에 도시된 구성 요소 모두가 이동형 카메라(100)의 필수 구성 요소인 것은 아니며, 도 6에 도시된 구성 요소보다 많은 구성 요소에 의해 이동형 카메라(100)가 구현될 수도 있고, 도 6에 도시된 구성 요소보다 적은 구성 요소에 의해 이동형 카메라(100)가 구현될 수도 있다.
통신부(101)는 이동형 카메라(100)가 제어 장치(200) 및 외부 기기(110) 중 하나 이상과 통신을 할 수 있도록 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(101)는 유, 무선 네트워크 또는 유선 직렬 통신 등을 통하여 소정 거리 이내의 다른 전자 장치와 데이터를 송수신할 수 있다. 네트워크는 일 실시예에 따른 전자 장치와 다양한 개체들(entities) 간의 유, 무선 통신을 가능하게 한다. 이동형 카메라(100)는 네트워크를 통해 다양한 개체들과 통신할 수 있고, 네트워크는 표준 통신 기술 및/또는 프로토콜들을 사용할 수 있다. 이때, 네트워크(network)는 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network) 등을 포함하나 이에 한정되지 않으며, 정보를 송, 수신할 수 있는 다른 종류의 네트워크가 될 수도 있음을 통신 기술 분야의 통상의 지식을 가진 자라면 알 수 있다.
입력부(102)는 이동형 카메라(100)를 제어하기 위한 데이터를 입력하는 수단을 포함할 수 있다. 예를 들어, 입력부(102)는 키보드(keyboard), 스위치(switch), 디스플레이와 결합된 터치 패드, 마이크 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
센싱부(103)는 이동형 카메라(100) 내에 포함되어 무인 경비 구역 내 발생한 이벤트에 대한 정보를 수집하는데 이용될 수 있다. 예를 들어, 센싱부(103)는 열 센서, 움직임 센서, 이미지 센서, 음향 센서, 초음파 센서, 적외선 센서, 지자기 센서(Magnetic sensor), 위치 센서(예컨대, GPS), 근접 센서, 및 RGB 센서 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
메모리(104)는 프로세서(107)와 결합하여 상술한 방법과 관련된 정보를 저장하거나 상술한 방법에 관한 프로그램 코드를 저장할 수 있다. 또한, 메모리(104)는 상술한 이동형 카메라(100)를 이용한 무인 경비 시스템의 제어 방법이 구현된 프로그램을 저장할 수 있다. 또, 메모리(104)는 제어 장치(200)로부터 전송된 제어 신호 및 제어 신호에 따라 프로세서(107)가 처리한 이동형 카메라(100)의 동작 결과를 저장할 수 있다. 메모리(104)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
출력부(105)는 제어 장치(200)로부터 송신된 제어 신호에 따라 음향 신호, 광 신호 또는 진동 신호를 출력할 수 있으며, 출력부(105)는 디스플레이부, 음향 출력부, 및 진동 모터를 포함할 수 있다.
구동부(106)는 이동형 카메라(100)를 이동시키기 위한 모터 또는 엔진 중에서 적어도 하나 이상을 포함할 수 있다. 그리고, 구동부(107)는 바퀴나 무한궤도 등과 연결되어 이동형 카메라(100)에 지상 주행 기능을 제공할 수도 있고, 프로펠러 등과 연결되어 이동형 카메라(100)에 비행 기능을 제공할 수도 있으며, 엔진 자체만으로 이동형 카메라(100)에 비행 기능을 제공할 수 있다.
프로세서(107)는 프로그램을 실행하고, 이동형 카메라(100)를 제어할 수 있다. 프로세서(107)는 제어 장치(200), 외부 기기(110) 또는 사용자로부터 수신된 입력에 기초하여 이동형 카메라(100)가 이미지를 획득하기 위한 애플리케이션을 실행하거나, 제어 장치(200)로부터 수신된 위치 조정 데이터에 기초하여 이동형 카메라(100)의 위치를 이동하도록 제어할 수 있다. 또, 프로세서(107)는 센싱부(103)와 결합하여 제어 장치(200), 외부 기기(110), 또는 사용자의 명령에 의해 무인 경비 구역에 발생한 열, 움직임, 이미지, 음향, 초음파, 적외선, 객체와의 거리, 및 색상에 관한 정보, 지자기 정보, 위치 정보 등을 수집하도록 센싱부(103)를 제어할 수 있다. 또한, 프로세서(107)는 출력부(105)와 결합하여 디스플레이에 이미지를 표시하거나, 음향 신호 및 진동을 발생시키도록 출력부(105)를 제어할 수 있다. 프로세서(107)에 의해 실행되는 프로그램의 코드는 메모리(104)에 저장될 수 있다. 이동형 카메라(100)는 입력부(102) 및 출력부(105)를 통하여 외부 기기(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
프로세서(107)는 제어 장치(200)의 입력에 기초하여, 목표 이미지 내에서 선택된 객체의 움직임을 추적할 수 있다. 예를 들어, 복수의 이동형 카메라(100) 각각에 포함된 프로세서(107)는 위치 센서(예컨대, GPS)에 기초하여 이동형 카메라(100) 각각에 대한 위치 정보를 획득하고, 제어 장치(200)로부터 목표 이미지 내에서 선택된 객체 정보를 수신함에 따라, 복수의 이동형 카메라(100) 중 하나의 이동형 카메라(100)와 객체와의 상대적인 위치 정보를 획득하여, 객체의 이동 경로를 추적할 수 있다. 이러한 복수의 이동형 카메라들(100)의 동작은 프로세서(107)가 구동부(106)의 동작을 제어함으로써 수행될 수 있다.
도 7은 일 실시예에 따른 제어 장치(200)의 블록도이다.
도 7을 참조하면, 제어 장치(200)는 통신부(201), 입력부(202), 메모리(203), 출력부(204), 프로세서(205) 중에서 적어도 하나 이상을 포함할 수 있다. 그러나, 도 7에 도시된 구성 요소 모두가 제어 장치(200)의 필수 구성 요소인 것은 아니며, 도 7에 도시된 구성 요소보다 많은 구성 요소에 의해 제어 장치(200)가 구현될 수도 있고, 도 7에 도시된 구성 요소보다 적은 구성 요소에 의해 제어 장치(200)가 구현될 수도 있다. 앞서, 도 6의 이동형 카메라(100)에 포함된 구성의 설명과 중복되는 내용은 생략한다.
통신부(201)는 제어 장치(200)가 이동형 카메라(100)와 외부 기기(110)와 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다.
입력부(202)는 제어 장치(200)를 제어하기 위한 데이터를 입력하는 수단을 포함할 수 있다.
메모리(203)는 상술한 무인 경비 시스템의 제어 방법과 관련된 정보를 저장하거나 상술한 방법이 구현된 프로그램을 저장할 수 있다. 또, 메모리(203)는 모델 저장부를 포함할 수 있고, 모델 저장부는 목표 이미지를 생성하기 위한 컨볼루션 신경망으로 구성된 학습 모델을 저장할 수 있다. 또한, 메모리(203)의 모델 저장부는 무인 경비 시스템을 제어하기 위한 제어 신호를 생성하도록 뉴럴 네트워크로 구성된 이벤트 유형 결정 모델 및 이벤트 심각도 결정 모델을 저장할 수 있다.
출력부(204)는 프로세서(205)로부터 처리된 출력 결과를 음향 신호, 광 신호 또는 진동 신호로서 출력할 수 있으며, 출력부(105)는 디스플레이부, 음향 출력부, 및 진동 모터를 포함할 수 있다.
프로세서(205)는 도 1 내지 도 6을 통하여 상술한 적어도 하나의 방법을 수행할 수 있다. 또한, 프로세서(205)는 러닝 프로세서를 추가적으로 포함하여, 전술한 컨볼루션 신경망의 학습 방법, 이벤트 유형 결정 모델 및 이벤트 심각도 결정 모델의 학습 방법을 수행할 수도 있다.
프로세서(205)는 이동형 카메라(100) 또는 외부 기기(110)로부터 송신된 입력 신호를 수신하도록 통신부(201)를 제어할 수 있고, 또는 사용자로부터 직접 입력을 수신하도록 입력부(202)를 제어할 수 있다. 프로세서(205)는 이동형 카메라(100)로부터 수신된 이미지 데이터에 기초하여 목표 이미지를 획득하기 위한 애플리케이션을 실행하거나, 이동형 카메라(100)에 기초하여 도출된 위치 조정 데이터를 이동형 카메라(100)로 전송하도록 출력부(204)를 제어할 수 있다. 또, 프로세서(205)는 센싱부(103)로부터 무인 경비 구역 내의 열, 움직임, 이미지, 음향, 초음파, 적외선, 객체와의 거리, 및 색상에 관한 정보, 지자기 정보, 위치 정보 등을 수집할 수 있고, 무인 경비 구역 내의 각종 정보를 이벤트 유형 결정 모델 및 이벤트 심각도 결정 모델의 입력 벡터로 인가하여 출력 신호의 정확도를 향상시킬 수 있다. 또한, 프로세서(205)는 이벤트 유형 결정 모델 및 이벤트 심각도 결정 모델의 출력 신호에 기초하여 무인 경비 시스템을 제어하기 위한 보안 동작을 결정할 수 있다. 결정된 보안 동작은 무인 경비 시스템의 각종 센서로 송신되어 무인 경비 시스템의 보안 동작을 제어할 수 있다. 프로세서(205)에 의해 실행되는 프로그램의 코드는 메모리(203)에 저장될 수 있다. 제어 장치(200)는 입력부(202) 및 출력부(204)를 통하여 외부 기기(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
프로세서(205)는 복수의 이동형 카메라들(100)의 이미지 데이터를 기초로 생성된 목표 이미지 내에서 추적의 대상이 되는 객체를 결정할 수 있다. 또한, 프로세서(205)는 객체를 추적하기 위해, 이상 구역 내 배치된 일 센서를 복수의 이동형 카메라들(100)의 원점(대형 기준점)으로 결정하고, 결정된 원점을 기준으로 복수의 이동형 카메라들(100)의 대형을 결정할 수 있다.
일 실시예에서, 프로세서(205)는 복수의 이동형 카메라들(100) 중 하나의 이동형 카메라를 선택하여 원점(대형 기준점)으로 설정할 수 있다. 한편, 복수의 이동형 카메라들(100) 중 원점이 되는 이동형 카메라는 외부 기기(110)를 통해 사용자의 입력에 기초하여 결정될 수도 있다. 또한, 프로세서(205)는 원점으로 설정된 이동형 카메라가 객체를 추적하도록 설정하고, 원점으로 설정된 이동형 카메라가 미리 설정된 경로를 따라 이동하면서 순찰하도록 제어할 수 있다.
일 실시예에서, 프로세서(205)는 가상의 지점을 대형 기준점으로 설정할 수 있다. 가상의 지점은 객체가 없는 허공의 지점일 수도 있으며, 특정 객체가 위치한 지점일 수도 있다. 예컨대, 프로세서(205)는 이상 정보가 감지된 센서가 위치하는 지점을 대형 기준점으로 결정할 수도 있다.
도 8은 일 실시예에 따른 복수의 이동형 카메라들이 객체를 인식하고, 객체의 경로를 추적하는 예시를 나타내는 도면이다.
일 실시예에 따르면, 제어 장치(200)는 미리 설정된 무인 경비 구역(500)에 센서 이상(700)을 감지할 수 있다. 이 때, 제어 장치(200)는 서로 다른 상수(constant)들에 각각 대응하는 복수의 이동형 카메라들(100a, 100b, 100c)을 미리 설정된 무인 경비 구역(500) 중 센서 이상(700)이 발생한 지점으로 배치할 수 있다. 제어 장치(200)는 미리 설정된 무인 경비 구역(500)에 배치된 일 센서(100d)를 원점(또는 대형 기준점)으로 설정할 수 있다. 도 8에서 편의상 센서(100d)로 도시하였지만, 센서(100d)는 후술하는 바와 같이 이동형 카메라일 수도 있다. 제어 장치(200)는 원점(100d)을 중심으로 이동형 카메라들(100a, 100b, 100c)이 소정의 거리를 유지하도록, 이동형 카메라들의 위치를 미리 설정된 값으로 조정할 수 있다. 이 때, 복수의 이동형 카메라(100a, 100b, 100c)들 각각은 원통형 좌표계(cylindrical coordinate, O)를 통해 표현될 수 있고, 이동형 카메라 1(100a)은 방위각(φ)의 값이 가장 큰 관심 영역의 세부 영역을 촬영하고, 이동형 카메라 2(100b)는 방위각(φ)의 값이 그 다음으로 큰 관심 영역의 세부 영역을 촬영하고, 이동형 카메라 3(100c)은 방위각(φ)의 값이 가장 작은 관심 영역의 세부 영역을 촬영할 수 있다. 이동형 카메라들(100a, 100b, 100c)은, 앞서 상술한 목표 이미지 획득 방법에 의해, 센서 이상(700)이 발생한 부근의 제 1 이미지들을 획득할 수 있다.
구체적으로, 제어 장치(200)는 획득한 제 1 이미지들에 기초하여 컨볼루션 신경망의 입력 레이어에 대응하는 제 1 입력 벡터를 생성하고, 제 1 입력 벡터를 컨볼루션 신경망에 입력하여 출력 벡터를 획득할 수 있다. 이어서, 제어 장치(200)는 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 복수의 이동형 카메라들(100a, 100b, 100c)의 촬영 위치를 정렬하는 위치 조정 데이터를 생성하고, 위치 조정 데이터에 따른 대형으로 복수의 이동형 카메라들(100a, 100b, 100c)을 정렬할 수 있다. 정렬된 복수의 이동형 카메라들(100a, 100b, 100c)은 제 2 이미지들을 획득할 수 있고, 제어 장치(200)는 제 2 이미지들에 기초하여 센서 이상(700)이 감지된 구역의 파노라마 이미지를 생성할 수 있다. 구체적인 파노라마 이미지 생성 방법은 앞서 설명한 바와 중복되므로 생략한다.
다른 실시예에 따르면, 제어 장치(200)는 미리 설정된 무인 경비 구역(500)에 센서 이상(700) 및 이상 객체(600)가 존재한다는 것을 감지할 수 있다. 이 때, 제어 장치(200)는 서로 다른 상수(constant)들에 각각 대응하는 복수의 이동형 카메라들(100a, 100b, 100c, 100d)을 미리 설정된 무인 경비 구역(500) 중 센서 이상(700)이 발생한 지점으로 배치할 수 있다.
이어서, 제어 장치(200)는 배치된 복수의 이동형 카메라들(100a, 100b, 100c, 100d)로부터 제 1 이미지들을 획득할 수 있다. 획득한 제 1 이미지들로부터 이상 객체(600)를 확인하고, 제어 장치는 복수의 이동형 카메라들(100a, 100b, 100c) 중 일 이동형 카메라(100d)를 객체 추적 카메라로 설정할 수 있다. 또는, 사용자가 터치 스크린을 포함하는 외부 기기의 디스플레이에 나타난 제 1 이미지들을 기초로, 복수의 이동형 카메라들(100a, 100b, 100c, 100d) 중 일 이동형 카메라(100d)를 객체 추적 카메라로 설정할 수 있다. 설정된 객체 추적 카메라(100d)는 원점(또는 대형 기준점)을 의미할 수 있다. 설정된 객체 추적 카메라(100d)는 이상 객체(600)와 미리 설정된 거리를 유지하도록 상대적인 위치가 결정될 수 있다. 이 때, 객체 추적 카메라(100d)는 원점으로 설정되어, 객체 추적 카메라(100d)를 중심으로 나머지 이동형 카메라들(100a, 100b, 100c)이 소정의 거리를 유지하도록, 이동형 카메라들의 위치가 미리 설정된 값으로 조정될 수 있다. 또한, 원점(100d)과 다른 복수의 이동형 카메라(100a, 100b, 100c) 사이의 거리는 원점(100d)과 이상 객체(600)와의 거리보다 항상 작게 설정된다. 이동형 카메라들(100a, 100b, 100c, 100d)은, 앞서 상술한 목표 이미지 획득 방법에 의해, 이상 객체(600)가 존재하는 부근의 제 2 이미지들을 획득할 수 있다.
제어 장치(200)는 획득한 제 2 이미지들에 기초하여 컨볼루션 신경망의 입력 레이어에 대응하는 제 1 입력 벡터를 생성하고, 입력 벡터를 컨볼루션 신경망에 입력하여 출력 벡터를 획득할 수 있다. 이어서, 제어 장치(200)는 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 복수의 이동형 카메라들(100a, 100b, 100c)의 촬영 위치를 정렬하는 위치 조정 데이터를 생성하고, 위치 조정 데이터에 따른 대형으로 복수의 이동형 카메라들(100a, 100b, 100c)을 정렬할 수 있다. 정렬된 복수의 이동형 카메라들(100a, 100b, 100c)은 제 3 이미지들을 획득할 수 있고, 제어 장치(200)는 제 3 이미지들에 기초하여 센서 이상(700)이 감지된 구역의 파노라마 이미지를 생성할 수 있다. 구체적인 파노라마 이미지 생성 방법은 앞서 설명한 바와 중복되므로 생략한다.
한편, 제어 장치(200)는 복수의 이동형 카메라들(100a, 100b, 100c) 중 일 이동형 카메라(100d)를 객체 추적 카메라로 설정할 경우, 객체 추적 카메라(100d)에서 획득한 제 1 이미지의 전체 픽셀 중 이상 객체(600)에 해당하는 픽셀이 미리 설정된 범위 내(예컨대, 전체 픽셀 중 이상 객체에 해당하는 픽셀이 전체 픽셀의 60-70% 범위 내)에 있도록 객체 추적 카메라(100d)와 이상 객체(600)의 거리를 조정할 수 있다.
한편, 제어 장치(200)는 파노라마 이미지를 생성한 후에, 생성된 파노라마 이미지로부터 이상 객체의 인식률을 검출할 수 있다. 생성된 파노라마 이미지에서 검출된 이상 객체(600)의 인식률이 미리 설정된 기준 값(예컨대, 전체 픽셀 중 이상 객체에 해당하는 픽셀이 전체 픽셀의 60-70% 범위 내)을 충족시키지 못하는 경우, 복수의 이동형 카메라들(100a, 100b, 100c)의 대형을 검출된 이상 객체(600)를 기준으로 미리 정해진 방향으로 이동하도록 위치 조정 데이터의 방위각을 재설정하는 것을 포함할 수 있다. 이 때, 인식된 이상 객체(600)의 일측에 장애물이 발견된 경우, 복수의 이동형 카메라들(100a, 100b, 100c)의 대형을 인식된 이상 객체(600)를 기준으로 장애물의 반대 방향으로 이동하도록 위치 조정 데이터의 방위각을 재설정하는 것을 더 포함할 수 있다. 이러한 복수의 이동형 카메라들(100a, 100b, 100c)의 위치 조정 데이터의 방위각을 재설정하는 것은 제어 장치(200) 또는 외부 기기(110)를 통한 사용자의 입력에 따라 제어될 수도 있다.
한편, 제어 장치(200)는 객체 추적 카메라(100d)로 설정된 이동형 카메라를 이상 객체(600)를 추적하도록 설정할 수 있다. 객체 추적 카메라(100d)는 열 센서, 움직임 센서, 이미지 센서, 음향 센서, 초음파 센서, 적외선 센서, 지자기 센서(Magnetic sensor), 위치 센서(예컨대, GPS), 근접 센서, 및 RGB 센서 중 적어도 하나를 포함할 수 있으므로, 센서로부터 감지된 정보 중 하나를 기초로 이상 객체(600)의 이동 경로에 따라 객체 추적 카메라(100d)를 이동시키도록 제어될 수 있다. 객체 추적 카메라(100d)가 이동함에 따라, 객체 추적 카메라(100d)와 상대적인 위치를 유지하는 복수의 이동형 카메라들(100a, 100b, 100c)도 객체와의 소정의 거리를 유지하며 이동할 수 있다. 또는, 사용자가 제어 장치(200) 및 외부 기기(110)를 통해 복수의 이동형 카메라들(100a, 100b, 100c)에 의해 이상 객체(600)에 대한 이미지들을 획득하도록 제어할 수 있다. 제어 장치(200) 또는 사용자의 외부 기기(110)에 의해 객체 추적 카메라(100d)가 이상 객체의 경로를 추적하도록 제어될 경우, 복수의 이동형 카메라들(100a, 100b, 100c)의 타임 스탬프는 동기화되고, 미리 설정된 타임 스탬프 주기에 따라 이상 객체의 목표 이미지가 획득될 수 있다. 이로 인해, 이상 객체(600)의 이동 경로에 따른 정밀한 목표 이미지를 주기적으로 획득할 수 있다.
한편, 무인 경비 구역을 주기적으로 순찰하기 위해, 객체 추적 카메라(100d)는 무인 경비 구역(500) 내 미리 설정된 경로를 따라 이동하는 것을 포함할 수 있다. 예를 들어, 객체 추적 카메라(100d)는 무인 경비 구역(500) 내 미리 설정된 경로를 따라 이동함으로써, 객체 추적 카메라(100d)와 상대적인 위치를 유지하는 복수의 이동형 카메라(100a, 100b, 100c)가 미리 설정된 경로의 목표 이미지를 획득할 수 있다. 한편, 비정상 이벤트가 발생한 경우, 객체 추적 카메라(100d)가 무인 경비 구역(500) 내 미리 설정된 경로를 따라 이동함으로써, 제어 장치(200) 또는 사용자는 획득한 미리 설정된 경로의 목표 이미지들에 기초하여, 무인 경비 구역(500) 내의 위험 구역과 안전 구역을 설정할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (5)

  1. 무인 경비 시스템 제어 장치에 의해 수행되는 무인 경비 시스템을 제어하기 위한 방법으로서,
    미리 설정된 무인 경비 구역에 구비된 하나 이상의 센서에 대응하는 이상 신호를 감지하는 단계;
    서로 다른 상수(constant)들에 각각 대응하는 복수의 이동형 카메라들을 상기 무인 경비 구역 중 센서 이상 신호가 감지된 이상 구역으로 배치하도록 제어하는 단계;
    상기 이상 구역에 배치된 상기 복수의 이동형 카메라들에 의해 촬영된 제 1 이미지들을 획득하는 단계;
    획득된 상기 제 1 이미지들에 기초하여 컨볼루션 신경망(convolution neural network)의 입력 레이어(input layer)에 대응하는 입력 벡터를 생성하는 단계;
    상기 입력 벡터를 컨볼루션 신경망에 입력하여 출력 벡터를 획득하는 단계;
    상기 출력 벡터에 기초하여, 상수들에 기초한 대형(formation)으로 상기 복수의 이동형 카메라들의 촬영 위치들을 정렬하는 위치 조정 데이터를 생성하는 단계;
    상기 위치 조정 데이터에 따른 대형으로 상기 복수의 이동형 카메라들을 정렬하는 단계;
    정렬된 상기 복수의 이동형 카메라들에 의해 촬영된 제 2 이미지들을 획득하는 단계;
    획득한 상기 제 2 이미지들에 기초하여 상기 이상 구역의 파노라마 이미지를 생성하는 단계;
    생성된 상기 파노라마 이미지를 이벤트 유형 결정 모델의 입력 레이어에 인가하는 단계;
    상기 이벤트 유형 결정 모델의 출력 레이어로부터 이벤트 유형 정보를 획득하는 단계;
    상기 파노라마 이미지를 상기 이벤트 유형 정보에 대응하는 이벤트 심각도 결정 모델의 입력 레이어로 인가하는 단계;
    상기 이벤트 심각도 결정 모델의 출력 레이어로부터 상기 이벤트 유형 정보에 대응하는 이벤트 심각도 정보를 획득하는 단계;
    상기 이벤트 유형 정보 및 상기 이벤트 심각도 정보에 기초하여 보안 동작을 결정하는 단계;
    상기 보안 동작에 대응하는 제어 동작을 수행하는 단계
    를 포함하고,
    상기 이벤트 유형 결정 모델 및 상기 이벤트 심각도 결정 모델은 뉴럴 네트워크로 구성되는 것인,
    무인 경비 시스템을 제어하기 위한 방법.
  2. 제 1항에 있어서,
    상기 출력 벡터는
    상기 복수의 이동형 카메라들 중 어느 하나의 이동형 카메라가 촬영한 제 1 이미지에서 나머지 이동형 카메라들이 촬영한 제 1 이미지들과 중복되는 부분들의 위치 및 크기 데이터를 각각의 이동형 카메라들별로 그룹화한 제 1 중복 부분 데이터를 포함하며,
    상기 대형은
    상기 상수들에 기초하여 정의된 순서에 따라 기준 위치의 방위각(azimuthal) 방향으로 상기 상수들에 각각 대응하는 상기 복수의 이동형 카메라들이 순차로 배치되는 대형이며,
    상기 위치 조정 데이터를 생성하는 단계는
    상기 제 1 중복 부분 데이터에 기초하여, 상기 복수의 이동형 카메라들의 제 1 상대적 위치들을 획득하는 단계;
    상기 복수의 이동형 카메라들이 상기 대형으로 촬영 위치를 정렬했을 경우, 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 서로 중복되는 부분들이 상기 인접하게 되는 이동형 카메라들에 의해 촬영되는 제 2 이미지들에서 차지하는 위치 및 크기가 미리 정의된 제 2 중복 부분 데이터와 일치하도록 만드는 상기 복수의 이동형 카메라들의 제 2 상대적 위치들을 계산하는 단계;
    상기 복수의 이동형 카메라들이 상기 제 1 상대적 위치들로부터 상기 제 2 상대적 위치들로 각각 이동하도록 제어하는 위치 조정 데이터를 생성하는 단계
    를 포함하는,
    무인 경비 시스템을 제어하기 위한 방법.
  3. 제 1항에 있어서,
    복수의 이동형 카메라들을 상기 이상 구역으로 배치하도록 제어하는 단계는
    상기 이상 구역 내에 이상 객체를 감지하는 단계;
    상기 이상 객체를 추적하도록 상기 복수의 이동형 카메라들 중 어느 하나의 이동형 카메라를 객체 추적 카메라로 설정하는 단계;
    상기 객체 추적 카메라로 설정되지 않은 나머지 이동형 카메라들이 상기 객체 추적 카메라로 설정된 이동형 카메라를 기준으로 미리 설정된 거리를 유지하도록, 상기 나머지 이동형 카메라들의 상대적 위치를 결정하는 단계
    를 포함하고,
    상기 객체 추적 카메라는
    열 센서, 움직임 센서, 이미지 센서, 음향 센서, 초음파 센서, 적외선 센서, 지자기 센서(Magnetic sensor), 위치 센서(예컨대, GPS), 근접 센서, 및 RGB 센서 중 하나 이상을 포함하고,
    상기 객체 추적 카메라와 상기 이상 객체와의 거리는
    상기 나머지 이동형 카메라들과 상기 이상 객체와의 거리보다 큰 것인,
    무인 경비 시스템을 제어하기 위한 방법.
  4. 제 3항에 있어서,
    상기 객체 추적 카메라는 상기 무인 경비 구역 내 미리 설정된 경로를 따라 이동하는 것인,
    무인 경비 시스템을 제어하기 위한 방법.
  5. 제 3항에 있어서,
    획득한 상기 제 2 이미지들에 기초하여 상기 이상 구역의 파노라마 이미지를 생성하는 단계 후에,
    생성된 상기 파노라마 이미지로부터 상기 이상 객체를 검출하는 단계; 및
    상기 파노라마 이미지에서 검출된 상기 이상 객체의 인식률이 미리 설정된 기준 값을 충족하지 못하는 경우, 상기 복수의 이동형 카메라의 대형을 상기 이상 객체를 기준으로 미리 정해진 방향으로 이동하도록 상기 위치 조정 데이터의 방위각을 재설정하는 단계
    를 더 포함하는,
    무인 경비 시스템을 제어하기 위한 방법.

KR1020190093607A 2019-08-01 2019-08-01 무인 경비 시스템의 제어 방법 및 그 장치 KR102054366B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190093607A KR102054366B1 (ko) 2019-08-01 2019-08-01 무인 경비 시스템의 제어 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190093607A KR102054366B1 (ko) 2019-08-01 2019-08-01 무인 경비 시스템의 제어 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR102054366B1 true KR102054366B1 (ko) 2019-12-11

Family

ID=69003320

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190093607A KR102054366B1 (ko) 2019-08-01 2019-08-01 무인 경비 시스템의 제어 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102054366B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113096128A (zh) * 2021-06-08 2021-07-09 上海启迪睿视智能科技有限公司 一种基于软件的确保相机图片对齐的方法
CN116704688A (zh) * 2023-08-04 2023-09-05 自然资源部第一海洋研究所 海洋浮标被动防御方法及系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970003277A (ko) 1995-06-30 1997-01-28 김광호 반도체 메모리장치의 로우 리던던시
KR100974465B1 (ko) 2008-03-11 2010-08-10 주식회사 대성지주 센서가 연결된 전등스위치를 이용한 전등제어 및 무인경비시스템
KR101049341B1 (ko) 2009-08-03 2011-07-13 케이티텔레캅 주식회사 아이피 기반의 기계경비 신호전송망 다중화 시스템
KR101224675B1 (ko) 2011-05-17 2013-01-22 케이티텔레캅 주식회사 스마트폰을 이용한 경비주장치 연동 감시시스템
KR20160119956A (ko) * 2015-04-07 2016-10-17 (주)코아텍 드론을 이용한 추적 시스템
KR20170101516A (ko) * 2016-02-29 2017-09-06 한국전자통신연구원 무인 항공기를 이용한 화재 감시 장치 및 방법
KR101939349B1 (ko) * 2018-07-09 2019-04-11 장현민 기계학습모델을 이용하여 자동차용 어라운드 뷰 영상을 제공하는 방법
KR20190044203A (ko) * 2017-10-20 2019-04-30 주식회사 삼진엘앤디 지구의 치안 유지를 위한 무인 비행체 순찰 시스템 및 순찰 방법
KR20190066960A (ko) * 2017-12-06 2019-06-14 주식회사 팬스컴스 드론 동시제어를 이용한 디지털 사이니지 방법

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970003277A (ko) 1995-06-30 1997-01-28 김광호 반도체 메모리장치의 로우 리던던시
KR100974465B1 (ko) 2008-03-11 2010-08-10 주식회사 대성지주 센서가 연결된 전등스위치를 이용한 전등제어 및 무인경비시스템
KR101049341B1 (ko) 2009-08-03 2011-07-13 케이티텔레캅 주식회사 아이피 기반의 기계경비 신호전송망 다중화 시스템
KR101224675B1 (ko) 2011-05-17 2013-01-22 케이티텔레캅 주식회사 스마트폰을 이용한 경비주장치 연동 감시시스템
KR20160119956A (ko) * 2015-04-07 2016-10-17 (주)코아텍 드론을 이용한 추적 시스템
KR20170101516A (ko) * 2016-02-29 2017-09-06 한국전자통신연구원 무인 항공기를 이용한 화재 감시 장치 및 방법
KR20190044203A (ko) * 2017-10-20 2019-04-30 주식회사 삼진엘앤디 지구의 치안 유지를 위한 무인 비행체 순찰 시스템 및 순찰 방법
KR20190066960A (ko) * 2017-12-06 2019-06-14 주식회사 팬스컴스 드론 동시제어를 이용한 디지털 사이니지 방법
KR101939349B1 (ko) * 2018-07-09 2019-04-11 장현민 기계학습모델을 이용하여 자동차용 어라운드 뷰 영상을 제공하는 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113096128A (zh) * 2021-06-08 2021-07-09 上海启迪睿视智能科技有限公司 一种基于软件的确保相机图片对齐的方法
CN116704688A (zh) * 2023-08-04 2023-09-05 自然资源部第一海洋研究所 海洋浮标被动防御方法及系统

Similar Documents

Publication Publication Date Title
US20220157136A1 (en) Facility surveillance systems and methods
Wang et al. Detecting and tracking vehicles in traffic by unmanned aerial vehicles
Saska et al. System for deployment of groups of unmanned micro aerial vehicles in GPS-denied environments using onboard visual relative localization
US20230043342A1 (en) Non-contact temperature measurement in thermal imaging systems and methods
Somaldo et al. Developing smart COVID-19 social distancing surveillance drone using YOLO implemented in robot operating system simulation environment
US20130169801A1 (en) Visual Command Processing
KR102036136B1 (ko) 멀티 드론 운용 시스템 및 방법
KR102054366B1 (ko) 무인 경비 시스템의 제어 방법 및 그 장치
CN105526916A (zh) 动态图像遮蔽系统和方法
CN109657580B (zh) 一种城市轨道交通闸机通行控制方法
KR102022695B1 (ko) 드론 착륙을 제어하기 위한 방법 및 장치
Ivanovas et al. Block matching based obstacle avoidance for unmanned aerial vehicle
Avola et al. Automatic estimation of optimal UAV flight parameters for real-time wide areas monitoring
KR102096191B1 (ko) 모니터링
Rudol Increasing autonomy of unmanned aircraft systems through the use of imaging sensors
KR102027951B1 (ko) 집적 회로의 제조 공정을 위한 제어 방법 및 장치
Zhifeng et al. Ellipsoidal method for UAVs target tracking and recognition
KR102099286B1 (ko) 실내 전기 설비를 설계 및 시공하기 위한 제어 방법 및 장치
KR102146650B1 (ko) Cctv 관제 시스템의 설계 방법 및 장치
WO2022226214A1 (en) Audio event detection in health screening systems and methods
KR102065893B1 (ko) 클린룸용 와이퍼 제조 공정을 제어하기 위한 방법 및 장치
Meng et al. Arpico: Using pictures to build localization service for indoor iot applications
KR102059305B1 (ko) 엘리베이터용 패널 제조 공정의 제어 방법 및 장치
Qin et al. Study of robot localization and control based on motion capture in indoor environment
Suralkar et al. An Autonomous Intelligent Ornithopter

Legal Events

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