KR20190038137A - 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치 - Google Patents

채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치 Download PDF

Info

Publication number
KR20190038137A
KR20190038137A KR1020170128209A KR20170128209A KR20190038137A KR 20190038137 A KR20190038137 A KR 20190038137A KR 1020170128209 A KR1020170128209 A KR 1020170128209A KR 20170128209 A KR20170128209 A KR 20170128209A KR 20190038137 A KR20190038137 A KR 20190038137A
Authority
KR
South Korea
Prior art keywords
channel
learning data
learning
neural network
input image
Prior art date
Application number
KR1020170128209A
Other languages
English (en)
Other versions
KR102478335B1 (ko
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 KR1020170128209A priority Critical patent/KR102478335B1/ko
Publication of KR20190038137A publication Critical patent/KR20190038137A/ko
Application granted granted Critical
Publication of KR102478335B1 publication Critical patent/KR102478335B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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
    • 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]

Landscapes

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

Abstract

채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치를 개시한다.
각 채널별 입력영상으로부터 객체를 검출하여 인식하도록 학습된 신경망 기반의 복수의 채널별 객체 탐지부; 및 상기 각 채널별 입력영상 및 상기 복수의 채널별 객체 탐지부로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집하는 학습 데이터 수집부; 수집한 학습 데이터를 이용하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 학습부를 포함하는 영상분석 서버장치를 제공한다.

Description

