KR20110110526A - Cluster analysis method using differential image and system thereof - Google Patents

Cluster analysis method using differential image and system thereof Download PDF

Info

Publication number
KR20110110526A
KR20110110526A KR1020100029894A KR20100029894A KR20110110526A KR 20110110526 A KR20110110526 A KR 20110110526A KR 1020100029894 A KR1020100029894 A KR 1020100029894A KR 20100029894 A KR20100029894 A KR 20100029894A KR 20110110526 A KR20110110526 A KR 20110110526A
Authority
KR
South Korea
Prior art keywords
cluster
information
image
area
image information
Prior art date
Application number
KR1020100029894A
Other languages
Korean (ko)
Other versions
KR101180965B1 (en
Inventor
김홍현
이재일
임경태
Original Assignee
(주)이산솔루션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이산솔루션 filed Critical (주)이산솔루션
Priority to KR1020100029894A priority Critical patent/KR101180965B1/en
Publication of KR20110110526A publication Critical patent/KR20110110526A/en
Application granted granted Critical
Publication of KR101180965B1 publication Critical patent/KR101180965B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 차영상을 이용한 클러스터 분석 방법은, (a) 카메라로부터 영상정보를 입력받는 단계; (b) 클러스터 분석 시스템은 상기 영상정보로부터 이전 프레임과 현재 프레임의 차에 의해 차영상을 산출하는 단계; (c) 상기 차영상을 이진화 처리 및 잡영 필터링을 하고, 이진화 처리 및 잡영 필터링된 정보로부터 움직임이 있는 영역 판단에 의해 이동체의 위치를 판단하는 단계; (d) 상기 판단된 적어도 하나의 이동체 위치에 해당하는 유효 픽셀로부터 클러스터링 기법을 이용하여 클러스터를 생성하는 단계; (e) 상기 영상정보를 미리 설정된 분할수의 그리드로 분할하고, 분할된 영역별로 클러스터의 수를 카운팅하는 단계;를 포함하는 차영상을 이용한 클러스터 분석 방법을 제공한다.Cluster analysis method using the difference image of the present invention, (a) receiving image information from the camera; (b) the cluster analysis system calculating a difference image based on a difference between a previous frame and a current frame from the image information; (c) binarizing and distilling the difference image, and determining a position of the moving object by determining a region of motion from the binarization processing and the distillation filtering information; (d) generating a cluster using a clustering technique from valid pixels corresponding to the determined at least one moving object position; (e) dividing the image information into a grid having a predetermined number of divisions, and counting the number of clusters for each divided region; and providing a cluster analysis method using a difference image.

Description

차영상을 이용한 클러스터 분석 방법 및 시스템{Cluster Analysis Method using differential image and System thereof}Cluster analysis method using system and differential image

본 발명은 클러스터 분석 방법에 관한 것으로, 더욱 상세하게는 영상의 변화에 따라 차영상을 이용하여 이동체의 움직임을 검출하고, 해당 이동체들로부터 클러스터링 기법을 이용하여 클러스터를 분석하는 방법에 관한 것이다.The present invention relates to a cluster analysis method, and more particularly, to a method of detecting a movement of a moving object using a difference image according to a change of an image, and analyzing a cluster using the clustering technique from the moving objects.

이동 물체 추적의 하드웨어 시스템 구성에 있어 이동 물체의 검출은 저비용으로 간단한 알고리즘을 가진 시스템이 요구된다. 그리고, 기존의 방법에 대한 문제점을 극복하기 위해 누적차영상 및 모션 추정 기법을 통합한 방법을 이용하여 배경의 움직임이 유발되는 이동 카메라로부터 획득한 연속영상에서 전방향 이동 물체를 자동으로 검출하기 위한 알고리즘이 제안되었다. 누적차영상은 연속된 3개의 프레임을 이용하여 중간 프레임의 움직임을 검출한 영상으로 연속된 영상에서 균일한 질감을 가지는 배경을 제거시켜 이동물체가 존재할 후보영역을 찾기 위해 사용된다. 모션추정기법은 이동 카메라로 획득한 연속영상에서 배경이 가지는 빠른 변화의 특성을 이용하여 배경을 제거시키기 위해 사용된다.In the hardware system configuration of moving object tracking, the detection of moving objects requires a system having a simple algorithm at low cost. In order to overcome the problems of the conventional method, an omnidirectional moving object is automatically detected in a continuous image obtained from a moving camera that causes background motion by using a method integrating a cumulative difference image and a motion estimation technique. An algorithm has been proposed. The cumulative difference image is an image that detects motion of an intermediate frame using three consecutive frames. The cumulative difference image is used to find a candidate region in which moving objects exist by removing a background having a uniform texture from the continuous images. The motion estimation technique is used to remove the background by using the characteristics of the fast change of the background in the continuous image acquired by the mobile camera.

한편, 종래의 네트워크기반 지능형 이동 로봇은, 다양한 분야의 서비스에 활용되고 있는데, 이러한 로봇은 저가의 임베디드 프로세서를 이용함으로써, 장착 카메라를 이용하여 자체적으로 영상을 획득할 수는 있으나, 획득된 영상처리나 처리된 영상의 움직임을 파악하여 스스로 위치를 제어하는 기능을 구비하기는 어려운 실정이었다. 결과적으로, 대부분의 네트워크 기반 이동로봇은 수동적으로 이동 물체 즉, 사람이 접근하여 직접 제어하는 방식을 채택해왔다.On the other hand, the conventional network-based intelligent mobile robot, which is used for a variety of services, such a robot can acquire the image itself by using a mounted camera by using a low-cost embedded processor, but obtained image processing It was difficult to have a function of controlling the position by identifying the movement of the processed image. As a result, most network-based mobile robots have passively adopted moving objects, that is, human approach and direct control.

클러스터링(군집화)은 유사한 성격의 데이터를 분류하기 위해 사용되는데, 다양한 클러스터링 방법 중에서 특히, 단순히 픽셀간 거리만으로 군집화를 수행하는 Single Linkage의 방법과, Ward의 방법으로 군집내의 각 픽셀의 모든 페어(pair)간의 거리 제곱합(SSW)이 최소값이 되는 해당 픽셀들을 군집화시켜 나가는 방법이 있다. Clustering is used to classify data of similar characteristics. Among the various clustering methods, in particular, the method of Single Linkage, which performs clustering only by the distance between pixels, and the method of Ward, all pairs of each pixel in the cluster by Ward's method. There is a method of clustering pixels whose minimum sum of squares (SSW) between them is the minimum value.

따라서, 연속적으로 획득된 영상으로부터 이동 물체의 움직임을 분석하여 군집된 클러스터 정보를 얻을 수 있는 클러스터링 방법을 모색하고, 이러한 방법을 토대로 클러스터 분석을 위한 서버 시스템 구축 및 이동 로봇과 연동하여 이동 로봇의 위치 제어를 할 수 있는 시스템이 마련될 필요성이 있다.Therefore, the clustering method to analyze the movement of the moving object from the continuously acquired images to obtain clustered cluster information, and to build a server system for cluster analysis and the position of the mobile robot in conjunction with the mobile robot based on this method There is a need to provide a system for control.

본 발명은 상기한 필요성을 감안하여 창안된 것으로, 연속적으로 획득된 영상으로부터 차영상을 구하여 이동체의 움직임을 검출하고, 차영상의 유효 픽셀로부터 클러스터링 기법을 이용하여 클러스터를 생성하도록 분석하는 차영상을 이용한 클러스터 분석 방법 및 시스템을 제공하는데 목적이 있다.The present invention was devised in view of the above-mentioned necessity, obtains a difference image from successively acquired images, detects the movement of a moving object, and analyzes the difference image to generate a cluster using a clustering technique from effective pixels of the difference image. An object of the present invention is to provide a cluster analysis method and system.

또한, 본 발명은 차영상을 이용한 클러스터 분석 시스템과 연동하여 분석된 클러스터 정보를 제공받아 이동체의 움직임에 따라 위치를 이동하는 이동 로봇 및 이동 로봇 일체형 클러스터 분석 시스템을 제공하는데 다른 목적이 있다.In addition, another object of the present invention is to provide a mobile robot and a mobile robot integrated cluster analysis system for receiving a cluster information analyzed in conjunction with a cluster analysis system using a difference image and moving the position according to the movement of the moving object.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 차영상을 이용한 클러스터 분석 방법은, (a) 카메라로부터 영상정보를 입력받는 단계; (b) 클러스터 분석 시스템은 상기 영상정보로부터 이전 프레임과 현재 프레임의 차에 의해 차영상을 산출하는 단계; (c) 상기 차영상을 이진화 처리 및 잡영 필터링을 하고, 이진화 처리 및 잡영 필터링된 정보로부터 움직임이 있는 영역 판단에 의해 이동체의 위치를 판단하는 단계; (d) 상기 판단된 적어도 하나의 이동체 위치에 해당하는 유효 픽셀로부터 클러스터링 기법을 이용하여 클러스터를 생성하는 단계; (e) 상기 영상정보를 미리 설정된 분할수의 그리드로 분할하고, 분할된 영역별로 클러스터의 수를 카운팅하는 단계;를 포함한다.According to an aspect of the present invention, there is provided a cluster analysis method using a difference image, the method comprising: receiving image information from a camera; (b) the cluster analysis system calculating a difference image based on a difference between a previous frame and a current frame from the image information; (c) binarizing and distilling the difference image, and determining a position of the moving object by determining a region of motion from the binarization processing and the distillation filtering information; (d) generating a cluster using a clustering technique from valid pixels corresponding to the determined at least one moving object position; (e) dividing the image information into a grid having a preset number of divisions, and counting the number of clusters for each divided region.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 차영상을 이용한 클러스터 분석 시스템은, 영상정보를 획득하는 카메라부; 상기 카메라부로부터 상기 영상정보를 재생 가능한 포맷으로 디코딩하는 입력영상획득부; 상기 영상정보의 이전 프레임과 현재 프레임의 차에 의해 차영상을 산출하는 차영상산출부; 상기 차영상을 이진화 처리 및 잡영을 필터링하는 이진화및노이즈처리부; 상기 이진화 처리 및 잡영 필터링된 정보로부터 이동체로 판단된 유효 픽셀의 영역으로부터 클러스터를 생성하는 클러스터산출부; 상기 산출된 클러스터의 수를 미리 설정된 그리드의 영역별로 카운팅하는 클러스터수카운터;를 포함한다.According to an aspect of the present invention, there is provided a cluster analysis system using a difference image, including: a camera unit obtaining image information; An input image acquisition unit for decoding the image information from the camera unit into a format reproducible; A difference image calculation unit configured to calculate a difference image based on a difference between a previous frame and a current frame of the image information; A binarization and noise processor configured to binarize the difference image and filter noises; A cluster calculation unit for generating a cluster from an area of the effective pixel determined as a moving object from the binarization processing and miscellaneous filtered information; And a cluster number counter that counts the calculated number of clusters for each area of a preset grid.

본 발명에 따른 차영상을 이용한 클러스터 분석 방법 및 시스템은, 획득된 연속영상에서 차영상을 이용하여 이동체의 움직임을 분석하여 클러스터링함으로써, 영상정보의 영역별 군집화된 클러스터 정보를 정확하고 효율적으로 제공하는 효과가 있다.Cluster analysis method and system using the difference image according to the present invention, by analyzing the motion of the moving object using the difference image from the obtained continuous image and clustering, providing clustered cluster information for each region of the image information accurately and efficiently It works.

또한, 분석된 클러스터 정보를 이용하여 이동할 위치수를 판단하고, 판단 결과에 따라 해당 위치로 이동 가능한 이동 로봇에 의해, 다양한 서비스 분야에서 활용할 수 있는 효과가 있다.In addition, by using the analyzed cluster information to determine the number of positions to move, according to the determination result by the mobile robot that can move to the location, there is an effect that can be utilized in various service areas.

도 1은 본 발명의 일 실시예에 따른 차영상을 이용한 클러스터 분석 방법의 순서도이다.
도 2는 배경영상, 영상정보 및 두 영상의 차에 의해 산출된 차영상을 보인 도면이다.
도 3은 카메라의 영상정보를 기초로 그리드 영역을 분할하는 과정을 보인 도면이다.
도 4a는 영상정보의 원근에 따른 가중치 설정에 의해 클러스터에 적용되는 과정과, 설정된 중심점에 대한 개념을 도시한 도면이다.
도 4b는 그리드 영역별 클러스터의 중심점이 적용된 장소의 일 실시예를 보인 도면이다.
도 5는 그리드 영역별 클러스터의 수를 카운팅한 결과를 보인 도면이다.
도 6은 파라메터 설정 및 클러스터 분석을 위해 마련된 프로그램 화면 일부를 보인 도면이다.
도 7은 클러스터 정보를 담고 있는 XML 소스 화면을 보인 도면이다.
도 8은 본 발명의 일 실시예에 따른 클러스터 분석 시스템의 블록도이다.
도 9는 본 발명의 다른 일 실시예에 따른 클러스터 분석 시스템의 블록도이다.
도 10은 본 발명의 또 다른 일 실시예에 따른 클러스터 분석 시스템의 블록도이다.
1 is a flowchart illustrating a cluster analysis method using difference images according to an embodiment of the present invention.
2 is a diagram illustrating a difference image calculated by a background image, image information, and a difference between two images.
3 is a diagram illustrating a process of dividing a grid area based on image information of a camera.
4A is a diagram illustrating a process applied to a cluster by setting weights according to perspectives of image information and a concept of a set center point.
4B is a diagram illustrating an embodiment of a place where a center point of a cluster for each grid area is applied.
5 is a view showing a result of counting the number of clusters for each grid area.
6 is a diagram illustrating a part of a program screen prepared for parameter setting and cluster analysis.
7 is a diagram illustrating an XML source screen containing cluster information.
8 is a block diagram of a cluster analysis system according to an embodiment of the present invention.
9 is a block diagram of a cluster analysis system according to another exemplary embodiment of the present invention.
10 is a block diagram of a cluster analysis system according to another embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in different forms, only the embodiments to make the disclosure of the present invention complete, and having ordinary skill in the art to which the present invention pertains. It is provided to fully inform the scope of the invention, and the invention is defined only by the scope of the claims. Like reference numerals refer to like elements throughout.

도 1은 본 발명의 일 실시예에 따른 차영상을 이용한 클러스터 분석 방법의 순서도이다.1 is a flowchart illustrating a cluster analysis method using difference images according to an embodiment of the present invention.

먼저, 카메라로부터 영상정보를 획득한다(S100).First, image information is acquired from a camera (S100).

또한, 카메라로부터 획득되는 영상정보는 기본적으로 MPEG4, H.264 등과 같은 동영상 표준 규격을 따라 디코딩된다.Also, video information obtained from a camera is basically decoded according to a video standard such as MPEG4 or H.264.

이제 획득된 영상정보는 영상정보를 기초로 클러스터를 분석하기 위해 클러스터 분석 시스템에 미리 마련된 클러스터 분석 프로그램에 제공되고, 파라메터들의 설정 여부를 판단하게 된다(S102).The obtained image information is provided to a cluster analysis program prepared in a cluster analysis system in advance to analyze the cluster based on the image information, and it is determined whether to set parameters (S102).

이 파라메터들은 영상정보로부터 클러스터 분석에 필요한 변수들이며, 기본적으로, 그리드 분할 영역 설정값, 이진화 임계값, 잡영 처리 임계값, 클러스터링 임계값, 클러스터의 중심점 설정값, 원근에 따른 가중치 등이 있다. 파라메터 설정에 따른 영향에 대한 구체적인 설명은 후술하기로 한다.These parameters are variables necessary for cluster analysis from image information. Basically, there are grid partition setting value, binarization threshold value, ghosting processing threshold value, clustering threshold value, cluster center point setting value, and weight based on perspective. A detailed description of the influence of the parameter setting will be described later.

S102 단계에 이어서, 파라메터들의 설정 여부 판단에 따라 설정 요청이 있는 경우, 외부로부터 파라메터들의 수를 입력받아 저장하게 된다(S104).Subsequently, in step S102, when there is a setting request according to whether to set the parameters, the number of parameters is received and stored from the outside (S104).

설정 요청이 없는 경우, 기본적으로 기설정된 파라메터들의 디폴트값이 설정된다.If there is no setting request, a default value of preset parameters is set by default.

설정이 완료되면, 프로그램상에서 클러스터 분석 요청 여부를 판단하게 된다(S106).When the setting is completed, it is determined whether to request a cluster analysis on the program (S106).

클러스터 분석 요청에 의해 카메라로부터 획득된 연속된 프레임의 영상정보를 기초로 하여 클러스터를 생성하기 위한 절차를 진행하게 되는데, 먼저 클러스터 생성에 필요한 정보를 담고 있는 차영상을 산출하기 위하여 필요한 배경영상을 생성시킨다(S108).A procedure for generating a cluster is performed based on image information of consecutive frames obtained from a camera by a cluster analysis request. First, a background image necessary for calculating a difference image containing information necessary for cluster generation is generated. (S108).

이 배경영상은 연속적으로 누적된 프레임의 영상정보를 바탕으로 생성되는데, 아래와 같은 수학식 1에 의해 생성되는 것이 바람직하다.The background image is generated based on image information of continuously accumulated frames, and is preferably generated by Equation 1 below.

Figure pat00001
Figure pat00001

여기서, BI는 배경영상, CI는 현재 영상, n은 현재 누적 프레임 수, k는 누적 목표 프레임 수, x,y는 픽셀 좌표수를 의미한다.Here, BI is a background image, CI is a current image, n is a current cumulative frame number, k is a cumulative target frame number, and x and y are pixel coordinate numbers.

상기 수학식 1과 같이 계산되는 배경영상은 누적된 프레임의 영상정보의 평균값이 되며, 결과적으로 다수의 프레임으로부터 변화하는 이동체의 픽셀은 희미하게 되고, 이와 달리 고정된 물체들은 유효하게 남아 배경영상이 되는 것이다.The background image calculated as in Equation 1 becomes an average value of the image information of the accumulated frames, and as a result, the pixels of the moving object that are changed from the plurality of frames become faint. In contrast, the fixed objects remain valid and the background image remains effective. Will be.

이제, 다음 수학식 2의 계산으로 생성된 현재 입력되는 영상정보(CI(x,y))와 배경영상(BI(x,y))의 차인 차영상(DI(x,y))을 산출하게 된다(S110).Now, the difference image DI (x, y), which is a difference between the currently input image information CI (x, y) and the background image BI (x, y) generated by the calculation of Equation 2, is calculated. It becomes (S110).

Figure pat00002
Figure pat00002

산출된 차영상은 다음의 수학식 3에 따른 계산으로 이진화 처리된다.The calculated difference image is binarized by a calculation according to Equation 3 below.

Figure pat00003
Figure pat00003

Figure pat00004
는 이진화 처리된 차영상이고, F(x,y,j)와 F(x,y,k)는 각각 배경영상과 입력되는 영상정보가 되며,
Figure pat00005
는 이진화 임계값이다.
Figure pat00004
Are binarized difference images, F (x, y, j) and F (x, y, k) are background images and input image information, respectively.
Figure pat00005
Is the binarization threshold.

이진화 처리 과정에서 이진화 임계값의 크기에 따라 잡영(노이즈)이 발생하는데, 이러한 잡영을 필터링하기 위해서 팽창 연산(dilation)을 수행한다(S112).In the binarization process, miscellaneous noise occurs according to the magnitude of the binarization threshold, and an expansion operation is performed to filter out the miscellaneous noise (S112).

도 2에서 배경영상(B), 현재 입력되는 영상정보(I) 및 두 영상의 차에 의해 산출된 후, 이진화 처리되고, 팽창 연산에 의해 잡영 필터링된 차영상(D)의 일 실시예를 도시하고 있다. 도 2에 도시된 바와 같이, 차영상(D)은 움직이는 이동체를 판단하는 유효 픽셀(흰색 영역)에 대한 정보를 갖는다.FIG. 2 illustrates an embodiment of the difference image D, which is calculated by the background image B, the currently input image information I, and the difference between the two images, and then binarized, and filtered by the expansion operation. Doing. As shown in FIG. 2, the difference image D has information about an effective pixel (white area) for determining a moving object.

이제, 유효 픽셀로부터 클러스터를 생성하기 위해 클러스터링 과정을 거치게 된다(S114). 본 발명의 실시예에서 이용된 클러스터링 기법은 ART2 알고리즘을 기초로 하여 수행되며, 맨하탄 거리(Manhattan distance)를 이용하여 가장 가까운 거리에 있는 픽셀간의 성분을 연결하여 클러스터를 생성하도록 구성하였다.Now, a clustering process is performed to generate a cluster from valid pixels (S114). The clustering technique used in the embodiment of the present invention is performed based on the ART2 algorithm, and is configured to generate clusters by connecting components between pixels at the closest distance by using Manhattan distance.

클러스터링 과정을 통하여 클러스터가 생성되면, 미리 설정된 그리드의 분할 영역별로 클러스터의 수를 카운팅하게 된다(S116).When the cluster is generated through the clustering process, the number of clusters is counted for each partition region of the preset grid (S116).

카운팅 결과에 따라 영역별로 클러스터가 가장 많은 수의 영역을 판단할 수 있고, 이 영역이 이동체가 가장 밀집된 영역으로 판단될 수 있다.According to the counting result, the cluster can determine the largest number of regions for each region, and this region can be determined as the region where the moving object is the most dense.

도 5에 그리드 영역별 클러스터의 수를 카운팅한 결과를 보인 도면을 도시하고 있다.FIG. 5 is a diagram showing a result of counting the number of clusters for each grid area.

도 6은 파라메터 설정 및 클러스터 분석을 위해 마련된 프로그램 화면 일부를 보인 도면이다. 도 6의 파라메터 설정에 대한 부분(도 6의 빨간색 테두리 영역)에 도시되어 있는 바와 같이, 앞서 설명한 파라메터들을 설정하게 된다. 본 발명의 실시예에서 프로그램 개발 환경은 Visual Studio .NET 2005 C++를 사용하였다. 또한 카메라로부터 실시간으로 영상정보를 획득하여 재생하기 위하여 Open CV 라이브러리를 참조하고, 네트워크 카메라용 SDK 및 MPEG4/H.264용 디코더도 마련된다. 6 is a diagram illustrating a part of a program screen prepared for parameter setting and cluster analysis. As shown in the part of the parameter setting of FIG. 6 (the red border area of FIG. 6), the above-described parameters are set. In the embodiment of the present invention, the program development environment used Visual Studio .NET 2005 C ++. In addition, the Open CV library is referred to to acquire and reproduce video information from a camera in real time. A SDK for a network camera and a decoder for MPEG4 / H.264 are also provided.

파라메터들에 대해 좀 더 구체적으로 설명하면, x,y축 좌표의 그리드 분할 영역(x,y-axis grid number) 설정값은 x,y축 방향으로 화면을 분할할 수를 결정한다. In more detail about the parameters, the x, y-axis grid number setting value of the x and y axis coordinates determines the number of screens to be divided in the x and y axis directions.

이진화 임계값(binarization threshold)은 그 값이 작아지면 더 많은 영역을 유효 픽셀(도 2의 흰색 영역)로 나타낼 수 있으나, 잡영 발생이 빈번하게 발생하게 되며, 값이 커지면 잡영 발생은 적어질 수 있으나, 많은 유효 픽셀 영역에 대한 정보가 소실될 수 있다. The binarization threshold may indicate more areas as effective pixels (white areas in FIG. 2) when the value is smaller, but blemishes frequently occur, and when the value is larger, blemishes may be less. As a result, information about many effective pixel areas may be lost.

또한, 잡영 임계값(noise threshold)은 값이 작으면 크기가 작은 클러스터를 잡영으로 간주하게 되고, 값이 커지면 더 큰 크기의 클러스터도 잡영으로 간주될 수 있다. In addition, the noise threshold is regarded as a small cluster of small size if the value is small, the larger size of the cluster may be considered as a small volume.

클러스터링 임계값(clustering threshold)은 클러스터링 수행시 임계값보다 작은 거리에 있는 유효 픽셀의 윤곽선들만을 클러스터링하게 되며, 값이 커질수록 더 넓은 영역을 하나의 클러스터로 만든다.The clustering threshold clusters only the contours of the effective pixels at a distance smaller than the threshold value when performing clustering, and the larger the value, the larger the area becomes as a cluster.

도 3에서 영상정보를 기초로 그리드 영역을 분할하는 과정을 보인 바와 같이, 그리드 분할 영역의 설정값에 따라 그리드의 영역을 분할하는데, x축 방향으로 m만큼, y축 방향으로 n만큼 분할하면, m*n(가로*세로)으로 분할할 수 있다. 특히 이때, 바닥면을 기준으로 실제 이동 로봇의 이동이 불가능한 영역에 대해서는 클러스터 분석을 수행할 필요가 없으므로, 분할된 전체 영역 중에서 외부 입력에 의해 무효 영역(도 6의 disable 영역)으로 설정하는 것이 바람직하다.As shown in FIG. 3, the grid area is divided based on the image information. The grid area is divided according to the setting value of the grid partition area. When the grid area is divided by m in the x-axis direction and n in the y-axis direction, You can divide by m * n (horizontal * vertical). In particular, in this case, it is not necessary to perform cluster analysis on the area where the actual mobile robot cannot move based on the floor surface, and therefore, it is preferable to set the invalid area (disable area of FIG. 6) by external input among the divided whole areas. Do.

도 4a는 영상정보의 원근에 따른 가중치 설정에 의해 클러스터에 적용되는 과정과, 설정된 중심점에 대한 개념을 도시한 도면이며, 도 4b는 그리드 영역별 클러스터의 중심점이 적용된 장소의 일 실시예를 보인 도면이다.4A is a diagram illustrating a process applied to a cluster by setting weights according to perspectives of image information, and a concept of a set center point. FIG. 4B is a view illustrating an embodiment of a place where a center point of a cluster for each grid area is applied. to be.

원근에 따른 가중치는 도 4a에서 보인 바와 같이, Y축 상 다른 좌표값에 해당하는 클러스터 간에 거리차가 발생하므로, 이를 클러스터에 반영하기 위해 설정된다. 나아가, 본 발명의 실시예에서 클러스터의 형태는 클러스터의 중앙(center)에서 x축 반경보다 y축 반경이 크도록 타원 형태가 되도록 구성된다. 이는 이동체에 해당하는 사람의 형상을 그대로 반영하여 좀 더 정확한 이동체의 위치를 판단하도록 클러스터를 생성하기 위해서 구성되는 것이다. 이제, 가중치의 증감에 따라서 타원 형태의 클러스터의 반경이 작거나 크게 적용되도록 한다. As shown in FIG. 4A, the weight according to the perspective is set to reflect the difference in the cluster since a distance difference occurs between clusters corresponding to different coordinate values on the Y axis. Further, in the embodiment of the present invention, the shape of the cluster is configured to be an ellipse shape so that the y axis radius is larger than the x axis radius at the center of the cluster. This is configured to generate a cluster to determine a more accurate position of the moving object by reflecting the shape of the person corresponding to the moving object. Now, the radius of the elliptic cluster is small or large according to the increase or decrease of the weight.

중심점 설정값은 클러스터의 중심점을 설정하는 값으로서, 이 중심점은 이후에 생성되는 클러스터의 수를 이 중심점을 기준으로 카운팅하기 위해서 요구되며, 정확한 수를 카운팅하기 위해서 도 4a에 도시된 바와 같이, 클러스터의 하단부를 중심점으로 선택하는 것이 바람직하다. 이러한 설정된 중심점을 실시한 예가 도 4b에 도시되어 있다.The center point setting is a value that sets the center point of the cluster, which is required for counting the number of clusters generated later based on this center point, and as shown in FIG. 4A to count the correct number, It is preferable to select the lower end of the as a center point. An example of such a set center point is shown in FIG. 4B.

한편, 외부(바람직하게는, 이동 로봇)로부터 요청에 의해 생성되는 클러스터 정보를 외부에서 전송받을 수 있다(S118, S120, S122).On the other hand, it is possible to receive the cluster information generated by the request from the outside (preferably, a mobile robot) from the outside (S118, S120, S122).

외부의 이동 로봇은 전송받은 클러스터 정보를 기초로 이동할 위치수를 판단하고, 판단 결과에 따라 해당 위치로 이동한다(S124, S126).The external mobile robot determines the number of positions to move based on the received cluster information, and moves to the corresponding position according to the determination result (S124, S126).

클러스터 정보는 앞서 카운팅 결과에 따라 그리드의 영역별 클러스터 수가 가장 많은 영역에 대한 정보를 적어도 담고 있다. 나아가, 클러스터 정보는 모든 영역별 클러스터 수에 대한 정보 즉, 적어도 하나의 클러스터 수를 갖는 영역들과, 해당 영역별 클러스터 수를 포함할 수도 있다.The cluster information includes at least information on the region having the largest number of clusters for each region of the grid according to the counting result. In addition, the cluster information may include information on the number of clusters of all regions, that is, regions having at least one cluster number, and the number of clusters of corresponding regions.

또한, 현재 분석된 영상정보에 대한 클러스터 수에 대한 정보이외에도 이동 로봇의 요청에 따라 일정구간 누적된 프레임의 영상정보를 기초로 그리드 영역별 클러스터 수를 계산하여 적어도 하나의 클러스터 수를 갖는 영역들과 해당 영역별 클러스터 수를 포함할 수도 있다.In addition to the information on the number of clusters for the currently analyzed image information, the regions having at least one cluster number may be calculated by calculating the number of clusters for each grid region based on the image information of frames accumulated in a certain section at the request of the mobile robot. It may also include the number of clusters per region.

즉, 외부에서 클러스터 정보 생성 요청시, 상황에 따라 어떠한 정보(현재 입력 영상에 대한 클러스터 영역/수에 대한 정보 또는 일정 구간 누적된 프레임의 영상에 대한 클러스터 영역/수에 대한 정보)를 포함시킬지를 판단하고, 이를 클러스터 분석 시스템에 요청하게 된다. 클러스터 분석 시스템은 요청에 따라 계산된 그리드 영역별 클러스터 수에 대한 정보를 포함한 클러스터 정보를 생성하여 외부로 전송하는 것이다.That is, when the cluster information generation request is made from outside, what information (information on the cluster area / number of the current input image or the cluster area / number of the image of a frame accumulated for a certain period) is included depending on the situation. The decision is made, and a request is made to the cluster analysis system. The cluster analysis system generates cluster information including information on the number of clusters for each grid area calculated on request and transmits the information to the outside.

클러스터 분석 시스템에서 생성되는 클러스터 정보는 유무선 통신망에서 활용 가능한 XML(extensible markup language) 형태로 변환되어 생성되는 것이 바람직하다.The cluster information generated in the cluster analysis system is preferably converted into an XML (extensible markup language) format that can be used in a wired / wireless communication network.

도 7에 클러스터 정보를 담고 있는 XML 소스 화면을 보이고 있다.7 shows an XML source screen containing cluster information.

도 7을 참조하여 설명하면, 클러스터 정보(도 7의 response 부분, S)는 적어도 하나의 클러스터 수를 갖는 그리드 영역에 대한 좌표값(도 7의 position 부분, P1, P2)과 해당 영역의 클러스터 수(도 7의 value 부분, V1, V2)를 기본적으로 포함하며, 부가적으로 외부의 요청정보(도 7의 R 부분)에 포함된 모드정보(mode 부분, R1)와, 다수의 카메라 중 획득되는 영상정보를 전송한 해당 카메라(101 또는 102)의 식별정보(camid 부분, R2)도 포함한다. 나아가, 외부로부터의 요청정보에 따라서는 생성된 클러스터 정보(F)에 어떠한 좌표값이나 클러스터 수가 포함되지 않을 수도 있다.Referring to FIG. 7, cluster information (response part S of FIG. 7) may include coordinate values (position parts P1 and P2 of FIG. 7) for a grid area having at least one cluster number and the number of clusters of the corresponding area. (Value portion, V1, and V2 of FIG. 7) is basically included, and additionally, mode information (mode portion, R1) included in external request information (R portion of FIG. 7) and obtained from a plurality of cameras. It also includes identification information (camid portion, R2) of the camera 101 or 102 that transmitted the image information. Furthermore, depending on the request information from the outside, the generated cluster information F may not include any coordinate values or the number of clusters.

요청정보(R)에는 모드정보(R2)가 포함되는데, 본 발명의 실시예에서는 4가지 모드값(0,1,2,3)을 갖는다. 예컨데, mode 0은 현재 입력 영상정보를 기초로 클러스터 수가 적어도 하나 이상인 영역의 좌표값과 클러스터 수를 모두 포함한 클러스터 정보 요청이며, mode 1은 현재 입력 영상정보(가장 최근의 프레임 영상정보)를 기초로 클러스터 수가 가장 많은 영역의 좌표값과 클러스터 수를 포함한 클러스터 정보 요청이다. The request information R includes the mode information R2. In the embodiment of the present invention, the request information R has four mode values (0, 1, 2, 3). For example, mode 0 is a cluster information request including both a coordinate value and cluster number of an area having at least one cluster based on the current input image information, and mode 1 is based on the current input image information (the most recent frame image information). This is a request for cluster information including the coordinates and the number of clusters in the region with the largest number of clusters.

또한, mode 2는 일정 구간 누적된 프레임의 영상정보를 기초로 클러스터 수가 적어도 하나 이상인 영역의 좌표값과 클러스터 수를 모두 포함한 클러스터 정보 요청이며, mode 3은 일정 구간 누적된 프레임의 영상정보를 기초로 클러스터 수가 가장 많은 영역의 좌표값과 클러스터 수를 포함한 클러스터 정보 요청이 될 수 있다.In addition, mode 2 is a request for cluster information including both the coordinate value and the number of clusters of a region having at least one cluster based on image information of frames accumulated in a certain section, and mode 3 is based on image information of frames accumulated in a certain section. It may be a request for cluster information including coordinates and the number of clusters in the region with the largest number of clusters.

나아가, mode 0 및 mode 1에 대해서 도 5를 참조하여 보다 구체적인 예를 들어 설명하면, 현재 입력 영상정보(가장 최근 프레임의 영상정보)가 도 5와 같다고 하면, mode 0인 경우, 생성되는 클러스터 정보에는 적어도 하나의 수를 갖는 그리드 영역(좌표값, 도 5의 A2, A4, B2, B4, C4, D4, E4)과, 해당 영역별 클러스터 값(4(A2 영역),2(A4 영역),2(B2 영역),2(B4 영역),4(C4 영역),3(D4 영역),1(E4 영역)을 포함한다. 또한, mode 1인 경우, 생성되는 클러스터 정보에는 가장 많은 클러스터 수를 갖는 그리드 영역(도 5의 A2)과, 해당 영역의 클러스터 수(4(A2 영역))만을 포함하게 된다.In addition, mode 0 and mode 1 will be described in more detail with reference to FIG. 5. If the current input image information (the image information of the most recent frame) is the same as that of FIG. 5, in the case of mode 0, cluster information is generated. The grid region (coordinate value, A2, A4, B2, B4, C4, D4, E4) of at least one number includes the cluster values (4 (A2 region), 2 (A4 region), 2 (B2 area), 2 (B4 area), 4 (C4 area), 3 (D4 area), and 1 (E4 area) In addition, in mode 1, the cluster information generated includes the largest number of clusters. Only the grid area (A2 in Fig. 5) and the number of clusters (4 (A2 area)) of the area are included.

도 8은 본 발명의 일 실시예에 따른 차영상을 이용한 클러스터 분석 시스템의 블록도이다.8 is a block diagram of a cluster analysis system using difference images according to an embodiment of the present invention.

도 8을 참조하여 본 발명의 차영상을 이용한 클러스터 분석 시스템은 다수의 카메라(100), 유무선 통신망(200), 클러스터분석시스템(300), 이동 로봇(400)을 포함할 수 있다.Referring to FIG. 8, the cluster analysis system using the difference image of the present invention may include a plurality of cameras 100, a wired / wireless communication network 200, a cluster analysis system 300, and a mobile robot 400.

다수의 카메라(100)는 촬영이 용이한 적소에 각각 설치되어, 영상정보를 획득한다.The plurality of cameras 100 are respectively installed in easy-to-shoot locations to obtain image information.

이 카메라는 촬영된 영상정보를 유무선 통신망을 통하여 클러스터 분석 시스템(300)에 전송가능한 네트워크 카메라이며, 물론 IP 카메라도 될 수 있다.The camera is a network camera capable of transmitting the captured image information to the cluster analysis system 300 through a wired or wireless communication network, and may also be an IP camera.

유무선 통신망(200)은 종래의 유무선 인터넷 체계를 기반으로 한 것으로 본 발명의 목적에 부합하지 않는 설명은 생략하기로 한다.The wired / wireless communication network 200 is based on a conventional wired / wireless internet system, and descriptions that do not correspond to the object of the present invention will be omitted.

클러스터 분석 시스템(300)는 다수의 카메라(100)로부터 영상정보를 전송받아 영상정보의 적어도 하나의 누적된 프레임을 기초로 배경영상을 생성하고, 이 영상정보와 배경영상의 차에 의해 차영상을 생성한다. 또한, 차영상의 이진화 처리 및 잡영 필터링을 거쳐, 이동체의 위치를 판단하고, 판단된 위치의 유효 픽셀로부터 클러스터링 기법을 이용하여 클러스터를 생성하고, 미리 설정된 그리드의 영역별로 클러스터 수를 카운팅한다. 나아가, 유무선 통신망(200)에 연결된 이동 로봇으로부터 요청받아 그리드 영역 중 가장 많은 수의 클러스터를 포함하는 영역에 대한 정보를 적어도 포함하는 XML 형식의 클러스터 정보를 생성한다. 생성된 클러스터 정보는 이동 로봇에 전송된다.The cluster analysis system 300 receives image information from a plurality of cameras 100 and generates a background image based on at least one accumulated frame of the image information, and generates a difference image by the difference between the image information and the background image. Create In addition, through the binarization processing and the noise filtering of the difference image, the position of the moving object is determined, a cluster is generated from the effective pixels of the determined position using a clustering technique, and the number of clusters is counted for each region of a preset grid. Furthermore, by receiving a request from a mobile robot connected to the wired / wireless communication network 200, the cluster information of the XML format including at least information on an area including the largest number of clusters in the grid area is generated. The generated cluster information is transmitted to the mobile robot.

이동 로봇(400)은 유무선 통신망(200)으로 통하여 클러스터 분석 시스템(300)에 클러스터 정보 생성을 요청하고, 요청에 따라 생성된 클러스터 정보를 전송받는다.The mobile robot 400 requests cluster information generation from the cluster analysis system 300 through the wired / wireless communication network 200 and receives cluster information generated according to the request.

이때, 요청되는 정보는 클러스터 정보 생성시 가장 최근의 프레임 또는 일정 구간의 누적된 프레임에 해당하는 영상정보를 기초로 누적된 프레임의 그리드 영역별 클러스터 수를 포함하는 클러스터 정보 생성을 요청하게 된다. In this case, the requested information requests to generate cluster information including the number of clusters for each grid region of the accumulated frames based on the image information corresponding to the most recent frame or the accumulated frames of a predetermined period when generating cluster information.

도 9는 다른 실시예에 따른 클러스터 분석 시스템의 블록도이며, 유무선 통신망(200), 클러스터 분석 시스템(300), 카메라 모듈(410)이 내장된 이동 로봇(400)으로 구성된다.9 is a block diagram of a cluster analysis system according to another embodiment, and includes a mobile robot 400 in which a wired / wireless communication network 200, a cluster analysis system 300, and a camera module 410 are embedded.

유무선 통신망(200), 클러스터 분석 시스템(300)은 도 8를 참조하여 전술한 기능과 동일한 기능을 수행한다.The wired / wireless communication network 200 and the cluster analysis system 300 perform the same functions as the functions described above with reference to FIG. 8.

이동 로봇(400)은 영상정보를 획득하는 카메라 모듈(410)을 내장하며, 또한, 획득된 영상정보를 유무선 통신망(200)을 통하여 클러스터 분석 시스템(300)에 전송한다. 나아가, 클러스터 정보 생성 요청에 따라 클러스터 분석 시스템(300)으로부터 해당하는 클러스터 정보를 전송받아 이동할 위치수를 판단하고, 판단 결과 해당 위치로 이동하는 기능도 수행한다.The mobile robot 400 has a camera module 410 for acquiring image information, and transmits the acquired image information to the cluster analysis system 300 through the wired / wireless communication network 200. Furthermore, in response to the cluster information generation request, the cluster analysis system 300 determines the number of positions to be moved by receiving the corresponding cluster information, and as a result, moves to the corresponding position.

도 10은 또 다른 실시예에 따른 클러스터 분석 시스템의 블록도이며, 도 10을 참조하여 상세하게 설명하면, 클러스터 분석 시스템(300)은 카메라부(301), 입력영상획득부(310), 배경영상생성부(320), 차영상산출부(330), 이진화및노이즈처리부(340), 클러스터산출부(350), 파라메터설정부(360), 클러스터수카운터(370), 클러스터정보생성부(380), 이동제어부(390)를 포함하는 카메라 및 이동 로봇 일체형 시스템이다.10 is a block diagram of a cluster analysis system according to another exemplary embodiment. Referring to FIG. 10, the cluster analysis system 300 includes a camera unit 301, an input image acquisition unit 310, and a background image. Generation unit 320, difference image calculation unit 330, binarization and noise processing unit 340, cluster calculation unit 350, parameter setting unit 360, cluster number counter 370, cluster information generation unit 380 The camera and the mobile robot integrated system including a movement control unit 390.

카메라부(301)는 외부 촬영에 의해 영상정보를 획득한다. The camera unit 301 obtains image information by external shooting.

입력영상획득부(310)는 카메라부(301)로부터 영상정보를 전송받아 재생 가능한 포맷으로 디코딩한다.The input image acquisition unit 310 receives the image information from the camera unit 301 and decodes it into a format that can be reproduced.

배경영상생성부(320)는 입력영상획득부(310)의 영상정보를 기초로 적어도 하나의 누적된 프레임의 평균수를 배경영상으로 생성한다. 외부로부터 미리 누적되는 프레임의 설정값(구간)을 입력받을 수 있다.The background image generator 320 generates the average number of at least one accumulated frame as a background image based on the image information of the input image acquisition unit 310. The set value (section) of frames accumulated in advance may be input from the outside.

차영상산출부(330)는 영상정보와 배경영상의 차에 의해 차영상을 산출한다. The difference image calculation unit 330 calculates a difference image based on a difference between the image information and the background image.

이진화및노이즈처리부(340)는 산출된 차영상을 이진화 처리하고, 잡영을 필터링한다. The binarization and noise processing unit 340 binarizes the calculated difference image and filters the noise.

클러스터산출부(350)는 이진화 처리 및 잡영 필터링된 정보(차영상)로부터 이동체로 판단된 유효 픽셀의 영역에서 ART2알고리즘에 기초한 클러스터링 기법을 이용하여 클러스터를 생성한다.The cluster calculation unit 350 generates a cluster using a clustering technique based on the ART2 algorithm in the region of the effective pixel determined as the moving object from the binarization processing and the noise filtering information (differential image).

파라메터설정부(360)는 영상정보의 프레임을 기초로 평면상의 m*n으로 영역이 분할되는 그리드를 설정하되, 분할된 그리드의 다수 영역에서 바닥면을 기준으로 이동체의 이동 불가능 영역에 대해서 무효 영역으로 설정한다. 또한, 이동체의 위치 판단을 위한 유효 픽셀 영역을 결정하는 이진화 임계값, 클러스터의 영역을 결정하는 클러스터링 임계값 및 팽창 연산(dilation)에 의한 잡영 필터링 영역을 결정하는 잡영 임계수를 설정한다. 또한, 앞서 설정된 그리드의 유효 영역별 클러스터의 수를 계산하기 위해 클러스터의 하단부를 중심점으로 설정하고, 영상정보의 프레임을 기초로 설정된 그리드의 Y축 상 좌표별 원근에 따른 가중치를 설정한다.The parameter setting unit 360 sets a grid in which an area is divided into m * n on a plane based on a frame of image information, but an invalid area for a non-movable area of a moving object based on a floor in multiple areas of the divided grid. Set to. In addition, a binarization threshold value for determining an effective pixel area for determining a position of the moving object, a clustering threshold value for determining an area of a cluster, and a buzzing threshold number for determining a bloc filtering area by dilation calculation are set. In addition, in order to calculate the number of clusters by the effective area of the grid, the lower end of the cluster is set as the center point, and the weight according to the perspective for each coordinate on the Y axis of the grid is set based on the frame of the image information.

클러스터수카운터(370)는 앞서 산출된 클러스터의 수를 미리 설정된 그리드의 영역별로 카운팅한다.The cluster number counter 370 counts the number of previously calculated clusters for each region of a preset grid.

클러스터정보생성부(380)는 카운팅 결과에 따라 이동체가 가장 많은 수의 그리드 영역에 대한 정보를 적어도 포함하는 클러스터 정보를 생성한다.The cluster information generation unit 380 generates cluster information including at least information about the grid area of the largest number of moving objects according to the counting result.

이동제어부(390)는 생성된 클러스터 정보를 기초로 이동할 위치수를 판단하고, 해당 위치로 이동하도록 제어하게 된다.The movement controller 390 determines the number of positions to move based on the generated cluster information, and controls to move to the corresponding position.

이상 첨부된 도면을 참조하여 본 발명의 실시 예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며, 한정적이 아닌 것으로 이해해야 한다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive.

100: 카메라 101: 카메라 1
102: 카메라 n 200: 유무선 통신망
300: 클러스터 분석 시스템 301: 카메라부
310: 입력영상획득부 320: 배경영상생성부
330: 차영상산출부 340: 이진화및노이즈처리부
350: 클러스터산출부 360: 파라메터설정부
370: 클러스터수카운터 380: 클러스터정보생성부
390: 이동제어부 400: 이동 로봇
410: 카메라모듈
100: camera 101: camera 1
102: camera n 200: wired and wireless communication network
300: cluster analysis system 301: camera unit
310: input image acquisition unit 320: background image generation unit
330: difference image calculation unit 340: binarization and noise processing unit
350: cluster calculation unit 360: parameter setting unit
370: cluster number counter 380: cluster information generation unit
390: movement control unit 400: mobile robot
410: camera module

Claims (13)

(a) 카메라로부터 영상정보를 입력받는 단계;
(b) 클러스터 분석 시스템은 상기 영상정보를 전송받아 이전 프레임과 현재 프레임의 차에 의해 차영상을 산출하는 단계;
(c) 상기 차영상을 이진화 처리 및 잡영 필터링을 하고, 이진화 처리 및 잡영 필터링된 정보로부터 움직임이 있는 영역 판단에 의해 이동체의 위치를 판단하는 단계;
(d) 상기 판단된 적어도 하나의 이동체 위치에 해당하는 유효 픽셀로부터 클러스터링 기법을 이용하여 클러스터를 생성하는 단계; 및
(e) 상기 영상정보를 미리 설정된 분할수의 그리드로 분할하고, 분할된 영역별로 클러스터의 수를 카운팅하는 단계;
를 포함하는 차영상을 이용한 클러스터 분석 방법.
(a) receiving image information from a camera;
(b) the cluster analysis system receiving the image information and calculating a difference image based on a difference between a previous frame and a current frame;
(c) binarizing and distilling the difference image, and determining a position of the moving object by determining a region of motion from the binarization processing and the distillation filtering information;
(d) generating a cluster using a clustering technique from valid pixels corresponding to the determined at least one moving object position; And
(e) dividing the image information into a grid having a preset number of divisions, and counting the number of clusters for each divided region;
Cluster analysis method using a difference image comprising a.
청구항 1에 있어서, 상기 (b) 단계는
(b-1) 상기 클러스터 분석 시스템은 배경영상 생성 요청 여부를 판단하는 단계;
(b-2) 상기 판단 결과에 따라 적어도 하나의 프레임의 상기 영상정보를 기초로 배경영상을 생성하는 단계; 및
(b-3) 상기 배경영상과 현재 입력되는 영상정보의 차에 의해 차영상을 산출하는 단계;
를 포함하는 차영상을 이용한 클러스터 분석 방법.
The method according to claim 1, wherein step (b)
(b-1) determining, by the cluster analysis system, whether to generate a background image;
(b-2) generating a background image based on the image information of at least one frame according to the determination result; And
(b-3) calculating a difference image based on a difference between the background image and currently input image information;
Cluster analysis method using a difference image comprising a.
청구항 2에 있어서, 상기 (b-2) 단계는
(b-2-가) 상기 영상정보로부터 일정 구간 누적을 위한 프레임 누적수를 설정하는 단계; 및
(b-2-나) 상기 설정된 프레임 누적수를 근거로 상기 영상정보를 프레임 단위로 누적하여 누적된 구간의 평균수를 산출하여 배경영상을 생성하는 단계;
를 포함하는 차영상을 이용한 클러스터 분석 방법.
The method according to claim 2, wherein step (b-2)
(b-2-a) setting a cumulative number of frames for accumulating a predetermined period from the image information; And
(b-2-b) generating a background image by calculating the average number of accumulated sections by accumulating the image information in units of frames based on the set number of frames;
Cluster analysis method using a difference image comprising a.
청구항 1에 있어서, 상기 (b) 단계 이전에
(a-1) 상기 영상정보의 프레임을 기초로 평면상의 m*n으로 영역이 분할되는 그리드를 설정하되, 상기 분할된 그리드의 다수 영역에서 바닥면을 기준으로 이동체의 이동 불가능 영역에 대해서 무효 영역으로 설정하는 단계;
(a-2) 이동체의 위치 판단을 위한 유효 픽셀 영역을 결정하는 이진화 임계값, 클러스터의 영역을 결정하는 클러스터링 임계값, 팽창 연산(dilation)에 의한 잡영 필터링 영역을 결정하는 잡영 임계수를 설정하는 단계;
(a-3) 상기 설정된 그리드의 영역별 클러스터의 수를 계산하기 위해 클러스터의 하단부를 중심점으로 설정하는 단계; 및
(a-4) 상기 영상정보의 프레임을 기초로 상기 설정된 그리드의 Y축 상 좌표별 원근에 따른 가중치를 설정하는 단계;
를 더 포함하는 차영상을 이용한 클러스터 분석 방법.
The method according to claim 1, before step (b)
(a-1) A grid in which an area is divided into m * n on a plane is set on the basis of the frame of the image information, and an invalid area for a non-movable area of a moving object based on a bottom surface in a plurality of areas of the divided grids. Setting to;
(a-2) setting a binarization threshold value for determining an effective pixel area for determining a position of a moving object, a clustering threshold value for determining an area of a cluster, and a noise threshold number for determining a noise filtering area by dilation; ;
(a-3) setting a lower end of the cluster as a center point to calculate the number of clusters for each area of the set grid; And
(a-4) setting weights according to perspectives of coordinates on the Y-axis of the set grid based on the frames of the image information;
Cluster analysis method using a difference image further comprising.
청구항 1에 있어서,
(f) 외부로부터 요청받아 상기 클러스터 분석 시스템은 상기 카운팅 결과에 따라 클러스터가 가장 많은 수의 그리드 영역에 대한 정보를 적어도 포함하는 클러스터 정보를 생성하는 단계; 및
(g) 상기 클러스터 정보를 요청된 외부에 전송하는 단계;
를 더 포함하는 차영상을 이용한 클러스터 분석 방법.
The method according to claim 1,
(f) receiving a request from the outside, the cluster analysis system generating cluster information including at least information on the largest number of grid areas in the cluster according to the counting result; And
(g) transmitting the cluster information to the requested outside;
Cluster analysis method using a difference image further comprising.
청구항 5에 있어서, 상기 (f) 단계는
(f-1) 외부로부터 상기 클러스터 정보 요청에 따라 상기 클러스터 분석 시스템은, 가장 최근의 프레임 또는 일정 구간의 누적된 프레임의 영상정보를 설정받는 단계;
(f-2) 상기 클러스터 분석 시스템은, 상기 설정에 따라 가장 최근의 프레임 또는 일정 구간의 누적된 프레임에 해당하는 영상정보를 기초로 클러스터를 분석하는 단계; 및
(f-3) 외부로부터 누적된 프레임의 그리드 영역별 클러스터 수를 포함하는 클러스터 정보 생성을 요청하는 단계;
를 포함하는 차영상을 이용한 클러스터 분석 방법.
The method of claim 5, wherein step (f)
(f-1) in response to the cluster information request from the outside, the cluster analysis system comprising: receiving image information of a most recent frame or a frame accumulated in a predetermined period;
(f-2) the cluster analysis system, analyzing the cluster based on image information corresponding to a most recent frame or a accumulated frame of a predetermined period according to the setting; And
(f-3) requesting generation of cluster information including the number of clusters of grid regions of frames accumulated from the outside;
Cluster analysis method using a difference image comprising a.
영상정보를 획득하는 카메라부;
상기 카메라부로부터 상기 영상정보를 재생 가능한 포맷으로 디코딩하는 입력영상획득부;
상기 영상정보의 이전 프레임과 현재 프레임의 차에 의해 차영상을 산출하는 차영상산출부;
상기 차영상을 이진화 처리 및 잡영을 필터링하는 이진화및노이즈처리부;
상기 이진화 처리 및 잡영 필터링된 정보로부터 이동체로 판단된 유효 픽셀의 영역으로부터 클러스터를 생성하는 클러스터산출부; 및
상기 산출된 클러스터의 수를 미리 설정된 그리드의 영역별로 카운팅하는 클러스터수카운터;
를 포함하는 차영상을 이용한 클러스터 분석 시스템.
A camera unit obtaining image information;
An input image acquisition unit for decoding the image information from the camera unit into a format reproducible;
A difference image calculation unit configured to calculate a difference image based on a difference between a previous frame and a current frame of the image information;
A binarization and noise processor configured to binarize the difference image and filter noises;
A cluster calculation unit for generating a cluster from an area of the effective pixel determined as a moving object from the binarization processing and miscellaneous filtered information; And
A cluster number counter that counts the calculated number of clusters for each region of a preset grid;
Cluster analysis system using a difference image comprising a.
청구항 7에 있어서, 상기 시스템은,
상기 영상정보를 기초로 적어도 하나의 누적된 프레임의 평균수를 배경영상으로 생성하는 배경영상생성부;
상기 클러스터수카운터의 카운팅 결과에 따라 클러스터가 가장 많은 수의 그리드 영역과 해당 영역의 클러스터 값에 대한 정보를 적어도 포함하는 클러스터 정보를 생성하는 클러스터정보생성부; 및
상기 영상정보의 프레임을 기초로 평면상의 m*n으로 영역이 분할되는 그리드를 설정하되, 상기 분할된 그리드의 다수 영역에서 바닥면을 기준으로 이동체의 이동 불가능 영역에 대해서 무효 영역으로 설정하고, 이동체의 위치 판단을 위한 유효 픽셀 영역을 결정하는 이진화 임계값, 클러스터의 영역을 결정하는 클러스터링 임계값 및 팽창 연산(dilation)에 의한 잡영 필터링 영역을 결정하는 잡영 임계수를 설정하고, 상기 설정된 그리드의 유효 영역별 클러스터의 수를 계산하기 위해 클러스터의 하단부를 중심점으로 설정하고, 상기 영상정보의 프레임을 기초로 상기 설정된 그리드 영역의 Y축 상 좌표별 원근에 따른 가중치를 설정하는 파라메터설정부;를 더 포함하되,
상기 차영상산출부는, 상기 생성된 배경영상과 상기 영상정보의 차에 의해 차영상을 산출하는 차영상을 이용한 클러스터 분석 시스템.
The system of claim 7, wherein the system is
A background image generating unit generating an average number of at least one accumulated frame as a background image based on the image information;
A cluster information generation unit configured to generate cluster information including at least cluster information about the largest number of grid areas and cluster values of the corresponding area according to a counting result of the cluster number counter; And
A grid in which an area is divided into m * n on a plane is set on the basis of the frame of the image information, and in a plurality of areas of the divided grid, a non-movable area of the movable object is set as an invalid area based on a floor surface, Set a binarization threshold value for determining an effective pixel area for determining a location of a pixel, a clustering threshold value for determining an area of a cluster, and a noise threshold number for determining a noise filtering area by an expansion calculation, and an effective area of the set grid And a parameter setting unit for setting a lower end of the cluster as a center point to calculate the number of star clusters, and setting weights according to perspectives on the Y-axis of the set grid area based on the frame of the image information. ,
The difference image calculation unit is a cluster analysis system using a difference image to calculate a difference image by the difference between the generated background image and the image information.
청구항 8에 있어서, 상기 시스템은,
일정 구간의 누적된 프레임의 영상정보를 기초로 산출된 차영상으로부터 클러스터를 분석하여 해당 프레임의 기설정된 그리드 영역별 클러스터 수를 카운팅하고, 외부 요청에 따라 가장 최근의 프레임 또는 일정 구간의 누적된 프레임의 영상정보로부터 적어도 하나의 클러스터 수를 갖는 그리드 영역들과, 해당 영역별 클러스터 값에 대한 정보들 중에서 일부를 포함하는 클러스터 정보를 생성하여 요청된 외부에 전송하는 차영상을 이용한 클러스터 분석 시스템.
The system of claim 8, wherein the system is
Analyzing clusters from the difference image calculated based on the image information of the accumulated frames of a certain section and counting the number of clusters for each predetermined grid area of the corresponding frame, and accumulating the most recent frame or the accumulated frame of a certain section according to an external request. And cluster information including at least one cluster area from the image information of the cluster information, and cluster information including some of information on cluster values of the corresponding areas, and transmitting the cluster information to the outside.
청구항 7에 있어서,
유무선 통신망을 통하여 상기 클러스터 정보를 요청에 의해 전송받아 이동할 위치수를 판단하여 판단 결과에 따라 해당 위치로 이동 가능한 이동 로봇이 상기 시스템의 외부에 마련되는 차영상을 이용한 클러스터 분석 시스템.
The method according to claim 7,
And a mobile robot capable of moving to a corresponding position according to a determination result by determining the number of positions to be moved by receiving the cluster information by request through a wired / wireless communication network.
청구항 10에 있어서, 상기 이동 로봇은
상기 카메라부를 더 구비하여, 상기 영상정보를 획득하고, 획득된 영상정보를 상기 시스템에 전송하는 차영상을 이용한 클러스터 분석 시스템.
The method of claim 10, wherein the mobile robot
And a camera unit to acquire the image information and to transmit the obtained image information to the system.
청구항 7에 있어서, 상기 시스템은,
상기 클러스터 정보를 기초로 이동할 위치수를 판단하여 판단 결과에 따라 해당 위치로 이동 가능한 이동 로봇 일체형 시스템인 차영상을 이용한 클러스터 분석 시스템.
The system of claim 7, wherein the system is
The cluster analysis system using the difference image which is a mobile robot integrated system which can determine the number of positions to move based on the cluster information and move to a corresponding position according to the determination result.
청구항 7에 있어서, 상기 카메라부는,
상기 시스템의 외부에 마련되어 상기 시스템과 유무선 통신 가능한 네트워크 카메라 또는 IP 카메라인 차영상을 이용한 클러스터 분석 시스템.
The method of claim 7, wherein the camera unit,
Cluster analysis system using a difference image that is provided outside the system and the network camera or IP camera capable of wired and wireless communication with the system.
KR1020100029894A 2010-04-01 2010-04-01 Cluster Analysis Method using differential image and System thereof KR101180965B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100029894A KR101180965B1 (en) 2010-04-01 2010-04-01 Cluster Analysis Method using differential image and System thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100029894A KR101180965B1 (en) 2010-04-01 2010-04-01 Cluster Analysis Method using differential image and System thereof

Publications (2)

Publication Number Publication Date
KR20110110526A true KR20110110526A (en) 2011-10-07
KR101180965B1 KR101180965B1 (en) 2012-09-07

Family

ID=45027034

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100029894A KR101180965B1 (en) 2010-04-01 2010-04-01 Cluster Analysis Method using differential image and System thereof

Country Status (1)

Country Link
KR (1) KR101180965B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101430493B1 (en) * 2012-09-03 2014-08-14 엘지전자 주식회사 Electronics device and method of controlling video signal thereof
KR20170001020A (en) * 2015-06-25 2017-01-04 에스케이텔레콤 주식회사 Method and Apparatus for Detecting Entity Using Difference of Image
CN117894015A (en) * 2024-03-15 2024-04-16 浙江华是科技股份有限公司 Point cloud annotation data optimization method and system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101430493B1 (en) * 2012-09-03 2014-08-14 엘지전자 주식회사 Electronics device and method of controlling video signal thereof
KR20170001020A (en) * 2015-06-25 2017-01-04 에스케이텔레콤 주식회사 Method and Apparatus for Detecting Entity Using Difference of Image
CN117894015A (en) * 2024-03-15 2024-04-16 浙江华是科技股份有限公司 Point cloud annotation data optimization method and system
CN117894015B (en) * 2024-03-15 2024-05-24 浙江华是科技股份有限公司 Point cloud annotation data optimization method and system

Also Published As

Publication number Publication date
KR101180965B1 (en) 2012-09-07

Similar Documents

Publication Publication Date Title
US10070053B2 (en) Method and camera for determining an image adjustment parameter
JP6109185B2 (en) Control based on map
JP5073670B2 (en) Stereoscopic image display method and method and apparatus for generating three-dimensional image data from input of two-dimensional image data
KR101618814B1 (en) Method and Apparatus for Monitoring Video for Estimating Gradient of Single Object
KR101687530B1 (en) Control method in image capture system, control apparatus and a computer-readable storage medium
US10762649B2 (en) Methods and systems for providing selective disparity refinement
CN109949347B (en) Human body tracking method, device, system, electronic equipment and storage medium
JP2012118698A (en) Image processing system
JP6292122B2 (en) Object information extraction apparatus, object information extraction program, and object information extraction method
CN105631418A (en) People counting method and device
KR20160041441A (en) Method for detecting human-object using depth camera and device
TWI522967B (en) Method and apparatus for moving object detection based on cerebellar model articulation controller network
CN109191513B (en) Power equipment stereo matching method based on global optimization
JP5290227B2 (en) Object detection device and learning device thereof
CN111062918B (en) Abnormality detection method and device based on computer vision
JP2016206995A (en) Image processing apparatus, image processing method, and program
KR101180965B1 (en) Cluster Analysis Method using differential image and System thereof
KR101214858B1 (en) Moving object detecting apparatus and method using clustering
US20150180749A1 (en) Apparatus and method for mapping position information of virtual resources
KR102107137B1 (en) Method and Apparatus for Detecting Event by Using Pan-Tilt-Zoom Camera
KR20140045834A (en) Method and apparatus for monitoring video for estimating size of single object
CN111932584B (en) Method and device for determining moving object in image
CN105631419B (en) Face identification method and device
KR101556601B1 (en) Apparatus and method for building big data database of 3d volume images
JP7250433B2 (en) IMAGING DEVICE, CONTROL METHOD AND PROGRAM

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150902

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee