KR20230040287A - 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템 - Google Patents

영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템 Download PDF

Info

Publication number
KR20230040287A
KR20230040287A KR1020220115560A KR20220115560A KR20230040287A KR 20230040287 A KR20230040287 A KR 20230040287A KR 1020220115560 A KR1020220115560 A KR 1020220115560A KR 20220115560 A KR20220115560 A KR 20220115560A KR 20230040287 A KR20230040287 A KR 20230040287A
Authority
KR
South Korea
Prior art keywords
value
frames
average value
parameter values
decoding parameter
Prior art date
Application number
KR1020220115560A
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 주식회사 핀텔
Publication of KR20230040287A publication Critical patent/KR20230040287A/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
    • G06T5/002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/04Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons
    • G08B21/0407Alarms for ensuring the safety of persons responsive to non-activity, e.g. of elderly persons based on behaviour analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Psychiatry (AREA)
  • Psychology (AREA)
  • Social Psychology (AREA)
  • General Health & Medical Sciences (AREA)
  • Gerontology & Geriatric Medicine (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템으로서, 영상정보의 비트스트림정보에 기반하여, 복수의 프레임 각각에서의 디코딩파라미터값의 평균값이 기설정된 임계값을 초과하는 지 여부에 기초하여, 해당 디코딩파라미터값이 노이즈인지 여부를 판단하고, 노이즈가 제거된 디코딩파라미터값에 기초하여, 객체영역을 검출하고, 트래킹 중인 특정 객체영역이 기설정된 시간 이상 이동하지 않을 때 낙상이벤트로 감지하는, 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템이다.

Description

영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템{Method and system for detecting an object falling based on bitstream information of image information}
본 발명은 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템으로서, 영상정보의 비트스트림정보에 기반하여, 복수의 프레임 각각에서의 디코딩파라미터값의 평균값이 기설정된 임계값을 초과하는 지 여부에 기초하여, 해당 디코딩파라미터값이 노이즈인지 여부를 판단하고, 노이즈가 제거된 디코딩파라미터값에 기초하여, 객체영역을 검출하고, 트래킹 중인 특정 객체영역이 기설정된 시간 이상 이동하지 않을 때 낙상이벤트로 감지하는, 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템이다.
영상데이터 분석기술이란, CCTV, 블랙박스 등의 촬영장치로부터 수집되는 영상데이터에 기반하여 인물, 물체 등의 객체를 인식하여 트래킹하여 객체의 이동경로를 추적하거나, 범죄나 화재와 같은 유의미한 이벤트를 감지하는 기술이다.
한편, 최근 들어 촬영장치의 해상도, 프레임 등의 성능이 발전하면서 영상데이터 크기가 급격히 커짐에 따라, 영상데이터 분석에 요구되는 연산량 또한 증가하고 있다. 즉 영상데이터 크기가 커질수록 영상을 분석하는 데 소요되는 시간과 비용이 증가하여, 적은 비용으로 실시간 영상분석이 가능한 기술에 대한 개발필요성이 요구되고 있다.
한편, 관제시스템에서는 영상정보에 기반하여 다양한 종류의 이벤트를 감지하고 있고, 객체의 낙상이벤트가 그 중 하나에 해당할 수 있다. 구체적으로 관제시스템은 보행 중 심장마비, 발작 등의 건강상 이유 혹은 교통사고 등의 외부충격으로 인해 넘어지거나 쓰러진 사람을 찾아내고 적절한 조치를 취함으로써 사고를 예방하고 있다.
한편, 종래의 시스템에서 영상정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 중 하나로서, 학습된 딥러닝 기반 추론모델이 사용되고 있으나, 전술한 바와 같이 보행 중인 객체(사람)가 낙상하는 특수한 상황과 관련된 양질의 영상정보(학습데이터)를 확보하기 어려운 문제점이 있어왔다.
구체적으로, 종래의 영상분석 기술에서 영상 내의 객체를 검출, 및 해당 객체에 의한 이벤트를 감지하기 위해서는, H.264 및 H.265 등의 코덱으로 압축된 영상데이터를 디코딩한 후 복원된 영상에 대해서 영상분석을 수행한다. 구체적으로 (선행문헌 1)은 “영상처리 기술을 이용한 사각지대 위험요소 검출 방법 및장치”로서 입력되는 영상에서 위험요소가 배경에 비해 부각되도록 전처리하여 위험요소(이벤트)를 검출하는 구성을 개시하고 있다.
그러나 해당 특허에 의한 영상분석기술은 “영상” 자체에 대한 분석이 수행되는 것으로서, 영상이 디코딩되기 전의 비트스트림정보에 기반하여, 객체를 검출하고 이벤트를 감지함으로써, 적은 연산량으로 영상분석을 수행할 수 있는 구성에 대해서는 개시하는 바가 없다.
국내공개특허 KR 10-2010-0018734 A
본 발명은 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템으로서, 영상정보의 비트스트림정보에 기반하여, 복수의 프레임 각각에서의 디코딩파라미터값의 평균값이 기설정된 임계값을 초과하는 지 여부에 기초하여, 해당 디코딩파라미터값이 노이즈인지 여부를 판단하고, 노이즈가 제거된 디코딩파라미터값에 기초하여, 객체영역을 검출하고, 트래킹 중인 특정 객체영역이 기설정된 시간 이상 이동하지 않을 때 낙상이벤트로 감지하는, 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템을 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위하여, 1 이상의 프로세서 및 1 이상의 메모리를 포함하는 컴퓨팅시스템에서 수행되는 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법으로서, 복수의 프레임 각각에 포함되는 블록에 대한 복수의 디코딩파라미터값에 대한 정보를 포함하는 비트스트림정보를 수신하는 비트스트림정보수신단계; 상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 평균값인 제1평균값을 산출하고, 상기 제1평균값이 기설정된 제1임계값을 초과하지 않는 경우에, 상기 제1평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 해당 디코딩파라미터값을 0으로 변환하는 제1노이즈제거단계; 복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 2 이상에 기초하여 종합파라미터값을 도출하는 종합파라미터값도출단계; 상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값의 평균값인 제2평균값을 산출하고, 상기 제2평균값이 기설정된 제2임계값을 초과하지 않는 경우에, 상기 제2평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 2 이상의 디코딩파라미터값을 0으로 변환하는 제2노이즈제거단계; 각각의 프레임에서, 해당 프레임에 포함되는 블록 중 종합파라미터값이 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출하는 객체영역검출단계; 및 검출된 1 이상의 객체영역에 대하여 복수의 프레임별로 식별정보를 부여하고, 1 이상의 객체영역 각각을 트래킹하는, 객체영역트래킹단계;를 포함하고, 상기 객체영역트래킹단계는, 시간흐름에 따라 트래킹 중인 객체영역 중, 특정 객체영역이 특정 프레임을 기준으로 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 낙상이벤트감지단계;를 포함하는, 객체의 낙상이벤트를 감지하는 방법을 제공한다.
본 발명의 일 실시예에서는, 상기 낙상이벤트감지단계는, 이동중인 것으로 판단되는 특정 객체영역이 특정 프레임을 기준으로 기설정된 시간 이상 해당 객체에 대해 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지할 수 있다.
본 발명의 일 실시예에서는, 상기 객체영역트래킹단계는, 트래킹 중인 복수의 객체영역 각각에 대하여, 객체영역에 대해 기설정된 위치반경 내에서만 이동하는 객체영역을 트래킹대상에서 제외할 수 있다.
본 발명의 일 실시예에서는, 상기 디코딩파라미터값은, 프레임 각각에서 해당 프레임에 포함되는 복수의 블록 각각에 대한 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함할 수 있다.
본 발명의 일 실시예에서는, 상기 종합파라미터값은, 상기 블록에 대한, 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 2 이상의 디코딩파라미터값에 대한 가중평균값일 수 있다.
본 발명의 일 실시예에서는, 상기 종합파라미터값은, 하기의 [식 1]로 결정될 수 있다.
[식 1]
Figure pat00001
(여기서 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값은 해당 블록에 대한 디코딩파라미터,
Figure pat00002
,
Figure pat00003
,
Figure pat00004
,
Figure pat00005
,
Figure pat00006
는 각각의 디코딩파라미터값에 대한 가중치)
본 발명의 일 실시예에서는, 상기 제1노이즈제거단계는, 상기 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 상기 제1평균값이 해당 디코딩파라미터값에 대해 기설정된 제1임계값을 초과하는 경우에, 상기 기설정된 N개의 복수의 프레임 중 가장 앞선 프레임에서 해당 블록에 대한 디코딩파라미터값을 0으로 변환할 수 있다.
본 발명의 일 실시예에서는, 상기 기설정된 N개의 복수의 프레임은, 노이즈를 제거하고자 하는 특정 프레임을 기준으로, 해당 프레임과 전후로 인접하는 연속된 기설정된 N개의 복수의 프레임이고, 슬라이딩 윈도우 알고리즘에 기반하여, 시간에 따라 흐르는 복수의 프레임별로 단계적으로 이동하여 설정될 수 있다.
본 발명의 일 실시예에서는, 상기 제2노이즈제거단계는, 상기 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값 중 어느 하나에 대한 상기 제2평균값이, 종합파라미터값에 대해 기설정된 제2임계값을 초과하는 경우에, 상기 기설정된 N개의 복수의 프레임 중 어느 하나의 프레임에서 해당 블록에 대한 모든 디코딩파라미터값을 0으로 변환할 수 있다.
상기와 같은 과제를 해결하기 위하여, 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 시스템으로서, 복수의 프레임 각각에 포함되는 블록에 대한 복수의 디코딩파라미터값에 대한 정보를 포함하는 비트스트림정보를 수신하는 비트스트림정보수신부; 상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 평균값인 제1평균값을 산출하고, 상기 제1평균값이 기설정된 제1임계값을 초과하지 않는 경우에, 상기 제1평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 해당 디코딩파라미터값을 0으로 변환하는 제1노이즈제거부; 복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 2 이상에 기초하여 종합파라미터값을 도출하는 종합파라미터값도출부; 상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값의 평균값인 제2평균값을 산출하고, 상기 제2평균값이 기설정된 제2임계값을 초과하지 않는 경우에, 상기 제2평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 2 이상의 디코딩파라미터값을 0으로 변환하는 제2노이즈제거부; 각각의 프레임에서, 해당 프레임에 포함되는 블록 중 종합파라미터값이 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출하는 객체영역검출부; 및 검출된 1 이상의 객체영역에 대하여 복수의 프레임별로 식별정보를 부여하고, 1 이상의 객체영역 각각을 트래킹하는, 객체영역트래킹부;를 포함하고, 상기 객체영역트래킹부는, 시간흐름에 따라 트래킹 중인 객체영역 중, 특정 객체영역이 특정 프레임을 기준으로 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 낙상이벤트감지부;를 포함하는, 객체의 낙상이벤트를 감지하는 시스템을 제공한다.
본 발명의 일 실시예에 따르면, 영상정보가 디코딩되기 전의 비트스트림정보에 포함되는, 복수의 프레임에서 복수의 블록 각각에 대한 디코딩파라미터값에 기초하여 객체영역을 검출할 수 있다.
본 발명의 일 실시예에 따르면, 블록에 대한 복수의 디코딩파라미터값 각각에 대하여, 기설정된 N개의 복수의 프레임에서 해당 블록의 해당 디코딩파라미터값에 대한 제1평균값이 제1임계값을 초과하는 지 여부에 기초하여, 해당 디코딩파라미터값이 노이즈인지 여부를 판단할 수 있다.
본 발명의 일 실시예에 따르면, 블록에 대한 복수의 디코딩파라미터값의 가중평균값인 종합파라미터값에 대하여, 기설정된 N개의 복수의 프레임에서 해당 블록의 종합파라미터값에 대한 제2평균값이 제2임계값을 초과하는 지 여부에 기초하여, 해당 블록에 대한 복수의 디코딩파라미터값이 노이즈인지 여부를 판단할 수 있다.
본 발명의 일 실시예에 따르면, 노이즈가 제거된 블록 각각에 대한 복수의 디코딩파라미터값에 기초하여, 해당 블록에 대한 객체의 존재여부 및 이동성 정보를 나타내는 종합파라미터값을 산출할 수 있다.
본 발명의 일 실시예에 따르면, 종합파라미터값이 객체임계값을 초과하는 복수의 블록들을 클러스터링하여 객체영역을 검출할 수 있다.
본 발명의 일 실시예에 따르면, 검출된 1 이상의 객체영역 각각에 대해 식별정보를 부여하여 트래킹할 수 있다.
본 발명의 일 실시예에 따르면, 이동 중인 것으로 판단되는 특정 객체영역이 기설정된 시간 이상 해당 객체에 대해 기설정된 위치반경을 벗어나지 않고, 정지해있는 경우 해당 객체가 낙상한 것으로 판단할 수 있다.
본 발명의 일 실시예에 따르면, 트래킹 중인 객체영역 중 위치변동이 특정 영역 내에서만 발생하는 객체영역을 트래킹대상에서 제외할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 시스템의 전체적인 구조를 개략적으로 도시한다.
도 2는 H.264, 및 H.265를 포함하는 1 이상의 코덱방식에 따라 영상정보가 인코딩된 비트스트림정보의 구조를 개략적으로 도시한다.
도 3은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 방법 및 시스템의 순서도를 개략적으로 도시한다.
도 4는 본 발명의 일 실시예에 따른, 비트스트림정보수신단계에서 수신하는 복수의 프레임에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값을 포함하는 비트스트림정보를 도시한다.
도 5는 본 발명의 일 실시예에 따른, 제1노이즈제거단계를 도시한다.
도 6은 본 발명의 일 실시예에 따른, 제2노이즈제거단계를 도시한다.
도 7은 본 발명의 일 실시예에 따른, 객체영역검출단계를 도시한다.
도 8은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역이 검출되는 일례를 도시한다.
도 9는 본 발명의 일 실시예에 따른, 검출된 객체영역을 도시한다.
도 10은 본 발명의 일 실시예에 따른 인코딩 되는 영상을 생성하는 인코더 시스템을 개략적으로 도시한다.
도 11은 영상 데이터의 프레임들의 예들을 개략적으로 도시한 도면이다.
도 12는 본 발명의 일 실시예에 따른, 객체영역트래킹단계를 도시한다.
도 13은 본 발명의 일 실시예에 따른, 객체의 낙상이벤트가 감지되는 과정을 도시한다.
도 14는 본 발명의 일 실시예에 따른 컴퓨팅장치의 내부 구성을 개략적으로 도시한다.
이하에서는, 다양한 실시예들 및/또는 양상들이 이제 도면들을 참조하여 개시된다. 하기 설명에서는 설명을 목적으로, 하나이상의 양상들의 전반적 이해를 돕기 위해 다수의 구체적인 세부사항들이 개시된다. 그러나, 이러한 양상(들)은 이러한 구체적인 세부사항들 없이도 실행될 수 있다는 점 또한 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 인식될 수 있을 것이다. 이후의 기재 및 첨부된 도면들은 하나 이상의 양상들의 특정한 예시적인 양상들을 상세하게 기술한다. 하지만, 이러한 양상들은 예시적인 것이고 다양한 양상들의 원리들에서의 다양한 방법들 중 일부가 이용될 수 있으며, 기술되는 설명들은 그러한 양상들 및 그들의 균등물들을 모두 포함하고자 하는 의도이다.
또한, 다양한 양상들 및 특징들이 다수의 디바이스들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있는 시스템에 의하여 제시될 것이다. 다양한 시스템들이, 추가적인 장치들, 컴포넌트들 및/또는 모듈들 등을 포함할 수 있다는 점 그리고/또는 도면들과 관련하여 논의된 장치들, 컴포넌트들, 모듈들 등 전부를 포함하지 않을 수도 있다는 점 또한 이해되고 인식되어야 한다.
본 명세서에서 사용되는 "실시예", "예", "양상", "예시" 등은 기술되는 임의의 양상 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되지 않을 수도 있다. 아래에서 사용되는 용어들 '~부', '컴포넌트', '모듈', '시스템', '인터페이스' 등은 일반적으로 컴퓨터 관련 엔티티(computer-related entity)를 의미하며, 예를 들어, 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어를 의미할 수 있다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 발명의 실시예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 시스템의 전체적인 구조를 개략적으로 도시한다.
도 1에 도시된 바와 같이, 본 발명의 객체영역검출시스템은 광의로 수신한 영상정보를 처리하는 객체영역검출부(2000), 영상디코딩부(1000), 및 영상분석부(3000)를 포함한다. 비트스트림정보란 규약된 코덱에 따라 영상정보가 인코딩된 데이터로서, 구체적으로는 가변크기 블록을 이용하여 영상정보가 인코딩된 데이터일 수 있다. 바람직하게는 H.264, 및 H.265를 포함하는 1 이상의 코덱방식에 따라 영상정보가 인코딩된 데이터일 수 있다.
한편, 영상정보란 객체영역검출시스템에 기저장되어 있는 데이터, 혹은 실시간으로 CCTV, 모니터링 장치 등의 영상촬영장치로부터 수신되는 데이터일 수 있다.
영상디코딩부(1000)는 H.264, 및 H.265를 포함하는 1 이상의 코덱방식에 인코딩된 영상을 디코딩 혹은 복호화하기 위한 장치로서, 구체적으로는 상기 코덱방식에 대한 복호화방식에 따라 구성될 수 있다.
영상분석부(3000)는 복호화된 영상에 대하여, 객체인식, 추적, 식별 등의 영상분석단계를 수행하고, 그 목적에 따라 전처리부, 특징정보추출부, 특징정보분석부, 등의 다양한 구성을 포함할 수 있다.
한편, 본 발명에서는 영상분석부(3000)의 영상분석속도를 개선하기 위하여, 객체영역검출부(2000)를 도입하였다. 객체영역검출부(2000)는 영상정보가 디코딩되기 전의 비트스트림정보 자체에 기초하여 객체영역을 검출할 수 있다. 구체적으로 객체영역검출부(2000)는 비트르스트림정보에 포함되는, 영상정보의 복수의 프레임에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값에 기초하여, 영상 내의 객체영역을 검출할 수 있고, 이에 대한 정보를 영상분석부(3000)로 제공할 수 있다.
결과적으로 영상분석부(3000)는 전체 영상에 대해 객체인식, 특징점추출, 전처리 등의 영상분석을 수행하는 것이 아니라, 객체영역검출부(2000)에 의해 전달받은 객체영역에 대해서만 영상분석을 수행함으로써, 영상분석에 필요한 연산부하량을 대폭 경감할 수 있다.
본 발명의 일 실시예에서, 객체영역검출부(2000)는 비트스트림정보수신부, 제1노이즈제거부, 종합파라미터값도출부, 제2노이즈제거부 중 1 이상의 구성요소를 포함하는 형태로 구현될 수 있다.
본 발명의 일 실시예에서, 상기 객체영역검출부(2000), 영상디코딩부(1000), 및 영상분석부(3000)는 1 이상의 프로세서 및 1 이상의 메모리를 포함하는, 단일 혹은 2 이상의 컴퓨팅장치가 결합된 형태로 구성될 수 있다.
도 2는 H.264, 및 H.265를 포함하는 1 이상의 코덱방식에 따라 영상정보가 인코딩된 비트스트림정보의 구조를 개략적으로 도시한다.
도 2의 (a)에 도시된 비트스트림정보는 복호화가 수행되기 전의 데이터로서, 이와 같은 비트스트림정보는 NAL(Network Abstraction Layer)로 이루어져 있고, 각각의 NAL은 Nal Unit 과 페이로드로서의 RBSP(Raw Byte Sequence Payload)로 이루어진다. NAL은 SPS, PPS 와 같은 파라미터 정보가 기재된 단위 혹은 VCL(Video Coding Layer) 에 해당하는 Slice 데이터가 기재된 단위에 해당할 수 있다.
VCL에 해당하는 SLICE NAL은 헤더와 데이터로 구성되어 있고, 여기서 데이터는 복수의 매크로블록 필드와 구분자 필드로 이루어진다.
한편 도 2의 (b)에 도시된 바와 같이, 매크로블록의 데이터필드는 블록의 크기 등의 정보를 포함하는 타입(Type) 필드; 인트라모드로 인코딩되었는 지 혹은 인터모드로 인코딩되었는 지에 대한 정보, 및 인터모드인 경우에 기준프레임정보 및 모션벡터정보를 포함하는 예측타입(Prediction Type) 필드; 디코딩시 입력된 이전 픽쳐 비트열을 유지하기 위한 정보를 포함하는 CPB(Coded Picture Buffer) 필드; 양자화 파라미터에 대한 정보를 포함하는 QP(Quantization Parameter) 필드; 및 해당 블록의 색상에 대한 DCT 계수에 대한 정보를 포함하는 DATA 필드를 포함한다.
또한, 매크로블록이 복수의 서브블록을 포함하는 경우, 도 2의 (b)의 2번째 열에 도시된 타입-예측타입-CPB-QP-DATA의 데이터 유닛이 복수개로 연결될 수 있다.
이와 같이, 비트스트림정보란, 영상정보가 인코딩되어 생성되고, 복호화 되기 전의 데이터이고, 영상정보를 구성하는 복수의 프레임 각각에 포함되는 복수의 블록(매크로블록 혹은 서브블록) 각각에 대한 복수의 디코딩파라미터값을 포함할 수 있다. 구체적으로 상기 복수의 디코딩파라미터값은 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함할 수 있다.
전술한 바와 같이 본 발명에서는 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값에 기초하여, 객체영역을 검출할 수 있고, 이하에서는 해당 과정을 보다 상세히 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 방법 및 시스템의 순서도를 개략적으로 도시한다.
도 3에 도시된 바와 같이, 1 이상의 프로세서 및 1 이상의 메모리를 갖는 컴퓨팅시스템에서 수행되는 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 방법으로서, 프레임 각각에서 해당 프레임에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값에 대한 정보를 포함하는 비트스트림정보를 수신하는 비트스트림정보수신단계; 복수의 블록 각각에 대하여, 기설정된 N개(N은 2 이상의 자연수)의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 평균값인 제1평균값을 산출하고, 상기 제1평균값이 기설정된 제1임계값을 초과하는 지 여부에 기초하여, 디코딩파라미터값이 노이즈로 판단되는 경우에 상기 제1평균값이 산출된 N개의 복수의 프레임 중 어느 하나에서 해당 블록에 대한 해당 디코딩파라미터값을 0으로 변환하는 제1노이즈제거단계; 제1노이즈제거단계가 수행된 디코딩파라미터값에 기초하여, 복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 2 이상에 기초하여 종합파라미터값을 도출하는 종합파라미터값도출단계; 복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값의 평균값인 제2평균값을 산출하고, 상기 제2평균값이 기설정된 제2임계값을 초과하는 지 여부에 기초하여, 종합파라미터값이 노이즈로 판단되는 경우에 상기 제2평균값이 산출된 N개의 복수의 프레임 중 어느 하나에서 해당 블록에 대한 2 이상의 디코딩파라미터값을 0으로 변환하는 제2노이즈제거단계; 및 제2노이즈제거단계가 수행된 종합파라미터값에 기초하여, 각각의 프레임에서, 해당 프레임에 포함되는 블록 중 종합파라미터값이 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출하는 객체영역검출단계;를 포함할 수 있다.
전술한 바와 같이, 도 3의 단계들은 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하기 위한 단계들에 해당하고, 객체영역검출부(2000)에 의해 수행될 수 있다.
S1단계에서, 객체영역검출부(2000)는 비트스트림정보를 수신할 수 있다. 전술한 바와 같이, 비트스트림정보는 영상정보를 구성하는 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값을 포함할 수 있다.
구체적으로 상기 디코딩파라미터값은 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함할 수 있다.
즉, 비트스트림정보는 영상정보가 인코딩되는 과정에서 생성되는, 복수의 프레임에 포함되는 복수의 블록 각각에 대한 1 이상의 디코딩파라미터값을 포함할 수 있다.
한편, 빛의 산란, 고스트 현상 등의 요인으로 영상정보에 노이즈가 발생할 수 있고, 노이즈가 반영된 영상정보가 인코딩되어 생성되는 비트스트림정보 또한 노이즈를 포함할 수 있다. 즉, 복수의 프레임에 포함되는 복수의 블록 각각에 대한 1 이상의 디코딩파라미터값 중 어떤 값은 노이즈에 왜곡된 데이터에 해당할 수 있다.
본 발명에서는 복수의 블록 각각에 대한 복수의 디코딩파라미터값이 노이즈에 해당하는 지 여부를 판단하고, 노이즈가 정제된 데이터에 기초하여 객체영역을 검출할 수 있다.
구체적으로는 기설정된 N개의 프레임에서 디코딩파라미터값의 평균값에 기초하여, 해당 디코딩파라미터값이 노이즈에 의한 것인지 여부를 판단할 수 있다.
한편, 상기 블록은 예시적으로 (16x16) 형태의 매크로블록, 혹은 (8x8, 4x4 등) 형태의 서브블록일 수 있다.
S2단계, S3.1단계, 및 S3.2단계는 제1노이즈제거단계로서, 객체영역검출부(2000)의 제1노이즈제거부에 의해 수행될 수 있다. 또한, 제1노이즈제거단계는 복수의 블록 각각에 대한 복수의 디코딩파라미터값 중 1 이상, 바람직하게는 복수의 블록 각각에 대한 모든 디코딩파라미터값 각각에 대해 수행될 수 있다.
S2단계에서, 객체영역검출부(2000)는 특정 블록의 복수의 디코딩파라미터값 중 어느 하나에 대하여, 기설정된 N개의 복수의 프레임에서 해당 디코딩파라미터값에 대한 제1평균값을 산출할 수 있다.
바람직하게는 복수의 블록 각각의 복수의 디코딩파라미터값 각각에 대하여, 기설정된 N개의 복수의 프레임에서, 해당 블록에 대한 복수의 디코딩파라미터값 각각에 대한 제1평균값을 산출할 수 있다.
더 바람직하게는, 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 각각에 대하여, 기설정된 N개의 복수의 프레임에서 각각에 대한 제1평균값을 산출할 수 있다.
한편, 상기 기설정된 N개의 복수의 프레임은, 노이즈를 제거하고자 하는 프레임과 인접하는 복수의 프레임일 수 있다. 구체적으로 첫번째 프레임에 대한 제1평균값은 첫번째 프레임을 포함하고, 첫번째 프레임 이후로 연속되는 기설정된 N개의 프레임, 예시적으로 1 내지 7프레임에서의 디코딩파라미터값의 평균값일 수 있다.
또는, 본 발명의 다른 실시예에서, 5번째 프레임에 대한 제1평균값은, 5번째 프레임을 포함하고, 5번째 프레임 전후로 연속되는 기설정된 N개의 프레임, 예시적으로 2 내지 8프레임에서의 디코딩파라미터값의 평균값일 수 있다.
한편, 본 발명의 다른 실시예에서는 예시의 7개 프레임보다 더 많거나 적은 프레임에 대해 상기 과정이 수행될 수 있다. 이와 같이 상기 기설정된 N개의 복수의 프레임에서의 프레임 개수 N은 2 이상의 자연수로서, 다수의 프레임에서의 디코딩파라미터값의 평균값이 도출될 수 있다.
객체영역검출부(2000)는 도출된 제1평균값이, 해당 디코딩파라미터값에 대해 기설정된 제1임계값을 초과하는 지 여부에 따라 해당 디코딩파라미터값이 노이즈인지 여부를 판단할 수 있다.
구체적으로 특정 블록의 특정 디코딩파라미터값에 대한 제1평균값이, 제1임계값을 초과하는 경우에 S3.1단계가 수행되고, 데이터값이 유지될 수 있다. 즉, 객체영역검출부(2000)는 특정 디코딩파라미터값에 대한 제1평균값이 해당 디코딩파라미터값에 대한 제1임계값을 초과하는 경우에 해당 데이터를 노이즈가 아닌 유의미한 데이터로 판단하여 데이터값을 유지할 수 있다.
반대로, 특정 블록의 특정 디코딩파라미터값에 대한 제1평균값이, 해당 디코딩파라미터값에 대한 제1임계값 이하인 경우에 S3.2단계가 수행되고, 디코딩파라미터값이 0으로 변환될 수 있다. 구체적으로 제1평균값은 기설정된 N개의 복수의 프레임에서 특정 디코딩파라미터값의 평균값이고, 상기 기설정된 N개의 복수의 프레임, 즉 제1평균값을 산출한 복수의 프레임 중 어느 하나에서 해당 디코딩파라미터값을 0으로 변환할 수 있다.
즉, 객체영역검출부(2000)는 특정 디코딩파라미터값에 대한 제1평균값이 제1임계값 이하인 경우에, 해당 데이터를 노이즈로 판단하여 제1평균값을 산출한 복수의 프레임 중 어느 하나에서 디코딩파라미터값을 0으로 변환할 수 있다.
바람직하게는, 객체영역검출부(2000)는 특정 디코딩파라미터값에 대한 제1평균값이 제1임계값 이하인 경우에, 제1평균값을 산출한 N개의 복수의 프레임 중 가장 앞선 프레임에서 해당 블록의 해당 디코딩파라미터값을 0으로 변환할 수 있다.
이와 같이 제1노이즈제거단계는 복수의 블록 각각에 포함되는 복수의 디코딩파라미터값 각각에 대하여, 기설정된 N개의 복수의 프레임에서의 복수의 디코딩파라미터값 각각에 대한 제1평균값에 기초하여, 제1평균값이 제1임계값을 초과하는 지 여부에 따라 해당 디코딩파라미터값이 노이즈에 의한 것인지 여부를 판단할 수 있다.
S4단계에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대하여, 해당 블록에 포함되는 2 이상의 디코딩파라미터값에 기초하여, 종합파라미터값을 도출할 수 있다.
구체적으로 종합파라미터값은 해당 블록에 포함되는 2 이상의 디코딩파라미터값에 대한 평균값일 수 있다.
바람직하게는, 종합파라미터값은 해당 블록에 포함되는 모든 디코딩파라미터값에 대한 가중평균값일 수 있다.
전술한 바와 같이, 디코딩파라미터값은 해당 블록에 대한 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값일 수 있고, 종합파라미터값이란 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 2 이상에 대한 평균값, 바람직하게는 모든 디코딩파라미터값에 대한 가중평균값일 수 있다.
또한, 종합파라미터값은 제1노이즈제거단계가 수행되어 노이즈가 정제된 디코딩파라미터값에 기초하여 산출될 수 있다.
S5단계에서, 객체영역검출부(2000)는 특정 블록의 종합파라미터값에 대하여, 기설정된 N개의 복수의 프레임에서 종합파라미터값에 대한 제2평균값을 산출할 수 있다.
바람직하게는 특정 블록에 대한 종합파라미터값에 대하여, 기설정된 N개의 복수의 프레임에서 해당 블록에 대한 종합파라미터값의 제2평균값을 산출할 수 있다.
한편, 상기 기설정된 N개의 복수의 프레임은, 노이즈를 제거하고자 하는 프레임과 인접하는 복수의 프레임일 수 있다. 구체적으로 첫번째 프레임에 대한 제2평균값은 첫번째 프레임을 포함하고, 첫번째 프레임 이후로 연속되는 기설정된 N개의 프레임, 예시적으로 1 내지 7프레임에서의 종합파라미터값의 평균값일 수 있다.
또는, 본 발명의 다른 실시예에서, 5번째 프레임에 대한 제2평균값은, 5번째 프레임을 포함하고, 5번째 프레임 전후로 연속되는 기설정된 N개의 프레임, 예시적으로 2 내지 8프레임에서의 종합파라미터값의 평균값일 수 있다.
한편, 본 발명의 다른 실시예에서는 예시의 7개 프레임보다 더 많거나 적은 프레임에 대해 상기 과정이 수행될 수 있다. 이와 같이 상기 기설정된 N개의 복수의 프레임에서의 프레임 개수 N은 2 이상의 자연수로서, 다수의 프레임에서의 종합파라미터값의 평균값이 도출될 수 있다.
객체영역검출부(2000)는 도출된 제2평균값이, 종합파라미터값에 대해 기설정된 제2임계값을 초과하는 지 여부에 따라 해당 종합파라미터값이 노이즈인지 여부를 판단할 수 있다.
구체적으로 특정 블록의 종합파라미터값에 대한 제2평균값이, 제2임계값을 초과하는 경우에 S6.1단계가 수행되고, 데이터값이 유지될 수 있다. 즉, 객체영역검출부(2000)는 종합파라미터값에 대한 제2평균값이 제2임계값을 초과하는 경우에 해당 데이터를 노이즈가 아닌 유의미한 데이터로 판단하여 데이터값을 유지할 수 있다.
여기서 종합파라미터값의 데이터를 유지한다라는 것은, 종합파라미터값을 도출한 2 이상의 디코딩파라미터값의 데이터값을 유지하는 것을 의미한다. 즉, 본 발명의 일 실시예에서 종합파라미터값이 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값에 대한 가중평균값일 때, 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 각각에 대한 데이터값이 유지될 수 있다.
반대로, 특정 블록의 종합파라미터값에 대한 제2평균값이, 제2임계값을 이하인 경우에 S6.2단계가 수행되고, 해당 블록에 대한 복수의 디코딩파라미터값 중 2 이상이 0으로 변환될 수 있다. 구체적으로 제2평균값은 기설정된 N개의 복수의 프레임에서 특정 블록에 대한 종합파라미터값의 평균값이고, 상기 기설정된 N개의 복수의 프레임, 즉 제2평균값을 산출한 복수의 프레임 중 어느 하나에서 해당 블록에 대한 복수의 디코딩파라미터값 중 2 이상을 0으로 변환할 수 있다.
즉, 객체영역검출부(2000)는 종합파라미터값에 대한 제2평균값이 제2임계값 이하인 경우에, 해당 데이터를 노이즈로 판단하여 제2평균값을 산출한 복수의 프레임 중 어느 하나에서 해당 블록에 대한 복수의 디코딩파라미터값 중 2 이상을 0으로 변환할 수 있다.
바람직하게는, 객체영역검출부(2000)는 종합파라미터값에 대한 제2평균값이 제2임계값 이하인 경우에, 제2평균값을 산출한 복수의 프레임 중 가장 앞선 프레임에서 해당 블록에 대한 복수의 디코딩파라미터값 중 2 이상을 0으로 변환할 수 있다.
더욱 바람직하게는, 객체영역검출부(2000)는 종합파라미터값에 대한 제2평균값이 제2임계값 이하인 경우에, 제2평균값을 산출한 복수의 프레임 중 가장 앞선 프레임에서 해당 블록에 대한 모든 디코딩파라미터값을 0으로 변환할 수 있다.
이와 같이 제2노이즈제거단계는 복수의 블록 각각에서 도출되는 종합파라미터값에 대하여, 기설정된 N개의 복수의 프레임에서의 종합파라미터값에 대한 제2평균값을 산출하고, 제2평균값이 제2임계값을 초과하는 지 여부에 따라 해당 종합파라미터값이 노이즈에 의한 것인지 여부를 판단할 수 있다.
S7단계에서, 객체영역검출부(2000)는 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 종합파라미터값이 기설정된 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출할 수 있다.
구체적으로 전술한 제1노이즈제거단계, 및 제2노이즈제거단계가 수행됨으로써 노이즈로 판단되는 디코딩파라미터값은 0으로 변환될 수 있고, 노이즈가 제거된 디코디파라미터값에 기초하여 산출되는 종합파라미터값은 해당 블록에 대한 객체의 존재여부와 이동성 정보를 내포할 수 있다.
객체영역검출부(2000)는 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대하여, 종합파라미터값이 객체임계값을 초과하는 지 여부에 기초하여, 해당 블록이 객체영역에 해당하는 지 여부를 판별할 수 있다.
즉, 객체영역검출부(2000)는 객체임계값을 초과하는 종합파리미터값을 가지는 복수의 블록 중 기설정된 거리 이내에 인접하는 1 이상의 블록들을 클러스터링하여, 하나의 객체영역으로 판단할 수 있다.
한편, 전술한 제1임계값, 제2임계값, 및 객체임계값에 대한 기준치는 해당 영상으로부터 도출된 통계적 수치 혹은 시스템에서 지금까지 영상처리를 통하여 도출된 통계적 수치 혹은 입력된 수치에 의하여 구현될 수 있다.
도 4는 본 발명의 일 실시예에 따른, 비트스트림정보수신단계에서 수신하는 복수의 프레임에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값을 포함하는 비트스트림정보를 도시한다.
본 발명의 일 실시예에서, 상기 블록은, 프레임 각각에서 해당 프레임에 포함되는 복수의 매크로블록 혹은 상기 매크로블록을 구성하는 서브블록을 포함할 수 있다.
또한 상기 디코딩파라미터값은, 프레임 각각에서 해당 프레임에 포함되는 복수의 블록 각각에 대한 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함할 수 있다.
도 4의 (a)에 도시된 바와 같이, 비트스트림정보는 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값을 포함할 수 있다.
예시적으로 도 4의 (a)는 복수의 프레임(1 내지 7프레임) 중 특정 프레임(4프레임)에 포함되는 복수의 블록(B1 내지 B3) 중 특정 블록(B3)에 대한 복수의 디코딩파라미터값(모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값)을 도시하고 있다.
결과적으로는 도 4의 (b)에 도시된 바와 같이, 비트스트림정보는 복수의 프레임(1 내지 7프레임) 각각에 포함되는 복수의 블록(B1 내지 B3) 각각에 대한 복수의 디코딩파라미터값(D1 내지 D7)을 포함할 수 있다.
한편, 도 4에서는 예시적으로 1 내지 7프레임에서의 디코딩파라미터값을 도시하고 있으나, 바람직한 실시예에서는 영상을 구성하는 다수의 프레임 각각에 디코딩파라미터값을 포함할 수 있고, 후술하는 도 5 및 6에서의 단계들은 (예시의 1 내지 7프레임에 한정되지 않고)영상을 구성하는 다수의 프레임 각각에 대한 디코딩파라미터값에 기초하여 수행될 수 있다.
일례로, 도 5 및 6에서의 기설정된 N개의 복수의 프레임은 10개, 20개, 혹은 이보다 많거나 적은 개수의 프레임에 해당할 수 있다.
본 발명의 일 실시예에 따르면, 이와 같이 인코딩된 영상정보가 디코딩(복호화)되기 전의 데이터인 비트스트림정보에 기반하여 객체영역을 검출할 수 있다. 구체적으로는 노이즈가 제거되어 정제된 데이터에 기반하여 객체영역을 검출할 수 있다.
도 5는 본 발명의 일 실시예에 따른, 제1노이즈제거단계를 도시한다.
도 5에 도시된 바와 같이, 상기 제1노이즈제거단계는, 상기 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 상기 제1평균값이 해당 디코딩파라미터값에 대해 기설정된 제1임계값을 초과하는 경우에, 상기 기설정된 N개의 복수의 프레임 중 가장 앞선 프레임에서 해당 블록에 대한 디코딩파라미터값을 0으로 변환할 수 있다.
또한, 상기 기설정된 N개의 복수의 프레임은, 노이즈를 제거하고자 하는 특정 프레임을 기준으로, 해당 프레임과 전후로 인접하는 연속된 기설정된 N개의 복수의 프레임이고, 슬라이딩 윈도우 알고리즘에 기반하여, 시간에 따라 흐르는 복수의 프레임별로 단계적으로 설정될 수 있다.
또한, 상기 종합파라미터값은, 상기 블록에 대한, 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 2 이상의 디코딩파라미터값에 대한 가중평균값일 수 있다.
또한, 상기 종합파라미터값은, 하기의 [식 1]로 결정될 수 있다.
[식 1]
Figure pat00007
(여기서 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값은 해당 블록에 대한 디코딩파라미터,
Figure pat00008
,
Figure pat00009
,
Figure pat00010
,
Figure pat00011
,
Figure pat00012
는 각각의 디코딩파라미터값에 대한 가중치)
도 5의 (a)는 특정 블록에 대하여, 복수의 프레임에서의 특정 디코딩파라미터값(a1 내지 a7)을 도시하고 있다. 본 발명에서는 복수의 프레임 각각에서의 해당 디코딩파라미터값이 노이즈에 의한 것인 지 여부를 판단한다.
구체적으로 디코딩파라미터값 a1에 대한 노이즈를 판단하는 경우를 보면, 우선 기설정된 개수(예시의 경우 5개)의 복수의 프레임(1프레임 내지 5프레임)에서 해당 디코딩파라미터값(a1 내지 a5)에 대한 평균값인 제1평균값(aavg.1)을 산출한다.
바람직하게는, 디코딩파라미터값 a1에 대한 1프레임과 전후로 인접하고 연속되는 복수의 프레임(1프레임 내지 5프레임)에서 해당 디코딩파라미터값(a1 내지 a5)에 대한 평균값인 제1평균값(aavg.1)을 산출한다.
이어서, 산출된 제1평균값(aavg.1)이 해당 디코딩파라미터값(a)에 대해 기설정된 제1임계값(a제1임계값)을 초과하는 지 여부를 판단한다.
도시된 바와 같이, 제1평균값(aavg.1)이 제1임계값(a제1임계값)을 초과하는 경우 해당 디코딩파라미터값은 유효한 데이터로 판단되고, 데이터값이 유지된다.
반면 노이즈로 판단되어 제거되는 디코딩파라미터값 a3에 대한 노이즈를 판단하는 경우를 보면, 우선 기설정된 개수(예시의 경우 5개)의 복수의 프레임(3프레임 내지 7프레임)에서 해당 디코딩파라미터값(a3 내지 a7)에 대한 평균값인 제1평균값(aavg.3)을 산출한다.
바람직하게는, 디코딩파라미터값 a3에 대한 3프레임과 전후로 인접하고 연속되는 복수의 프레임(3프레임 내지 7프레임)에서 해당 디코딩파라미터값(a3 내지 a7)에 대한 평균값인 제1평균값(aavg.3)을 산출한다.
이어서, 산출된 제1평균값(aavg.3)이 해당 디코딩파라미터값(a)에 대해 기설정된 제1임계값(a제1임계값)을 초과하는 지 여부를 판단한다.
도시된 바와 같이, 제1평균값(aavg.3)이 제1임계값(a제1임계값) 이하인 경우 해당 디코딩파라미터값(a3)은 노이즈로 판단되어 0으로 변환될 수 있다. 구체적으로 제1평균값(aavg.3)이 제1임계값(a제1임계값) 이하인 경우, 제1평균값(aavg.3)이 산출된 기설정된 N개의 복수의 프레임(3프레임 내지 7프레임) 중 어느 하나(3프레임)에서 해당 블록에 대한 디코딩파라미터값(a3)이 0으로 변환될 수 있다.
바람직하게는, 제1평균값(aavg.3)이 산출된 기설정된 N개의 복수의 프레임(3프레임 내지 7프레임) 중 가장 앞선 프레임(3프레임)에서 해당 블록에 대한 디코딩파라미터값(a3)이 0으로 변환될 수 있다.
한편 도 5의 (a)에서 디코딩파라미터값 a1 및 a3에 대한 노이즈를 판단할 때, 제1평균값을 산출하는 프레임구간(기설정된 N개의 복수의 프레임)이 상이하게 설정되었음을 알 수 있다.
구체적으로 디코딩파라미터값 a1에 대한 제1평균값(aavg.1)은 1프레임 내지 5프레임에서의 디코딩파라미터값 a1 내지 a5의 평균값이고, 디코딩파라미터값 a3에 대한 제1평균값(aavg.3)은 3프레임 내지 7프레임에서의 디코딩파라미터값 a3 내지 a7의 평균값이다.
동일한 방식으로 디코딩파라미터값 a2에 대한 제1평균값은 2프레임 내지 6프레임에서의 디코딩파라미터값, 디코딩파라미터값 a4에 대한 제1평균값은 4프레임 내지 8프레임에서의 디코딩파라미터값에 기초하여 산출될 수 있다.
이와 같이, 기설정된 N개의 복수의 프레임구간이 슬라이딩 윈도우 알고리즘에 기반하여, 복수의 프레임 각각에 단계적으로 적용될 수 있다.
이와 같이, 본 발명에서는 제1평균값을 산출하는 프레임구간인 “기설정된 N개의 복수의 프레임”이 시간에 따라 흐르는 프레임별로 단계적으로 적용됨으로써, 복수의 프레임에서 불규칙적으로 생성되는 노이즈를 단계적으로 제거할 수 있다.
이를 도 5의 (b)에서 설명하면, 특정 블록에 대한 디코딩파라미터값이 1 내지 5프레임 각각에서 2,3,2,1,1일 때, 1프레임에 대한 제1평균값은 기설정된 개수(3개)의 복수의 프레임(1 내지 3프레임)에서의 디코딩파라미터값의 평균값인 2+3+2/3=2.3으로 산출될 수 있다.
한편, 상기 제1평균값이 기설정된 제1임계값(예를 들어 2)를 초과하는 경우, 1프레임에서 해당 블록에 대한 디코딩파라미터값 2는 유지될 수 있다.
반면에, 3프레임에 대한 제1평균값은 기설정된 개수(3개)의 복수의 프레임(3 내지 5프레임)에서의 디코딩파라미터값의 평균값인 2+1+1/3=1.3으로 산출될 수 있다.
한편, 상기 제1평균값이 기설정된 제1임계값(예를 들어 2) 이하인 경우, 3프레임에 대한 디코딩파라미터값 2는 0으로 변환될 수 있다.
한편, 전술한 바와 같이 본 발명의 일 실시예에서, 디코딩파라미터값은 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함할 수 있고, 상기 제1노이즈제거단계는 복수의 디코딩파라미터값 각각에 대해 수행될 수 있다.
구체적으로 본 발명의 일 실시예에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 데이터크기값에 임계치를 적용하여, 임계치보다 낮은 블록에 대한 데이터크기값은 0으로 변환한 후, 기설정된 N개의 복수의 프레임에서 데이터크기값에 대한 제1평균값을 산출하여, 제1평균값이 제1임계값 이하인 경우에 해당 블록에 대한 데이터크기값을 0으로 변환할 수 있다.
또는 본 발명의 일 실시예에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 각도값을 90도 단위의 4개의 채널로 분류하고, 기설정된 N개의 복수의 프레임에서 채널별로 각도값에 대한 제1평균값을 산출하여, 제1평균값이 제1임계값 이하인 경우에 해당 블록에 대한 각도값을 0으로 변환할 수 있다.
또는 본 발명의 일 실시예에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 블록크기값을 정규화하고(예를 들어, 모든 블록크기값이 0 내지 255 이내가 되도록) 임계치를 적용하여, 임계치보다 낮은 블록에 대한 블록크기값은 0으로 변환한 후, 기설정된 N개의 복수의 프레임에서 블록크기값에 대한 제1평균값을 산출하여, 제1평균값이 제1임계값 이하인 경우에 해당 블록에 대한 블록크기값을 0으로 변환할 수 있다.
또는 본 발명의 일 실시예에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 레지듀얼값을 정규화하고(예를 들어, 모든 레지듀얼값이 0 내지 255 이내가 되도록) 임계치를 적용하여, 임계치보다 낮은 블록에 대한 레지듀얼값은 0으로 변환한 후, 기설정된 N개의 복수의 프레임에서 레지듀얼값에 대한 제1평균값을 산출하여, 제1평균값이 제1임계값 이하인 경우에 해당 블록에 대한 레지듀얼값을 0으로 변환할 수 있다.
이어서, 복수의 프레임에서 해당 블록에 대한 레지듀얼값을 이진화하여, 0 또는 255의 값으로 변환할 수 있다.
또는 본 발명의 일 실시예에서, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 양자화파라미터값을 정규화하고(예를 들어, 모든 양자화파라미터값이 0 내지 255 이내가 되도록) 임계치를 적용하여, 임계치보다 낮은 블록에 대한 양자화파라미터값은 0으로 변환한 후, 기설정된 N개의 복수의 프레임에서 양자화파라미터값에 대한 제1평균값을 산출하여, 제1평균값이 제1임계값 이하인 경우에 해당 블록에 대한 양자화파라미터값을 0으로 변환할 수 있다.
이와 같이, 데이터 형태가 상이한 복수의 디코딩파라미터값별로 상이한 규칙으로 제1노이즈제거단계가 수행될 수 있다.
도 5의 (c)는 제1노이즈제거단계가 수행된 후의 복수의 프레임에 포함되는 복수의 블록 각각에 대한 디코딩파라미터값을 도시한다. 도시된 바와 같이, 제1노이즈제거단계가 수행됨으로써, 복수의 디코딩파라미터값 중 노이즈로 판단되는 특정 프레임에서의 특정 블록에 대한 특정 디코딩파라미터값이 0으로 변환될 수 있다.(예시의, 1프레임의 B1블록의 디코딩파라미터값 D1, 4프레임의 B1블록의 디코딩파라미터값 D7)
한편, 제2노이즈제거단계를 수행하기에 앞서 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 종합파라미터값이 산출될 수 있다. 구체적으로 종합파라미터값은 해당 블록에 대한 2 이상의 디코딩파라미터값에 대한 가중평균값이다.
바람직하게는 종합파라미터값은 해당 블록에 대한 모든 디코딩파라미터값에 대한 가중평균값이다.
더 바람직하게는 종합파라미터값은 해당 블록에 대한 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값의 가중평균값이다.
도 5의 (c)에 도시된 바와 같이, 1프레임의 B1블록에 대한 종합파라미터값 d1은 해당 블록에 대한 모든 디코딩파라미터값(D1 내지 D7)에 대한 가중평균값이다.
마찬가지로, 4프레임의 B1블록에 대한 종합파라미터값 d4는 해당 블록에 대한 모든 디코딩파라미터값(D1 내지 D7)에 대한 가중평균값이고, 7프레임의 B1블록에 대한 종합파라미터값 d7은 해당 블록에 대한 모든 디코딩파라미터값(D1 내지 D7)에 대한 가중평균값이다.
이와 같이, 종합파라미터값은 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 2 이상에 대한 가중평균값, 바람직하게는 모든 디코딩파라미터값에 대한 가중평균값으로서, 크기와 방향성을 가지는 벡터값으로 산출될 수 있고, 이는 해당 블록에서의 객체의 존재여부 및 이동성 정보를 의미할 수 있다.
한편, 2 이상의 디코딩파라미터값에 기초하여 종합파라미터값을 산출함에 있어 각 디코딩파라미터값마다 상이한 가중치가 부여될 수 있다.
즉, 종합파라미터값은 하기의 [식 1]과 같은 방식으로 산출될 수 있다.
[식 1]
Figure pat00013
(여기서 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값은 해당 블록에 대한 디코딩파라미터,
Figure pat00014
,
Figure pat00015
,
Figure pat00016
,
Figure pat00017
,
Figure pat00018
는 각각의 디코딩파라미터값에 대한 가중치)
도 6은 본 발명의 일 실시예에 따른, 제2노이즈제거단계를 도시한다.
도 6에 도시된 바와 같이, 상기 제2노이즈제거단계는, 상기 기설정된 N개의 복수의 프레임에서 종합파라미터값에 대한 상기 제2평균값이, 종합파라미터값에 대해 기설정된 제2임계값을 초과하는 경우에, 상기 기설정된 N개의 복수의 프레임 중 어느 하나의 프레임에서 해당 블록에 대한 모든 디코딩파라미터값을 0으로 변환할 수 있다.
도 6의 (a)는 특정 블록에 대하여, 복수의 프레임에서의 종합파라미터값(d1 내지 d7)을 도시하고 있다. 본 발명에서는 복수의 프레임 각각에 대한 종합파라미터값이 노이즈에 의한 것인 지 여부를 판단한다.
구체적으로 종합파라미터값 d1에 대한 노이즈를 판단하는 경우를 보면, 우선 기설정된 개수(예시의 경우 5개)의 복수의 프레임(1프레임 내지 5프레임)에서 종합파라미터값(d1 내지 d5)에 대한 평균값인 제2평균값(davg.1)을 산출한다.
바람직하게는, 종합파라미터값 d1에 대한 1프레임과 전후로 인접하고 연속되는 복수의 프레임(1프레임 내지 5프레임)에서 종합파라미터값(d1 내지 d5)에 대한 평균값인 제2평균값(davg.1)을 산출한다.
이어서, 산출된 제2평균값(davg.1)이 종합파라미터값에 대해 기설정된 제2임계값(d제2임계값)을 초과하는 지 여부를 판단한다.
도시된 바와 같이, 제2평균값(davg.1)이 제2임계값(d제2임계값)을 초과하는 경우 해당 종합파라미터값은 유효한 데이터로 판단되고, 해당 블록에 대한 2 이상의 디코딩파라미터값의 데이터값이 유지된다.
반면 종합파라미터값 d3에 대한 노이즈를 판단하는 경우를 보면, 우선 기설정된 개수(예시의 경우 5개)의 복수의 프레임(3프레임 내지 7프레임)에서 종합파라미터값(d3 내지 d7)에 대한 평균값인 제2평균값(davg.3)을 산출한다.
바람직하게는, 종합파라미터값 d3에 대한 3프레임과 전후로 인접하고 연속되는 복수의 프레임(3프레임 내지 7프레임)에서 종합파라미터값(d3 내지 d7)에 대한 평균값인 제2평균값(davg.3)을 산출한다.
이어서, 산출된 제2평균값(aavg.3)이 해당 디코딩파라미터값(a)에 대해 기설정된 제2임계값(d제2임계값)을 초과하는 지 여부를 판단한다.
도시된 바와 같이, 제2평균값(davg.3)이 제2임계값(d제2임계값) 이하인 경우, 제2평균값(davg.3)이 산출된 기설정된 N개의 복수의 프레임(3프레임 내지 7프레임) 중 어느 하나(3프레임)에서 해당 블록에 대한 2 이상의 디코딩파라미터값은 노이즈로 판단되어 0으로 변환될 수 있다. 바람직하게는 해당 블록에 대한 모든 디코딩파라미터값이 0으로 변환될 수 있다.
더욱 바람직하게는, 제2평균값(davg.3)이 산출된 기설정된 N개의 복수의 프레임(3프레임 내지 7프레임) 중 가장 앞선 프레임(3프레임)에서 해당 블록에 대한 모든 디코딩파라미터값이 0으로 변환될 수 있다.
한편 도 6의 (a)에서 종합파라미터값 d1 및 d3에 대한 노이즈를 판단할 때, 제2평균값을 산출하는 프레임구간(기설정된 N개의 복수의 프레임)이 상이하게 설정되었음을 알 수 있다.
구체적으로 종합파라미터값 d1에 대한 제2평균값(davg.1)은 1프레임 내지 5프레임에서의 종합파라미터값 d1 내지 d5의 평균값이고, 종합파라미터값 d3에 대한 제2평균값(davg.3)은 3프레임 내지 7프레임에서의 종합파라미터값 d3 내지 d7의 평균값이다.
동일한 방식으로 종합파라미터값 d2에 대한 제2평균값은 2프레임 내지 6프레임에서의 종합파라미터값, 종합파라미터값 d4에 대한 제2평균값은 4프레임 내지 8프레임에서의 종합파라미터값에 기초하여 산출될 수 있다.
이와 같이, 기설정된 N개의 복수의 프레임구간이 슬라이딩 윈도우 알고리즘에 기반하여, 복수의 프레임 각각에 단계적으로 적용될 수 있다.
이와 같이, 본 발명에서는 제2평균값을 산출하는 프레임구간인 “기설정된 N개의 복수의 프레임”이 시간에 따라 흐르는 프레임별로 단계적으로 적용됨으로써, 복수의 프레임에서 불규칙적으로 생성되는 노이즈를 단계적으로 제거할 수 있다.
이를 도 6의 (b)에서 설명하면, 특정 블록에 대한 복수의 디코딩파라미터값이 1프레임에서 2,1,3,2일 ‹š, 1프레임에서 종합파라미터값은 2+1+3+2/4=2로 산출될 수 있다. 이 때, 각각의 디코딩파라미터값에 대한 가중치는 고려하지 않았다.
이와 같은 단계를 각 프레임에서 수행하여, 1 내지 5프레임 각각에서의 종합파라미터값이 2,3,2,1,1으로 산출되었다.
1프레임에 대한 제2평균값은 기설정된 개수(3개)의 복수의 프레임(1 내지 3프레임)에서의 종합파라미터값의 평균값인 2+3+2/3=2.3으로 산출될 수 있다.
한편, 상기 제2평균값이 기설정된 제2임계값(예를 들어 2)를 초과하는 경우, 1프레임에 대한 모든 디코딩파라미터값(2,1,3,2)은 유지될 수 있다.
반면에, 3프레임에 대한 제2평균값은 기설정된 개수(3개)의 복수의 프레임(3 내지 5프레임)에서의 디코딩파라미터값의 평균값인 2+1+1/3=1.3으로 산출될 수 있다.
한편, 상기 제2평균값이 기설정된 제2임계값(예를 들어 2) 이하인 경우, 3프레임에 대한 모든 디코딩파라미터값(2,2,2,2)의 값은 0으로 변환될 수 있다.
도 6의 (c)는 제2노이즈제거단계가 수행된 후의 복수의 프레임에 포함되는 복수의 블록 각각에 대한 디코딩파라미터값을 도시한다. 도시된 바와 같이, 제2노이즈제거단계가 수행됨으로써, 복수의 디코딩파라미터값 중 노이즈로 판단되는 특정 프레임에서의 특정 블록에 대한 2 이상의 디코딩파라미터값이 0으로 변환될 수 있다
구체적으로 1프레임의 B1블록에 대한 종합파라미터값 d1이 노이즈로 판단되는 경우에, B1블록에 대한 2 이상의, 바람직하게는 모든 디코딩파라미터값(D1 내지 D7)이 0으로 변환될 수 있다.
동일하게 4프레임의 B1블록에 대한 종합파라미터값 d4가 노이즈로 판단되는 경우에, B1블록에 대한 2 이상의, 바람직하게는 모든 디코딩파라미터값(D1 내지 D7)이 0으로 변환될 수 있다.
이를 도 5의 (c)의 제1노이즈제거단계와 비교하면, 제1노이즈제거단계는 복수의 디코딩파라미터값 각각에 대해 수행되어, 해당 블록에서 노이즈로 판단되는 특정 디코딩파라미터값이 0으로 변환되는 과정이고, 제2노이즈제거단계는 복수의 디코딩파라미터값에 대한 가중평균값인 종합파라미터값에 대해 수행되어, 종합파라미터값이 노이즈로 판단되는 경우, 해당 블록에 대한 모든 디코딩파라미터값이 0으로 변환되는 과정이다.
도 7은 본 발명의 일 실시예에 따른, 객체영역검출단계를 도시한다.
전술한 바와 같이, 본 발명에서는 제1노이즈제거단계 및 제2노이즈제거단계를 수행함으로써, 복수의 프레임 각각에 포함되는 복수의 블록 각각에 대한 복수의 디코딩파라미터값이 노이즈에 의한 것인지 여부를 판단하고, 노이즈로 판단되는 디코딩파라미터값을 0으로 변환할 수 있다.
도 7의 (a)에 도시된 바와 같이, 노이즈가 제거된 2 이상의 디코딩파라미터값에 의해 산출되는 종합파라미터값은 해당 블록에 대한, 객체의 존재여부 및 이동성정보를 포함할 수 있다. 바람직하게는 종합파라미터값은 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값에 대한 가중평균값으로, 크기와 각도를 가지는 벡터 형태의 데이터로 산출될 수 있다.
도 7의 (b)는 복수의 블록 각각에 대한 종합파라미터값에 기초하여 검출된 객체영역을 도시한다. 도시된 바와 같이, 종합파라미터값은 복수의 블록 각각에 대하여, 크기와 각도를 가지는 벡터 형태의 데이터로 산출될 수 있다.
객체영역검출부(2000)는 종합파라미터값이 객체임계값을 초과하는 복수의 블록들(예시의 #2,#3,#6,#7)을 클러스터링하고, 클러스터링된 블록들의 최외곽점을 꼭지점으로 하는 사각형형태의 바운딩박스를 부여하여 객체영역을 설정할 수 있다.
바람직하게는, 복수의 프레임 각각에 포함되는 복수의 블록에 대한 종합파라미터값에 기초하여, 인접하거나 기설정된 거리 이내에 위치하는 1 이상의 블록들을 클러스터링하여, 복수의 프레임 각각에서 객체영역이 검출될 수 있다.
도 8은 본 발명의 일 실시예에 따른, 영상정보의 비트스트림정보에 기반하여 객체영역이 검출되는 일례를 도시한다.
도 8의 (a)는 노이즈에 의한 블록들을 도시한다. 도시된 바와 같이 노이즈는 불규칙적인 위치, 및 프레임에서 간헐적으로 나타날 수 있다. 즉, 노이즈는 연속되는 프레임이 아닌 특정 프레임 혹은 아주 짧은 프레임에서 순간적으로 나타났다 사라지는 형태로 발생한다. 즉, 노이즈에 의한 디코딩파라미터값들은 기설정된 N개의 복수의 프레임동안 연속적으로 유의미한(임계값 이상의) 데이터값을 유지하지 못하므로, 제1노이즈제거단계 및 제2노이즈제거단계에서 제거(0으로 변환)될 수 있다.
도 8의 (b)는 객체에 의한 블록들을 도시한다. 객체에 의한 디코딩파라미터값들은 기설정된 N개의 복수의 프레임동안 연속적으로 유의미한(임계값 이상의) 데이터값을 유지하므로, 제1노이즈제거단계 및 제2노이즈제거단계에서 제거되지 않을 수 있다.
도 8의 (c)는 객체임계값을 초과하는 종합파라미터값을 복수의 블록들을 클러스터링하여 검출된 객체영역을 도시한다. 도시된 바와 같이, 객체영역은 인접하거나 기설정된 거리 이내에 위치하는 복수의 블록들을 클러스터링하고, 블록의 최외곽점을 꼭지점으로 하는 바운딩박스를 부여하여 설정될 수 있다.
또한, 복수의 프레임에서, 검출된 객체영역별로 식별정보를 부여하여 트래킹할 수 있다.
도 9는 본 발명의 일 실시예에 따른, 검출된 객체영역을 도시한다.
전술한 바와 같이, 본 발명에서는 영상정보가 디코딩 되기 전의 비트스트림정보에 기반하여 객체영역을 검출하여 영상분석을 수행할 수 있다. 즉 도 9에서 검출된 객체영역은 영상정보 자체에 대한 객체검출 알고리즘에 의해 검출된 것이 아니라, 도 8의 (c)에서와 같이 디코딩되기 전의 비트스트림정보에 기반하여 검출된 객체영역에 해당한다.
도 10은 본 발명의 일 실시예에 따른 인코딩 되는 영상을 생성하는 인코더 시스템을 개략적으로 도시한다. 도시된 인코더(10)는 도 1에서 영상정보를 인코딩하여 비트스트림정보를 생성하기 위해, DCT부(Discrete Cosine Transform)(11), 양자화부(Quantization)(12), 역양자화부(Inverse Quantization; IQ)(13), 역변환부 (Inverse Discrete Cosine Transform;IDCT)(14), 프레임 메모리(15), 움직임 추정 및 보상부(Motion Estimation and Compensation; ME/MC)(16) 및 가변 길이 코딩부(Variable Length Coding; VLC)(17)를 포함할 수 있다. 마찬가지로, 상기 영상디코딩부(1000)는 상기 인코딩부의 구성에 상응하게 구성됨이 바람직하다.
이에 대해 간략하게 설명을 하자면, DCT부(11)는 공간적 상관성을 제거하기 위해 기설정된 사이즈 (예를들어 4 ×4) 픽셀 블록 단위로 입력되는 영상 데이터에 대해 DCT 연산을 수행한다. 이후, 양자화부(12)는 DCT부(11)에서 얻어진 DCT 계수에 대해 양자화를 수행하여, 몇 개의 대표 값으로 표현함으로써, 고효율 손실 압축을 수행한다.
또한, 역양자화부(13)는 양자화부(12)에서 양자화된 영상 데이터를 역양자화한다. 역변환부(14)는 역양자화부(13)에서 역양자화된 영상 데이터에 대해 IDCT 변환을 수행한다. 프레임 메모리(15)는 역변환부(14)에서 IDCT 변환된 영상데이터를 프레임 단위로 저장한다.
한편, 움직임 추정 및 보상부(16)는 입력되는 현재 프레임의 영상데이터와 프레임 메모리부(15)에 저장된 이전 프레임의 영상 데이터를 이용하여 매크로 블록당 움직임 벡터(Motion Vector; MV)를 추정하여 블록정합오차 (blockmatching error)에 해당되는 SAD(sum of absolute difference)를 계산한다.
가변길이 코딩부(17)는 움직임 추정 및 보상부(16)에서 추정된 움직임 벡터에 따라 DCT및 양자화 처리된 데이터에서 통계적 중복성을 제거한다.
도 11은 영상 데이터의 프레임들의 예들을 개략적으로 도시한 도면이다. 일반적인 동영상의 비디오 부분은 I 프레임(도 11에서 “I”로 도시한 프레임), P 프레임(도 11에서 “P”로 도시한 프레임), 및 B 프레임(도 11에서 “B”로 도시한 프레임)으로 구성된다. I 프레임은 키 프레임으로써 전체 이미지를 모두 포함하고, 동영상 파일에 있어서 억세스 포인트로 기능할 수 있으며, 독립적으로 인코딩된 프레임에 해당하며 낮은 압축률을 가지고 있다.
한편, P 프레임의 경우, 이전의 I 프레임 혹은 P 프레임을 참조하여 순방향 예측에 의하여 만들어지는 프레임으로서 독립적으로 인코딩된 프레임에 해당하지 않는다. 이와 같은 P 프레임은 I 프레임에 비해 높은 압축률을 가지고 있다. 여기서, “이전”의 프레임이라는 것은 바로 전 프레임뿐만 아니라 해당 프레임 전에 존재하는 복수의 프레임 중 하나를 의미하고, “이후”의 프레임이라는 것은 바로 다음 프레임뿐만 아니라 해당 프레임 다음 에 존재하는 복수의 프레임 중 하나를 의미한다.
한편, B 프레임의 경우, 이전의 프레임 및 이후의 프레임을 참조하여 순방향 및 역방향 예측에 의하여 만들어지는 프레임으로서 독립적으로 인코딩된 프레임에 해당하지 않는다. 이와 같은 B 프레임은 I, P 프레임에 비해 높은 압축률을 가지고 있다.
따라서, 상기 독립적으로 인코딩된 프레임은 I 프레임에 해당하고, 비독립적으로 인 코딩된 프레임은 나머지 B 프레임 혹은 P 프레임에 해당할 수 있다. 상기 B, P 프레임은 참조프레임에 해당하고, 바람직하게는, 상기 객체영역검출부(2000)는 이와 같은 참조프레임에 대하여 객체영역검출을 수행한다.
도 12는 본 발명의 일 실시예에 따른, 객체영역트래킹단계를 도시한다.
도 12에 도시된 바와 같이, 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법은 검출된 1 이상의 객체영역에 대하여 복수의 프레임별로 식별정보를 부여하고, 1 이상의 객체영역 각각을 트래킹하는, 객체영역트래킹단계;를 포함하고, 상기 객체영역트래킹단계는, 시간흐름에 따라 트래킹 중인 객체영역 중, 특정 객체영역이 특정 프레임을 기준으로 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 낙상이벤트감지단계;를 포함할 수 있다.
도 12의 (a)의 단계들은, 도 3의 S1 내지 S7단계들이 수행되어 검출된 객체영역에 대해 수행될 수 있다.
S8단계에서, 객체영역검출부는 검출된 1 이상의 객체영역 각각에 대한 식별정보를 부여하고 트래킹할 수 있다. 구체적으로 트래킹이란 영상 프레임에서 검출된 객체의 크기, 색, 모양, 윤곽성을 포함하는 특징정보간의 유사도를 이용하여, 객체의 위치, 속도 등을 추적하는 것으로서, 종래의 영상분석 기술에서 이와 같은 트래킹 과정은 디코딩된 영상정보에서 수행되었다.
한편 전술한 바와 같이, 본 발명의 일 실시예에 따르면 영상정보가 디코딩되기전의 비트스트림정보에 기반하여 객체영역을 검출할 수 있고, 검출된 객체영역을 트래킹할 수 있다.
구체적으로 이전의 프레임에서 검출된 객체영역에 대한 정보에 기반하여 예측되는 정보와, 이후의 프레임에서 검출된 객체영역에 대한 정보의 비교에 의하여, 객체영역이 트래킹될 수 있다.
예를 들어, 도 12의 (b)에서 현재 프레임에서 식별정보 1000_1, 1000_2, 1000_3이 부여된 3개의 객체영역이 검출되는 경우, 이전의 프레임에서 식별정보 1000_1이 부여된 객체영역의 위치에 기초하여 현재 프레임에서 식별정보 1000_1이 부여된 객체영역의 위치가 예측될 수 있다. 이와 같은 예측은 다양한 공지의 알고리즘이 이용되어 수행될 수 있다.
다시 현재 프레임에서 검출된 3개의 객체영역 각각에 대한 위치와 식별정보 1000_1이 부여된 객체영역에 대해 예측되는 위치간의 차이가 기설정된 기준에 부합하는 차량을 현재 프레임에서 식별정보 1000_1이 부여된 객체영역으로 판단할 수 있다.
S9단계에서, 객체영역검출부는 복수의 프레임에서 검출된 1 이상의 객체영역을 트래킹함에 있어, 특정 객체영역에 의한 낙상이벤트를 감지할 수 있다. 구체적으로 검출된 1 이상의 객체영역 중 어느 하나가, 복수의 프레임에서 이동 중인 것으로 판단되고, 특정 프레임 이후에 기설정된 시간 혹은 기설정된 프레임 이상 이동하지 않는 경우를 해당 객체에 대한 낙상이벤트로 감지할 수 있다.
도 12의 (b)는 현재 프레임에서 검출된 1 이상의 객체영역에 대한 정보를 도시한다. 구체적으로 현재 프레임에서 검출된 3개의 객체영역 각각에 대한 식별정보가 부여되고, 해당 프레임에서 검출된 객체영역 각각에 대한 위치, 크기, 속도 등에 정보가 도출될 수 있다.
이와 같은 트래킹테이블이 복수의 프레임 각각에 대해 생성됨으로써, 시간에 따라 연속되는 프레임 각각에서 검출된 1 이상의 객체영역 각각이 트래킹될 수 있다.
도 13은 본 발명의 일 실시예에 따른, 객체의 낙상이벤트가 감지되는 과정을 도시한다.
도 13에 도시된 바와 같이, 상기 낙상이벤트감지단계는, 이동중인 것으로 판단되는 특정 객체영역이 특정 프레임을 기준으로 기설정된 시간 이상 해당 객체에 대해 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지할 수 있다.
또한 상기 객체영역트래킹단계는, 트래킹 중인 복수의 객체영역 각각에 대하여, 객체영역에 대해 기설정된 위치반경 내에서만 이동하는 객체영역을 트래킹대상에서 제외할 수 있다.
도 13의 (a) 및 (b)는 본 발명의 일 실시예에 따라 검출되어 트래킹되고 있는 2개의 객체(O1, 및 O2)를 도시한다. 전술한 바와 같이 프레임별로 식별정보가 부여된 2개의 객체(O1, 및 O2)가 검출되고 해당 객체들 각각의 위치, 형태, 및 속도가 트래킹될 수 있다.
한편 도 13의 (c)에서는 트래킹 중인 1 이상의 객체영역 중 어느 하나에 대한 낙상이벤트를 도시한다. 전술한 바와 같이, 객체의 낙상이벤트란 보행 중인 사람이 갑자기 쓰러지거나 넘어지는 경우를 포함할 수 있다.
낙상이벤트감지단계에서는, 트래킹 중인 1 이상의 객체영역 중 이동 중인 것으로 판단되는 객체영역(O2)이, 특정 프레임 이후로 해당 객체영역에 대한 기설정된 위치반경을 벗어나지 않고 정지하는 경우, 낙상이벤트로 감지할 수 있다.
구체적으로 도 13의 (a) 및 (b)에서 트래킹 중인 객체영역(O2)는 이동 중인 것으로 판단될 수 있고, 도 13의 (c) 이후의 프레임에서 기설정된 시간 혹은 기설정된 프레임 이상 해당 객체영역(O2)이 정지해있는 경우를, 해당 객체영역에 대한 낙상이벤트로 감지할 수 있다.
한편 본 발명의 일 실시예에서는, 트래킹 중인 객체영역(O2)이 기설정된 크기범위를 만족하면서, 상기의 조건들을 만족할 때 낙상이벤트로 감지할 수 있다. 구체적으로 영상정보 내에서 검출될 수 있는 객체영역은 사람, 자동차, 동물 등 다양한 객체일 수 있고, 일반적인 관제시스템에서 낙상사고를 감지하고자 하는 대상은 사람에 해당할 수 있다.
즉, 본 발명의 일 실시예에서는 사람, 자동차, 동물 등이 영상정보에서 검출되었을 때의 객체영역의 크기를 고려하여, 사람으로 판단될 수 있는 기설정된 범위의 크기범위를 기설정하고, 검출된 객체영역의 크기가 상기 기설정된 크기범위를 만족하면서, 상기의 조건들을 만족할 때 해당 객체에 대한 낙상이벤트로 감지할 수 있다.
한편 본 발명의 일 실시예에서는, 트래킹 중인 객체영역(O2)의 형태를 더 고려하여 객체의 낙상이벤트를 감지할 수 있다. 구체적으로 도 13의 (a) 및 (b)에서 객체영역(O2)의 형태와 도 13의 (c)에서 객체영역(O2)의 형태를 비교했을 때, 해당 객체영역(O2)이 낙상하기 전후로 해당 객체영역(O2)의 형태가 상이한 것을 알 수 있다.
이와 같이 트래킹 중인 1 이상의 객체영역 중 이동 중인 것으로 판단되는 객체영역(O2)이, 특정 프레임 이후로 해당 객체영역에 대한 기설정된 위치반경을 벗어나지 않고 정지하되, 해당 객체영역이 정지한 프레임에서 해당 객체영역의 형태 또한 바뀌었을 때, 해당 객체에 대한 낙상이벤트로 감지할 수 있다.
이와 같은 다양한 방식의 추가적인 규칙은, 영상정보가 촬영하고 있는 장소, 대상, 검출하고자 하는 이벤트의 종류 및 특성 등을 고려하여, 관리자에 의해 추가 혹은 변경될 수 있다.
이와 같은 룰베이스 기반의 알고리즘을 적용함으로써, 검출된 다수의 객체영역 중 사람으로 추정되는 객체영역을 추정하고, 이동 중인 객체영역이 특정 프레임 이후로 기설정된 시간 혹은 기설정된 프레임 이상 해당 객체영역에 대해 기설정된 위치반경을 벗어나지 않고 정지하는 경우를, 보행 중인 사람이 쓰러지거나 낙상한 낙상이벤트로 판단하고 감지할 수 있다.
한편, 위치반경이란 객체영역의 바운딩박스를 포함하고, 이보다 넓은 면적에 해당하는 영역일 수 있다. 구체적으로 위치반경이란 객체영역의 바운딩박스의 외곽반경을 일정 거리만큼 확장한 영역에 해당할 수 있다.
한편, 본 발명의 일 실시예에서는 트래킹 중인 복수의 객체영역 중, 위치변동이 객체에 대해 기설정된 위치반경을 벗어나지 않는 특정 객체영역을 트래킹대상에서 제외할 수 있다. 구체적으로 도 13의 (a), (b), 및 (c)에서 검출된 객체영역(O1)을 보면, 해당 객체영역은 시간에 따라 흐르는 프레임에서 위치변동이 매우 적은 것을 알 수 있다.
즉, 객체영역(O1)에 대한 움직임은 감지되고 있으나, 그 위치가 해당 객체영역(O1)이 최초 검출된 위치에서 일정 위치반경을 벗어나지 않고 있다.
이와 같은 특징을 보이는 객체영역(O1)은 도시된 바와 같이, 바람에 흔들리는 나무와 같은 객체에 해당할 수 있고, 이러한 객체들을 트래킹대상에서 제외함으로써, 보다 효율적인 시스템을 구축할 수 있다.
이와 같이 본 발명에서 객체의 낙상이벤트를 감지하는 알고리즘은, 트래킹 중인 객체영역에 대한 위치, 크기, 속도 등을 이용한 룰베이스 방식의 규칙으로서, 딥러닝 기반 시스템에 대비해 적은 데이터 연산량이 요구되는 효율적인 시스템을 구축할 수 있다.
도 14는 본 발명의 일 실시예에 따른 컴퓨팅장치의 내부 구성을 개략적으로 도시한다.
상술한 도 1에 도시된 객체영역검출부는 상기 도 14에 도시된 컴퓨팅장치(11000)의 구성요소들을 포함할 수 있다.
도 14에 도시된 바와 같이, 컴퓨팅장치(11000)는 적어도 하나의 프로세서(processor)(11100), 메모리(memory)(11200), 주변장치 인터페이스(peripheral interface)(11300), 입/출력 서브시스템(I/O subsystem)(11400), 전력 회로(11500) 및 통신 회로(11600)를 적어도 포함할 수 있다. 이때, 컴퓨팅장치(11000)는 도 1에 도시된 객체영역검출부에 해당될 수 있다.
메모리(11200)는 일례로 고속 랜덤 액세스 메모리(high-speed random access memory), 자기 디스크, 에스램(SRAM), 디램(DRAM), 롬(ROM), 플래시 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(11200)는 컴퓨팅장치(11000)의 동작에 필요한 소프트웨어 모듈, 명령어 집합 또는 그 밖에 다양한 데이터를 포함할 수 있다.
이때, 프로세서(11100)나 주변장치 인터페이스(11300) 등의 다른 컴포넌트에서 메모리(11200)에 액세스하는 것은 프로세서(11100)에 의해 제어될 수 있다.
주변장치 인터페이스(11300)는 컴퓨팅장치(11000)의 입력 및/또는 출력 주변장치를 프로세서(11100) 및 메모리 (11200)에 결합시킬 수 있다. 프로세서(11100)는 메모리(11200)에 저장된 소프트웨어 모듈 또는 명령어 집합을 실행하여 컴퓨팅장치(11000)을 위한 다양한 기능을 수행하고 데이터를 처리할 수 있다.
입/출력 서브시스템은 다양한 입/출력 주변장치들을 주변장치 인터페이스(11300)에 결합시킬 수 있다. 예를 들어, 입/출력 서브시스템은 모니터나 키보드, 마우스, 프린터 또는 필요에 따라 터치스크린이나 센서 등의 주변장치를 주변장치 인터페이스(11300)에 결합시키기 위한 컨트롤러를 포함할 수 있다. 다른 측면에 따르면, 입/출력 주변장치들은 입/출력 서브시스템을 거치지 않고 주변장치 인터페이스(11300)에 결합될 수도 있다.
전력 회로(11500)는 단말기의 컴포넌트의 전부 또는 일부로 전력을 공급할 수 있다. 예를 들어 전력 회로(11500)는 전력 관리 시스템, 배터리나 교류(AC) 등과 같은 하나 이상의 전원, 충전 시스템, 전력 실패 감지 회로(power failure detection circuit), 전력 변환기나 인버터, 전력 상태 표시자 또는 전력 생성, 관리, 분배를 위한 임의의 다른 컴포넌트들을 포함할 수 있다.
통신 회로(11600)는 적어도 하나의 외부 포트를 이용하여 다른 컴퓨팅장치와 통신을 가능하게 할 수 있다.
또는 상술한 바와 같이 필요에 따라 통신 회로(11600)는 RF 회로를 포함하여 전자기 신호(electromagnetic signal)라고도 알려진 RF 신호를 송수신함으로써, 다른 컴퓨팅장치와 통신을 가능하게 할 수도 있다.
이러한 도 14의 실시예는, 컴퓨팅장치(11000)의 일례일 뿐이고, 컴퓨팅장치(11000)는 도 14에 도시된 일부 컴포넌트가 생략되거나, 도 8에 도시되지 않은 추가의 컴포넌트를 더 구비하거나, 2개 이상의 컴포넌트를 결합시키는 구성 또는 배치를 가질 수 있다. 예를 들어, 모바일 환경의 통신 단말을 위한 컴퓨팅장치는 도 14에 도시된 컴포넌트들 외에도, 터치스크린이나 센서 등을 더 포함할 수도 있으며, 통신 회로(11600)에 다양한 통신방식(WiFi, 3G, LTE, Bluetooth, NFC, Zigbee 등)의 RF 통신을 위한 회로가 포함될 수도 있다. 컴퓨팅장치(11000)에 포함 가능한 컴포넌트들은 하나 이상의 신호 처리 또는 어플리케이션에 특화된 집적 회로를 포함하는 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어 양자의 조합으로 구현될 수 있다.
본 발명의 실시예에 따른 방법들은 다양한 컴퓨팅장치를 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 특히, 본 실시예에 따른 프로그램은 PC 기반의 프로그램 또는 모바일 단말 전용의 어플리케이션으로 구성될 수 있다. 본 발명이 적용되는 어플리케이션은 파일 배포 시스템이 제공하는 파일을 통해 컴퓨팅장치(11000)에 설치될 수 있다. 일 예로, 파일 배포 시스템은 컴퓨팅장치(11000)의 요청에 따라 상기 파일을 전송하는 파일 전송부(미도시)를 포함할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨팅장치 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (10)

1 이상의 프로세서 및 1 이상의 메모리를 포함하는 컴퓨팅시스템에서 수행되는 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법으로서,
복수의 프레임 각각에 포함되는 블록에 대한 복수의 디코딩파라미터값에 대한 정보를 포함하는 비트스트림정보를 수신하는 비트스트림정보수신단계;
상기 블록에 대하여, 기설정된 N개(N은 2 이상의 자연수)의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 평균값인 제1평균값을 산출하고, 상기 제1평균값이 기설정된 제1임계값을 초과하지 않는 경우에, 상기 제1평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 해당 디코딩파라미터값을 0으로 변환하는 제1노이즈제거단계;
복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 2 이상에 기초하여 종합파라미터값을 도출하는 종합파라미터값도출단계;
상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값의 평균값인 제2평균값을 산출하고, 상기 제2평균값이 기설정된 제2임계값을 초과하지 않는 경우에, 상기 제2평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 2 이상의 디코딩파라미터값을 0으로 변환하는 제2노이즈제거단계;
각각의 프레임에서, 해당 프레임에 포함되는 블록 중 종합파라미터값이 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출하는 객체영역검출단계; 및
검출된 1 이상의 객체영역에 대하여 복수의 프레임별로 식별정보를 부여하고, 1 이상의 객체영역 각각을 트래킹하는, 객체영역트래킹단계;를 포함하고,
상기 객체영역트래킹단계는,
시간흐름에 따라 트래킹 중인 객체영역 중, 특정 객체영역이 특정 프레임을 기준으로 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 낙상이벤트감지단계;를 포함하는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 낙상이벤트감지단계는,
이동중인 것으로 판단되는 특정 객체영역이 특정 프레임을 기준으로 기설정된 시간 이상 해당 객체에 대해 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 객체영역트래킹단계는,
트래킹 중인 복수의 객체영역 각각에 대하여, 객체영역에 대해 기설정된 위치반경 내에서만 이동하는 객체영역을 트래킹대상에서 제외하는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 디코딩파라미터값은,
프레임 각각에서 해당 프레임에 포함되는 복수의 블록 각각에 대한 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 1 이상을 포함하는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 종합파라미터값은,
상기 블록에 대한, 모션벡터값, 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값 중 2 이상의 디코딩파라미터값에 대한 가중평균값인, 객체의 낙상이벤트를 감지하는 방법.
청구항 5에 있어서,
상기 종합파라미터값은,
하기의 [식 1]로 결정되는, 객체의 낙상이벤트를 감지하는 방법.
[식 1]
Figure pat00019

(여기서 데이터크기값, 각도값, 블록크기값, 레지듀얼값, 양자화파라미터값은 해당 블록에 대한 디코딩파라미터,
Figure pat00020
,
Figure pat00021
,
Figure pat00022
,
Figure pat00023
,
Figure pat00024
는 각각의 디코딩파라미터값에 대한 가중치)
청구항 1에 있어서,
상기 제1노이즈제거단계는,
상기 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 상기 제1평균값이 해당 디코딩파라미터값에 대해 기설정된 제1임계값을 초과하는 경우에,
상기 기설정된 N개의 복수의 프레임 중 가장 앞선 프레임에서 해당 블록에 대한 디코딩파라미터값을 0으로 변환하는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 기설정된 N개의 복수의 프레임은,
노이즈를 제거하고자 하는 특정 프레임을 기준으로, 해당 프레임과 전후로 인접하는 연속된 기설정된 N개의 복수의 프레임이고,
슬라이딩 윈도우 알고리즘에 기반하여, 시간에 따라 흐르는 복수의 프레임별로 단계적으로 이동하여 설정되는, 객체의 낙상이벤트를 감지하는 방법.
청구항 1에 있어서,
상기 제2노이즈제거단계는,
상기 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값 중 어느 하나에 대한 상기 제2평균값이, 종합파라미터값에 대해 기설정된 제2임계값을 초과하는 경우에,
상기 기설정된 N개의 복수의 프레임 중 어느 하나의 프레임에서 해당 블록에 대한 모든 디코딩파라미터값을 0으로 변환하는, 객체의 낙상이벤트를 감지하는 방법.
영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 시스템으로서,
복수의 프레임 각각에 포함되는 블록에 대한 복수의 디코딩파라미터값에 대한 정보를 포함하는 비트스트림정보를 수신하는 비트스트림정보수신부;
상기 블록에 대하여, 기설정된 N개(N은 2 이상의 자연수)의 복수의 프레임에서 복수의 디코딩파라미터값 중 어느 하나에 대한 평균값인 제1평균값을 산출하고, 상기 제1평균값이 기설정된 제1임계값을 초과하지 않는 경우에, 상기 제1평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 해당 디코딩파라미터값을 0으로 변환하는 제1노이즈제거부;
복수의 블록 각각에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 디코딩파라미터값 중 2 이상에 기초하여 종합파라미터값을 도출하는 종합파라미터값도출부;
상기 블록에 대하여, 기설정된 N개의 복수의 프레임에서 복수의 종합파라미터값의 평균값인 제2평균값을 산출하고, 상기 제2평균값이 기설정된 제2임계값을 초과하지 않는 경우에, 상기 제2평균값이 산출된 복수의 프레임 중 어느 하나에서 해당 블록에 대한 2 이상의 디코딩파라미터값을 0으로 변환하는 제2노이즈제거부;
각각의 프레임에서, 해당 프레임에 포함되는 블록 중 종합파라미터값이 객체임계값을 초과하는 블록들을 클러스터링하여 객체영역을 검출하는 객체영역검출부; 및
검출된 1 이상의 객체영역에 대하여 복수의 프레임별로 식별정보를 부여하고, 1 이상의 객체영역 각각을 트래킹하는, 객체영역트래킹부;를 포함하고,
상기 객체영역트래킹부는,
시간흐름에 따라 트래킹 중인 객체영역 중, 특정 객체영역이 특정 프레임을 기준으로 기설정된 위치반경을 벗어나지 않을 때, 객체 낙상이벤트로 감지하는, 낙상이벤트감지부;를 포함하는, 객체의 낙상이벤트를 감지하는 시스템.

KR1020220115560A 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템 KR20230040287A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210123481 2021-09-15
KR20210123481 2021-09-15

Publications (1)

Publication Number Publication Date
KR20230040287A true KR20230040287A (ko) 2023-03-22

Family

ID=86005753

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220115557A KR20230040286A (ko) 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 물체 유기이벤트를 감지하는 방법 및 시스템
KR1020220115560A KR20230040287A (ko) 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템
KR1020220115556A KR20230040285A (ko) 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 방법 및 시스템

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020220115557A KR20230040286A (ko) 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 물체 유기이벤트를 감지하는 방법 및 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220115556A KR20230040285A (ko) 2021-09-15 2022-09-14 영상정보의 비트스트림정보에 기반하여 객체영역을 검출하는 방법 및 시스템

Country Status (1)

Country Link
KR (3) KR20230040286A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240108203A (ko) 2022-12-30 2024-07-09 주식회사 다누시스 조도 보정을 통한 객체 검출 시스템
KR20240108215A (ko) 2022-12-30 2024-07-09 주식회사 다누시스 픽셀의 강도를 변화시켜 배경에서 문자를 구분하는 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100018734A (ko) 2008-08-07 2010-02-18 주식회사 만도 영상처리 기술을 이용한 사각지대 위험요소 검출 방법 및장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100018734A (ko) 2008-08-07 2010-02-18 주식회사 만도 영상처리 기술을 이용한 사각지대 위험요소 검출 방법 및장치

Also Published As

Publication number Publication date
KR20230040286A (ko) 2023-03-22
KR20230040285A (ko) 2023-03-22

Similar Documents

Publication Publication Date Title
US10349060B2 (en) Encoding video frames using generated region of interest maps
KR102261669B1 (ko) 인공신경망 기반 객체영역 검출방법, 장치 및 이에 대한 컴퓨터 프로그램
KR20230040287A (ko) 영상정보의 비트스트림정보에 기반하여 객체의 낙상이벤트를 감지하는 방법 및 시스템
Wang et al. Modeling background and segmenting moving objects from compressed video
US9159137B2 (en) Probabilistic neural network based moving object detection method and an apparatus using the same
US10373458B2 (en) Automatic threat detection based on video frame delta information in compressed video streams
CN111670580A (zh) 渐进压缩域计算机视觉和深度学习系统
TWI539407B (zh) 移動物體偵測方法及移動物體偵測裝置
CN111491167B (zh) 图像编码方法、转码方法、装置、设备以及存储介质
Ben Hamida et al. Video surveillance system based on a scalable application-oriented architecture
US9712828B2 (en) Foreground motion detection in compressed video data
CN110933415B (zh) 对象区域检测方法、装置及对其的非临时性计算机可读介质
Chakraborty et al. MAGIC: Machine-learning-guided image compression for vision applications in Internet of Things
CN103051891A (zh) 确定数据流内分块预测编码的视频帧的块的显著值的方法和装置
Samaiya et al. Intelligent video surveillance for real time energy savings in smart buildings using HEVC compressed domain features
KR102345258B1 (ko) 객체영역 검출방법, 장치 및 이에 대한 컴퓨터 프로그램
Panagidi et al. Optimal Grouping-of-Pictures in IoT video streams
KR102530635B1 (ko) 교통정보 및 보행정보 분석방법, 장치 및 이에 대한 컴퓨터 프로그램
JP6242055B2 (ja) 画像符号化装置
KR102557904B1 (ko) 동적프레임이 존재하는 구간의 검출방법
KR102592089B1 (ko) 움직임이 존재하는 프레임의 검출방법
KR102637947B1 (ko) 실시간 영상에서 움직임이 없는 구간을 판별하는 임계값 산출방법, 장치 및 이에 대한 컴퓨터 프로그램
KR102247620B1 (ko) 동영상 압축 비트스트림 기반의 움직임 검출 장치 및 방법
CN118509607B (zh) 一种基于边缘计算的实时视频处理和智能分析方法
Beniwal et al. Assessing the impact of video compression on background subtraction