채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치{Image Analysis Method and Server Apparatus for Per-channel Optimization of Object Detection}
본 발명은 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
CCTV(Closed Circuit Television)와 DVR(Digital Video Recorder)를 활용한 감시 시스템은 관리자가 육안으로 단순히 모니터링하고 영상을 저장하는 기술에서 나아가 지능형 영상감시 시스템(Intelligent Surveillance System)으로 영역을 넓히고 있다. 지능형 영상감시 시스템은 카메라로부터 입력되는 영상정보를 실시간으로 분석하여 객체를 탐지, 인식, 분류, 추적 등을 할 수 있는 형태의 시스템을 말한다. 지능형 영상감지 시스템은 객체가 보안과 관련된 이벤트를 발생시켰는지를 판단 및 분석하여 관리자에게 정보를 제공하거나 데이터 및 이벤트 내용을 저장한 후 사후예방 관리 및 검색의 효율성을 극대화시킬 수 있는 기술이다.
CCTV 영상감시 시스템에서는 객체의 탐지, 인식, 분류, 추적 등을 위하여 컨볼루션 신경망(CNN: Convolutional Neural Network)과 같은 딥 러닝(Deep Learning) 기술을 채택하고 있다. 컨볼루션 신경망(CNN) 기반의 기술을 이용할 경우, 각 영상 프레임마다 객체를 검출하고 검출된 객체에 대한 정보를 활용할 수 있다. 이러한 객체 검출 과정은 많은 연산량을 요구하기 때문에, 영상 촬영 후의 객체 검출 과정은 주로 서버에서 이루어지게 된다. 따라서 서버장치의 하드웨어 성능에 따라 서비스를 제공할 수 있는 영상 채널의 수가 제한되게 되며, 서비스 영상 채널의 수가 증가함에 따라 많은 비용이 든다.
또한, 학습된 결과를 이용하여 객체를 검출하는 경우, 실제로는 영상 내 객체가 존재하지 않는 경우에도 조명환경과 날씨변화, 사용자의 카메라 위치 조절 등의 요인으로 인하여 객체를 오검출하는 경우가 빈번히 발생할 수 있다. 오검출로 인한 경보(False Alarm)는 위험 상황의 정확한 인지 및 신속한 대응을 저해한다. 특히, CCTV 영상은 유사한 배경영상이 지속되기 때문에 일단 오검출이 발생하게 되면 유사한 영상에 대해 계속하여 잘못된 경보가 발생하는 문제가 생긴다.
본 발명의 실시예들은 CCTV와 같은 고정형 카메라 환경에서 객체의 오검출을 최소화하면서도 객체 검출을 위한 서버장치의 운용 비용을 절감할 수 있는 영상분석 방법 및 서버장치를 제공하고자 한다.
본 발명의 실시예에 의하면, 각 채널별 입력영상으로부터 객체를 검출하여 인식하도록 학습된 신경망 기반의 복수의 채널별 객체 탐지부; 및 상기 각 채널별 입력영상 및 상기 복수의 채널별 객체 탐지부로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집하는 학습 데이터 수집부; 수집한 학습 데이터를 이용하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 학습부를 포함하는 영상분석 서버장치를 제공한다.
본 발명의 실시예에 의하면, 상기 학습부는, 상기 학습 데이터를 이용하여 32비트 연산 기반으로 별도의 신경망을 훈련시키고, 상기 별도의 신경망을 8비트 연산 기반의 신경망에 최적화하는 캘리브레이션을 수행하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시킬 수 있다.
본 발명의 실시예에 의하면 상기 학습 데이터 수집부는, 각 채널별로 기설정된 시간주기마다 상기 각 채널에 대한 학습 데이터를 수집하고, 상기 학습부는, 상기 각 채널에 대한 학습 데이터가 기설정된 개수만큼 수집되는 경우 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시킬 수 있다.
본 발명의 실시예에 의하면, 입력영상을 획득하는 과정; 상기 입력영상으로부터 객체를 검출하여 인식하도록 학습된 객체 탐지기에 의해 탐지결과가 생성되는 과정; 상기 각 채널별 입력영상 및 상기 복수의 채널별 객체 탐지부로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집하는 과정; 및 수집한 학습 데이터를 이용하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 과정을 포함하는 영상분석방법을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 각 채널별로 주기적으로 입력영상을 획득하여 객체 검출을 위한 최적화를 수행함으로써 영상 내 환경이 변화하더라도 오탐지가 발생하는 것을 방지하거나 최소화할 수 있는 효과가 있다.
또한, 객체 검출에 필요한 연산량 및 메모리를 감소시킴으로써 서버장치의 제한된 하드웨어 성능 하에서 더 많은 수의 영상 채널 서비스를 제공할 수 있게 되어 서비스 운용에 필요한 비용이 절감되는 효과가 있다.
도 1은 본 발명의 실시예에 따른 영상감시 시스템의 블록도이다.
도 2는 본 발명의 실시예에 따른 영상분석 서버장치의 구성을 간략히 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 객체 탐지부의 학습 방법을 설명하기 위한 블록도이다.
도 4는 본 발명의 실시예에 따른 학습부의 연산 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 영상분석 방법의 흐름도이다.
도 6은 본 발명의 실시예에 따른 영상분석 방법의 일례를 나타내는 흐름도이다.
이하, 본 발명의 일부 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 본 발명을 설명함에 있어, '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
본 발명은 객체의 오검출을 최소화하기 위하여 CCTV와 같은 고정형 카메라 환경의 특성 즉, 변화가 거의 없이 유사한 배경영상이 지속적으로 캡쳐되는 특성을 이용하고자 한다. 보다 상세하게, 비슷한 배경영상으로 객체 탐지 및 인식을 위한 신경망을 재학습(update)시킴으로써 객체가 존재하지 않는 배경영상으로부터 객체가 검출되는 것을 최소화하는 방법을 제안한다.
도 1은 본 발명의 실시예에 따른 영상감시 시스템의 블록도이다.
영상감시 시스템(100)은 영상촬영 장치(110), 영상분석 서버장치(120) 및 모니터링 장치(130)를 포함한다.
영상촬영 장치(110)는 영상분석 서버장치(120)로 입력될 영상을 실시간으로 생성한다. 영상촬영 장치(110)는 CCTV용 카메라와 같이 고정형 카메라로 구현될 수 있으나, 반드시 이에 한정되는 것은 아니고 영상분석 서버장치(120)의 입력영상을 생성할 수 있는 모든 장치를 포함할 수 있다. 도시된 것과 같이, 영상감시 시스템(100)에서 영상촬영 장치(110)는 하나 이상 포함되며, 서로 다른 위치에 설치되어 여러 장소를 촬영한 영상을 생성한다.
영상분석 서버장치(120)는 영상촬영 장치(110)로부터 수신한 입력영상을 실시간으로 분석하여 객체를 탐지 및 인식하고, 분석결과를 기초로 사전에 정의된 하나 이상의 이벤트를 감지한다. 영상분석 서버장치(120)는 감지된 이벤트에 따른 정보를 모니터링 장치(130)로 전송한다. 영상분석 서버장치(120)는 각 모니터링 장치(130)와 매칭되는 하나 이상의 영상촬영 장치(110)에서 촬영된 영상을 전송하며, 이외의 영상촬영 장치(110)에서 촬영된 영상에는 접근이 불가능하도록 암호화하여 관리한다.
영상분석 서버장치(120)는 객체를 탐지하고 인식하도록 미리 설계된 신경망을 학습(training)하고, 학습된 신경망을 기반으로 입력영상 내 객체를 탐지 및 인식한다. 예를 들어, 신경망으로는 컨볼루션 신경망(CNN)이 이용될 수 있다. 컨볼루션 신경망(CNN)은 입력영상에 대해 컨볼루션 연산을 수행하는 하나 이상의 컨볼루션 층(Convolution Layer) 및 컨볼루션 층의 출력을 샘플링하는 하나 이상의 풀링 층(Pooling Layer)을 포함한다. 다만, 컨볼루션 신경망(CNN)은 예시일 뿐 반드시 이에 한정되는 것은 아니며, 순환 신경망(RNN: Recurrent Neural Network) 또는 CNN 및 RNN의 조합 등 그 밖의 다양한 신경망이 이용될 수 있다.
모니터링 장치(130)는 영상촬영 장치(110)로부터 촬영된 영상을 수신하여 실시간으로 디스플레이할 수 있다. 또한, 모니터링 장치(130)는 영상분석 서버장치(120)로부터 수신한 정보에 따라 경보 발생 등과 같은 적절한 이벤트를 발생시킬 수 있다.
도 2는 본 발명의 실시예에 따른 영상분석 서버장치의 구성을 간략히 나타낸 블록도이다.
영상분석 서버장치(120)는 입력영상 획득부(210), 객체 탐지부(220), 학습 데이터 수집부(230) 및 학습부(240)를 포함한다. 도 2에 도시한 각 구성요소는 하드웨어 칩으로 구현될 수 있으며, 또는 소프트웨어로 구현되고 마이크로프로세서가 각 구성요소에 대응하는 소프트웨어의 기능을 실행하도록 구현될 수도 있다.
입력영상 획득부(210)는 영상촬영 장치(110)로부터 입력영상을 수신하여 이를 캡쳐한다. 입력영상 획득부(210)는 캡쳐한 입력영상을 객체 탐지 및 인식 신경망의 입력층(input layer)의 크기로 조정(resizing)된다. 조정된 입력영상은 객체 탐지부(220)로 전달된다. 또한, 조정된 입력영상은 객체 탐지부(220)의 재학습(update)을 위해 학습 데이터 수집부(230)에도 전달된다.
객체 탐지부(220)는 학습된 신경망을 기반으로 입력영상으로부터 객체를 검출하여 인식한다. 객체 탐지부(220)는 신경망에 포함된 여러 개의 층(예: Convolution Layer, Max-pooling Layer 등)에서의 계산을 통해 검출 후보를 도출한다. 객체 탐지부(220)는 검출 후보에 대하여 임계값(threshold)을 적용하여 최종 탐지결과를 생성 및 출력한다. 출력된 최종 탐지결과는 객체 탐지부(220)의 재학습(update)을 위해 학습 데이터 수집부(230)에 전달된다.
출력된 탐지결과는 객체의 위치정보, 객체의 클래스정보 및 객체의 신뢰도 중 적어도 하나를 포함한다. 여기서, 객체의 위치정보는 객체가 검출된 영역(또는 Box)에 대한 정보(예: 위치좌표, 영역의 폭과 높이)를 나타낸다. 객체의 클래스정보는 객체가 어떤 클래스(예: 사람, 차량 등)로 분류되는지를 나타낸다. 객체의 신뢰도는 객체가 최종적으로 결정된 클래스에 속할 확률을 나타낸다. 예를 들어, 객체가 존재하지 않는 경우 이상적인 신뢰도 값은 0이 된다. 하나의 입력영상 내에 복수 개의 검출영역이 존재하는 경우, 각 검출영역마다 위와 같은 탐지결과가 출력될 수 있다.
객체 탐지부(220)는 8비트 연산 기반의 신경망을 기반으로 객체를 검출하여 인식한다. 객체 탐지부(220)는 주어진 입력-출력으로 이루어진 학습 데이터에 대해 학습을 마친 신경망을 이용하여, 새로운 입력에 대한 객체 탐지결과를 출력하는 구성으로, 학습된 신경망의 추론과정을 거쳐 결과를 출력하는데, 이 때 학습된 신경망을 구성하는 파라미터는 8비트로 표현되며 추론과정에서 필요한 연산도 8비트 단위로 이루어진다.
도 2에는 도시하지 않았지만 영상분석 서버장치(120)는 탐지결과를 기반으로 상황을 판단하기 위한 구성요소를 더 포함할 수 있다. 상황 판단을 위한 구성요소(미도시)는 탐지된 객체를 이용하여 입력영상 내에서 발생한 상황을 감지할 수 있다. 예를 들어, 본 구성요소는 감지하고자 하는 상황이 사람이 나타나는 상황인 경우 사람이 탐지되는지를 판단하고, 사람이 차량에서 내리는 상황을 감지하고자 하는 경우에는 사람과 차량이 동시에 탐지되는지를 판단할 수 있다. 또한, 본 구성요소는 탐지된 각각의 객체의 신뢰도 값에 따라 상황 판단을 할 수도 있다.
학습 데이터 수집부(230)는 영상 입력 획득부(210) 및 객체 탐지부(220)로부터 입력영상 및 객체 탐지결과를 획득하여 학습 데이터를 수집한다. 학습 데이터 수집부(230)는 복수의 영상촬영 장치(110)로부터 수신되는 입력영상을 각 채널별로 구분하여 획득하고, 각 채널별 입력영상에 따라 객체 탐지부(220)로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집한다. 수집한 학습 데이터는 객체 탐지부(220)를 재학습시키는 데에 이용되며, 입력영상 및 그에 대응되는 탐지결과 쌍으로 구성된다.
학습 데이터 수집부(230)는 주기적으로 학습 데이터를 수집할 수 있다. 학습 데이터 수집부(230)에서 학습 데이터를 수집하는 시간주기는 각 채널별로 서로 다르게 설정될 수 있으며, 설정된 시간에 대한 학습 데이터를 수집하거나 일정 시간 간격으로 학습 데이터를 수집할 수 있다. 또한, 학습 데이터 수집부(230)는 입력영상에서 변화를 감지하고, 변화가 감지될 때마다 학습 데이터를 수집할 수 있다. 입력영상의 변화는, 주간에서 야간으로 가면서 영상 내 객체는 그대로인 채 조도만 변하는 경우나, 기후의 변화로 인해 영상 내 배경에서 비나 바람의 영향으로 배경 사물이 움직이는 경우를 포함하여 다양한 경우가 있을 수 있다.
채널별 입력영상에 대해 각각 객체를 검출하는 성능을 최적화하기 위해, 학습 데이터 수집부(230)는 학습 데이터를 채널별로 구분하여 수집함으로써, 객체 탐지부(220)를 개별적으로 학습시킬 수 있도록 한다. 또한, 학습 데이터 수집부(230)에서는 객체의 오검출을 방지하기 위해, 영상 내 환경의 변화에 따라 다양하게 나타날 수 있는 입력영상을 수집하고, 객체 탐지부(220)를 학습시켜 변화된 환경에 대해서도 적절한 객체 검출 결과를 출력할 수 있도록 한다.
학습부(240)는 수집한 학습 데이터를 이용하여 객체 탐지부(220)를 학습시킨다. 학습부(240)는 채널별로 수집한 학습 데이터를 이용하여, 복수의 채널에 대해 개별적으로 동작하는 복수의 채널별 객체 탐지부(220)를 개별적으로 학습시킬 수 있다. 객체 탐지부(220)를 학습시킨다는 것은 신경망에 포함된 노드들 사이의 기 학습된 파라미터(또는 가중치)들을 업데이트시킨다는 것이다. 학습부(240)는 학습에 적절하다고 판단되어 미리 설정된 수만큼 학습 데이터가 수집되었는지를 판단하거나, 설정된 기간 동안 학습 데이터를 수집하여 객체 탐지부(220)를 학습시킬 수 있다.
본 발명에서 입력영상 획득부(210) 및 객체 탐지부(220)는 영상 분석 서버장치(120) 내에서 객체를 검출하기 위한 영상분석을 수행하는 구성으로, 도 2에는 하나의 입력영상 획득부(210) 및 객체 탐지부(220)가 도시되어 있지만, 본 발명이 적용되는 시스템에서 영상 촬영 장치(110)의 개수와 동일한 수가 구비되며, 각 채널별 입력영상으로부터 서로 다른 채널별 객체 검출 결과를 제공할 수 있도록 개별적으로 동작한다. 이를 위해 각 채널별 객체 탐지부(220)는 서로 다른 파라미터를 갖는 신경망을 기반으로 객체를 검출하여 인식한다. 본 발명이 적용되는 시스템에서 영상촬영 장치(110)는 동일한 장소를 지속적으로 촬영하는 경우가 많기 때문에, 채널별 객체 탐지부(220)는 서로 다른 시간에 촬영된 동일 장소에 대한 영상을 학습함으로써 다양한 환경을 학습할 수 있고, 결과적으로 채널별로 최적화된 객체 검출 성능을 보여줄 수 있다.
이하, 도 3 및 도 4를 참조하여 본 발명의 실시예에 따른 학습부에서 객체 탐지부를 학습시키는 방법에 대하여 구체적으로 설명한다. 도 3은 본 발명의 실시예에 따른 객체 탐지부의 학습 방법을 설명하기 위한 블록도이다. 도 4는 본 발명의 실시예에 따른 학습부의 연산 과정을 설명하기 위한 도면이다.
학습 데이터 수집부(230)에서는 채널별 입력영상 및 입력영상에 따른 탐지결과를 주기적으로 획득하여 학습 데이터를 수집한다. 학습 데이터 수집부(230)에서 수집된 학습 데이터는 각 채널에 따라 서로 다른 데이터를 포함하며, 복수의 영상 촬영 장치(110)마다 할당된 복수의 채널별 객체 탐지부(220)는 채널별 학습 데이터를 개별적으로 학습하고, 학습된 결과를 이용하여 서로 독립되어 개별적으로 동작한다.
학습부(240)는 학습 데이터를 이용하여 객체 탐지부(220)를 학습시키는 구성으로, 32비트 연산부(310) 및 8비트 연산 최적화부(320)를 포함한다. 학습부(240)의 학습은 32비트 연산 기반의 신경망에서 먼저 이루어지고 이를 8비트 연산에 최적화하는 캘리브레이션(calibration)을 수행하여 객체 탐지부(220)를 학습시킨다. 즉, 본 발명에서 수집된 학습 데이터에 대해서는 32비트(FP32) 연산을 기반으로 학습하고, 실시간으로 이루어지는 객체탐지에서는 8비트(INT8) 연산을 기반으로 추론한다.
32비트 연산부(310)는 수집한 학습 데이터를 이용하여 입력영상과 그에 따른 탐지결과를 학습한다. 32비트 연산부(310)는 기존의 신경망 연산에서 이용하는 32비트 기반 신경망을 이용하여 학습 데이터를 학습한다.
8비트 연산 최적화부(320)는 32비트 연산부(310)에서 학습된 32비트 기반의 신경망을 8비트 기반의 신경망에 최적화하는 연산을 수행한다. 기존에 32비트로 표현되었던 파라미터를 8비트로 그대로 양자화(quantization)하게 되면, 정보 손실이 발생할 수 밖에 없으므로, 8비트 연산 최적화부(320)는, 도 4에 도시된 것과 같이, 32비트 연산의 데이터 범위 분포를 8비트 연산의 데이터 범위에 근사화(approximation)하여, 8비트 기반 신경망에서도 적절히 동작할 수 있도록 최적화하는 캘리브레이션을 수행한다.
객체 탐지부(220)는 8비트 연산 최적화부(320)에 의해 8비트 연산에 최적화된 신경망을 기반으로 입력영상에 대한 탐지결과를 출력한다. 신경망을 이용하여 영상에서 객체를 탐지하는 기술은 영상 특정 영역에서의 움직임을 검출하는 것으로, 높은 정밀도의 연산을 요구하지 않는다. 따라서, 본 발명에서는 다수의 영상 촬영 장치(110)로부터 생성된 입력영상을 실시간으로 영상분석 서버장치(120)에서 처리하기 위하여 8비트 연산 기반의 신경망을 이용하여, 서버에서 실시간 영상분석을 위해 요구하는 연산량 및 메모리를 감소시키고, 연산에 필요한 시간도 감소시킨다.
이하, 도 5 및 도 6을 참조하여 본 발명의 실시예에 따른 영상분석방법에 대하여 설명한다. 도 5는 본 발명의 실시예에 따른 영상분석 방법의 흐름도이다.
도 5를 참조하면, 우선 단계 S510에서 입력영상을 획득한다. 구체적으로, 영상촬영 장치로부터 전달된 입력영상을 캡쳐하고, 캡쳐한 입력영상을 객체 탐지 및 인식 신경망의 입력층(input layer)의 크기로 조정(resizing)한다.
입력영상이 획득되면, 입력영상으로부터 객체를 검출하여 인식하도록 학습된 객체 탐지기에 의해 탐지결과가 생성된다(S520). 객체 탐지기는 신경망에 포함된 여러 개의 층(예: Convolution Layer, Max-pooling Layer 등)에서의 계산을 통해 검출 후보를 도출한다. 객체 탐지기는 검출 후보에 대하여 임계값(threshold)을 적용하여 최종 탐지결과를 생성 및 출력한다.
이 때, 객체 탐지기는 8비트 연산을 기반으로 하는 신경망을 기반으로 객체를 검출하여 인지한다. 즉, 객체 탐지기는 학습된 신경망의 추론과정을 거쳐 결과를 출력하는데, 이 때 학습된 신경망을 구성하는 파라미터는 8비트로 표현되며 추론과정에서 필요한 연산도 8비트 단위로 이루어진다.
출력된 탐지결과는 객체의 위치정보, 객체의 클래스정보 및 객체의 신뢰도 중 적어도 하나를 포함한다. 여기서, 객체의 위치정보는 객체가 검출된 영역(또는 Box)에 대한 정보(예: 위치좌표, 영역의 폭과 높이)를 나타낸다. 객체의 클래스정보는 객체가 어떤 클래스(예: 사람, 차량 등)로 분류되는지를 나타낸다. 객체의 신뢰도는 객체가 최종적으로 결정된 클래스에 속할 확률을 나타낸다. 예를 들어, 객체가 존재하지 않는 경우 이상적인 신뢰도 값은 0이 된다. 하나의 입력영상 내에 복수 개의 검출영역이 존재하는 경우, 각 검출영역마다 위와 같은 탐지결과가 출력될 수 있다.
단계 S530에서는 단계 S510의 채널별 입력영상 및 단계 S520의 객체 탐지결과를 주기적으로 획득하여 학습 데이터를 수집한다. 구체적으로, 복수의 영상촬영 장치로부터 수신되는 입력영상을 각 채널별로 구분하여 획득하고, 각 채널별 입력영상에 따른 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집한다. 학습 데이터는 객체 탐지기가 기반으로 하는 신경망을 학습시키는 데에 이용되며, 입력영상 및 그에 대응되는 탐지결과 쌍으로 구성된다.
이 때의 학습 데이터를 수집하는 시간주기는 각 채널별로 서로 다르게 설정될 수 있으며, 설정된 시간에 대한 학습 데이터를 수집하거나 일정 시간 간격으로 학습 데이터를 수집할 수 있다. 또한, 입력영상에서 변화를 감지하고, 변화가 감지될 때마다 학습 데이터를 수집할 수 있다.
마지막으로, 수집한 학습 데이터를 이용하여 객체 탐지기를 학습시킨다(S540). 학습기는 채널별로 수집한 학습 데이터를 이용하여 복수의 채널에 대해 개별적으로 동작하는 복수의 객체 탐지기를 개별적으로 학습시킬 수 있다. 객체 탐지기를 학습시킨다는 것은 신경망에 포함된 노드들 사이의 기 학습된 파라미터(또는 가중치)들을 업데이트시킨다는 것이다. 학습기는 학습에 적절하다고 판단되어 미리 설정된 수만큼 학습 데이터가 수집되면, 객체 탐지기를 학습시킬 수도 있고, 일정한 기간동안 수집된 학습 데이터를 이용하여 객체 탐지기를 학습시킬 수 있다.
학습기는 32비트 연산 기반의 별도의 신경망을 이용하여 학습 데이터를 학습하고, 이후 8비트 연산에 최적화하는 캘리브레이션(calibration)을 수행하여 객체 탐지기를 학습시킨다. 즉, 본 실시예에서 수집된 학습 데이터에 대해서는 32비트 연산을 기반으로 학습하고, 실시간으로 이루어지는 객체탐지에서는 8비트 연산을 기반으로 추론한다.
32비트 연산 기반 학습을 위한 별도의 신경망에서는 수집한 학습 데이터를 이용하여 입력영상과 그에 따른 탐지결과를 학습한다. 이후, 학습된 32비트 기반의 별도의 신경망을 8비트 기반의 신경망에 최적화하는 연산을 수행한다. 기존에 32비트로 표현되었던 파라미터를 8비트로 양자화(quantization)하게 되면, 정보 손실이 발생할 수 밖에 없기 때문에, 32비트 연산의 데이터 범위 분포를 8비트 연산의 데이터 범위에 근사화(approximation)하여, 8비트 기반 신경망에서도 적절히 동작할 수 있도록 최적화하는 캘리브레이션을 수행하여 객체 탐지기를 학습시킨다.
도 6은 본 발명의 실시예에 따른 영상분석 방법의 일례를 나타내는 흐름도이다.
단계 S610에서 입력영상을 획득한 후, 입력영상 내 객체를 탐지 및 인식하여 탐지결과를 생성한다(S620). 그리고 생성된 탐지결과를 이용하여 상황 판단을 할 수 있다(S630). 즉, 탐지된 객체를 이용하여 입력영상 내에서 발생한 상황을 감지할 수 있다. 예를 들어, 감지하고자 하는 상황이 사람이 나타나는 상황인 경우 사람이 탐지되는지를 판단하고, 사람이 차량에서 내리는 상황을 감지하고자 하는 경우에는 사람과 차량이 동시에 탐지되는지를 판단할 수 있다. 또한, 탐지된 각각의 객체의 신뢰도 값에 따라 상황 판단을 할 수도 있다.
한편, 객체 탐지기를 재학습시킬지 여부를 판단하기 위하여 우선 채널별 입력영상 및 객체 탐지결과를 획득하여 설정된 시간주기에 따른 학습 데이터를 수집한다(S640). 단계 S640에서는 학습 데이터를 주기적으로 수집하는데, 수집된 학습 데이터의 수가 설정값에 도달한 경우에는(S650) 학습에 충분한 정도로 학습 데이터가 수집되었으므로 채널별 객체 탐지기를 학습시킨다(S660).
도 5 및 도 6에서는 각 과정을 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 도 5 및 도 6에 기재된 과정을 변경하여 실행하거나 하나 이상의 과정을 병렬적으로 실행하는 것으로 적용 가능할 것이므로, 도 5 및 도 6는 시계열적인 순서로 한정되는 것은 아니다.
도 5 및 도 6에 기재된 본 실시예에 따른 영상분석방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 영상분석방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨팅 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 영상감시시스템

