KR20200072380A - 영상에서의 객체 인식 방법 및 장치 - Google Patents

영상에서의 객체 인식 방법 및 장치 Download PDF

Info

Publication number
KR20200072380A
KR20200072380A KR1020190025753A KR20190025753A KR20200072380A KR 20200072380 A KR20200072380 A KR 20200072380A KR 1020190025753 A KR1020190025753 A KR 1020190025753A KR 20190025753 A KR20190025753 A KR 20190025753A KR 20200072380 A KR20200072380 A KR 20200072380A
Authority
KR
South Korea
Prior art keywords
image data
pattern
value
feature vector
vector
Prior art date
Application number
KR1020190025753A
Other languages
English (en)
Other versions
KR102158097B1 (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 경희대학교 산학협력단
Publication of KR20200072380A publication Critical patent/KR20200072380A/ko
Application granted granted Critical
Publication of KR102158097B1 publication Critical patent/KR102158097B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • G06K9/00624
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/469Contour-based spatial representations, e.g. vector-coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis

Landscapes

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

Abstract

본 발명은 영상에서의 객체 인식 방법 및 장치에 관한 것으로, 제1 영상 데이터를 수신하면, 상기 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하여 분산 저장하고, 상기 제2 영상 데이터의 프레임 추출을 포함하는 전처리를 수행하는 단계, 상기 제2 영상 데이터에서 하나 이상의 직교 평면에 대하여 기 설정된 위치 및 크기를 갖는 평면 패턴을 각각 추출하여 분산 저장하는 단계, 상기 평면 패턴과 동일한 크기를 갖는 마스크를 이용하여 상기 평면 패턴에서 특징 벡터를 각각 분산하여 추출하는 단계, 상기 특징 벡터를 이용하여 히스토그램을 분산하여 생성하고, 상기 히스토그램에 대응되는 행동 정보를 식별함으로써 상기 제2 영상 데이터에 포함된 객체를 식별하는 단계를 포함하는 것을 특징으로 한다.

Description

영상에서의 객체 인식 방법 및 장치{METHOD AND DEVICE FOR OBJECT AWARENESS IN VIDEO}
본 발명은 영상에서 객체를 인식하는 방법 및 장치에 관한 것으로, 보다 자세하게는 분산 처리 시스템을 이용하여 영상에서 객체를 보다 신속하게 인식하는 방법 및 장치에 관한 것이다.
최근 인터넷 기술의 발전 및 스마트 기기의 급속한 보급에 따라 방대한 양의 영상에 대한 접근성이 낮아지고 있다. 영상에서 객체를 검출하고 인식하는 기술은 영상감지 시스템에 꾸준하게 적용되어 왔으며, 컴퓨터 비전 및 기계 이해 분야의 근본적인 문제로 떠오르고 있다. 일반적으로 영상은 다양한 방식으로 구성된 표면 및 객체로 구성되어 있기 때문에, 영상에서 객체만을 분리하는 것은 지도 제작, 로봇 네비게이션, 장소 추천 등의 다양한 응용 프로그램에 있어서 주요한 이슈가 될 수 있다.
영상에서 객체를 검출 및 인식하기 위해 다양한 특징 추출 방법이 사용되고 있으나 대부분은 이미지를 이용하여 객체를 인식하고 일부만이 영상에 적용 가능하다는 한계가 있다. 객체를 검출하는 기존의 방법 중 대표적인 것이 LBP(Local Binary Pattern)이다. LBP의 견고성, 차별성 및 적용 가능성을 향상시키기 위해 다양한 LBP 변형 방법이 연구되었으나 조명, 시점 등 픽셀의 변화에 따라 바이너리 코드가 완전히 달라질 수 있어 일관된 패턴을 생성하지 못하기 때문에 노이즈에 취약하다는 치명적인 단점이 있다.
대한민국 등록특허 제10-1716646호, 공개일자 2014년 7월 18일
본 발명은 전술한 문제점을 해결하기 위한 것으로서, 영상 데이터에서 객체를 인식할 수 있도록 하는 것을 일 목적으로 한다.
또한 본 발명은 영상 데이터에서 객체를 인식함에 있어서 분산 처리 시스템을 이용하여 연산의 속도를 향상시키는 것을 일 목적으로 한다.
또한 본 발명은 영상 데이터에서 하나 이상의 직교 평면에 대한 평면 패턴을 추출함으로써 시공간 정보를 추출하는 것을 일 목적으로 한다.
또한 본 발명은 영상 데이터에서 추출된 시공간 정보를 이용하여 객체 인식에 있어서 정확성을 향상시키는 것을 일 목적으로 한다.
이러한 목적을 달성하기 위한 본 발명은 제1 영상 데이터를 수신하면, 상기 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하여 분산 저장하는 단계, 상기 제2 영상 데이터의 프레임 추출을 포함하는 전처리를 수행하는 단계, 상기 제2 영상 데이터에서 하나 이상의 직교 평면에 대하여 기 설정된 크기를 갖는 평면 패턴을 각각 추출하여 분산 저장하는 단계, 상기 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 이용하여 상기 평면 패턴에서 특징 벡터를 각각 분산하여 생성하는 단계, 상기 생성된 특징 벡터를 이용하여 히스토그램을 생성하고, 상기 히스토그램에 대응되는 행동 정보를 식별함으로써 상기 제2 영상 데이터에 포함된 객체를 식별하는 단계를 포함하는 것을 일 특징으로 한다.
또한 상기 전처리 단계는, 상기 제2 영상 데이터에서 프레임을 추출하는 단계, 상기 프레임을 그레이 스케일로 변환하는 단계, 상기 프레임의 크기를 변경하는 단계를 포함하는 것을 일 특징으로 한다.
나아가 상기 평면 패턴은, X축-Y축 직교 평면에 대한 제1 평면 패턴, X축-T축 직교 평면에 대한 제2 평면 패턴, Y축-Y축 직교 평면에 대한 제3 평면 패턴을 포함하는 것을 일 특징으로 한다.
또한 상기 평면 패턴은 중심 픽셀 및 중심 픽셀에 인접한 복수 개의 이웃 픽셀을 포함하는 것을 일 특징으로 한다.
나아가 상기 특징 벡터를 추출하는 단계는, 상기 평면 패턴에 상기 방향성 마스크를 적용하여 각도 별 벡터 값을 생성하는 단계, 상기 각도 별 벡터 값을 이용하여 상기 평면 벡터에 대응되는 상기 특징 벡터를 생성하는 단계를 포함하는 것을 일 특징으로 한다.
또한 상기 특징 벡터를 생성하는 단계는, 상기 각도 별 벡터 값의 평균 값을 연산하는 단계, 상기 각도 별 벡터 값과 상기 평균 값의 차이 값을 연산하는 단계, 상기 차이 값과 상기 평면 패턴의 중심 픽셀 값을 이용하여 상기 특징 벡터를 생성하는 단계를 포함하는 것을 일 특징으로 한다.
나아가 본 발명은 제1 영상 데이터를 수신하는 영상 수집부, 상기 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하는 데이터 분할부, 상기 제2 영상 데이터의 프레임 추출을 포함하는 전처리를 수행하는 전처리부, 상기 제2 영상 데이터에서, 하나 이상의 직교 평면에 대하여 기 설정된 크기를 갖는 평면 패턴을 각각 추출하고, 상기 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 이용하여 상기 평면 패턴에서 특징 벡터를 생성하며, 상기 특징 벡터를 이용하여 히스토그램을 분산하여 생성하고, 상기 히스토그램에 대응되는 행동 정보를 식별함으로써 상기 제2 영상 데이터에 포함된 객체를 식별하는 제어부, 상기 제2 영상 데이터를 분산 저장하고, 상기 직교 평면에 대한 상기 평면 패턴을 분산 저장하는 저장부를 포함하는 것을 일 특징으로 한다.
또한 상기 전처리부는, 상기 제2 영상 데이터에서 프레임을 추출하고, 상기 프레임을 그레이 스케일로 변환하며, 상기 프레임의 크기를 변경하는 것을 일 특징으로 한다.
나아가 상기 평면 패턴은, X축-Y축 직교 평면에 대한 제1 평면 패턴, X축-T축 직교 평면에 대한 제2 평면 패턴, Y축-Y축 직교 평면에 대한 제3 평면 패턴을 포함하는 것을 일 특징으로 한다.
또한 상기 평면 패턴은 중심 픽셀 및 중심 픽셀에 인접한 복수 개의 이웃 픽셀을 포함하는 것을 일 특징으로 한다.
나아가 상기 제어부는, 상기 평면 패턴에 상기 방향성 마스크를 적용하여 각도 별 벡터 값을 생성하고, 상기 각도 별 벡터 값을 이용하여 상기 평면 벡터에 대응되는 상기 특징 벡터를 생성하는 특징 벡터 생성부를 더 포함하는 것을 일 특징으로 한다.
또한 상기 특징 벡터 생성부는, 상기 각도 별 벡터 값의 평균 값을 연산하고, 상기 각도 별 벡터 값과 상기 평균 값의 차이 값을 연산하며, 상기 차이 값과 상기 평면 패턴의 중심 픽셀 값을 이용하여 상기 특징 벡터를 생성하는 것을 일 특징으로 한다.
전술한 바와 같은 본 발명에 의하면, 영상 데이터에서 객체를 인식할 수 있다.
또한 본 발명은 영상 데이터에서 객체를 인식함에 있어서 분산 처리 시스템을 이용하여 연산의 속도를 향상시킬 수 있다.
또한 본 발명은 영상 데이터에서 하나 이상의 직교 평면에 대한 평면 패턴을 추출함으로써 시공간 정보를 추출할 수 있다.
또한 본 발명은 영상 데이터에서 추출된 시공간 정보를 이용하여 객체 인식에 있어서 정확성을 향상시킬 수 있다.
도 1은 본 발명의 일 실시 예에 의한 객체 인식 방법의 대략적인 동작을 나타낸 도면이다.
도 2는 본 발명의 일 실시 예에 의한 객체 인식 장치를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시 예에 의한 객체 인식 방법에 대한 분산 처리 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 의한 객체 인식 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시 예에 의한 영상 데이터 전처리 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시 예에 의한 방향성 마스크를 나타낸 도면이다.
도 7은 본 발명의 일 실시 예에 의한 객체 인식 방법의 일 예시를 나타낸 도면이다.
도 8은 본 발명의 일 실시 예에 의한 객체 식별 과정을 나타낸 도면이다.
도 9는 본 발명의 일 실시 예에 의한 Maryland 데이터 세트의 예시를 나타낸 도면이다.
도 10은 본 발명의 일 실시 예에 의한 YUPENN 데이터 세트의 예시를 나타낸 도면이다.
도 11은 본 발명의 일 실시 예에 의한 Youtube 8M 데이터 세트의 예시를 나타낸 도면이다.
도 12는 본 발명의 일 실시 예에 의한 데이터 세트 별 객체 인식 장치에 포함된 노드의 수에 따른 성능을 비교한 도면이다.
도 13은 본 발명의 일 실시 예에 의한 Maryland 데이터 세트에 대한 객체 인식 방법의 정확도를 나타낸 도면이다.
도 14는 본 발명의 일 실시 예에 의한 YUPENN 데이터 세트에 대한 객체 인식 방법의 정확도를 나타낸 도면이다.
도 15는 본 발명의 일 실시 예에 의한 Youtube 8M 데이터 세트에 대한 객체 인식 방법의 정확도를 나타낸 도면이다.
도 16은 지역 기반 접근법을 적용한 객체 인식 방법을 설명하기 위한 도면이다.
도 17은 지역 기반 접근법과 전체론적 기반 접근법에 대한 객체 인식 장치의 성능을 나타낸 도면이다.
도 18은 본 발명의 일 실시 예에 의한 객체 인식 방법과 기존의 객체 인식 방법의 성능을 비교한 도면이다.
도 19는 본 발명의 일 실시 예에 의한 객체 인식 방법과 최신의 객체 인식 방법의 성능을 비교한 도면이다.
도 20은 객체 식별기의 종류에 따른 객체 인식 방법의 성능을 비교한 도면이다.
도 21은 본 발명의 일 실시 예에 의한 임계 값 별 객체 인식 방법의 성능을 비교한 도면이다.
전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다.
도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용되며, 명세서 및 특허청구의 범위에 기재된 모든 조합은 임의의 방식으로 조합될 수 있다. 그리고 다른 식으로 규정하지 않는 한, 단수에 대한 언급은 하나 이상을 포함할 수 있고, 단수 표현에 대한 언급은 또한 복수 표현을 포함할 수 있음이 이해되어야 한다.
본 명세서에서 사용되는 용어는 단지 특정 예시적 실시 예들을 설명할 목적을 가지고 있으며 한정할 의도로 사용되는 것이 아니다. 본 명세서에서 사용된 바와 같은 단수적 표현들은 또한, 해당 문장에서 명확하게 달리 표시하지 않는 한, 복수의 의미를 포함하도록 의도될 수 있다. 용어 "및/또는," "그리고/또는"은 그 관련되어 나열되는 항목들의 모든 조합들 및 어느 하나를 포함한다. 용어 "포함한다", "포함하는", "포함하고 있는", "구비하는", "갖는", "가지고 있는" 등은 내포적 의미를 갖는 바, 이에 따라 이러한 용어들은 그 기재된 특징, 정수, 단계, 동작, 요소, 및/또는 컴포넌트를 특정하며, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 혹은 추가를 배제하지 않는다. 본 명세서에서 설명되는 방법의 단계들, 프로세스들, 동작들은, 구체적으로 그 수행 순서가 확정되는 경우가 아니라면, 이들의 수행을 논의된 혹은 예시된 그러한 특정 순서로 반드시 해야 하는 것으로 해석돼서는 안 된다. 추가적인 혹은 대안적인 단계들이 사용될 수 있음을 또한 이해해야 한다.
또한, 각각의 구성요소는 각각 하드웨어 프로세서로 구현될 수 있고, 위 구성요소들이 통합되어 하나의 하드웨어 프로세서로 구현될 수 있으며, 또는 위 구성요소들이 서로 조합되어 복수 개의 하드웨어 프로세서로 구현될 수도 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다.
영상에서 특징 벡터를 추출하기 위한 기존의 방법 중 대표적인 것이 LBP(Local Binary Pattern)이다. LBP는 이미지의 텍스쳐를 분류하기 위하여 개발된 알고리즘으로, 객체 인식과 같은 다양한 영상 인식 분야에도 활용된다. LBP는 영상에 포함된 모든 픽셀에 대해 연산되는 값으로, 각 픽셀의 주변 3x3 크기를 갖는 영역에 대한 상대적인 밝기 변화를 2진수로 나타내는 인덱스 값을 의미한다. 즉, LBP는 지역적인 이진 패턴을 연산한다.
LBP의 구체적인 원리는 3x3 영역 내에서 중심에 위치하는 중심 픽셀, 중심 픽셀과 이웃하는 8개의 이웃 픽셀끼리 서로 크기를 비교하여 이웃 픽셀의 값이 중심 픽셀보다 크면 1의 값을, 그렇지 않으면 0의 값을 갖도록 하여 이진 값을 연산한다. 예를 들어 중심 픽셀의 값이 50이고 그에 대한 이웃 픽셀의 값이 {65, 90, 40, 125, 35, 15, 70, 5}이면, LBP 이진 값은 {1, 1, 0, 1, 0, 0, 1, 0}이 된다. 따라서 최종 이진 패턴은 11010010(2)가 될 수 있다.
이와 같이 LBP는 영상에 포함된 픽셀에 대한 상대적인 값을 식별하기 때문에 밝기와 상관없이 일정한 값을 가질 수 있다. 그러나 LBP는 이웃 노드의 강도에 따라 이진 값이 완전히 달라질 수 있어 일관된 이진 패턴을 추출하지 못하기 때문에 노이즈에 취약하다는 단점이 있다.
도 1은 본 발명의 일 실시 예에 의한 객체 인식 방법의 대략적인 동작을 나타낸 도면이다. 도 1을 참조하면, 객체 인식 방법은 영상 데이터를 저장하기 위하여 HDFS를 사용할 수 있다. HDFS(Hadoop Distribution File System)은 Hadoop의 데이터 저장 시스템을 의미한다. Hadoop은 대용량 데이터를 분산 처리할 수 있는 자바 기반의 오픈 소스 프레임워크이다. Hadoop은 복수 개의 서버에 데이터를 분산 저장하고, 데이터가 저장된 서버에서 동시에 데이터를 처리하는 시스템이다.
특정 영상 데이터에 대한 특징을 추출하기 위하여 Spark RDD는 HDFS에 저장된 영상 데이터를 불러올 수 있다. Spark RDD는 Spark 내의 저장소를 의미한다. Spark는 범용성 분산 플랫폼으로, 분산된 복수 개의 노드에서 연산을 수행하게 하는 범용 분산 클러스터링 플랫폼을 의미한다. Spark는 Hadoop과 유사한데, Hadoop이 Map&Reduce 작업을 디스크 기반으로 수행하기 때문에 성능의 감소가 발생하는 반면, Spark는 Map&Reduce 작업을 메모리 기반으로 수행하기 때문에 Hadoop보다 빠른 속도를 가질 수 있다.
본 발명은 Spark RDD가 HDFS로부터 제1 영상 데이터를 불러오면, 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하여 Spark에서 처리 가능한 노드에 분산 저장할 수 있다. 제2 영상 데이터가 저장된 각 노드에서, 제2 영상 데이터를 전처리하고, 전처리된 영상 데이터로부터 특징 벡터를 추출한 후, 추출된 특징 벡터를 HDFS에 저장할 수 있다. HDFS에 저장된 특징 벡터와 영상 데이터와 비교 대상이 되는 기 저장된 영상 데이터의 특징 벡터를 비교하여 영상 데이터의 객체를 식별할 수 있다.
이하에서는 도 2를 참조하여, 본 발명의 일 실시 예에 의한 객체 인식 장치를 설명한다. 도 2를 참조하면 본 발명의 일 실시 예에 의한 객체 인식 장치는 영상 수집부(100), 전처리부(200), 제어부(300) 그리고 데이터 저장부(400)를 포함할 수 있다. 제어부(300)는 평면 패턴 생성부(310), 특징 벡터 생성부(330), 히스토그램 생성부(350), 객체 식별부(370)를 더 포함할 수 있고, 데이터 저장부(400)는 영상 데이터 저장부(410)와 평면 패턴 저장부(430)를 더 포함할 수 있다.
영상 수집부(100)는 HDFS에서 제1 영상 데이터를 수신할 수 있다. 영상 수집부(100)는 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하여 영상 데이터 저장부(410)에 분산 저장할 수 있다. 영상 데이터 저장부(410)는 Spark RDD를 따르며, 복수 개의 노드로 구성되어 있어 제2 영상 데이터를 각 노드에 분산시켜 저장함으로써 제2 영상 데이터 각각을 동시에 처리할 수 있도록 한다. 이하에서는 각 노드에서 제2 영상 데이터를 처리하기 위한 모듈을 설명한다.
전처리부(200)는 영상 데이터 저장부(410)에 분산 저장된 일 제2 영상 데이터의 전처리를 수행할 수 있다. 보다 구체적으로 전처리부(200)는 제2 영상 데이터에서 하나 이상의 프레임을 추출하고, RGB 스케일인 프레임을 그레이 스케일로 변환하며, 그레이 스케일로 변환된 프레임을 기 설정된 크기로 재설정할 수 있다.
제어부(300)는 전처리된 제2 영상 데이터에 포함된 픽셀 정보를 이용하여 제2 영상 데이터에서 객체를 식별할 수 있다. 이하에서는 제어부(300)가 포함하는 평면 패턴 생성부(310), 특징 벡터 생성부(330), 히스토그램 생성부(350), 객체 식별부(370)로 나누어 설명한다.
평면 패턴 생성부(310)는 제2 영상 데이터에서, 하나 이상의 직교 평면에 대하여 기 설정된 위치 및 크기를 갖는 평면 패턴을 각각 추출할 수 있다. 평면 패턴 생성부(310)는 X축-Y축 직교 평면, X축-T축 직교 평면 그리고 Y축-T축 직교 평면에 대한 평면 패턴을 각각 추출할 수 있다. X축은 제2 영상 데이터에 포함된 프레임의 가로축을 의미하고 Y축은 제2 영상 데이터에 포함된 프레임의 세로축을 의미하며 T축은 제2 영상 데이터에 포함된 복수 개의 프레임의 수직 축을 의미한다. 이 때 각 직교 평면에서 추출된 평면 패턴은 평면 패턴 저장부(430)에 분산 저장될 수 있다. 평면 패턴 저장부(430) 또한 Spark RDD를 따르며, 복수 개의 노드로 구성되어 있어 평면 패턴을 각 노드에 분산시켜 저장함으로써 평면 패턴 각각을 동시에 처리할 수 있도록 한다. 평면 패턴이 분산 저장되는 노드는 제2 영상 데이터가 분산 저장되는 노드의 하부 노드로, 이중 분산 구조를 가질 수 있다.
각 직교 평면에 대하여 추출된 평면 패턴은 기 설정된 크기를 가질 수 있으며, 제2 영상 데이터에 포함된 모든 픽셀에 대하여 평면 패턴이 추출될 수 있다. 본 발명은 각 직교 평면에 대하여 평면 패턴을 추출함으로써 공간 및 시공 정보를 모두 추출할 수 있다는 효과를 가질 수 있다. 이하에서는 평면 패턴의 크기를 3x3으로 가정하여 설명한다.
특징 벡터 생성부(330)는 평면 패턴 생성부(310)가 생성한 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 이용하여 평면 패턴에서 특징 벡터를 추출할 수 있다. 방향성 마스크는 평면 패턴의 중간 픽셀과 중간 픽셀과 이웃하는 이웃 픽셀 사이의 각도에 대응되는 8개의 마스크를 포함할 수 있다. 방향성 마스크는 기존에 존재하던 Frei-Chen 마스크를 변형한 것으로, Frei-Chen 마스크가 제곱근 연산을 필요로 하기 때문에 연산 속도가 떨어지는 반면 본 발명의 방향성 마스크는 제곱근 연산을 수행하지 않아도 동일한 결과를 도출할 수 있기 때문에 보다 효율적이다.
본 발명의 일 실시 예에서 사용되는 방향성 마스크는 도 6과 같다. 도 6을 참조하면, 방향성 마스크는 제1 마스크(610), 제2 마스크(620), 제3 마스크(630), 제4 마스크(640), 제5 마스크(650), 제6 마스크(660), 제7 마스크(670), 그리고 제8 마스크(680)를 포함할 수 있다.
특징 벡터 생성부(330)는 평면 패턴의 중심 픽셀과 이웃 픽셀 사이의 각도에 대응되는 방향성 마스크를 적용하여 각도 별 벡터 값을 생성할 수 있다. 평면 패턴의 크기가 3x3이라고 가정했을 때, 중심 픽셀과 중심 픽셀의 우측에 위치한 이웃 픽셀 사이의 각도를 0도라고 설정할 수 있다. 이 때 0도의 기준이 되는 이웃 픽셀은 설정에 따라 달라질 수 있다.
특징 벡터 생성부(330)는 중심 픽셀과 이웃 픽셀 사이의 각도에 대응되는 방향성 마스크를 다음과 같이 식별할 수 있다. 도 6을 참조하여 방향성 마스크를 설명하면, 특징 벡터 생성부(330)는 도 6의 중심에 위치한 픽셀을 기준으로 우측에 위치한 제1 마스크(610)를 0도에 대응되는 마스크로 식별할 수 있다. 이에 따라 평면 패턴에서 각도가 45도인 이웃 픽셀에 대응되는 마스크는 제2 마스크(620), 각도가 90도인 이웃 픽셀에 대응되는 마스크는 제3 마스크(630), …, 315도인 이웃 픽셀에 대응되는 마스크는 제8 마스크(680)로 식별될 수 있다.
특징 벡터 생성부(330)는 평면 패턴에 하나 이상의 방향성 마스크를 적용하여 각도 별 벡터 값을 생성할 수 있다. 평면 패턴에 방향성 마스크를 적용하는 방법을 설명하기 위하여 도 7에 도시된 일 예 중 하나인 Y축-T축 직교 평면에 대한 평면 패턴(이하 평면 패턴 A)을 이용해보자.
평면 패턴 A는 중심 픽셀의 값이 50이며, 80의 값을 갖는 이웃 픽셀과 중심 픽셀 사이의 각도를 0이라고 가정하였을 때 이웃 픽셀의 값은 80의 값을 갖는 이웃 픽셀을 시작으로 {80, 90, 40, 140, 100, 30, 60, 70}일 수 있다. 설명의 편의성을 위해 80의 값을 갖는 이웃 픽셀을 제1 이웃 픽셀, 90의 값을 갖는 이웃 픽셀을 제2 이웃 픽셀, …, 70의 값을 갖는 이웃 픽셀을 제8 이웃 픽셀이라고 명명한다.
평면 패턴 A의 중심 픽셀과의 각도가 225도인 제6 이웃 픽셀에, 제6 이웃 픽셀의 각도(225도)에 대응되는 마스크인 제6 마스크(660)을 적용할 수 있다. 제6 마스크(660)는 1/3의 값을 갖는 제1 마스크 픽셀, -2/3의 값을 갖는 제2 마스크 픽셀, …, 0의 값을 갖는 제8 마스크 픽셀을 포함할 수 있다. 평면 패턴 A의 이웃 픽셀과 마스크 픽셀을 각각 곱연산하면 {80/3, -180/3, 40/3, 0, -100/3, 60/3, 60/3, 0}의 값을 얻을 수 있다. 연산된 값을 모두 합하면 -40/3(-13.3)의 값을 얻을 수 있다. 따라서 특징 벡터 생성부(330)는 평면 패턴 A에서 각도가 225도인 벡터 값을 연산하여 -13.3의 값을 얻을 수 있다.
특징 벡터 생성부(330)는 위와 같은 방법을 모든 이웃 픽셀에 적용하여 8개의 각도 별 벡터 값을 생성한 후, 각도 별 벡터 값을 이용하여 벡터 패턴을 생성할 수 있다. 이 때 특징 벡터 생성부(330)는 생성된 각도 별 벡터 값을 벡터 패턴에서 그 각도에 대응되는 이웃 픽셀에 대한 값으로 설정할 수 있다.
이 때, 특징 벡터 생성부(330)는 이웃 픽셀에 대한 각도 별 벡터 값만을 연산하기 때문에 벡터 패턴의 중심 픽셀의 값은 위와 같은 방법으로 연산될 수 없다. 따라서 특징 벡터 생성부(330)는 벡터 패턴의 중심 픽셀의 값을 벡터 패턴의 이웃 픽셀의 값에 대한 평균 값으로 설정할 수 있다. 평면 패턴 A에 대한 벡터 패턴의 중심 픽셀 값은 -12.9일 수 있다.
특징 벡터 생성부(330)는 생성된 벡터 패턴을 특정 임계 값과 비교하여 이진화하여 특징 벡터를 추출할 수 있다.
먼저 특징 벡터 생성부(330)는 벡터 패턴을 특정 임계 값과 비교하여 이진 값을 생성할 수 있다. 벡터 패턴에 포함된 이웃 픽셀의 값이 임계 값보다 크면 1의 값을, -임계 값보다 작으면 -1의 값을, 그 외의 경우 0의 값을 추출할 수 있다. 이 때 임계 값으로 평면 벡터의 중심 픽셀에 대한 제곱근 값을 사용할 수 있다. 임계 값으로 5, 10, 15, 이웃 픽셀의 중간 값 제곱근 값, 중심 픽셀의 제곱근 값 중 하나를 선택할 수 있는데, 도 21을 참조하면 임계 값으로 중심 픽셀의 제곱근 값을 이용하는 것이 객체 인식 장치의 정확도를 가장 높일 수 있다.
앞서 사용한 예시에서 평면 벡터의 중심 픽셀의 값은 50으로 50의 제곱근 값은 7.07이다. 특징 벡터 생성부(330)는 벡터 패턴에 포함된 각 이웃 픽셀의 값을 7.07과 비교하여 7.07보다 크면 1의 값을, -7.07보다 작으면 -1의 값을, 그 외의 경우 0의 값을 추출할 수 있다. 픽셀 패턴 A에 대한 벡터 패턴에 대해 생성된 이진 값은 {-1, -1, 1, 1, -1, 0, -1, 1}이 될 수 있다.
특징 벡터 생성부(330)는 생성된 이진 값을 이용하여 특징 벡터를 생성할 수 있다. 이 때 특징 벡터는 상위 특징 벡터와 하위 특징 벡터로 구분될 수 있다. 상위 특징 벡터는 이진 값이 1이면 1의 값을, 0 또는 -1이면 0의 값을 부여할 수 있다. 나아가 하위 특징 벡터는 이진 값이 -1이면 1의 값을, 0 또는 1이면 0의 값을 부여할 수 있다. 예를 들어 이진 값이 {-1, -1, 1, 1, -1, 0, -1, 1}이면 특징 벡터 생성부(330)는 상위 특징 벡터로 00110001, 하위 특징 벡터로 11001010를 추출할 수 있다.
히스토그램 생성부(350)는 특징 벡터 생성부(330)가 생성한 특징 벡터를 히스토그램으로 변환할 수 있다. 히스토그램 생성부(350)는 분산된 X축-Y축 직교 평면, X축-T축 직교 평면, Y축-T축 직교 평면 각각에 대한 평면 벡터에서 추출된 특징 벡터를 십진화하고, 각 십진 값을 병합하여 하나의 히스토그램을 생성할 수 있다. 이 때, 히스토그램 생성부(350)는 상위 특징 벡터와 하위 특징 벡터 각각에 대한 히스토그램을 생성할 수 있다. 히스토그램 생성부(350)가 생성한 히스토그램의 크기는 (직교 평면의 수)x(특징 벡터의 수)x(2^(평면 패턴의 이웃 픽셀의 수))일 수 있다.
객체 식별부(370)는 히스토그램 생성부(350)에서 생성된 히스토그램에 대응되는 행동 정보를 식별함으로써 제2 영상 데이터에 포함된 객체를 식별할 수 있다. 객체 식별부는 행동 정보를 식별하기 위하여 CNN(Convolutional Neural Network) 알고리즘을 사용할 수 있으며, 이 외의 다른 객체 식별 알고리즘을 사용할 수도 있다. CNN 알고리즘은 합성곱 연산을 사용하는 신경망의 한 종류로, 합성곱을 사용함으로써 시공 정보를 유지할 수 있다.
신경망은 인접하는 계층의 모든 뉴런이 결합되어 있는 완전 연결 구조로, 3차원 데이터인 이미지 프레임이 완전 연결 계층에 입력될 때, 1차원 데이터로 변형되게 되면서 공간 정보를 상실하는 단점이 있다. 예를 들어 공간적으로 인접한 픽셀은 그 값이 서로 연관성이 있는 등의 3차원 속 의미를 갖는 패턴이 무시된다. 따라서 이러한 단점을 해결하기 위해 합성곱 연산을 신경망에 적용할 수 있다. 합성곱 연산은 특정 높이 또는 너비를 갖는 필터를 일정한 간격으로 이동하며 입력 데이터에 적용할 수 있다. 즉 동일한 필터가 이미지 프레임 전체에 적용될 수 있다.
객체 식별부(370)는 프레임이 n(일반적으로 60)인 제2 영상 데이터에서 추출된 히스토그램에 대하여, n x (히스토그램의 수)개를 CNN 알고리즘의 입력 값으로 사용할 수 있다. 도 8을 참조하면, 객체 식별부(370)는 4개의 합성곱 계층, 4개의 맥스-풀링(Max Pooling) 계층, 그리고 하나의 연결 계층으로 구성된 CNN 알고리즘을 사용할 수 있다. 제1, 제2 합성곱 및 맥스-풀링 계층은 1 x 7, 1 x 6의 크기를 갖는 16개의 합성곱 필터를 이용하여 합성곱 연산을 수행하고, 제3, 제4 합성곱 및 맥스-풀링 계층은 1 x 5, 1 x 4의 크기를 갖는 32개의 합성곱 필터를 이용하여 합성곱 연산을 수행할 수 있다. 나아가 제1, 제3, 제4 맥스-풀링 계층은 1 x 2 슬라이딩 윈도우를 수행하고, 제2 맥스-풀링 계층은 1 x 4 슬라이딩 윈도우를 수행할 수 있다.
객체 식별부(370)는 CNN 알고리즘을 수행할 때 가중치 및 바이어스 값을 초기화하고, 모든 계층의 가중치 및 바이어스 값을 오차역전파법(Back-Propagation) 알고리즘을 이용하여 업데이트할 수 있다.
이하에서는 도 3 내지 도 5를 이용하여 본 발명의 일 실시 예에 의한 객체 인식 방법을 설명한다. 객체 인식 방법에 관한 설명에 있어서 전술한 객체 인식 시스템과 중복되는 세부 실시 예는 생략될 수 있다.
도 3은 본 발명의 일 실시 예에 의한 객체 인식 방법에 대한 분산 처리 방법을 설명하기 위한 도면이다. 도 3을 참조하면, 서버는 HDFS에서 제1 영상 데이터를 불러오면 복수 개의 제2 영상 데이터로 분할하여 분산 처리할 수 있다. 서버는 제2 영상 데이터가 저장된 Spark RDD의 Mapper와 Reducer를 통해 제2 영상 데이터에서 평면 패턴을 추출할 수 있다. 이 때, 서버는 제2 영상 데이터에서 하나 이상의 직교 평면에 대한 평면 패턴의 추출 또한 분산 처리할 수 있다. 즉 서버는 제2 영상 데이터에서 하나 이상의 직교 평면에 대한 평면 패턴을 추출하기 위해서 한 번 이상 분산 처리할 수 있다.
도 4는 본 발명의 일 실시 예에 의한 객체 인식 방법을 설명하기 위한 도면이고, 도 5는 본 발명의 일 실시 예에 의한 영상 데이터의 전처리 방법을 설명하기 위한 도면이다. 객체 인식 방법을 수행하는 객체 인식 장치는 서버로 구현될 수 있는 바, 이하에서는 설명의 편의를 위해 서버로 명명한다.
도 4 및 도 5를 참조하면, 서버는 HDFS에서 제1 영상 데이터를 불러올 수 있다(S100). 서버는 불러온 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할(S200)하여 Spark RDD의 각 노드에 분산 저장(S250)할 수 있다. Spark RDD의 노드는 Mapper와 Reducer를 각각 포함하고 있다. 이하에서는 설명의 편의성을 위하여 제2 영상 데이터가 분할된 노드를 제1 노드라고 명명한다.
서버는 제1 노드 각각에 분산 저장된 제2 영상 데이터에서 프레임을 추출(S310)하고, 프레임을 그레이 스케일로 변환(S320)하며, 변환된 프레임의 크기를 변경(S330)하는 전처리를 수행할 수 있다(S300).
서버는 전처리된 제2 영상 데이터에서, 하나 이상의 직교 평면에 대하여 기 설정된 위치 및 크기를 갖는 평면 패턴을 각각 추출(S400)하여 Spark RDD의 각 노드에 분산 저장(S450)할 수 있다. 평면 패턴은 제2 영상 데이터에서 하나 이상의 직교 평면에 대하여 기 설정된 위치 및 크기를 갖는 것을 특징으로 하고, X축-Y축, X축-T축, Y축-T축 직교 평면에 대하여 평면 패턴이 각각 생성될 수 있다. 평면 패턴이 분할되어 저장된 노드를 제2 노드라고 명명한다. 제2 노드는 제1 노드의 하부 노드일 수 있다.
서버는 제2 노드 각각에 분산 저장된 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 적용하여 평면 패턴에 대한 특징 벡터를 생성(S500)할 수 있다. 특징 벡터는 상위 특징 벡터와 하위 특징 벡터로 구분될 수 있으며, 각 평면 패턴에 대하여 하나씩 존재할 수 있다.
서버는 제2 노드에서 저장된 평면 패턴 각각에 대한 특징 벡터를 생성하면, 분산된 제2 노드의 특징 벡터를 병합하여 하나의 히스토그램을 생성(S600)할 수 있다. 서버는 생성된 히스토그램을 이용하여 객체를 식별(S700)할 수 있다.
이하에서는 도 9 내지 도 21을 이용하여 본 발명의 일 실시 예에 의한 객체 인식 장치의 성능을 기존 방법과 비교하기 위한 실험 및 그 결과를 설명한다.
객체 인식 장치의 실험에는 Hadoop Spark 클러스터와 3가지의 데이터 세트(Maryland 데이터 세트, YUPENN 데이터 세트, YouTube 8M의 하부 데이터 세트)를 사용하고, 각 클러스터는 5개의 노드를 포함할 수 있다. 5개의 노드 중 하나는 마스터 노드(Master node), 나머지 네 개는 워커 노드(Worker node)이다. 5개의 노드는 3.0GHz에서 동작하는 4개의 코 어와 16GB의 메모리로 동일하게 구성되어 있다. 또한 Hadoop은 2.7.1 버전을, Spark는 1.6.2 버전을 사용하였다. 또한 실험을 위해 5-fold 교차 검증 기법을 사용하였으며, Training 데이터 세트로 70%의 데이터를, Testing 데이터 세트로 30%의 데이터를 사용하였다.
Maryland 데이터 세트는 13개의 동적 장면 카테고리와 130개의 영상 데이터 세트를 포함할 수 있다. Maryland 데이터 세트에 포함된 영상 데이터는 조명, 시점, 카메라 움직임에 큰 변화를 주었으며, 도 9를 참조하면 Maryland 데이터 세트의 각 카테고리는 눈사태, 산불, 끓는 물, 교통 마비, 분수, 빙산 붕괴, 토네이도, 산사태, 원만한 교통흐름, 화산 폭발, 폭포, 파도 및 소용돌이를 포함하고 있다.
YUPENN 데이터 세트는 동적 데이터를 안정화시킨 데이터 세트로, 카메라 움직임이 없는 데이터 세트를 포함할 수 있다. YUPEEN 데이터 세트는 14개의 장면 카테고리와 각 카테고리 별로 30개의 영상 데이터를 포함할 수 있다. 도 10을 참조하면 YUPENN 데이터 세트의 카테고리는 해변, 산불, 번개, 엘리베이터, 분수, 해양, 철도, 구름, 눈, 도로, 폭포, 흐르는 강, 풍차를 포함하고 있다. YUPEEN 데이터 세트에 속한 영상 데이터는 250 x 370(픽셀) x 145(프레임)의 크기를 가질 수 있다.
Youtube 8M 데이터 세트는 영상 데이터의 이해를 위한 기준 데이터 세트를 의미한다. 객체 인식 장치의 실험에 사용될 Youtube 8M의 하부 데이터 세트로 Youtube 8M 데이터 세트의 여행 섹션을 사용할 수 있으며, 해당 섹션은 7개의 카테고리로 분류될 수 있다. 도 11을 참조하면 Youtube 8M 하부 데이터 세트의 카테고리는 해변, 호수, 놀이공원, 일출, 동물원, 공항, 도로를 포함하고 있다. Youtube 8M 하부 데이터 세트는 각 카테고리 별로 100개의 영상 데이터, 즉 총 700개의 영상 데이터를 포함할 수 있으며, 영상 데이터별로 관점 및 카메라의 움직임이 각기 상이할 수 있다.
도 12를 참조하면, 세 개의 데이터 세트를 이용한 객체 인식 장치의 성능에 대한 실험을 수행했을 때, 두 개의 노드를 사용할 때 객체를 인식하는 데 소요되는 시간이 1.5배 향상되는 반면 네 개의 노드를 사용할 때는 속도가 크게 향상되지 않는 것을 확인할 수 있다. 반면에 세 개의 노드를 사용하면 속도가 평균 2.6배 향상되는 것을 확인할 수 있다.
도 13 내지 도 15는 세 개의 데이터 세트에 대한 객체 인식 방법의 정확도를 실험한 결과를 도시한 도면이다. Maryland 데이터 세트, YUPENN 데이터 세트, Youtube 8M 데이터 세트를 사용했을 때 객체 인식 장치의 평균 인식률은 각각 84.6%, 97.0%, 94.14%를 나타낸다.
Maryland 데이터 세트의 경우, 눈사태, 교통 마비, 토네이도, 폭포, 파도의 범주는 기타 범주보다 좋은 성능을 나타내는 반면 빙산 붕괴, 산사태의 범주는 카메라의 움직임으로 인하여 낮은 성능을 나타내고 있다. YUPENN 데이터 세트의 경우, 해변, 엘리베이터, 흐르는 강의 범주가 가장 좋은 성능을 나타내는 반면 분수, 풍차의 범주는 낮은 성능을 나타내고 있다. Youtube 8M 데이터 세트의 경우, 일몰의 범주는 가장 좋은 성능을 나타내는 반면, 공항의 범주는 영상 데이터의 복잡성으로 인해 낮은 성능을 나타내고 있다.
나아가 세 개의 데이터 세트에 지역 기반 접근법(Region Based Approach)과 전체론적 기반 접근법(Holistic Based Approach)을 적용하여 객체 인식 장치의 성능에 대한 실험을 수행하였다.
지역 기반 접근법을 적용하면, 영상 데이터의 각 프레임은 6개의 서로 다른 영역으로 구분될 수 있다. 구분된 각 영역에 객체 인식 방법을 적용하고, 그 결과 모든 영역에 대한 히스토그램을 병합하여 CNN 알고리즘의 입력 데이터로 사용되는 단일 히스토그램을 생성할 수 있다. 반면에 전체론적 기반 접근법을 적용하면, 영상 데이터 각각에 객체 인식 방법을 적용할 수 있다.
도 16은 지역 기반 접근법을 적용한 객체 인식 방법을 설명하기 위한 도면이고, 도 17은 지역 기반 접근법과 전체론적 기반 접근법에 대한 객체 인식 방법의 성능을 비교한 도면이다. 도 17을 참조하면, 전체론적 기반 접근법이 지역 기반 접근법 보다 나은 결과를 도출하는 것을 확인할 수 있다. 이는 동적 장면이 전체론적 기반 접근법에 의해 얻어진 영상 데이터의 전역 정보를 의미하는 반면, 지역 기반 접근법은 다른 지역에서 얻어진 극소의 정보에 대한 영향력만을 결정하기 때문이다. 나아가 지역 기반 접근법에서, 영역의 수가 증가하면 특징 벡터의 차수가 증가하기 때문에 정보가 모호해질 수 있다.
도 18은 본 발명의 객체 인식 방법과 기존의 객체 인식 방법의 성능을 비교한 도면이다. 성능을 비교하는 과정에 있어서, 객체를 인식하기 위한 객체 추출기로 1-D CNN을 사용하였다. 도 18을 참조하면 본 발명의 객체 인식 방법은 특징 벡터가 영상 데이터에 대하여 더 많은 정보를 포함하고 있기 때문에 기존의 객체 인식 방법보다 나은 결과를 도출하는 것을 확인할 수 있다. Maryland 데이터 세트의 경우 본 발명의 객체 인식 방법의 평균 정확도는 VLBP 및 LBP-TOP 알고리즘보다 각각 25.4%, 23.2% 높고, YUPENN 데이터 세트의 경우 2DHFLBP-TOP(2D Histogram Fourier LBP-TOP) 알고리즘보다 5.3% 높으며, Youtube 8M 데이터 세트의 경우 HOG-TOP 알고리즘보다 5.04% 높은 것을 확인할 수 있다.
도 19는 본 발명의 객체 인식 방법과 최신의 객체 인식 방법의 성능을 비교한 도면이다. Maryland 데이터 세트를 이용하여 객체 인식 방법의 성능을 비교하면, 본 발명의 객체 인식 방법은 SOE(Spatiotemporal Oriented Energy), SFA(Slow Feature Analysis), CSO(Complementary Space-time Orientation), BoSE(Bag of Space-time Energy), DPCF(Dynamically Pooled Complementary Features), 단일 프레임 CNN, t-TCoF(Temporal Transferred ConvNet Feature)와 같은 알고리즘보다 나은 결과를 도출하는 반면 st-TCoF(Spatial and Temporal Transferred ConvNet Feature), 하이브리드-CNN, 3DPuraNet-F, D3(Deep Dual Descriptor)와 같은 알고리즘은 본 발명의 객체 인식 방법보다 나은 결과를 도출하는 것을 확인할 수 있다. 본 발명의 객체 인식 방법보다 나은 결과를 도출한 알고리즘은 차별적인 접근 방식을 사용하기 때문에 나은 성능을 나타낼 수 있으나, 본 발명의 객체 인식 방법과 같이 카메라의 움직임을 고려하지는 않는 단점이 있다.
YUPENN 데이터 세트를 이용하여 객체 인식 방법의 성능을 비교하면, 본 발명의 객체 인식 방법은 SOE, SFA, CSO, BoSE, Sift+5DMFV, 단일 프레임 CNN, 3DPyraNet-F와 같은 알고리즘보다 더 나은 결과를 도출하고, t-TCoF, 하이브리드 CNN, D3D(Dynamic Deep Dual Descriptor)와 같은 알고리즘과 유사한 결과를 도출하는 것을 확인할 수 있다. 반면에 본 발명의 객체 인식 방법은 DPCF 알고리즘보다 정확성이 떨어지는 것을 확인할 수 있는데, 이는 DPCF 알고리즘이 주변 구조 정보를 획득하기 위하여 공간 그리드에서 초기 특징 벡터를 이용하기 때문이다.
도 20은 객체 식별기의 종류에 따른 객체 인식 방법의 성능을 비교한 도면이다. 도 20을 참조하면 CNN 알고리즘은 SVM, Random Forest 알고리즘보다 성능이 뛰어나며, SVM 알고리즘은 Random Forest 알고리즘보다 성능이 뛰어난 것을 확인할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.

Claims (12)

  1. 제1 영상 데이터를 수신하면, 상기 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하여 분산 저장하는 단계;
    상기 제2 영상 데이터의 프레임 추출을 포함하는 전처리를 수행하는 단계;
    상기 제2 영상 데이터에서 하나 이상의 직교 평면에 대하여 기 설정된 크기를 갖는 평면 패턴을 각각 추출하여 분산 저장하는 단계;
    상기 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 이용하여 상기 평면 패턴에서 특징 벡터를 각각 분산하여 생성하는 단계;
    상기 생성된 특징 벡터를 이용하여 히스토그램을 생성하고, 상기 히스토그램에 대응되는 행동 정보를 식별함으로써 상기 제2 영상 데이터에 포함된 객체를 식별하는 단계를 포함하는 객체 인식 방법.
  2. 제1항에 있어서,
    상기 전처리 단계는,
    상기 제2 영상 데이터에서 프레임을 추출하는 단계;
    상기 프레임을 그레이 스케일로 변환하는 단계;
    상기 프레임의 크기를 변경하는 단계를 포함하는 객체 인식 방법.
  3. 제1항에 있어서,
    상기 평면 패턴은,
    X축-Y축 직교 평면에 대한 제1 평면 패턴;
    X축-T축 직교 평면에 대한 제2 평면 패턴;
    Y축-Y축 직교 평면에 대한 제3 평면 패턴을 포함하는 객체 인식 방법.
  4. 제1항에 있어서,
    상기 평면 패턴은 중심 픽셀 및 중심 픽셀에 인접한 복수 개의 이웃 픽셀을 포함하는 객체 인식 방법.
  5. 제1항에 있어서,
    상기 특징 벡터를 추출하는 단계는,
    상기 평면 패턴에 상기 방향성 마스크를 적용하여 각도 별 벡터 값을 생성하는 단계;
    상기 각도 별 벡터 값을 이용하여 상기 평면 벡터에 대응되는 상기 특징 벡터를 생성하는 단계를 포함하는 객체 인식 방법.
  6. 제5항에 있어서,
    상기 특징 벡터를 생성하는 단계는,
    상기 각도 별 벡터 값의 평균 값을 연산하는 단계;
    상기 각도 별 벡터 값과 상기 평균 값의 차이 값을 연산하는 단계;
    상기 차이 값과 상기 평면 패턴의 중심 픽셀 값을 이용하여 상기 특징 벡터를 생성하는 단계를 포함하는 객체 인식 방법.
  7. 제1 영상 데이터를 수신하는 영상 수집부;
    상기 제1 영상 데이터를 복수 개의 제2 영상 데이터로 분할하는 데이터 분할부;
    상기 제2 영상 데이터의 프레임 추출을 포함하는 전처리를 수행하는 전처리부;
    상기 제2 영상 데이터에서, 하나 이상의 직교 평면에 대하여 기 설정된 크기를 갖는 평면 패턴을 추출하고, 상기 평면 패턴과 동일한 크기를 갖는 방향성 마스크를 이용하여 상기 평면 패턴에서 특징 벡터를 생성하며, 상기 특징 벡터를 이용하여 히스토그램을 분산하여 생성하고, 상기 히스토그램에 대응되는 행동 정보를 식별함으로써 상기 제2 영상 데이터에 포함된 객체를 식별하는 제어부;
    상기 제2 영상 데이터를 분산 저장하고, 상기 직교 평면에 대한 상기 평면 패턴을 분산 저장하는 저장부를 포함하는 객체 인식 장치.
  8. 제7항에 있어서,
    상기 전처리부는,
    상기 제2 영상 데이터에서 프레임을 추출하고, 상기 프레임을 그레이 스케일로 변환하며, 상기 프레임의 크기를 변경하는 것을 특징으로 하는 객체 인식 장치.
  9. 제7항에 있어서,
    상기 평면 패턴은,
    X축-Y축 직교 평면에 대한 제1 평면 패턴, X축-T축 직교 평면에 대한 제2 평면 패턴, Y축-Y축 직교 평면에 대한 제3 평면 패턴을 포함하는 것을 특징으로 하는 객체 인식 장치.
  10. 제7항에 있어서,
    상기 평면 패턴은 중심 픽셀 및 중심 픽셀에 인접한 복수 개의 이웃 픽셀을 포함하는 것을 특징으로 하는 객체 인식 장치.
  11. 제7항에 있어서,
    상기 제어부는,
    상기 평면 패턴에 상기 방향성 마스크를 적용하여 각도 별 벡터 값을 생성하고, 상기 각도 별 벡터 값을 이용하여 상기 평면 벡터에 대응되는 상기 특징 벡터를 생성하는 특징 벡터 생성부를 더 포함하는 것을 특징으로 하는 객체 인식 장치.
  12. 제11항에 있어서,
    상기 특징 벡터 생성부는,
    상기 각도 별 벡터 값의 평균 값을 연산하고, 상기 각도 별 벡터 값과 상기 평균 값의 차이 값을 연산하며, 상기 차이 값과 상기 평면 패턴의 중심 픽셀 값을 이용하여 상기 특징 벡터를 생성하는 것을 특징으로 하는 객체 인식 장치.
KR1020190025753A 2018-11-30 2019-03-06 영상에서의 객체 인식 방법 및 장치 KR102158097B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180151643 2018-11-30
KR1020180151643 2018-11-30

Publications (2)

Publication Number Publication Date
KR20200072380A true KR20200072380A (ko) 2020-06-22
KR102158097B1 KR102158097B1 (ko) 2020-09-21

Family

ID=71142286

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190025753A KR102158097B1 (ko) 2018-11-30 2019-03-06 영상에서의 객체 인식 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102158097B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102287401B1 (ko) * 2021-05-28 2021-08-09 주식회사 폴라리스쓰리디 3d 공간 지도를 2d 평면도로 변환하기 위한 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287478A (ja) * 2007-05-17 2008-11-27 National Institute Of Advanced Industrial & Technology 異常検出装置および異常検出方法
KR101282663B1 (ko) * 2012-10-17 2013-07-12 최종기 차량 번호판의 이미지 영역을 검출하기 위한 장치 및 그 방법
KR20160070379A (ko) * 2014-12-10 2016-06-20 삼성에스디에스 주식회사 객체 분류 방법 및 그 장치
KR20160090649A (ko) * 2015-01-22 2016-08-01 한국과학기술연구원 하체 검출/추적 장치 및 방법
KR101716646B1 (ko) 2013-01-10 2017-03-15 한국전자통신연구원 국부이진패턴을 이용한 객체 검출 인식 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287478A (ja) * 2007-05-17 2008-11-27 National Institute Of Advanced Industrial & Technology 異常検出装置および異常検出方法
KR101282663B1 (ko) * 2012-10-17 2013-07-12 최종기 차량 번호판의 이미지 영역을 검출하기 위한 장치 및 그 방법
KR101716646B1 (ko) 2013-01-10 2017-03-15 한국전자통신연구원 국부이진패턴을 이용한 객체 검출 인식 방법 및 장치
KR20160070379A (ko) * 2014-12-10 2016-06-20 삼성에스디에스 주식회사 객체 분류 방법 및 그 장치
KR20160090649A (ko) * 2015-01-22 2016-08-01 한국과학기술연구원 하체 검출/추적 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102287401B1 (ko) * 2021-05-28 2021-08-09 주식회사 폴라리스쓰리디 3d 공간 지도를 2d 평면도로 변환하기 위한 방법 및 장치

Also Published As

Publication number Publication date
KR102158097B1 (ko) 2020-09-21

Similar Documents

Publication Publication Date Title
CN108416307B (zh) 一种航拍图像路面裂缝检测方法、装置及设备
Raza et al. Appearance based pedestrians’ head pose and body orientation estimation using deep learning
WO2020119661A1 (zh) 一种目标检测方法、装置以及行人检测方法、系统
Chu et al. A fast ground segmentation method for 3D point cloud
Wu et al. Real-time background subtraction-based video surveillance of people by integrating local texture patterns
Song et al. Classifying 3D objects in LiDAR point clouds with a back-propagation neural network
Chu et al. Enhanced ground segmentation method for Lidar point clouds in human-centric autonomous robot systems
Li et al. Image Matching Algorithm based on Feature-point and DAISY Descriptor.
Ardiyanto et al. Partial least squares-based human upper body orientation estimation with combined detection and tracking
Chen et al. Object-based multi-modal convolution neural networks for building extraction using panchromatic and multispectral imagery
Hu et al. Dense crowd counting based on perspective weight model using a fisheye camera
Zuo et al. A remote sensing image semantic segmentation method by combining deformable convolution with conditional random fields
Sun et al. RobNet: real-time road-object 3D point cloud segmentation based on SqueezeNet and cyclic CRF
Jiji et al. A new approach for unsupervised segmentation
KR102158097B1 (ko) 영상에서의 객체 인식 방법 및 장치
KR20200066125A (ko) 영상의 유사도 예측 방법 및 장치
Mahayuddin et al. Moving object detection using semantic convolutional features
Ponz et al. Laser scanner and camera fusion for automatic obstacle classification in ADAS application
Zhao et al. DHA: Lidar and vision data fusion-based on road object classifier
Li et al. Detection of Imaged Objects with Estimated Scales.
Xu et al. Crowd density estimation of scenic spots based on multifeature ensemble learning
Abramov et al. Development of Algorithms and Software for Automatic Pedestrian Recognition for Intelligent Situation Control Systems
Zigh et al. Soft computing strategy for stereo matching of multi spectral urban very high resolution IKONOS images
Li et al. LIDAR-incorporated traffic sign detection from video log images of mobile mapping system
Lenskiy et al. Rugged terrain segmentation based on salient features

Legal Events

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