KR20230154682A - 비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 - Google Patents
비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 Download PDFInfo
- Publication number
- KR20230154682A KR20230154682A KR1020220054394A KR20220054394A KR20230154682A KR 20230154682 A KR20230154682 A KR 20230154682A KR 1020220054394 A KR1020220054394 A KR 1020220054394A KR 20220054394 A KR20220054394 A KR 20220054394A KR 20230154682 A KR20230154682 A KR 20230154682A
- Authority
- KR
- South Korea
- Prior art keywords
- patch
- cluster
- error
- patches
- new
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000004458 analytical method Methods 0.000 claims abstract description 20
- 238000001514 detection method Methods 0.000 claims description 38
- 238000010801 machine learning Methods 0.000 claims description 7
- 230000001133 acceleration Effects 0.000 claims description 5
- 238000013145 classification model Methods 0.000 claims description 5
- 238000003066 decision tree Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims 1
- 238000000605 extraction Methods 0.000 claims 1
- 210000004027 cell Anatomy 0.000 description 13
- 238000013136 deep learning model Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000003708 edge detection Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 210000004460 N cell Anatomy 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Image Analysis (AREA)
Abstract
본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기는 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천하는 패치추천부 및 상기 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하고, 상기 신규패치들을 수집하여 제 2 패치클러스터를 생성하는 패치수집부를 포함한다.
Description
본 발명은 고화질 비디오를 모바일 단말기에서 실시간으로 분석하는 방법에 관한 것이다.
비디오 객체 검출 기술은 얼굴 인식, 시각 장애인을 위한 보조 시스템, 드론의 주변 환경 분석 등 다양한 비디오 분석 작업에서 이용되고 있다. 비디오 객체 검출과정에서 입력 비디오 영상의 매 프레임에 대해 딥러닝모델을 실행한다. 그러나, 제한된 성능의 프로세서를 이용하는 모바일 단말기에서는 매 프레임에 대해 연산량이 많은 딥러닝 모델을 실행하기 어려운 문제가 있었다. 이를 해결하기 위하여, 모바일 단말기에서는 DBT(Detection Based Tracking) 방식을 이용하였다. DBT 방식은 키 프레임에서는 딥러닝 모델을 실행하여 정확한 결과를 얻고 이와 동시에 매 프레임에 연산량이 적은 트래킹 모델을 실행하는 방식이다. 그러나, 모바일 단말기에서 DBT 방식을 이용할 경우 입력 프레임의 화질이 증가하여 딥러닝 모델의 지연시간이 길어지면 키 프레임 사이의 시간이 길어져 트래킹 에러가 크게 누적되는 문제가 있다.
본 발명의 바람직한 일 실시예에서는 프로세서의 성능이 제한적인 모바일 단말기에서도 고화질 비디오를 실시간으로 분석하여 객체를 검출하는 방법을 제안한다.
본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기는 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천하는 패치추천부;및 상기 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하거나 또는, 상기 신규패치들을 수집하여 제 2 패치클러스터를 생성하는 패치수집부;를 포함하고, 상기 에러패치는 상기 현재프레임에서 트래킹이 실패한 영역을 나타내고, 상기 신규패치는 상기 현재프레임에서 새로운 물체가 존재할 가능성이 있지만 검출되지 않아 트래킹이 진행되지 못한 영역을 나타내는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기는 상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터를 입력받아 객체를 검출하여 객체검출 속도를 향상시키는 패치객체검출부;를 더 포함하는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터는 직사각형 형태인 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 제 1 패치클러스터 또는 제 2 패치클러스터의 크기는 상기 제 1 패치클러스터 또는 제 2 패치클러스터 각각에 포함된 에러패치 또는 신규패치의 크기와 개수에 따라 조절되는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 패치추천부는 상기 비디오 영상의 매 t프레임마다 객체검출을 실행하기 이전에 신규패치와 에러패치를 수집하는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 패치추천부는 에지강도(Edge Intensity) 및 리프레시인터벌(Refresh Interval)을 이용하여 상기 신규패치를 추천하는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 패치수집부는 수집한 에러패치를 에러값에 따라 분류하고 배치하여 상기 제 1 패치클러스터를 생성하는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 에러패치는 상기 현재프레임에서 추출된 트래킹 실패를 암시하는 피쳐 및 추출된 피쳐 기반으로 트래킹 실패정도를 예측하는 기계학습에 기초하여 추출되는 것을 특징으로 한다. 상기 추출된 피쳐는 트래킹 이전 프레임에서의 바운딩 박스와 트래킹 이후 바운딩 박스 간 NCC(Normalized Cross Correlation), 바운딩 박스의 속도, 바운딩 박스의 가속도, 바운딩 박스 주변 영역의 기울기 및 검출의 신뢰도를 포함하는 것을 특징으로 하는 한다. 또한, 결정트리분류모델을 이용하여 상기 추출된 피쳐 기반으로 기계학습을 수행한 후 트래킹된 바운딩 박스와 실제 객체의 겹치는 정도인 IoU(Intersection Over Union)를 파악하여 트래킹 실패 정도를 예측하는 것을 특징으로 한다.
본 발명의 또 다른 바람직한 일 실시예로서, 단말기에서 비디오 객체 검출을 수행하는 방법은 패치추천부에서 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천하는 단계;및 패치수집부에서 상기 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하거나 또는, 상기 신규패치들을 수집하여 제 2 패치클러스터를 생성하는 단계;를 포함하고, 상기 에러패치는 상기 현재프레임에서 트래킹이 실패한 영역을 나타내고, 상기 신규패치는 상기 현재프레임에서 새로운 물체가 존재할 가능성이 있지만 검출되지 않아 트래킹이 진행되지 못한 영역을 나타내는 것을 특징으로 한다.
본 발명의 바람직한 일 실시예로서, 상기 방법은 패치객체검출부에서 상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터를 입력받아 객체를 검출하여 객체검출 속도를 향상시키는 단계;를 더 포함하는 것을 특징으로 한다.
도 1 은 본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기(100)의 내부 구성도를 도시한다.
도 2 는 본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기에서 패치를 수집하는 과정의 일 예를 도시한다.
도 3 은 본 발명의 바람직한 일 실시예로서, 패치추천부(120)에서 패치를 추출하는 시점의 일 예를 도시한다.
도 4 는 본 발명의 바람직한 일 실시예로서, 현재프레임에서 신규패치를 추출하기 위해 현재프레임 내의 각 셀의 우선순위값을 계산한 일 예를 도시한다.
도 5 는 본 발명의 바람직한 일 실시예로서, 단말기에서 비디오 객체 검출을 수행하는 흐름도를 도시한다.
도 2 는 본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기에서 패치를 수집하는 과정의 일 예를 도시한다.
도 3 은 본 발명의 바람직한 일 실시예로서, 패치추천부(120)에서 패치를 추출하는 시점의 일 예를 도시한다.
도 4 는 본 발명의 바람직한 일 실시예로서, 현재프레임에서 신규패치를 추출하기 위해 현재프레임 내의 각 셀의 우선순위값을 계산한 일 예를 도시한다.
도 5 는 본 발명의 바람직한 일 실시예로서, 단말기에서 비디오 객체 검출을 수행하는 흐름도를 도시한다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 1 은 본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기(100)의 내부 구성도를 도시한다. 도 2 는 비디오 분석 단말기(100)에서 패치를 수집하는 과정의 일 예를 도시한다.
본 발명의 바람직한 일 실시예로서, 비디오 분석 단말기(100)는 트래킹이 실패한 부분영역을 수집한 제1패치클러스터와 새로운 물체가 존재할 가능성이 있지만 검출되지 않아 트래킹이 진행되지 못한 부분영역을 수집한 제2 패치클러스터를 생성한 후, 제 1 패치클러스터 또는 상기 제 2 패치클러스터에 대해 객체를 검출함으로써 딥러닝 모델의 지연시간을 감소시키고 실시간으로 정확한 객체검출을 수행할 수 있다.
이를 구현하기 위해, 비디오 분석 단말기(100)는 객체 추적부(110), 패치추천부(120), 패치수집부(130), 패치객체검출부(140) 및 렌더링부(150)를 포함한다. 패치추천부(120)는 에러패치추천부(121) 및 신규패치추천부(123)를 포함한다.
객체 추적부(110)는 입력 비디오 영상(S100)의 매 프레임을 입력받아(S101) 객체를 추적하고, 렌더링부(150)에 객체추적 방식에 이용되는 기술을 이용하여 추적한 객체를 렌더링한다. 렌더링부(150)는 사용자가 객체들의 위치를 볼 수 있도록, 화면상에 객체에 바운딩 박스를 표시할 수 있다.
패치추천부(120)는 입력 비디오 영상(S100)의 매 t 프레임 및 객체정보를 입력받는다. 객체정보는 객체추적부(110)에서 이용하는 트래킹모델에 의해 검출되어 추적된 객체들의 정보이다.
패치추천부(120)는 도 3의 예와 같이, t 프레임(301), 2t 프레임(302), 3t 프레임 등과 같이 매 t 프레임(310, 320, 330)마다 객체의 검출을 실행하기 전에 패치를 추출한다. 이 경우 패치는 에러패치와 신규패치를 포함한다.
본 발명의 바람직한 일 실시예로서, 신규패치는 현재프레임에서 새로운 물체가 존재할 가능성이 있지만 패치객체검출부(240)에서 이용하는 딥러닝모델에 의해 검출되지 않아 트래킹이 진행되지 못한 영역을 나타낸다.
본 발명의 바람직한 일 실시예로서, 에러패치는 패치객체검출부(240)에서 이용하는 딥러닝모델에 의해 검출되었으나, 현재프레임 내에서 객체추적부(110)에서 이용하는 트래킹모델에 의해 트래킹이 실패한 영역을 나타낸다. 에러패치는 실제로 트래킹이 실행되었지만 물체의 외양 변화, 가림 현상(occlusion) 등으로 트래킹 에러가 큰 기존에 트래킹된 객체들의 주변 영역을 나타낸다.
신규패치추천부(223)는 새로운 객체가 검출된 만한 후보 영역을 검출하기 위하여, 에지강도(Edge Intensity) 및 리프레시인터벌(Refresh Interval)을 이용한다. 본 발명의 바람직한 일 실시예로서, 신규패치추천부(223)는 에지강도 외에 리프레시인터벌을 이용함으로써 에지강도값이 낮아도 객체가 존재하는 영역을 검출할 수 있다. 리프레시인터벌을 이용하여 에지강도값이 낮아서 검출되지 못한 영역도 시간이 흐르면 객체검출의 입력값으로 이용될 기회를 제공한다.
도 4 는 현재프레임에서 신규패치를 추출하기 위해 현재프레임 내의 각 셀의 우선순위값을 계산한 일 예를 도시한다. 도 4를 참고하여 설명한다.
신규패치추천부(123. 223)는 현재프레임(400)을 n*n 크기의 셀(410)로 나누고, 각 셀에 대해 새로운 객체가 존재할 가능성을 나타내는 우선순위값(411)을 계산한다. 우선순위값은 수학식 1과 같이 계산된다. 도 4에서는 현재프레임(400)을 8*8 크기로 나누었다. 현재프레임 내의 셀 중 이미 에러패치로 추출된 영역에 대해서는 신규패치로 중복하여 추출할 필요가 없으므로 우선순위값을 0으로 고정하고, 그 외의 셀들에 대한 우선순위값이 계산된다.
수학식 1에서 EI는 에지 강도, RI는 리프레시인터벌, W는 에지강도와 리프레시인터벌 간의 가중치를 조절하는 웨이트, 그리고 TRI는 RI가 기설정된 값 이상으로 커질 경우 TRI로 클립핑하기 위한 RI의 기설정된 최대값을 나타낸다.
수학식 1에서, EI는 셀에 에지가 얼마나 많이 분포되어 있는지를 나타낸다. 캐니에지검출법(Canny edge detection) 등을 포함하는 에지검출기술을 활용하여 EI값을 계산할 수 있다.
RI는 셀이 객체검출의 입력값으로 포함된 이후 몇 프레임이 지났는지를 나타낸다. RI가 클수록 해당 셀은 오랫동안 객체검출의 대상이 되지 않았음을 나타내므로, 이 경우 우선순위값을 높여 객체 검출 대상에 포함될 수 있도록 한다.
본 발명의 바람직한 일 실시예로서, M*N개의 셀을 묶은 영역을 패치(420, 430)라고 정의한다. M, N은 자연수이며 객체들의 평균크기에 따라 정해질 수 있다. 또한 런타임에서 탐지되는 객체들의 크기에 따라 실시간으로 값을 조정할 수 있다. 본 발명의 바람직한 일 실시예에서, 패치는 직사각형의 형태일 수 있다.
신규패치추천부(123. 223)는 현재 프레임에서 모든 가능한 패치에 대해 패치를 구성하는 각 셀들의 우선순위값들의 합을 계산한 후, 기설정된 값을 초과하는 패치들을 신규패치로 추천한다. 도 4를 참고하면, 제 1 패치(420) 내의 각 셀들의 우선순위값들의 합이 189이다. 제 2 패치(430)내의 각 셀들의 우선순위값들의 합은 1049이다. 기설정된 값을 100으로 설정한 경우, 제 1 패치(420) 및 제 2패치(430)는 신규패치(421, 431)로 추천된다. 신규패치추천부(123. 223)는 신규패치(421, 431)들 간에 특정 영역에서 여러 개의 신규패치가 뽑히는 것을 방지하기 위하여 오버랩이 일정수준 이하가 되도록 신규패치를 추천한다.
에러패치추천부(121, 221)는 트래킹 실패를 암시하는 피쳐를 추출하고, 추출된 피쳐 기반으로 트래킹 실패정도를 예측하는 기계학습에 기초하여 에러패치를 추출한다. 기계학습의 일 예로는 결정트리 분류모델이 있다.
본 발명의 바람직한 일 실시예로서, 에러패치추천부(121. 221)는 트래킹 실패를 암시하는 피쳐인 트래킹 실패를 암시하는 피쳐는 트래킹 이전 프레임에서의 바운딩 박스와 트래킹 이후 바운딩 박스 간 NCC(Normalized Cross Correlation), 바운딩 박스의 속도, 바운딩 박스의 가속도, 바운딩 박스 주변 영역의 기울기 및 검출의 신뢰도를 결정트리분류모델을 이용하여 기계학습을 수행한 후 트래킹된 바운딩 박스와 실제 객체의 겹치는 정도인 IoU(Intersection Over Union)를 파악하여 트래킹 실패 정도를 예측한다. 바운딩박스는 객체추척부(110)에서 추적한 객체의 영역을 표시한 박스 모양을 지칭한다. 본 발명의 바람직한 일 실시예로서, 결정트리분류모델은 트래킹 실패 정도를 상(上), 중(中), 하(下)로 분류하여 예측할 수 있다. 그리고, 객체별로 에러 정도가 상(上), 중(中), 하(下) 중 어디에 속하는지를 표시할 수 있다. 도 2 를 참고하면, 객체의 바운딩 박스의 색깔을 에러 정도에 따라 각각 상이하게 설정하여 표시할 수 있다.
각 피쳐가 이용되는 이유는 다음과 같다.
NCC: NCC가 클수록 객체의 외향변화가 크다는 의미로 트래킹 실패를 암시한다.
바운딩 박스의 속도: 트래킹은 일반적으로 인접한 프레임 간의 객체의 움직임이 작다고 가정하여 검색윈도우 내에서 객체를 탐색하므로, 객체의 속도가 빠른 경우 트래킹 실패를 암시한다.
바운딩 박스의 가속도: 가림현상등으로 인해 바운딩 박스가 다른 객체와 관련되버리는 경우 바운딩 박스의 가속도가 크게 나타나게 되어 트래킹 실패를 암시한다.
바운딩 박스 주변 영역의 기울기: 이미지의 기울기가 작은 경우 배경과 물체의 구분이 명확하지 않아 트래킹이 실패하기 쉽다. 예를 들어, 흰색 벽과 같이 질감이 없는 경우 트래킹이 실패하기 쉽다.
검출의 신뢰도: 검출 자체의 정확도가 부정확한 경우 해당 객체의 추후 트래킹 역시 실패하기 쉽다.
본 발명의 바람직한 일 실시예로서, 에러패치추천부(121. 221)는 기존에 트래킹되고 있는 각 객체들에 대해 트래킹 실패정도를 예측하고, 예측한 트래킹 실패정도값에 따라 에러패치의 크기를 상이하게 결정한다. 예를 들어 트래킹 실패정도를 나타내는 트래킹 에러값이 작은 경우 기존에 트래킹된 객체들의 주변 영역을 작게 크랍(crop)한다. 트래킹 에러값이 큰 경우 기존에 트래킹된 객체들의 주변 영역을 크게 크랍(crop)한다.
에러패치추천부(121. 221)는 기존에 트래킹되고 있는 각 객체들의 트래킹 에러의 크기와 바운딩 박스 주변 영역을 크랍하는 영역의 크기를 기설정된 비율로 설정할 수 있다. 트래킹 에러값이 크다는 것은 바운딩 박스와 실제 객체가 멀다는 뜻이므로 에러패치 안에 실제 객체를 포함시키기 위해서는 바운딩 박스 주변의 넓은 영역을 추출해야 하기 때문이다.
에러패치는 패치객체검출부(140, 240)에서 이용하는 딥러닝모델에 의해 검출되었으나, 그 이후 프레임들에서 트래킹이 실패한 영역을 나타낸다. 에러패치는 실제로 트래킹이 실행되었지만 물체의 외양 변화, 가림 현상(occlusion) 등으로 트래킹 에러가 큰 기존에 트래킹된 객체들의 주변 영역이다.
도 1 로 돌아가서, 본 발명의 바람직한 일 실시예로서 패치수집부(130)는 에러패치를 수집한 제 1 패치클러스터 또는 신규패치들을 수집한 제 2 패치클러스터를 생성한다. 본 발명의 또 다른 바람직한 일 실시예로서, 패치수집부(130)는 제 1 패치클러스터만을 생성할 수 있다. 또한 패치수집부(130)는 제 2 패치클러스터만을 생성할 수 있다. 또한, 패치수집부(130)는 제 1 패치클러스터와 제 2 패치클러스터를 모두 생성할 수 있다.
도 2 를 참고하면, 패치수집부(230)는 에러패치수집부(231) 및 신규패치수집부(233)를 포함한다.
에러패치수집부(231)는 패치추천부(120)가 현재프레임에서 추천한 직사각형 형태의 에러패치들을 수집하여 직사각형 형태의 제 1 패치클러스터를 생성한다. 에러패치수집부(231)는 수집한 에러패치를 에러값에 따라 분류하고 배치한다. 에러값은 상(上), 중(中), 하(下) 로 설정될 수 있다. 에러패치수집부(231)는 에러값이 상(上)인 에러패치들을 우선적으로 배치하고, 다음으로 에러값이 중(中)인 에러패치들을 배치한다. 그리고, 에러값이 하(下)인 에러패치들을 배치한다. 에러패치수집부(231)는 현재 프레임에서 트래킹되고 있는 기존 객체가 적거나 없어서 에러패치가 적은 경우, 제1 패치클러스터의 남는 공간을 신규패치들로 채울 수 있다.
신규패치수집부(233)는 패치추천부(120)가 현재프레임에서 추천한 직사각형 형태의 신규패치들을 수집하여 직사각형 형태의 제 2 패치클러스터를 생성한다.
본 발명의 바람직한 일 실시예로서 패치수집부(130)는 패치클러스터를 빈틈없이 채우기 위해 Guillotine 알고리즘을 이용할 수 있으며, 다른 알고리즘을 사용할 수 있음을 유의하여야 한다. 제 1 패치클러스터 또는 제 2 패치클러스터의 크기는 제 1 패치클러스터 또는 제 2 패치클러스터 각각에 포함된 에러패치 또는 신규패치의 크기와 개수에 따라 동적으로 조절될 수 있다.
패치객체검출부(140, 240)는 패치수집부(130)에서 제공한 제 1 패치클러스터 또는 제 2 패치클러스터에 대해 객체 검출을 진행하여 객체를 개별적으로 검출할 때보다 객체 검출 속도를 향상시킬 수 있다. 패치객체검출부(140, 240)는 패치수집부(130)로부터 제 1 패치클러스터만을 입력받거나, 제 2 패치클러스터만을 입력받거나 또는 2개의 패치클러스터를 번갈아가면서 입력받을 수 있다. 2개의 패치클러스터를 입력받는 비율은 조절이 가능하다. 예를 들어, 현재 추적되고 있는 기존 객체가 없다면, 에러패치로 생성된 제 1 패치클러스터가 존재하지 않으므로, 제 2 패치클러스터만 생성된다.
패치객체검출부(140, 240)는 제 1 패치클러스터 또는 제 2 패치클러스터에서 검출된 객체를 객체추적부(110)에 제공한다.
도 5 는 본 발명의 바람직한 일 실시예로서, 단말기에서 비디오 객체 검출을 수행하는 방법의 흐름도를 도시한다. 도 5의 단말기는 휴대폰, 스마트폰, 모바일 와치 등과 같이 자원이 제한적인 프로세서로 구현된 장치를 포함한다.
패치추천부는 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천한다(S510). 패치수집부는 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하고, 현재프레임에서 추천된 신규패치들을 수집하여 제 2 패치클러스터를 생성한다(S520). 그리고, 패치객체검출부는 패치수집부로부터 제 1 패치클러스터 또는 제 2 패치클러스터를 입력받아 객체를 검출하여 객체검출 속도를 향상시킨다(S530).
이상에 기술된 본 발명의 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (16)
- 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천하는 패치추천부;및
상기 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하거나 또는 상기 현재프레임에서 추천된 상기 신규패치들을 수집하여 제 2 패치클러스터를 생성하는 패치수집부;를 포함하고,
상기 에러패치는 상기 현재프레임에서 트래킹이 실패한 영역을 나타내고, 상기 신규패치는 상기 현재프레임에서 새로운 물체가 존재할 가능성이 있지만 검출되지 않아 트래킹이 진행되지 못한 영역을 나타내는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서,
상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터를 입력받아 객체를 검출하여 객체검출 속도를 향상시키는 패치객체검출부;를 더 포함하는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서,
상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터는 직사각형 형태인 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서,
상기 제 1 패치클러스터 또는 제 2 패치클러스터의 크기는 상기 제 1 패치클러스터 또는 제 2 패치클러스터 각각에 포함된 에러패치 또는 신규패치의 크기와 개수에 따라 조절되는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서,
상기 패치추천부는 상기 비디오 영상의 매 t프레임마다 객체검출을 실행하기 이전에 신규패치와 에러패치를 수집하는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서, 상기 패치추천부는
에지강도(Edge Intensity) 및 리프레시인터벌(Refresh Interval)을 이용하여 상기 신규패치를 추천하는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서, 상기 패치수집부는
수집한 에러패치를 에러값에 따라 분류하고 배치하여 상기 제 1 패치클러스터를 생성하는 것을 특징으로 하는 비디오 분석 단말기. - 제 1 항에 있어서, 상기 에러패치는
상기 현재프레임에서 추출된 트래킹 실패를 암시하는 피쳐 및 추출된 피쳐 기반으로 트래킹 실패정도를 예측하는 기계학습에 기초하여 추출되는 것을 특징으로 하는 비디오 분석 단말기. - 제 8 항에 있어서, 상기 추출된 피쳐는
트래킹 이전 프레임에서의 바운딩 박스와 트래킹 이후 바운딩 박스 간 NCC(Normalized Cross Correlation), 바운딩 박스의 속도, 바운딩 박스의 가속도, 바운딩 박스 주변 영역의 기울기 및 검출의 신뢰도를 포함하는 것을 특징으로 하는 비디오 분석 단말기. - 제 8 항에 있어서,
결정트리분류모델을 이용하여 상기 추출된 피쳐 기반으로 기계학습을 수행한 후 트래킹된 바운딩 박스와 실제 객체의 겹치는 정도인 IoU(Intersection Over Union)를 파악하여 트래킹 실패 정도를 예측하는 것을 특징으로 하는 비디오 분석 단말기. - 단말기에서 비디오 객체 검출을 수행하는 방법으로서,
패치추천부에서 비디오 영상의 현재프레임에서 에러패치 및 신규패치를 추천하는 단계;및
패치수집부에서 상기 현재프레임에서 추천된 에러패치들을 수집하여 제 1 패치클러스터를 생성하거나 또는 상기 현재프레임에서 추천된 상기 신규패치들을 수집하여 제 2 패치클러스터를 생성하는 단계;를 포함하고,
상기 에러패치는 상기 현재프레임에서 트래킹이 실패한 영역을 나타내고, 상기 신규패치는 상기 현재프레임에서 새로운 물체가 존재할 가능성이 있지만 검출되지 않아 트래킹이 진행되지 못한 영역을 나타내는 것을 특징으로 하는 방법. - 제 11 항에 있어서,
패치객체검출부에서 상기 제 1 패치클러스터 또는 상기 제 2 패치클러스터를 입력받아 객체를 검출하여 객체검출 속도를 향상시키는 단계;를 더 포함하는 것을 특징으로 하는 방법. - 제 11항에 있어서,
상기 제 1 패치클러스터 또는 제 2 패치클러스터의 크기는 상기 제 1 패치클러스터 또는 제 2 패치클러스터 각각에 포함된 에러패치 또는 신규패치의 크기와 개수에 따라 조절되는 것을 특징으로 하는 방법. - 제 11 항에 있어서, 상기 추천하는 단계는
에지강도(Edge Intensity) 및 리프레시인터벌(Refresh Interval)을 이용하여 상기 신규패치를 추천하는 것을 특징으로 하는 방법. - 제 11 항에 있어서, 상기 추천하는 단계는
상기 현재프레임에서 추출된 트래킹 실패를 암시하는 피쳐 및 추출된 피쳐 기반으로 트래킹 실패정도를 예측하는 기계학습에 기초하여 상기 에러패치를 추천하는 것을 특징으로 하는 방법. - 제 11항 내지 제 16항 중 어느 한 항의 비디오 객체 검출을 수행하는 방법을 상기 단말기에서 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220054394A KR20230154682A (ko) | 2022-05-02 | 2022-05-02 | 비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 |
US18/310,216 US20230351613A1 (en) | 2022-05-02 | 2023-05-01 | Method of detecting object in video and video analysis terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220054394A KR20230154682A (ko) | 2022-05-02 | 2022-05-02 | 비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230154682A true KR20230154682A (ko) | 2023-11-09 |
Family
ID=88512436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220054394A KR20230154682A (ko) | 2022-05-02 | 2022-05-02 | 비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230351613A1 (ko) |
KR (1) | KR20230154682A (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150033047A (ko) | 2013-09-23 | 2015-04-01 | 에스케이텔레콤 주식회사 | 객체를 검출하기 위한 전처리 장치 및 방법 |
-
2022
- 2022-05-02 KR KR1020220054394A patent/KR20230154682A/ko unknown
-
2023
- 2023-05-01 US US18/310,216 patent/US20230351613A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150033047A (ko) | 2013-09-23 | 2015-04-01 | 에스케이텔레콤 주식회사 | 객체를 검출하기 위한 전처리 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20230351613A1 (en) | 2023-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10319412B2 (en) | Robust tracking of objects in videos | |
CN110807385A (zh) | 目标检测方法、装置、电子设备及存储介质 | |
US8374454B2 (en) | Detection of objects using range information | |
US8509519B2 (en) | Adjusting perspective and disparity in stereoscopic image pairs | |
CN111062871A (zh) | 一种图像处理方法、装置、计算机设备及可读存储介质 | |
JP5939056B2 (ja) | 画像におけるテキスト領域を位置決めする方法及び装置 | |
US10255673B2 (en) | Apparatus and method for detecting object in image, and apparatus and method for computer-aided diagnosis | |
WO2021081808A1 (zh) | 基于人工神经网络的物体检测的系统及方法 | |
RU2697649C1 (ru) | Способы и системы сегментации документа | |
US8811750B2 (en) | Apparatus and method for extracting edge in image | |
CN112132265B (zh) | 模型训练方法、杯盘比确定方法、装置、设备及存储介质 | |
CN110460838B (zh) | 一种镜头切换的检测方法、装置及计算机设备 | |
CN111311611B (zh) | 一种实时三维大场景多对象实例分割的方法 | |
CN111695540A (zh) | 视频边框识别方法及裁剪方法、装置、电子设备及介质 | |
CN112669275A (zh) | 基于YOLOv3算法的PCB表面缺陷检测方法及装置 | |
CN114449343A (zh) | 一种视频处理方法、装置、设备及存储介质 | |
CN111510567B (zh) | 使用多个图像的图像阴影检测 | |
EP2821935A2 (en) | Vehicle detection method and device | |
CN113870196B (zh) | 一种基于锚点切图的图像处理方法、装置、设备和介质 | |
CN114169425A (zh) | 训练目标跟踪模型和目标跟踪的方法和装置 | |
KR20230154682A (ko) | 비디오 객체 검출을 수행하는 방법 및 비디오 분석 단말기 | |
JP2021111228A (ja) | 学習装置、学習方法、及びプログラム | |
KR101919698B1 (ko) | 실루엣을 적용한 그룹 탐색 최적화 데이터 클러스터링 방법 및 시스템 | |
US20220122341A1 (en) | Target detection method and apparatus, electronic device, and computer storage medium | |
CN111967403B (zh) | 视频移动区域确定方法、装置及电子设备 |