Claims (10)

  1. 각 채널별 입력영상으로부터 객체를 검출하여 인식하도록 학습된 신경망 기반의 복수의 채널별 객체 탐지부; 및
    상기 각 채널별 입력영상 및 상기 복수의 채널별 객체 탐지부로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집하는 학습 데이터 수집부;
    수집한 학습 데이터를 이용하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 학습부
    를 포함하는 영상분석 서버장치.
  2. 제 1항에 있어서,
    상기 학습부는,
    상기 학습 데이터를 이용하여 32비트 연산 기반으로 별도의 신경망을 훈련시키고, 상기 별도의 신경망을 8비트 연산 기반의 신경망에 최적화하는 캘리브레이션을 수행하여 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 것을 특징으로 하는 영상분석 서버 장치.
  3. 제 2항에 있어서,
    상기 학습부는,
    상기 별도의 신경망의 데이터 분포 범위를 8비트 데이터 범위에 근사화하여, 상기 8비트 연산 기반의 신경망에 최적화하는 것을 특징으로 하는 영상분석 서버 장치.
  4. 제 1항에 있어서,
    상기 학습 데이터 수집부는,
    각 채널별로 기설정된 시간주기마다 상기 각 채널에 대한 학습 데이터를 수집하고,
    상기 학습부는,
    상기 각 채널에 대한 학습 데이터가 기설정된 개수만큼 수집되는 경우 상기 복수의 채널별 객체 탐지부를 개별적으로 학습시키는 것을 특징으로 하는 영상분석 서버 장치.
  5. 제 1항에 있어서,
    상기 학습 데이터 수집부는,
    상기 각 채널별 입력영상의 변화를 감지하여, 변화가 감지될 때마다 상기 각 채널별 입력영상 및 상기 탐지결과를 획득하여 상기 각 채널에 대한 학습 데이터를 수집하는 것을 특징으로 하는 영상분석 서버 장치.
  6. 채널별 입력영상을 획득하는 과정;
    각 채널별 입력영상으로부터 객체를 검출하여 인식하도록 학습된 복수의 채널별 객체 탐지기에 의해 탐지결과가 생성되는 과정;
    상기 각 채널별 입력영상 및 상기 복수의 채널별 객체 탐지기로부터 출력되는 탐지결과를 획득하여 각 채널에 대한 학습 데이터를 수집하는 과정; 및
    수집한 학습 데이터를 이용하여 상기 복수의 채널별 객체 탐지기를 개별적으로 학습시키는 과정
    을 포함하는 영상분석방법.
  7. 제 6항에 있어서,
    상기 객체 탐지기를 개별적으로 학습시키는 과정은,
    상기 학습 데이터를 이용하여 32비트 연산 기반으로 별도의 신경망을 훈련시키고, 상기 별도의 신경망을 8비트 연산 기반의 신경망에 최적화하는 캘리브레이션을 수행하여 상기 복수의 채널별 객체 탐지기를 개별적으로 학습시키는 과정을 포함하는, 영상분석방법.
  8. 제 7항에 있어서,
    상기 객체 탐지기를 개별적으로 학습시키는 과정은,
    상기 별도의 신경망의 데이터 분포 범위를 8비트 데이터 범위에 근사화하여, 상기 8비트 연산 기반의 신경망에 최적화하는 것을 특징으로 하는 영상분석방법.
  9. 제 6항에 있어서,
    상기 학습 데이터를 수집하는 과정은,
    각 채널별로 기설정된 시간주기마다 상기 각 채널에 대한 학습 데이터를 수집하는 과정을 포함하고,
    상기 객체 탐지기를 개별적으로 학습시키는 과정은,
    상기 각 채널에 대한 학습 데이터가 기설정된 개수만큼 수집되는 경우 상기 복수의 채널별 객체 탐지기를 개별적으로 학습시키는 과정을 포함하는, 영상분석방법.
  10. 제 6항에 있어서,
    상기 학습 데이터를 수집하는 과정은,
    상기 각 채널별 입력영상의 변화를 감지하여, 변화가 감지될 때마다 상기 각 채널별 입력영상 및 상기 탐지결과를 획득하여 상기 각 채널에 대한 학습 데이터를 수집하는 과정을 포함하는, 영상분석방법.
KR1020170128209A 2017-09-29 2017-09-29 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치 KR102478335B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170128209A KR102478335B1 (ko) 2017-09-29 2017-09-29 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170128209A KR102478335B1 (ko) 2017-09-29 2017-09-29 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치

Publications (2)

Publication Number Publication Date
KR20190038137A true KR20190038137A (ko) 2019-04-08
KR102478335B1 KR102478335B1 (ko) 2022-12-15

Family

ID=66164318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170128209A KR102478335B1 (ko) 2017-09-29 2017-09-29 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치

Country Status (1)

Country Link
KR (1) KR102478335B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10769768B1 (en) 2019-05-07 2020-09-08 Contec Co., Ltd. Apparatus and method for providing application service using satellite image
WO2020226208A1 (ko) * 2019-05-07 2020-11-12 주식회사 컨텍 위성영상을 이용한 활용서비스 제공 장치 및 방법
KR20210084330A (ko) * 2019-12-27 2021-07-07 권세기 딥러닝을 이용한 반려견의 입마개 착용 여부 감시 시스템 및 방법
KR102278223B1 (ko) * 2020-02-12 2021-07-15 경일대학교산학협력단 액추에이터
KR102377929B1 (ko) * 2020-11-09 2022-03-24 (주)스페이스빌더스 신경회로망 모듈 기반의 수위 측정 시스템 그 수위 측정 방법
WO2022097814A1 (ko) * 2020-11-09 2022-05-12 충북대학교 산학협력단 3d 라이다의 고속 객체 인식을 위한 채널별 컨볼루션 기반의 합성곱 신경망 구조
KR20220079479A (ko) * 2020-12-04 2022-06-13 주식회사 두원전자통신 심층 신경망 알고리즘 기반 객체 자동학습, 검증 및 배포에 의한 객체분석 정확도 향상을 위한 지능형 영상 분석 시스템
KR20230011640A (ko) * 2021-07-14 2023-01-25 연세대학교 산학협력단 클라우드 기반 화재 탐지 시스템 및 그 방법
WO2023113295A1 (ko) * 2021-12-16 2023-06-22 주식회사 씨에스리 모델 갱신 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110034545A (ko) * 2009-09-28 2011-04-05 가부시끼가이샤 도시바 화상 처리 장치 및 화상 처리 방법
JP2016015116A (ja) * 2014-06-12 2016-01-28 パナソニックIpマネジメント株式会社 画像認識方法、カメラシステム
KR20170061016A (ko) * 2015-11-25 2017-06-02 삼성전자주식회사 데이터 인식 모델 구축 장치 및 방법과 데이터 인식 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110034545A (ko) * 2009-09-28 2011-04-05 가부시끼가이샤 도시바 화상 처리 장치 및 화상 처리 방법
JP2016015116A (ja) * 2014-06-12 2016-01-28 パナソニックIpマネジメント株式会社 画像認識方法、カメラシステム
KR20170061016A (ko) * 2015-11-25 2017-06-02 삼성전자주식회사 데이터 인식 모델 구축 장치 및 방법과 데이터 인식 장치

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10769768B1 (en) 2019-05-07 2020-09-08 Contec Co., Ltd. Apparatus and method for providing application service using satellite image
WO2020226208A1 (ko) * 2019-05-07 2020-11-12 주식회사 컨텍 위성영상을 이용한 활용서비스 제공 장치 및 방법
KR20210084330A (ko) * 2019-12-27 2021-07-07 권세기 딥러닝을 이용한 반려견의 입마개 착용 여부 감시 시스템 및 방법
KR102278223B1 (ko) * 2020-02-12 2021-07-15 경일대학교산학협력단 액추에이터
KR102377929B1 (ko) * 2020-11-09 2022-03-24 (주)스페이스빌더스 신경회로망 모듈 기반의 수위 측정 시스템 그 수위 측정 방법
WO2022097814A1 (ko) * 2020-11-09 2022-05-12 충북대학교 산학협력단 3d 라이다의 고속 객체 인식을 위한 채널별 컨볼루션 기반의 합성곱 신경망 구조
KR20220079479A (ko) * 2020-12-04 2022-06-13 주식회사 두원전자통신 심층 신경망 알고리즘 기반 객체 자동학습, 검증 및 배포에 의한 객체분석 정확도 향상을 위한 지능형 영상 분석 시스템
KR20230011640A (ko) * 2021-07-14 2023-01-25 연세대학교 산학협력단 클라우드 기반 화재 탐지 시스템 및 그 방법
WO2023113295A1 (ko) * 2021-12-16 2023-06-22 주식회사 씨에스리 모델 갱신 장치 및 방법

Also Published As

Publication number Publication date
KR102478335B1 (ko) 2022-12-15

Similar Documents

Publication Publication Date Title
KR102478335B1 (ko) 채널별 객체 검출 최적화를 위한 영상분석 방법 및 서버장치
KR101910542B1 (ko) 객체 검출을 위한 영상분석 서버장치 및 방법
US7982774B2 (en) Image processing apparatus and image processing method
KR102002812B1 (ko) 객체 검출을 위한 영상분석 서버장치 및 방법
CN111582006A (zh) 一种视频分析方法及装置
US7751647B2 (en) System and method for detecting an invalid camera in video surveillance
KR102195706B1 (ko) 침입 탐지방법 및 그 장치
KR101464344B1 (ko) 감시 영상의 정상 상태 학습을 통한 이상 상태 감지 방법과 이를 적용한 감시 카메라 및 영상 관리 시스템
WO2014121340A9 (en) A surveillance system
KR102247359B1 (ko) 원격 모니터링을 위한 영상 분석 시스템 및 방법
CN107122743B (zh) 安防监控方法、装置和电子设备
CN113096158A (zh) 运动对象的识别方法、装置、电子设备及可读存储介质
CN109117771B (zh) 一种基于锚节点的图像中暴力事件检测系统及方法
KR102511287B1 (ko) 영상 기반 자세 예측 및 행동 검출 방법 및 장치
EP3432575A1 (en) Method for performing multi-camera automatic patrol control with aid of statistics data in a surveillance system, and associated apparatus
KR20160093253A (ko) 영상 기반 이상 흐름 감지 방법 및 그 시스템
KR20210075533A (ko) 딥러닝을 활용한 영상 기반의 강수 정보 제공 시스템 및 방법
US20210225146A1 (en) Image-based disaster detection method and apparatus
KR102111162B1 (ko) 블랙 박스와 연동된 다채널 카메라 홈 모니터링 시스템 및 방법
JP3612220B2 (ja) 人物監視方法
KR102077632B1 (ko) 로컬 영상분석과 클라우드 서비스를 활용하는 하이브리드 지능형 침입감시 시스템
US20230267742A1 (en) Method and system for crowd counting
CN114724378B (zh) 一种基于深度学习的车辆追踪统计系统及方法
KR102457470B1 (ko) 영상 분석을 이용한 인공지능 기반 강수 판단장치 및 방법
KR101848367B1 (ko) 모션벡터와 dct 계수를 이용한 메타데이터 기반 의심영상 구분식별 방식의 영상 관제 방법

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant