KR101089504B1 - Method and apparatus of clustering image and method and apparatus of recognizing image using the same - Google Patents
Method and apparatus of clustering image and method and apparatus of recognizing image using the same Download PDFInfo
- Publication number
- KR101089504B1 KR101089504B1 KR1020100059038A KR20100059038A KR101089504B1 KR 101089504 B1 KR101089504 B1 KR 101089504B1 KR 1020100059038 A KR1020100059038 A KR 1020100059038A KR 20100059038 A KR20100059038 A KR 20100059038A KR 101089504 B1 KR101089504 B1 KR 101089504B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- clustering
- face images
- graph
- images
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2132—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
- G06T7/41—Analysis of texture based on statistical description of texture
Abstract
Description
본 발명은 영상 인식에 관한 것으로, 보다 상세하게는 이미지 군집화 방법과 장치 및 이를 이용한 이미지 인식 방법과 장치에 관한 것이다.The present invention relates to image recognition, and more particularly, to an image clustering method and apparatus, and an image recognition method and apparatus using the same.
디지털 카메라 보급률의 증가와 웹 기반 소셜 네트워크 서비스의 대중화로 인하여 사용자 개인이 소유하는 이미지의 개수는 증가하고 있다. 대량의 사진을 검색하고 관리하는 기술이 요구되고 있으며, 웹 기반 소셜 네트워크 서비스에서는 대량의 이미지를 이미지에 등장한 인물들과 손 쉽게 공유해 줄 수 있는 방법을 필요로 한다. 이와 같은 필요에 의하여 등장한 인물 기반 사진 관리 시스템은 특정 인물이 포함된 사진을 검색하거나 사진에 등장한 인물들과 이미지를 공유해 주는 기능을 제공함으로써 기존의 이미지 관리 시스템을 개선하였다.The number of images owned by individual users is increasing due to the increase in digital camera penetration rate and popularization of web-based social network services. There is a demand for technology for searching and managing a large amount of photos, and web-based social network services need a method of easily sharing a large amount of images with the people in the images. Due to such needs, the person-based photo management system improved the existing image management system by providing a function of searching for a photo including a specific person or sharing an image with the people in the picture.
인물 기반 사진 관리 시스템은 각 이미지에 등장하는 인물의 정보를 필요로 하며, 이 정보를 식별 태그에 저장한다. 하나의 이미지에서 검출할 수 있는 수 개의 얼굴 이미지들에 인물의 이름과 같이 상기 얼굴 이미지들을 식별할 수 있는 식별 테그를 붙인다. 만약 어느 인물의 얼굴 이미지인지 알 수 없는 경우에는 별도의 식별태그를 붙여서 구별한다. 이와 같이 하나의 이미지에 어떤 인물이 등장하였는지를 상기 식별 태그를 통하여 저장하여 놓는다면, 이를 바탕으로 특정 인물이 포함된 사진을 검색하거나 사진에 포함된 인물들에게 공유할 수 있다. 그러나 모든 이미지에 사용자가 위와 같은 식별 태그를 붙이는 것은 너무 많은 노력과 시간이 소요되는 장애가 있다. 따라서 얼굴 검출 및 얼굴 인식 기술을 바탕으로 반자동으로 식별 태그를 붙이는 방식을 취하고 있다. The person-based photo management system needs the information of the person appearing in each image and stores this information in the identification tag. An identification tag for identifying the face images is attached to several face images that can be detected in one image, such as a person's name. If it is not known which person's face image, it is distinguished by attaching a separate identification tag. As described above, if a person is stored in the image through the identification tag, the user may search for a picture including a specific person or share the picture with the person included in the picture. However, it is too much effort and time-consuming obstacles for the user to attach the above identification tag to every image. Therefore, the tag is semi-automatically tagged based on face detection and face recognition technology.
컴퓨터와 패턴 인식 기술이 발전함에 따라, 패턴 인식 기술의 일종인 얼굴 인식 기술은 인물 정보 검색 분야, 보안 분야 등과 같은 다양한 분야에서 활용되고 있으며, 상기 이미지 관리 시스템에서 이미지에서 검출된 복수의 얼굴 이미지들에 대한 인물 정보를 식별 태그로서 저장하기 위해 얼굴 인식이 사용된다. 종래의 얼굴 인식기술은 데이터 베이스에 저장되어 있는 모든 얼굴 이미지의 특징 벡터와 인식하고자 하는 얼굴 이미지의 특징 벡터를 모두 개별적으로 비교하고 유사도를 검출함으로써 얼굴을 인식하였다. 그러나 인식하고자 하는 얼굴 이미지의 개수가 증가할수록 비교하고 유사도를 검출해야 할 특징 벡터 쌍이 증가하게 되므로 많은 연산량과 시간이 소모되고, 얼굴 이미지의 인식률이 저하되는 장애가 있다. 특히 대용량의 이미지를 포함하는 이미지 관리 시스템의 경우에는 이와 같은 장애가 원활한 서비스의 제공에 장애가 된다.As computers and pattern recognition technologies are developed, face recognition technology, which is a kind of pattern recognition technology, is being used in various fields such as person information retrieval field and security field, and a plurality of face images detected in images in the image management system. Face recognition is used to store the person information for as an identification tag. The conventional face recognition technology recognizes a face by comparing the feature vectors of all face images stored in a database with the feature vectors of a face image to be recognized individually and detecting similarity. However, as the number of face images to be recognized increases, feature vector pairs to be compared and detect similarity increase, so that a large amount of computation and time are consumed and a recognition rate of the face image is deteriorated. In particular, in the case of an image management system including a large amount of images, such an obstacle is an obstacle to providing a smooth service.
상기와 같은 문제점을 해결하기 위한 본 발명의 제1 목적은 얼굴 이미지 생성 정보에 기초하여 얼굴 이미지를 군집화하는 이미지 군집화 장치를 제공하는 것이다.A first object of the present invention for solving the above problems is to provide an image clustering device for clustering the face image based on the face image generation information.
본 발명의 제2 목적은 얼굴 이미지 생성 정보에 기초하여 얼굴 이미지를 군집화하고 데이터 베이스 저장부에 저장하는 이미지 군집화 장치를 제공하는 것이다.It is a second object of the present invention to provide an image clustering apparatus for clustering a face image based on face image generation information and storing the image in a database storage unit.
본 발명의 제3 목적은 얼굴 이미지 군집을 이용한 얼굴 이미지 인식 방법을 제공하는 것이다.It is a third object of the present invention to provide a face image recognition method using face image clusters.
본 발명의 제4 목적은 얼굴 이미지 생성 정보에 기초하여 얼굴 이미지를 군집화 하는 이미지 군집화 방법을 제공하는 것이다.A fourth object of the present invention is to provide an image clustering method for clustering face images based on face image generation information.
본 발명의 제5 목적은 얼굴 이미지 군집을 이용한 얼굴 이미지 인식 장치를 제공하는 것이다.It is a fifth object of the present invention to provide a face image recognition apparatus using face image clusters.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 이미지 군집화 장치는 이미지 검출부 및 이미지 군집화 처리부를 포함한다. 상기 이미지 검출부는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지들을 생성한다. 상기 이미지 검출부는 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성한다. 상기 이미지 군집화 처리부는 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산할 수 있다. 상기 이미지 군집화 처리부는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성한다. 상기 제1 목적함수 및 제2 목적함수는 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬을 이용하여 생성될 수 있다. 상기 복수의 얼굴 이미지들 각각의 상기 소스 정보는 상기 복수의 얼굴 이미지들이 추출된 소스 이미지에 대한 이미지 식별자를 포함한다. 상기 복수의 얼굴 이미지들 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가진다.In order to achieve the above object of the present invention, an image clustering apparatus according to an embodiment of the present invention includes an image detector and an image clustering processor. The image detector detects faces from a plurality of external images and performs image processing to generate a plurality of face images. The image detector generates image generation information including source information and person information of each of the plurality of face images. The image clustering processor may calculate a similarity matrix from the plurality of face images. The image clustering processor generates a clustering graph including a plurality of image clusters based on the first objective function and the second objective function. The first objective function and the second objective function may be generated using the plurality of face images, the image generation information, and the similarity matrix. The source information of each of the plurality of face images includes an image identifier of a source image from which the plurality of face images are extracted. The person information of each of the plurality of face images has the same person identifier with respect to face images of the same person.
상기 이미지 검출부는 이미지 검출 유닛, 얼굴 이미지 합성 유닛 및 이미지 생성 정보 생성 유닛을 포함할 수 있다. 상기 이미지 검출 유닛은 상기 복수의 외부 이미지들로부터 상기 얼굴들을 검출하여 복수의 검출된 얼굴 이미지들을 생성할 수 있다. 상기 얼굴 이미지 합성 유닛은 외부 얼굴 이미지 또는 상기 복수의 검출된 얼굴 이미지들을 기초로 하여 동일한 인물에 대한 복수의 합성된 얼굴 이미지들을 생성할 수 있다. 상기 이미지 생성 정보 생성 유닛은 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 소스가 되는 외부 이미지 또는 상기 외부 얼굴 이미지를 식별하기 위한 상기 이미지 식별자를 포함하는 상기 소스 정보 및 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 합성 소스 이미지들인 상기 검출된 복수의 얼굴 이미지들 및 상기 외부 얼굴 이미지의 상기 인물 식별자를 포함하는 상기 이미지 생성 정보를 생성할 수 있다. 상기 복수의 얼굴 이미지는 상기 복수의 검출된 얼굴 이미지들과 상기 복수의 합성된 얼굴 이미지들을 포함할 수 있다. The image detection unit may include an image detection unit, a face image synthesizing unit, and an image generation information generating unit. The image detection unit may generate the plurality of detected face images by detecting the faces from the plurality of external images. The face image synthesizing unit may generate a plurality of synthesized face images for the same person based on the external face image or the plurality of detected face images. The image generation information generating unit includes the source information and the plurality of image information including the image identifier for identifying the external image or the external image that is the source of the plurality of detected face images and the plurality of synthesized images. The image generation information may include the detected face images and the detected plurality of face images, which are composite source images of the plurality of synthesized images, and the person identifier of the outer face image. The plurality of face images may include the plurality of detected face images and the plurality of synthesized face images.
상기 이미지 군집화 처리부는 제1 특징 벡터 추출부, 제1 벡터 거리 계산부, 유사도 행렬 계산부 및 군집화 그래프 생성부를 포함할 수 있다. 상기 제1 특징 벡터 추출부는 상기 복수의 얼굴 이미지들로부터 복수의 특징 벡터들을 추출할 수 있다. 상기 제1 벡터 거리 계산부는 상기 복수의 특징 벡터들을 기초로 하여 상기 복수의 얼굴 이미지들의 상기 복수의 특징 벡터들간의 거리를 계산할 수 있다. 상기 유사도 행렬 계산부는 상기 복수의 특징 벡터들 사이의 거리에 기초하여 유사도 행렬을 생성할 수 있다. 상기 군집화 그래프 생성부는 상기 유사도 행렬 및 상기 이미지 생성 정보에 기초하여 상기 복수의 얼굴 이미지들을 상기 복수의 이미지 군집으로 군집화하고 상기 군집화 그래프를 생성할 수 있다.The image clustering processor may include a first feature vector extractor, a first vector distance calculator, a similarity matrix calculator, and a clustering graph generator. The first feature vector extractor may extract a plurality of feature vectors from the plurality of face images. The first vector distance calculator may calculate a distance between the plurality of feature vectors of the plurality of face images based on the plurality of feature vectors. The similarity matrix calculator may generate a similarity matrix based on the distances between the plurality of feature vectors. The clustering graph generator may cluster the plurality of face images into the plurality of image clusters based on the similarity matrix and the image generation information, and generate the clustering graph.
상기 군집화 그래프 생성부는 군집화 그래프 초기화부 및 군집화 그래프 분할 처리부를 포함할 수 있다. 상기 군집화 그래프 초기화부는 군집화 그래프를 상기 유사도 행렬에 기초하여 생성할 수 있다. 상기 군집화 그래프는 복수의 그래프 노드들, 상기 복수의 그래프 노드들을 연결하는 복수의 에지들 및 상기 복수의 에지들의 가중치들로 이루어질 수 있다. 상기 복수의 그래프 노드들은 상기 복수의 특징 벡터들을 각각 포함하고, 상기 복수의 얼굴 이미지들의 개수와 동일한 개수를 가질 수 있다. 상기 군집화 그래프 분할 처리부는 상기 복수의 얼굴 이미지들의 상기 이미지 생성 정보 및 상기 상기 유사도 행렬을 이용하여 생성되는 상기 제1 목적함수에 기초하여 상기 군집화 그래프를 복수의 서브 군집화 그래프들로 분할할 수 있다. 상기 복수의 서브 군집화 그래프들의 그래프 분할 여부를 상기 제2 목적함수에 기초하여 결정할 수 있다.The clustering graph generation unit may include a clustering graph initialization unit and a clustering graph division processing unit. The clustering graph initialization unit may generate a clustering graph based on the similarity matrix. The clustering graph may include a plurality of graph nodes, a plurality of edges connecting the plurality of graph nodes, and weights of the plurality of edges. The plurality of graph nodes may include the plurality of feature vectors, respectively, and may have the same number as the number of the plurality of face images. The clustering graph segmentation processor may divide the clustering graph into a plurality of sub clustering graphs based on the first objective function generated using the image generation information and the similarity matrix of the plurality of face images. Whether to divide the graph of the plurality of sub clustering graphs may be determined based on the second objective function.
상기 복수의 에지들은 상기 복수의 그래프 노드들 전체를 서로 연결하는 전체 연결 방식, 상기 복수의 그래프 노드들 각각에 가장 가까운 k(k는 1이상의 정수)개의 그래프 노드들을 서로 연결하는 최근접 연결 방식 및 상기 복수의 그래프 노드들 각각에 포함되는 특징 벡터들 사이의 거리가 거리 문턱값 보다 작은 그래프 노드들을 연결하는 특징 벡터 거리 기반 연결 방식 중 어느 하나의 방식으로 연결될 수 있다.The plurality of edges may include a total connection method for connecting all of the plurality of graph nodes to each other, a closest connection method for connecting k (k is an integer of 1 or more) graph nodes closest to each of the plurality of graph nodes, and The distance between feature vectors included in each of the plurality of graph nodes may be connected by any one of feature vector distance-based connection schemes connecting graph nodes having a distance smaller than a distance threshold.
상기 군집화 그래프 분할 처리부는 그래프 분할 동작 모드에서 상기 복수의 서브 군집화 그래프들에 대하여 계산되는 상기 제1 목적함수의 값들이 각각 가장 작은 값을 가지도록 상기 복수의 서브 군집화 그래프들을 분할할 수 있다.The clustering graph division processing unit may divide the plurality of sub clustering graphs such that the values of the first objective function calculated for the plurality of sub clustering graphs have the smallest value in the graph division operation mode.
상기 군집화 그래프 분할 처리부는 상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 분할 문턱값보다 크면 상기 복수의 서브 군집화 그래프들을 더 이상 분할 하지 않을 수 있다. 상기 군집화 그래프 분할 처리부는 상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 상기 분할 문턱값보다 작으면 상기 복수의 서브 군집화 그래프들을 상기 복수의 서브 군집화 그래프들의 얼굴 이미지들의 상기 이미지 생성 정보를 이용하여 생성되는 상기 제1 목적함수에 기초하여 분할할 수 있다. The clustering graph segmentation processor may not divide the plurality of sub-grouping graphs any more when the second objective function of the plurality of sub-grouping graphs is larger than the division threshold. The clustering graph segmentation processor may be configured to generate the plurality of sub clustering graphs using the image generation information of the face images of the plurality of sub clustering graphs when the second objective function of the plurality of sub clustering graphs is smaller than the division threshold. Partitioning may be performed based on the generated first objective function.
상기 제2 목적함수는 상기 서브 군집화 그래프들 각각의 노드의 개수와 에지의 개수를 이용하여 계산되는 에지의 밀도들에 기초하여 생성될 수 있다.The second objective function may be generated based on density of edges calculated using the number of nodes and the number of edges of each of the sub-grouping graphs.
상기 제1 특징 벡터 추출부는 PCA(Principle Component Analysis), LTP(Local Ternary Pattern), LDA(Linear Discriminate Analysis) 중 적어도 어느 하나를 이용하여 상기 복수의 특징 벡터들을 추출할 수 있다.The first feature vector extractor may extract the plurality of feature vectors using at least one of a principal component analysis (PCA), a local term pattern (LTP), and a linear discriminate analysis (LDA).
본 발명의 일 실시예에 따른 이미지 군집화 장치는 이미지 검출부, 이미지 군집화 처리부 및 데이터 베이스 저장부를 포함한다. 상기 이미지 검출부는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성한다. 상기 이미지 군집화 처리부는 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성한다. 상기 데이터 베이스 저장부는 복수의 데이터 베이스 이미지 군집을 포함한다. 상기 데이터 베이스 저장부는 상기 복수의 이미지 군집들 과 상기 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장하고, 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들이 검색되지 않는 경우에는 군집 단위로 태깅하여 저장한다.An image clustering apparatus according to an embodiment of the present invention includes an image detector, an image clustering processor, and a database storage unit. The image detector detects faces from a plurality of external images and performs image processing to generate a plurality of face images, and generates image generation information including source information and person information of each of the plurality of face images. The image clustering processor calculates a similarity matrix from the plurality of face images, and generates a clustering graph including a plurality of image clusters based on the plurality of face images, the image generation information, and the similarity matrix. The database storage unit includes a plurality of database image clusters. The database storage unit compares the plurality of image clusters with the plurality of database image clusters, and stores similar image clusters to the plurality of database image clusters with the same tagging as a similar database cluster, and stores the plurality of data. If similar image clusters are not found in the base image cluster, they are tagged and stored in a cluster unit.
본 발명의 일 실시예에 따른 이미지 인식 장치는 이미지 검출부, 이미지 군집화 처리부, 데이터 베이스 저장부 및 이미지 정합부를 포함한다. 상기 이미지 검출부는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성한다. 상기 이미지 군집화 처리부는 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들을 상기 이미지 생성 정보 및 상기 유사도 행렬에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성한다. 상기 데이터 베이스 저장부는 복수의 데이터 베이스 이미지 군집을 포함한다. 상기 데이터 베이스 저장부는 상기 복수의 이미지 군집들과 상기 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장한다. 상기 이미지 정합부는 상기 복수의 이미지 군집에 기초하여 상기 데이터 베이스 관리부 내에 미리 저장되어 있는 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들을 상기 복수의 얼굴 이미지들과 비교하여 유사도가 높은 정합 이미지들을 검출한다.An image recognition apparatus according to an embodiment of the present invention includes an image detector, an image clustering processor, a database storage unit, and an image matching unit. The image detector detects faces from a plurality of external images and performs image processing to generate a plurality of face images, and generates image generation information including source information and person information of each of the plurality of face images. The image clustering processor calculates a similarity matrix from the plurality of face images, and generates a clustering graph including a plurality of image clusters based on the image generation information and the similarity matrix. The database storage unit includes a plurality of database image clusters. The database storage unit compares the plurality of image clusters with the plurality of database image clusters, and stores similar image clusters to the plurality of database image clusters with the same tagging as similar database clusters. The image matching unit compares a plurality of database images belonging to a high similarity cluster among the plurality of database image clusters previously stored in the database manager based on the plurality of image clusters to compare the similarity with the plurality of face images. Detects high registration images.
상기 이미지 정합부는 제2 특징 벡터 추출부, 제2 벡터 거리 계산부 및 유사도 계산부를 포함할 수 있다. 상기 제2 특징 벡터 추출부는 상기 복수의 이미지 군집에 기초하여 상기 복수의 얼굴 이미지들로부터 복수의 특징 벡터들을 추출할 수 있다. 상기 제2 벡터 거리 계산부는 상기 복수의 특징 벡터들을 기초로 하여 상기 복수의 얼굴 이미지들의 상기 복수의 특징 벡터들과 상기 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 상기 복수의 데이터 베이스 이미지들의 특징 벡터들 사이의 복수의 특징 벡터 거리들를 각각 계산할 수 있다. 상기 유사도 계산부는 상기 복수의 특징 벡터 거리들에 기초하여 유사도를 계산하고, 상기 유사도가 높은 후보 얼굴 이미지를 제공할 수 있다.The image matcher may include a second feature vector extractor, a second vector distance calculator, and a similarity calculator. The second feature vector extractor may extract a plurality of feature vectors from the plurality of face images based on the plurality of image clusters. The second vector distance calculator is configured to generate the plurality of database images belonging to a similarity cluster among the plurality of feature vectors and the plurality of database image clusters of the plurality of face images based on the plurality of feature vectors. A plurality of feature vector distances between feature vectors may be calculated, respectively. The similarity calculator may calculate similarity based on the plurality of feature vector distances and provide a candidate face image having a high similarity.
본 발명의 일 실시예에 따른 이미지 군집화 방법에서는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성하고, 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬을 이용하여 생성되는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성한다. 상기 복수의 얼굴 이미지들 각각의 상기 소스 정보는 상기 복수의 얼굴 이미지들이 추출된 소스 이미지에 대한 이미지 식별자를 포함하고, 상기 복수의 얼굴 이미지들 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가진다.In the image clustering method according to an embodiment of the present invention, a plurality of face images are generated by detecting faces from a plurality of external images and performing image processing, and are composed of source information and person information of each of the plurality of face images. Generate image generation information, calculate a similarity matrix from the plurality of face images, and generate the first and second object functions generated using the plurality of face images, the image generation information, and the similarity matrix. Generates a clustering graph consisting of a plurality of image clusters based on. The source information of each of the plurality of face images includes an image identifier of a source image from which the plurality of face images are extracted, and the person information of each of the plurality of face images corresponds to face images of the same person. Have the same person identifier.
본 발명의 일 실시예에 따른 얼굴 이미지 인식 방법에서는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성하고, 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들을 상기 이미지 생성 정보 및 상기 유사도 행렬에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성하고, 상기 복수의 이미지 군집들과 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장하고, 상기 복수의 이미지 군집에 기초하여 상기 데이터 베이스 관리부 내에 미리 저장되어 있는 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들을 상기 복수의 얼굴 이미지들과 비교하여 유사도가 높은 정합 이미지들을 검출한다. In the face image recognition method according to an embodiment of the present invention, a plurality of face images are generated by detecting faces from a plurality of external images and performing image processing. Generate image generation information, calculate a similarity matrix from the plurality of face images, generate a clustering graph of the plurality of face images based on the image generation information and the similarity matrix, and cluster a plurality of image clusters; Comparing the plurality of image clusters with the plurality of database image clusters, and storing image clusters similar to the plurality of database image clusters with the same tagging as the similar database clusters, and storing the plurality of image clusters based on the plurality of image clusters. In database management department Compared to the plurality of face images of a plurality of database images belonging to a group of high similarity among a plurality of database image clusters stored in advance in the plurality of database image clusters to detect matching images having a high similarity.
상기와 같은 본 발명의 실시예들에 따른 이미지 군집화 방법 및 장치는 많은 이미지를 관리하는 이미지 관리 시스템에 입력되는 복수의 입력 이미지로부터 얼굴 이미지를 검출하고 이미지가 생성되는 경위를 고려하여 군집화함으로써 자동으로 얼굴 이미지를 태깅하여 관리할 수 있다.The image clustering method and apparatus according to the embodiments of the present invention as described above automatically detects a face image from a plurality of input images input to an image management system managing a large number of images and clusters the image in consideration of how the image is generated. You can tag and manage face images.
또한 본 발명의 실시예들에 따른 얼굴 이미지 인식 장치 및 방법은 복수의 입력 이미지를 군집화하여 군집 단위로 비교 함으로써 전체적인 얼굴 인식 속도를 향상 시킬 수 있다.In addition, the apparatus and method for recognizing a face image according to embodiments of the present disclosure may improve overall face recognition speed by clustering a plurality of input images and comparing them in a cluster unit.
도 1은 본 발명의 일 실시예에 따른 이미지 군집화 장치를 나타내는 블록도이다.
도 2는 도 1의 군집화 그래프 생성부를 구체적으로 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 이미지 얼굴 이미지 인식 장치를 나타내는 블록도이다.
도 4는 도 3의 이미지 정합부를 구체적으로 나타내는 블록도이다.
도 5는 도 3의 데이터 베이스 저장부를 구체적으로 나타내는 블록도이다.
도 6은 본 발명의 일 실시예에 따른 이미지 군집화 방법을 나타내는 흐름도이다.
도 7은 도 6의 얼굴 이미지 및 이미지 생성 정보를 생성하는 단계를 구체적으로 나타내는 흐름도이다.
도 8은 도 6의 군집화 단계를 구체적으로 나타내는 흐름도이다.
도 9는 도 8의 군집화 그래프 생성 단계를 구체적으로 나타내는 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 얼굴 이미지 인식 방법을 나타내는 흐름도이다.
도 11은 도 10의 정합 이미지 검출 단계를 구체적으로 나타내는 흐름도이다.1 is a block diagram illustrating an image clustering apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating in detail the clustering graph generator of FIG. 1.
3 is a block diagram illustrating an apparatus for recognizing an image face according to an embodiment of the present invention.
FIG. 4 is a block diagram illustrating in detail the image matcher of FIG. 3.
FIG. 5 is a block diagram specifically illustrating a database storage unit of FIG. 3.
6 is a flowchart illustrating an image clustering method according to an embodiment of the present invention.
FIG. 7 is a flowchart specifically illustrating generating a face image and image generation information of FIG. 6.
8 is a flowchart specifically illustrating a clustering step of FIG. 6.
FIG. 9 is a flowchart specifically illustrating a clustering graph generation step of FIG. 8.
10 is a flowchart illustrating a face image recognition method according to an embodiment of the present invention.
11 is a flowchart specifically illustrating a registration image detection step of FIG. 10.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.With respect to the embodiments of the present invention disclosed in the text, specific structural to functional descriptions are merely illustrated for the purpose of describing embodiments of the present invention, embodiments of the present invention may be implemented in various forms and It should not be construed as limited to the embodiments described in.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 구성요소에 대해 사용하였다.As the inventive concept allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to the specific disclosed form, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for the components.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is said to be "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that another component may exist in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between. Other expressions describing the relationship between components, such as "between" and "immediately between," or "neighboring to," and "directly neighboring to" should be interpreted as well.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "having" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof that is described, and that one or more other features or numbers are present. It should be understood that it does not exclude in advance the possibility of the presence or addition of steps, actions, components, parts or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.On the other hand, when an embodiment is otherwise implemented, a function or operation specified in a specific block may occur out of the order specified in the flowchart. For example, two consecutive blocks may actually be performed substantially simultaneously, and the blocks may be performed upside down depending on the function or operation involved.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.
도 1은 본 발명의 일 실시예에 따른 이미지 군집화 장치를 나타내는 블록도이다.1 is a block diagram illustrating an image clustering apparatus according to an embodiment of the present invention.
도 1을 참조하면, 이미지 군집화 장치(1000)는 이미지 검출부(1100) 및 이미지 군집화 처리부(1200)를 포함한다. 이미지 검출부(1100)는 복수의 외부 이미지들(IMG)로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지들(FI_DATA)을 생성한다. 이미지 검출부(1100)는 복수의 얼굴 이미지들(FI_DATA) 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보(FI_INF)를 생성한다. 이미지 군집화 처리부(1200)는 복수의 얼굴 이미지들(FI_DATA)로부터 유사도 행렬(AMATRIX)을 계산할 수 있다. 이미지 군집화 처리부(1200)는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프(GRAPH)를 생성한다. 상기 제1 목적함수 및 제2 목적함수는 복수의 얼굴 이미지들(AMATRIX), 이미지 생성 정보(FI_INF) 및 상기 유사도 행렬(AMATRIX)을 이용하여 생성될 수 있다. 복수의 얼굴 이미지들(FI_DATA) 각각의 상기 소스 정보는 복수의 얼굴 이미지들(FI_DATA)이 추출된 소스 이미지에 대한 이미지 식별자를 포함한다. 복수의 얼굴 이미지들(FI_DATA) 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가진다.Referring to FIG. 1, the
다시 도 1을 참조하면, 이미지 검출부(1100)는 이미지 검출 유닛(1110), 얼굴 이미지 합성 유닛(1130) 및 이미지 생성 정보 생성 유닛(1150)을 포함할 수 있다. Referring back to FIG. 1, the
이미지 검출 유닛(1110)은 복수의 외부 이미지들(IMG)로부터 상기 얼굴들을 검출하여 복수의 검출된 얼굴 이미지들을 생성할 수 있다. 복수의 외부 이미지들(IMG) 중 한 장의 이미지에서 검출된 여러 개의 얼굴 이미지들은 서로 다른 인물의 얼굴 이미지임이 명백하다. 상기 서로 다른 인물의 얼굴 이미지들은 얼굴 이미지들에 대한 군집화를 수행할 때에 서로 다른 군집에 포함되는 것이 자연스러우며, 이와 같이 군집화되었을 때 관리 시스템의 성능이 향상될 수 있다. The
얼굴 이미지 합성 유닛(1130)은 외부 얼굴 이미지(IMG_F) 또는 상기 복수의 검출된 얼굴 이미지들을 기초로 하여 동일한 인물에 대한 복수의 합성된 얼굴 이미지들을 생성할 수 있다. The face image synthesizing unit 1130 may generate a plurality of synthesized face images of the same person based on the external face image IMG_F or the plurality of detected face images.
이미지 생성 정보 생성 유닛(1150)은 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 소스가 되는 외부 이미지 또는 외부 얼굴 이미지(IMG_F)를 식별하기 위한 상기 이미지 식별자를 포함하는 상기 소스 정보 및 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 합성 소스 이미지들인 상기 검출된 복수의 얼굴 이미지들 및 외부 얼굴 이미지(IMG_F)의 상기 인물 식별자를 포함하는 이미지 생성 정보(FI_INF)를 생성할 수 있다. 복수의 얼굴 이미지(FI_DATA)는 상기 복수의 검출된 얼굴 이미지들과 상기 복수의 합성된 얼굴 이미지들을 포함할 수 있다. 다른 실시예에 있어서, 복수의 얼굴이미지(FI_DATA)는 상기 복수의 검출된 얼굴 이미지들을 포함할 수 있다. The image generation
또 다시 도 1을 참조하면, 이미지 군집화 처리부(1200)는 제1 특징 벡터 추출부(1210), 제1 벡터 거리 계산부(1230), 유사도 행렬 계산부(1250) 및 군집화 그래프 생성부(1270)를 포함할 수 있다. Referring again to FIG. 1, the
제1 특징 벡터 추출부(1210)는 상기 복수의 얼굴 이미지들로부터 복수의 특징 벡터들(FI_FV)을 추출할 수 있다. 복수의 특징 벡터들(FI_FV)은 같은 인물의 얼굴로부터 추출된 특징 벡터들간의 거리는 작고 다른 인물로부터 추출된 기술자간의 거리는 클 수 있다. The first
제1 특징 벡터 추출부(1210)는 PCA(Principle Component Analysis), LTP(Local Ternary Pattern), LDA(Linear Discriminate Analysis) 중 적어도 어느 하나를 이용하여 상기 복수의 특징 벡터들을 추출할 수 있다. PCA(Principle Component Analysis), LTP(Local Ternary Pattern), LDA(Linear Discriminate Analysis)는 이미지 데이터 또는 기타 데이터 신호들로부터 일정한 특성을 추출하는 알고리즘이며, 복수의 특징 벡터들(FI_FV)이 가져야 하는 특성에 따라서 다른 알고리즘이 사용될 수 있다. 따라서 이미지 인식 또는 분류 알고리즘에 사용될 수 있는 특징 벡터 추출 알고리즘들이 적용될 수 있다.The first
제1 벡터 거리 계산부(1230)는 복수의 특징 벡터들(FI_FV)을 기초로 하여 복수의 얼굴 이미지들(FI_DATA)의 복수의 특징 벡터들(FI_FV)간의 거리를 계산할 수 있다. The first vector distance calculator 1230 may calculate a distance between the plurality of feature vectors FI_FV of the plurality of face images FI_DATA based on the plurality of feature vectors FI_FV.
유사도 행렬 계산부(1250)는 복수의 특징 벡터들(FI_FV) 간의 거리에 기초하여 유사도 행렬(AMATRIX)을 생성할 수 있다. 유사도 행렬(AMATRIX)은 복수의 얼굴 이미지들(FI_DATA)의 복수의 특징 벡터들(FI_FV) 중 임의의 한 쌍의 특징 벡터에 대한 유사도를 모두 계산하여 행렬화 함으로써 생성될 수 있다. The
유사도 행렬(AMATRIX)은 하기의 [수학식 1]을 만족할 수 있다.The similarity matrix AMATRIX may satisfy Equation 1 below.
[수학식 1][Equation 1]
상기 [수학식 1]에 있어서, sij는 i번째 특징 벡터와 j번째 특징 벡터 사이의 유사도를 나타내고 양수의 값이며, dij는 i번째 특징 벡터와 j번째 특징 벡터 사이의 거리를 나타내고 양수의 값이며, a1 및 a2는 dij와 sij사이의 매핑을 조절하는 파라이터들이다.In Equation 1, s ij represents a similarity between the i th feature vector and the j th feature vector and is a positive value, and d ij represents the distance between the i th feature vector and the j th feature vector and is positive. Value, a1 and a2 are parameters that control the mapping between d ij and s ij .
유사도 행렬(AMATRIX)은 하기의 [수학식 2]을 만족할 수 있다.The similarity matrix AMATRIX may satisfy Equation 2 below.
[수학식 2][Equation 2]
상기 [수학식 2]에 있어서, sij는 i번째 특징 벡터와 j번째 특징 벡터 사이의 유사도를 나타내고 양수의 값이며, dij는 i번째 특징 벡터와 j번째 특징 벡터 사이의 거리를 나타내고 양수의 값이며, b는 dij와 sij사이의 매핑을 조절하는 파라이터이다.In Equation 2, s ij represents a similarity between the i th feature vector and the j th feature vector and is a positive value, and d ij represents the distance between the i th feature vector and the j th feature vector and is positive. Value, b is a parameter that controls the mapping between d ij and s ij .
상기 [수학식 1] 및 [수학식 2]에 의한 유사도 행렬(AMATRIX)의 값은 상대적으로 큰 특징 벡터 사이의 거리(dij)에 대해서는 상대적으로 작은 특징 벡터 사이의 유사도(sij)를 제공한다. 이때, 특징 벡터 사이의 거리(dij)가 작으면 작을수록 해당하는 특징 벡터 사이의 유사도(sij)의 값은 0에 가까워 진다. 상기 [수학식 1] 및 [수학식 2]에 의한 유사도 행렬(AMATRIX)의 값은 상대적으로 작은 특징 벡터 사이의 거리(dij)에 대해서는 상대적으로 큰 특징 벡터 사이의 유사도(sij)를 제공한다. 이때, 특징 벡터 사이의 거리(dij)가 크면 클수록 해당하는 특징 벡터 사이의 유사도(sij)의 값은 1에 가까워 진다.The values of the similarity matrices AMATRIX according to Equations 1 and 2 provide the similarity s ij between relatively small feature vectors with respect to the distance d ij between relatively large feature vectors. do. In this case, the smaller the distance d ij between the feature vectors, the closer the value of the similarity s ij between the corresponding feature vectors becomes to zero. The values of the similarity matrices AMATRIX according to Equations 1 and 2 provide the similarity s ij between relatively large feature vectors for the distance d ij between relatively small feature vectors. do. In this case, as the distance d ij between the feature vectors increases, the value of the similarity s ij between the corresponding feature vectors becomes closer to one.
군집화 그래프 생성부(1270)는 유사도 행렬(AMATRIX) 및 이미지 생성 정보(FI_INF)에 기초하여 복수의 얼굴 이미지들(FI_DATA)을 상기 복수의 이미지 군집으로 군집화하고 군집화 그래프(GRAPH)를 생성할 수 있다.The clustering
도 2는 도 1의 군집화 그래프 생성부를 구체적으로 나타내는 블록도이다.FIG. 2 is a block diagram illustrating in detail the clustering graph generator of FIG. 1.
도 2를 참조하면, 군집화 그래프 생성부(1270)는 군집화 그래프 초기화부(1271) 및 군집화 그래프 분할 처리부(1273)를 포함할 수 있다. 2, the clustering
군집화 그래프 초기화부(1271)는 군집화 그래프(GRAPH)를 유사도 행렬(AMATRIX)에 기초하여 생성할 수 있다. 군집화 그래프(GRAPH)는 복수의 그래프 노드들, 상기 복수의 그래프 노드들을 연결하는 복수의 에지들 및 상기 복수의 에지들의 가중치들로 이루어질 수 있다. 상기 복수의 그래프 노드들은 복수의 특징 벡터들(FI_FV)을 각각 포함하고, 복수의 얼굴 이미지들(FI_DATA)의 개수와 동일한 개수를 가질 수 있다. 상기 복수의 노드와 복수의 얼굴 이미지들(FI_DATA)은 1:1로 매핑 될 수 있다. The clustering
상기 복수의 에지들은 상기 복수의 노드간의 연결 상태를 나타낼 수 있다. 상기 복수의 노드 중 한 쌍의 노드가 연결되어 있지 않는 경우에는 상기 한 쌍의 노드에 대한 에지는 존재하지 않을 수 있다. 이때, 상기 에지의 가중치는 0으로 정의 될 수 있다. 상기 한 쌍의 노드가 연결되어 있는 경우에는, 상기 한 쌍의 노드에 대한 에지는 존재할 수 있다. 이때, 상기 에지의 가중치는 상기 한 쌍의 노드가 각각 포함하고 있거나 매핑되어 있는 특징 벡터들 사이의 유사도(sij)와 같은 값을 가질 수 있다.The plurality of edges may indicate a connection state between the plurality of nodes. When a pair of nodes of the plurality of nodes are not connected, an edge for the pair of nodes may not exist. In this case, the weight of the edge may be defined as zero. When the pair of nodes are connected, edges for the pair of nodes may exist. In this case, the weight of the edge may have a value equal to the similarity s ij between feature vectors included in or mapped by the pair of nodes, respectively.
상기 복수의 에지들은 상기 복수의 그래프 노드들 전체를 서로 연결하는 전체 연결 방식, 상기 복수의 그래프 노드들 각각에 가장 가까운 k(k는 1이상의 정수)개의 그래프 노드들을 서로 연결하는 최근접 연결 방식 및 상기 복수의 그래프 노드들 각각에 포함되는 특징 벡터들 사이의 거리(dij)가 거리 문턱값 보다 작은 그래프 노드들을 연결하는 특징 벡터 거리 기반 연결 방식 중 어느 하나의 방식으로 연결될 수 있다.The plurality of edges may include a total connection method for connecting all of the plurality of graph nodes to each other, a closest connection method for connecting k (k is an integer of 1 or more) graph nodes closest to each of the plurality of graph nodes, and The distance d ij between the feature vectors included in each of the plurality of graph nodes may be connected by any one of feature vector distance-based connection schemes connecting graph nodes having a distance smaller than a distance threshold.
군집화 그래프 분할 처리부(1273)는 복수의 얼굴 이미지들(FI_DATA)의 이미지 생성 정보(FI_INF) 및 상기 유사도 행렬(AMATRIX)을 이용하여 생성되는 상기 제1 목적함수에 기초하여 군집화 그래프(GRAPH)를 복수의 서브 군집화 그래프들로 분할할 수 있다. 상기 복수의 서브 군집화 그래프들의 그래프 분할 여부를 상기 제2 목적함수에 기초하여 결정할 수 있다. 상기 복수의 서브 군집화 그래프들을 분할함에 있어서, 상기 복수의 서브 군집화 그래프들 각각이 포함하는 그래프 노드들을 2개의 그룹으로 분할하되, 상기 2개의 그룹은 서로 상호 배타적이며, 상기 2개의 그룹의 전체 집합은 상기 복수의 서브 군집화 그래프들 각각이 포함하는 그래프 노드들 전체의 집합과 같을 수 있다.The clustering
군집화 그래프 분할 처리부(1273)는 그래프 분할 동작 모드에서 상기 복수의 서브 군집화 그래프들에 대하여 계산되는 상기 제1 목적함수의 값들이 각각 가장 작은 값을 가지도록 상기 복수의 서브 군집화 그래프들을 분할할 수 있다.The clustering graph
상기 제1 목적함수는 정규화된 분할함수(Normalized Cut), 최소화 분할함수(Min Cut) 및 비율 분할함수(Ratio Cut) 중 하나일 수 있다. The first objective function may be one of a normalized cut function, a minimum cut function, and a ratio cut function.
상기 제1 목적함수는 분할하려고 하는 그래프가 동일한 얼굴 이미지 생성 정보(FI_INF)의 소스 정보를 가지는 그래프 노드들을 많이 포함할수록 패널티를 부과하여 상대적으로 큰 값을 제공하는 함수일 수 있다. 상기 제1 목적함수는 분할하려고 하는 그래프가 상이한 소스 정보를 가지는 그래프 노드들을 많이 포함할수록 패널티를 적게 부과하여 상대적으로 작은 값을 제공하는 함수일 수 있다. The first objective function may be a function of providing a relatively large value by imposing a penalty as the graph to be divided includes more graph nodes having source information of the same face image generation information FI_INF. The first objective function may be a function of providing a relatively small value by imposing a smaller penalty as the graph to be split includes more graph nodes having different source information.
상기 제1 목적함수는 분할하려고 하는 그래프가 동일한 얼굴 이미지 생성 정보(FI_INF)의 인물 정보를 가지는 그래프 노드들을 적게 포함할수록 패널티를 부과하여 상대적으로 큰 값을 제공하는 함수일 수 있다. 상기 제1 목적함수는 분할하려고 하는 그래프가 상이한 인물 정보를 가지는 그래프 노드들을 적게 포함할수록 패널티를 적게 부과하여 상대적으로 작은 값을 제공하는 함수일 수 있다. The first objective function may be a function of providing a relatively large value by imposing a penalty as the graph to be divided includes fewer graph nodes having person information of the same face image generation information FI_INF. The first objective function may be a function of providing a relatively small value by imposing less penalty as the graph to be divided includes fewer graph nodes having different person information.
군집화 그래프 분할 처리부(1273)는 상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 분할 문턱값보다 크면 상기 복수의 서브 군집화 그래프들을 더 이상 분할 하지 않을 수 있다. 더 이상 분할 되지 않는 군집화 그래프는 클러스터로 확정될 수 있다. The clustering graph
군집화 그래프 분할 처리부(1273)는 상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 상기 분할 문턱값보다 작으면 상기 복수의 서브 군집화 그래프들을 상기 복수의 서브 군집화 그래프들의 얼굴 이미지들의 이미지 생성 정보(FI_INF)를 이용하여 생성되는 상기 제1 목적함수에 기초하여 분할할 수 있다. The clustering graph
상기 제2 목적함수는 정규화된 분할함수(Normalized Cut), 최소화 분할함수(Min Cut) 및 비율 분할함수(Ratio Cut) 중 하나일 수 있다.The second objective function may be one of a normalized cut function, a minimum cut function, and a ratio cut function.
상기 제2 목적함수는 상기 서브 군집화 그래프들 각각의 노드의 개수와 에지의 개수를 이용하여 계산되는 에지의 밀도들에 기초하여 생성될 수 있다. 상기 에지의 밀도가 상기 분할 문턱값보다 작은 경우에는 서브 군집화 그래프를 분할할 수 있다. The second objective function may be generated based on density of edges calculated using the number of nodes and the number of edges of each of the sub-grouping graphs. When the density of the edge is smaller than the division threshold, the sub clustering graph may be divided.
이미지 군집화 장치(1000)는 데이터 베이스 저장부를 더 포함 할 수 있다. 상기 데이터 베이스 저장부는 상기 복수의 이미지 군집들 과 상기 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장하고, 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들이 검색되지 않는 경우에는 군집 단위로 태깅하여 저장할 수 있다.The
도 3은 본 발명의 일 실시예에 따른 이미지 얼굴 이미지 인식 장치를 나타내는 블록도이다.3 is a block diagram illustrating an apparatus for recognizing an image face according to an embodiment of the present invention.
도 3을 참조하면, 이미지 인식 장치(2000)는 이미지 검출부(1100), 이미지 군집화 처리부(1200), 데이터 베이스 저장부(2300) 및 이미지 정합부(2400)를 포함한다. Referring to FIG. 3, the image recognition apparatus 2000 may include an
이미지 검출부(1100)는 복수의 외부 이미지들(IMG)로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지(FI_DATA)를 생성하고, 복수의 얼굴 이미지들(FI_DATA) 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보(FI_INF)를 생성한다. The
이미지 군집화 처리부(1200)는 복수의 얼굴 이미지들(IMG)로부터 유사도 행렬(AMATRIX)을 계산하고, 복수의 얼굴 이미지들(IMG)을 이미지 생성 정보(FI_INF) 및 상기 유사도 행렬(AMATRIX)에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프(GRAPH)를 생성한다. 상기 서브 군집화 그래프들이 더 이상 분할할 수 없는 클러스터들이 될 때까지 군집화 처리부(1200)에 의하여 상기 서브 군집화 그래프들을 분할하여 군집화 그래프(GRAPH)를 생성할 수 있다.The
도 3의 이미지 검출부(1100) 및 이미지 군집화 처리부(1200)는 도 1 의 이미지 검출부(1100) 및 이미지 군집화 처리부(1200)와 유사하므로 중복되는 설명은 생략한다. Since the
데이터 베이스 저장부(2300)는 복수의 데이터 베이스 이미지 군집을 포함한다. 데이터 베이스 저장부(2300)는 상기 복수의 이미지 군집들과 상기 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장한다.The
상기 이미지 정합부(2400)는 상기 복수의 이미지 군집에 기초하여 상기 데이터 베이스 관리부 내에 미리 저장되어 있는 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들을 복수의 얼굴 이미지들(FI_DATA)과 비교하여 유사도가 높은 정합 이미지들(FI_OUT)을 검출한다.The
도 4는 도 3의 이미지 정합부를 구체적으로 나타내는 블록도이다.FIG. 4 is a block diagram illustrating in detail the image matcher of FIG. 3.
도 4를 참조하면, 이미지 정합부(2400)는 제2 특징 벡터 추출부(2410), 제2 벡터 거리 계산부(2430) 및 유사도 계산부(2450)를 포함할 수 있다. Referring to FIG. 4, the
제2 특징 벡터 추출부(2410)는 상기 복수의 이미지 군집에 기초하여 복수의 얼굴 이미지들(FI_DATA)로부터 복수의 특징 벡터들(FI_FV)을 추출할 수 있다. 제2 특징 벡터 추출부(2410)는 데이터 베이스 저장부(2300)로부터 복수의 데이터 베이스 이미지들을 제공받아 상기 복수의 데이터 베이스 이미지들의 특징 벡터들(DB_FV)을 생성할 수 있다.The second
제2 벡터 거리 계산부(2430)는 복수의 특징 벡터들(FI_FV)을 기초로 하여 복수의 얼굴 이미지들(FI_DATA)의 복수의 특징 벡터들(FI_FV)과 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들의 특징 벡터들(DB_FV) 사이의 거리를 계산할 수 있다. 제2 벡터 거리 계산부(2430)는 상기 복수의 이미지 군집 중 가장 유사한 데이터 베이스 군집이 포함하는 또는 상기 가장 유사한 데이터 베이스 군집에 매핑되어 있는 데이터 베이스 이미지들과 복수의 얼굴 이미지들(FI_DATA) 사이의 복수의 특징 벡터 거리들(dij)을 각각 계산할 수 있다.The second
제2 벡터 거리 계산부(2430)는 상기 복수의 데이터 베이스 이미지들의 특징 벡터들(DB_FV)을 데이터 베이스 저장부(2300)으로부터 제공받을 수 있다. 제2 벡터 거리 계산부(2430)는 상기 복수의 데이터 베이스 이미지들의 특징 벡터들(DB_FV)을 제2 특징 벡터 추출부(2410)로부터 제공받을 수 있다. 이 경우에는 상술한 바와 같이 제2 특징 벡터 추출부(2410)는 데이터 베이스 저장부(2300)로부터 상기 데이터 베이스 이미지들을 제공받을 수 있다.The second
유사도 계산부(2450)는 상기 특징 벡터 거리들에 기초하여 유사도를 계산하고, 상기 유사도가 높은 후보 얼굴 이미지(FI_OUT)를 제공할 수 있다. 상기 유사도가 높은 후보 얼굴 이미지(FI_OUT)는 상기 유사도가 가장 높은 임의의 정수개의 얼굴 이미지들을 포함할 수 있다. The
도 4의 제2 특징 벡터 추출부(2410), 제2 벡터 거리 계산부(2430) 및 유사도 계산부(2450)는 도 1 의 이미지 검출부(1100) 및 이미지 군집화 처리부(1200)와 유사하므로 중복되는 설명은 생략한다. The second
도 5는 도 3의 데이터 베이스 저장부를 구체적으로 나타내는 블록도이다.FIG. 5 is a block diagram specifically illustrating a database storage unit of FIG. 3.
도 5를 참조하면, 데이터 베이스 저장부(2300)는 이미지 군집 비교부(2310) 및 이미지 군집 저장부(2330)를 포함할 수 있다. Referring to FIG. 5, the
이미지 군집 비교부(2310)는 복수의 이미지 군집들과 상기 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 군집을 검색할 수 있다. 이미지 군집 저장부(2330)는 상기 유사한 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장할 수 있다.The image
도 6은 본 발명의 일 실시예에 따른 이미지 군집화 방법을 나타내는 흐름도이다.6 is a flowchart illustrating an image clustering method according to an embodiment of the present invention.
도 6을 참조하면, 이미지 군집화 방법에서는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성(S1100)하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성하고, 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬을 이용하여 생성되는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성(S1200)한다. 상기 복수의 얼굴 이미지들 각각의 상기 소스 정보는 상기 복수의 얼굴 이미지들이 추출된 소스 이미지에 대한 이미지 식별자를 포함하고, 상기 복수의 얼굴 이미지들 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가진다.Referring to FIG. 6, in the image clustering method, faces are detected from a plurality of external images and image processing is performed to generate a plurality of face images (S1100), and the source information and the person information of each of the plurality of face images are used. A first object function and a second object generated by generating image generation information configured, calculating a similarity matrix from the plurality of face images, and using the plurality of face images, the image generation information, and the similarity matrix A clustering graph including a plurality of image clusters is generated based on the function (S1200). The source information of each of the plurality of face images includes an image identifier of a source image from which the plurality of face images are extracted, and the person information of each of the plurality of face images corresponds to face images of the same person. Have the same person identifier.
도 6의 단계(S1100)는 도 1의 이미지 검출부(1100)에 의하여 수행될 수 있고, 도 6의 단계(S1200)는 도 1의 이미지 군집화 처리부(1200)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다.Step S1100 of FIG. 6 may be performed by the
도 7은 도 6의 얼굴 이미지 및 이미지 생성 정보를 생성하는 단계를 구체적으로 나타내는 흐름도이다.FIG. 7 is a flowchart specifically illustrating generating a face image and image generation information of FIG. 6.
도 1 및 도7을 참조하면, 상기 얼굴 이미지 및 이미지 생성 정보를 생성(S1100)함에 있어서, 복수의 외부 이미지들(IMG)로부터 상기 얼굴들을 검출하여 복수의 검출된 얼굴 이미지들을 생성(S1110)하고, 외부 얼굴 이미지(IMG_F) 또는 상기 복수의 검출된 얼굴 이미지들을 기초로 하여 동일한 인물에 대한 복수의 합성된 얼굴 이미지들을 생성(S1130)하고, 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 소스가 되는 외부 이미지 또는 외부 얼굴 이미지(IMG_F)를 식별하기 위한 상기 이미지 식별자를 포함하는 상기 소스 정보 및 상기 복수의 검출된 얼굴 이미지들 및 상기 복수의 합성된 이미지들의 합성 소스 이미지들인 상기 검출된 복수의 얼굴 이미지들 및 외부 얼굴 이미지(IMG_F)의 상기 인물 식별자를 포함하는 이미지 생성 정보(FI_INF)를 생성(S1150)할 수 있다.1 and 7, in generating the face image and image generation information (S1100), the plurality of detected face images are generated (S1110) by detecting the faces from a plurality of external images IMG. Generate a plurality of synthesized face images for the same person based on an external face image IMG_F or the plurality of detected face images (S1130), and generate the plurality of detected face images and the plurality of synthesized face images. The source information including the image identifier for identifying an external image or an external face image IMG_F that is a source of images and the detection that is a composite source images of the plurality of detected face images and the plurality of synthesized images Generate image generation information FI_INF including the plurality of face images and the person identifier of the outer face image IMG_F. It is possible to (S1150).
도 7의 단계(S1110)는 도 1의 이미지 검출 유닛(1110)에 의하여 수행될 수 있고, 도 7의 단계(S1130)는 도 1의 얼굴 이미지 합성 유닛(1130)에 의하여 수행될 수 있고, 도 7의 단계(S1150)는 도 1의 이미지 생성 정보 생성 유닛(1150)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다. Step S1110 of FIG. 7 may be performed by the
도 8은 도 6의 군집화 그래프 생성 단계를 구체적으로 나타내는 흐름도이다.FIG. 8 is a flowchart specifically illustrating a clustering graph generation step of FIG. 6.
도 1 및 도 8을 참조하면, 군집화 그래프를 생성(S1200)함에 있어서, 상기 복수의 얼굴 이미지들로부터 복수의 특징 벡터들(FI_FV)을 추출(S1210)하고. 복수의 특징 벡터들(FI_FV)을 기초로 하여 복수의 얼굴 이미지들(FI_DATA)의 복수의 특징 벡터들(FI_FV)간의 거리를 계산(S1230)하고, 복수의 특징 벡터들(FI_FV) 간의 거리에 기초하여 유사도 행렬(AMATRIX)을 생성(S1250)하고, 유사도 행렬(AMATRIX) 및 이미지 생성 정보(FI_INF)에 기초하여 복수의 얼굴 이미지들(FI_DATA)을 상기 복수의 이미지 군집으로 군집화하고 군집화 그래프(GRAPH)를 생성(S1270)할 수 있다.1 and 8, in generating a clustering graph (S1200), a plurality of feature vectors FI_FV are extracted from the plurality of face images (S1210). The distance between the plurality of feature vectors FI_FV of the plurality of face images FI_DATA is calculated based on the plurality of feature vectors FI_FV (S1230), and based on the distance between the plurality of feature vectors FI_FV. Generate a similarity matrix AMATRIX (S1250), cluster the plurality of face images FI_DATA into the plurality of image clusters based on the similarity matrix AMATRIX and the image generation information FI_INF, and cluster the graph GRAPH. It may be generated (S1270).
도 8의 단계(S1210)는 도 1의 제1 특징 벡터 추출부(1210)에 의하여 수행될 수 있고, 도 8의 단계(S1230)는 도 1의 제1 벡터 거리 계산부(1230)에 의하여 수행될 수 있고, 도 8의 단계(S1250)는 도 1의 유사도 행렬 계산부(1250)에 의하여 수행될 수 있고, 도 8의 단계(S1270)는 도 1의 군집화 그래프 생성부(1270)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다.Step S1210 of FIG. 8 may be performed by the first
도 9는 도 8의 군집화 그래프 생성 단계를 구체적으로 나타내는 흐름도이다.FIG. 9 is a flowchart specifically illustrating a clustering graph generation step of FIG. 8.
도 2 및 도9를 참조하면, 군집화 그래프를 생성(S1270)함에 있어서, 복수의 그래프 노드들, 상기 복수의 그래프 노드들을 연결하는 복수의 에지들 및 상기 복수의 에지들의 가중치들로 이루어지는 군집화 그래프(GRAPH)를 유사도 행렬(AMATRIX)에 기초하여 생성(S1271)하고, 복수의 얼굴 이미지들(FI_DATA)의 이미지 생성 정보(FI_INF) 및 상기 유사도 행렬(AMATRIX)을 이용하여 생성되는 상기 제1 목적함수에 기초하여 군집화 그래프(GRAPH)를 복수의 서브 군집화 그래프들로 분할(S1270a)할 수 있다. 2 and 9, in generating a clustering graph (S1270), a clustering graph including a plurality of graph nodes, a plurality of edges connecting the plurality of graph nodes, and weights of the plurality of edges ( GRAPH is generated based on the similarity matrix AMATRIX (S1271), and the first objective function generated using the image generation information FI_INF of the plurality of face images FI_DATA and the similarity matrix AMATRIX. On the basis of this, the clustering graph GRAPH may be divided into a plurality of sub clustering graphs (S1270a).
도 9의 단계(S1271)는 도 2의 군집화 그래프 초기화부(1271)에 의하여 수행될 수 있고, 도 9의 단계들(S1273a 및 S1273b)은 도 2의 군집화 그래프 분할 처리부(1273)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다.Step S1271 of FIG. 9 may be performed by the clustering
도 10은 본 발명의 일 실시예에 따른 얼굴 이미지 인식 방법을 나타내는 흐름도이다.10 is a flowchart illustrating a face image recognition method according to an embodiment of the present invention.
도 10을 참조하면, 얼굴 이미지 인식 방법에서는 복수의 외부 이미지들로부터 얼굴들을 검출하고 이미지 처리를 수행하여 복수의 얼굴 이미지를 생성(S1100)하고, 상기 복수의 얼굴 이미지들 각각의 소스 정보와 인물 정보로 구성되는 이미지 생성 정보를 생성하고, 상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들을 상기 이미지 생성 정보 및 상기 유사도 행렬에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성(S1200)하고, 상기 복수의 이미지 군집들과 복수의 데이터 베이스 이미지 군집들을 비교하여 상기 복수의 데이터 베이스 이미지 군집에 유사한 이미지 군집들은 유사한 데이터 베이스 군집과 동일한 태깅을 하여 저장(S2300)하고, 상기 복수의 이미지 군집에 기초하여 상기 데이터 베이스 관리부 내에 미리 저장되어 있는 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들을 상기 복수의 얼굴 이미지들과 비교하여 유사도가 높은 정합 이미지들을 검출(S2400)한다.Referring to FIG. 10, in the face image recognition method, faces are detected from a plurality of external images and image processing is performed to generate a plurality of face images (S1100), and source information and person information of each of the plurality of face images. Generate image generation information including a plurality of face images, calculate a similarity matrix from the plurality of face images, and generate a clustering graph of the plurality of face images including a plurality of image clusters based on the image generation information and the similarity matrix. In operation S1200, the plurality of image clusters and the plurality of database image clusters are compared to store similar image clusters in the plurality of database image clusters with the same tagging as the similar database clusters (S2300). The database based on an image cluster of A plurality of database images belonging to a high similarity cluster among the plurality of database image clusters previously stored in the unit are compared with the plurality of face images to detect matching images having high similarity (S2400).
도 10의 단계(S1100)는 도 1의 이미지 검출부(1100)에 의하여 수행될 수 있고, 도 10의 단계(S1200)는 도 1의 이미지 군집화 처리부(1200)에 의하여 수행될 수 있고, 도 10의 단계(S2300)는 도 3의 데이터 베이스 저장부(2300)에 의하여 수행될 수 있고, 도 10의 단계(S2400)는 도 3의 이미지 정합부(2400)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다.Step S1100 of FIG. 10 may be performed by the
도 11은 도 10의 정합 이미지 검출 단계를 구체적으로 나타내는 흐름도이다.11 is a flowchart specifically illustrating a registration image detection step of FIG. 10.
도 4 및 도 11을 참조하면, 상기 정합 이미지 검출 단계(S2400)는 상기 복수의 이미지 군집에 기초하여 복수의 얼굴 이미지들(FI_DATA)로부터 복수의 특징 벡터들(FI_FV)을 추출(S2410)하고, 복수의 특징 벡터들(FI_FV)을 기초로 하여 복수의 얼굴 이미지들(FI_DATA)의 복수의 특징 벡터들(FI_FV)과 복수의 데이터 베이스 이미지 군집들 중 유사도 높은 군집에 속하는 복수의 데이터 베이스 이미지들의 특징 벡터들(DB_FV) 사이의 거리를 계산(S2430)하고, 상기 특징 벡터 거리들에 기초하여 유사도를 계산하고, 상기 유사도가 높은 후보 얼굴 이미지(FI_OUT)를 제공(S2450)할 수 있다. 4 and 11, in the registration image detection step S2400, a plurality of feature vectors FI_FV are extracted from a plurality of face images FI_DATA based on the plurality of image clusters in operation S2410. Based on the plurality of feature vectors FI_FV, a plurality of feature vectors FI_FV of the plurality of face images FI_DATA and a plurality of database images belonging to a similar cluster among the plurality of database image clusters. The distance between the vectors DB_FV may be calculated (S2430), the similarity may be calculated based on the feature vector distances, and the candidate face image FI_OUT having the similarity may be provided (S2450).
도 11의 단계(S2410)는 도 4의 제2 특징 벡터 추출부(2410)에 의하여 수행될 수 있고, 도 11의 단계(S2430)는 도 4의 제2 벡터 거리 계산부(2430)에 의하여 수행될 수 있고, 도 11의 단계(S2450)는 도 4의 유사도 계산부(2450)에 의하여 수행될 수 있다. 따라서 중복되는 설명은 생략한다.Step S2410 of FIG. 11 may be performed by the second
상술한 바와 같이, 본 발명의 실시예에 따른 이미지 군집화 장치 및 방법, 이미지 인식 장치 및 방법들은 설명의 편의를 위해 인물의 얼굴을 주요 대상으로 하는 이미지들에 대한 동작을 주로 설명하였지만, 인물의 얼굴 이미지뿐만 아니라 군집화 될 수 있거나 개별적으로 식별 가능한 임의의 대상에 대한 이미지들에 채용될 수 있음을 이해하여야 한다. As described above, the image clustering apparatus and method, the image recognition apparatus and the method according to the embodiment of the present invention mainly described the operation of the image to the main subject of the person's face for convenience of description, the face of the person It should be understood that the image may be employed in images for any object that can be clustered or individually identified.
상기 블록도와 순서도에 나타난 각각의 블록 또는 블록의 집합들의 동작이나 기능들은 하드웨어 또는 소프트웨어 기반으로 다양한 형태로 구현될 수 있음을 이해하여야 한다. 상기 블록도와 순서도에 나타난 블록 또는 블록의 집합들의 동작이나 기능을 구현하기 위한 구조나 수단을 생성할 수 있도록, GPP(General Purpose Processor), SPP(Special Purpose Processor)를 탑재한 컴퓨터, 그 외 프로그램이 가능한 장치에 의해 소프트웨어 기반으로도 구현될 수 있음을 이해하여야 한다.It is to be understood that the operations or functions of each block or sets of blocks shown in the block diagram and the flowchart may be implemented in various forms based on hardware or software. A computer equipped with a general purpose processor (GPP), a special purpose processor (SPP), and other programs to generate a structure or a means for implementing the operation or function of the block or sets of blocks shown in the block diagram and the flow chart. It should be understood that the device may also be implemented on a software basis.
본 발명에 따르면, 임의의 얼굴 이미지 인식 장치, 이미지 관리 시스템, 얼굴 이미지 검출 장치 및 이미지 인식 시스템에 유용하게 이용될 수 있다. 또한 본 발명은 퍼스널 컴퓨너, 스마트 휴대폰, 인터넷 단말기, 전자 수첩, 데이터 베이스 관리 서버, 노트북 컴퓨터, PDA, 텔레비전 등 다양한 멀티미디어 콘텐츠 관리 장치에 유용하게 이용될 수 있다.According to the present invention, it can be usefully used in any face image recognition device, image management system, face image detection device and image recognition system. In addition, the present invention can be usefully used in various multimedia content management devices such as personal computers, smart phones, Internet terminals, electronic notebooks, database management server, notebook computer, PDA, television.
상술한 바와 같이, 본 발명의 바람직한 실시예를 참조하여 설명하였지만 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.As described above, the present invention has been described with reference to a preferred embodiment of the present invention, but those skilled in the art may vary the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. It will be understood that modifications and changes can be made.
Claims (13)
상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬을 이용하여 생성되는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성하는 이미지 군집화 처리부를 포함하고,
상기 복수의 얼굴 이미지들 각각의 상기 소스 정보는 상기 복수의 얼굴 이미지들이 추출된 소스 이미지에 대한 이미지 식별자를 가지고, 상기 복수의 얼굴 이미지들 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가지는 이미지 군집화 장치.An image detector configured to detect faces from a plurality of external images to generate a plurality of face images, and to generate image generation information including source information and person information of each of the plurality of face images; And
Computing a similarity matrix from the plurality of face images and converting the similarity matrix into a plurality of image clusters based on the first and second object functions generated using the plurality of face images, the image generation information, and the similarity matrix. An image clustering processing unit for generating a clustering graph consisting of,
The source information of each of the plurality of face images has an image identifier of a source image from which the plurality of face images are extracted, and the person information of each of the plurality of face images is the same with respect to face images of the same person. An image clustering device having a person identifier.
상기 복수의 얼굴 이미지들로부터 복수의 특징 벡터들을 추출하는 제1 특징 벡터 추출부;
상기 복수의 특징 벡터들을 기초로 하여 상기 복수의 얼굴 이미지들의 상기 복수의 특징 벡터들간의 거리를 계산하는 제1 벡터 거리 계산부;
상기 복수의 특징 벡터들 사이의 거리에 기초하여 유사도 행렬을 생성하는 유사도 행렬 생성부; 및
상기 유사도 행렬 및 상기 이미지 생성 정보에 기초하여 상기 복수의 얼굴 이미지들을 상기 복수의 이미지 군집으로 군집화하고 상기 군집화 그래프를 생성하는 군집화 그래프 생성부를 포함하는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 1, wherein the image clustering processing unit
A first feature vector extractor which extracts a plurality of feature vectors from the plurality of face images;
A first vector distance calculator configured to calculate distances between the plurality of feature vectors of the plurality of face images based on the plurality of feature vectors;
A similarity matrix generator for generating a similarity matrix based on distances between the plurality of feature vectors; And
And a clustering graph generator configured to cluster the plurality of face images into the plurality of image clusters and generate the clustering graph based on the similarity matrix and the image generation information.
상기 복수의 특징 벡터들을 각각 포함하고, 상기 복수의 얼굴 이미지들의 개수와 동일한 개수를 가지는 복수의 그래프 노드들, 상기 복수의 그래프 노드들을 연결하는 복수의 에지들 및 상기 복수의 에지들의 가중치들로 이루어진 군집화 그래프를 상기 유사도 행렬에 기초하여 생성하는 군집화 그래프 초기화부; 및
상기 복수의 얼굴 이미지들의 상기 이미지 생성 정보 및 상기 상기 유사도 행렬을 이용하여 생성되는 상기 제1 목적함수에 기초하여 상기 군집화 그래프를 복수의 서브 군집화 그래프들로 분할하고, 상기 복수의 서브 군집화 그래프들의 그래프 분할 여부를 상기 제2 목적함수에 기초하여 결정하는 군집화 그래프 분할 처리부를 포함하는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 3, wherein the clustering graph generation unit
A plurality of graph nodes each including the plurality of feature vectors and having the same number as the number of face images, a plurality of edges connecting the plurality of graph nodes, and weights of the plurality of edges. A clustering graph initialization unit generating a clustering graph based on the similarity matrix; And
The clustering graph is divided into a plurality of sub clustering graphs based on the image generation information of the plurality of face images and the first objective function generated using the similarity matrix, and the graph of the plurality of sub clustering graphs. And a clustering graph segmentation processing unit configured to determine whether to segment based on the second objective function.
상기 복수의 에지들은 상기 복수의 그래프 노드들 전체를 서로 연결하는 전체 연결 방식, 상기 복수의 그래프 노드들 각각에 가장 가까운 k(k는 1이상의 정수)개의 그래프 노드들을 서로 연결하는 최근접 연결 방식 및 상기 복수의 그래프 노드들 각각에 포함되는 특징 벡터들 사이의 거리가 거리 문턱값 보다 작은 그래프 노드들을 연결하는 특징 벡터 거리 기반 연결 방식 중 어느 하나의 방식으로 연결되는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 4, wherein
The plurality of edges may include a total connection method for connecting all of the plurality of graph nodes to each other, a closest connection method for connecting k (k is an integer of 1 or more) graph nodes closest to each of the plurality of graph nodes, and And a feature vector distance based connection method for connecting graph nodes having a distance between feature vectors included in each of the plurality of graph nodes smaller than a distance threshold.
그래프 분할 동작 모드에서 상기 복수의 서브 군집화 그래프들에 대하여 계산되는 상기 제1 목적함수의 값들이 각각 가장 작은 값을 가지도록 상기 복수의 서브 군집화 그래프들을 분할하는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 4, wherein the clustering graph segmentation processing unit
And dividing the plurality of sub-grouping graphs such that the values of the first objective function calculated for the plurality of sub-grouping graphs each have the smallest value in a graph division mode of operation.
상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 분할 문턱값보다 크면 상기 복수의 서브 군집화 그래프들을 더 이상 분할 하지 않고, 상기 복수의 서브 군집화 그래프들의 상기 제2 목적함수가 상기 분할 문턱값보다 작으면 상기 복수의 서브 군집화 그래프들을 상기 복수의 서브 군집화 그래프들의 얼굴 이미지들의 상기 이미지 생성 정보를 이용하여 생성되는 상기 제1 목적함수에 기초하여 분할하는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 4, wherein the clustering graph segmentation processing unit
If the second objective function of the plurality of sub clustering graphs is larger than the division threshold, the second objective function of the plurality of sub clustering graphs is no longer divided, and the second objective function of the plurality of sub clustering graphs is smaller than the division threshold. And dividing the plurality of sub clustering graphs based on the first objective function generated using the image generation information of face images of the plurality of sub clustering graphs.
상기 제2 목적함수는 상기 서브 군집화 그래프들 각각의 노드의 개수와 에지의 개수를 이용하여 계산되는 에지의 밀도들에 기초하여 생성되는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 7, wherein
And the second objective function is generated based on density of edges calculated using the number of nodes and the number of edges of each of the sub-grouping graphs.
PCA(Principle Component Analysis), LTP(Local Ternary Pattern), LDA(Linear Discriminate Analysis) 중 적어도 어느 하나를 이용하여 상기 복수의 특징 벡터들을 추출하는 것을 특징으로 하는 이미지 군집화 장치.The method of claim 3, wherein the first feature vector extraction unit
And a plurality of feature vectors are extracted using at least one of a Principle Component Analysis (PCA), a Local Ternary Pattern (LTP), and a Linear Discriminate Analysis (LDA).
상기 복수의 얼굴 이미지들로부터 유사도 행렬을 계산하고, 상기 복수의 얼굴 이미지들, 상기 이미지 생성 정보 및 상기 유사도 행렬을 이용하여 생성되는 제1 목적함수 및 제2 목적함수에 기초하여 복수의 이미지 군집으로 이루어진 군집화 그래프를 생성하는 단계를 포함하고,
상기 복수의 얼굴 이미지들 각각의 상기 소스 정보는 상기 복수의 얼굴 이미지들이 추출된 소스 이미지에 대한 이미지 식별자를 포함하고, 상기 복수의 얼굴 이미지들 각각의 상기 인물 정보는 동일 인물의 얼굴 이미지들에 대하여 동일한 인물 식별자를 가지는 이미지 군집화 방법.Detecting faces from a plurality of external images to generate a plurality of face images, and generating image generation information including source information and person information of each of the plurality of face images; And
Computing a similarity matrix from the plurality of face images and converting the similarity matrix into a plurality of image clusters based on the first and second object functions generated using the plurality of face images, the image generation information, and the similarity matrix. Generating a clustering graph comprising:
The source information of each of the plurality of face images includes an image identifier of a source image from which the plurality of face images are extracted, and the person information of each of the plurality of face images corresponds to face images of the same person. Image clustering method having the same person identifier.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100059038A KR101089504B1 (en) | 2010-06-22 | 2010-06-22 | Method and apparatus of clustering image and method and apparatus of recognizing image using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100059038A KR101089504B1 (en) | 2010-06-22 | 2010-06-22 | Method and apparatus of clustering image and method and apparatus of recognizing image using the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101089504B1 true KR101089504B1 (en) | 2011-12-05 |
Family
ID=45505579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100059038A KR101089504B1 (en) | 2010-06-22 | 2010-06-22 | Method and apparatus of clustering image and method and apparatus of recognizing image using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101089504B1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101389980B1 (en) | 2013-03-06 | 2014-05-07 | 주식회사 슈프리마 | Face identification apparatus, system and method for managing user using user grouping |
CN110348272A (en) * | 2018-04-03 | 2019-10-18 | 北京京东尚科信息技术有限公司 | Method, apparatus, system and the medium of dynamic human face identification |
CN110377774A (en) * | 2019-07-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | Carry out method, apparatus, server and the storage medium of personage's cluster |
KR102114223B1 (en) * | 2019-12-10 | 2020-05-22 | 셀렉트스타 주식회사 | Method for filtering a similar image based on deep learning and apparatus using the same |
KR20230006071A (en) * | 2021-07-02 | 2023-01-10 | 가천대학교 산학협력단 | Apparatus for deep softmax collaborative representation for face recognition and method thereof |
-
2010
- 2010-06-22 KR KR1020100059038A patent/KR101089504B1/en not_active IP Right Cessation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101389980B1 (en) | 2013-03-06 | 2014-05-07 | 주식회사 슈프리마 | Face identification apparatus, system and method for managing user using user grouping |
CN110348272A (en) * | 2018-04-03 | 2019-10-18 | 北京京东尚科信息技术有限公司 | Method, apparatus, system and the medium of dynamic human face identification |
CN110377774A (en) * | 2019-07-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | Carry out method, apparatus, server and the storage medium of personage's cluster |
CN110377774B (en) * | 2019-07-15 | 2023-08-01 | 腾讯科技(深圳)有限公司 | Method, device, server and storage medium for person clustering |
KR102114223B1 (en) * | 2019-12-10 | 2020-05-22 | 셀렉트스타 주식회사 | Method for filtering a similar image based on deep learning and apparatus using the same |
WO2021118039A1 (en) * | 2019-12-10 | 2021-06-17 | 셀렉트스타 주식회사 | Deep learning-based method for filtering similar images, and apparatus using same |
US11830237B2 (en) | 2019-12-10 | 2023-11-28 | Select Star, Inc. | Deep learning-based method for filtering similar images, and apparatus using same |
KR20230006071A (en) * | 2021-07-02 | 2023-01-10 | 가천대학교 산학협력단 | Apparatus for deep softmax collaborative representation for face recognition and method thereof |
KR102538209B1 (en) | 2021-07-02 | 2023-05-30 | 가천대학교 산학협력단 | Apparatus for deep softmax collaborative representation for face recognition and method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10025950B1 (en) | Systems and methods for image recognition | |
US11055555B2 (en) | Zero-shot object detection | |
US9176987B1 (en) | Automatic face annotation method and system | |
WO2019119505A1 (en) | Face recognition method and device, computer device and storage medium | |
US20210374386A1 (en) | Entity recognition from an image | |
US11080316B1 (en) | Context-inclusive face clustering | |
US20150039583A1 (en) | Method and system for searching images | |
CN110348362B (en) | Label generation method, video processing method, device, electronic equipment and storage medium | |
US20110299743A1 (en) | Scalable face image retrieval | |
US7401062B2 (en) | Method for resource allocation among classifiers in classification systems | |
KR101089504B1 (en) | Method and apparatus of clustering image and method and apparatus of recognizing image using the same | |
CN110232331B (en) | Online face clustering method and system | |
KR101777238B1 (en) | Method and system for image trend detection and curation of image | |
CN112883154B (en) | Text topic mining method and device, computer equipment and storage medium | |
US20230032728A1 (en) | Method and apparatus for recognizing multimedia content | |
Nanni et al. | Combining face and eye detectors in a high-performance face-detection system | |
CN111639228A (en) | Video retrieval method, device, equipment and storage medium | |
Dharani et al. | Content based image retrieval system using feature classification with modified KNN algorithm | |
Gornale et al. | Analysis and detection of content based video retrieval | |
Trad et al. | Large scale visual-based event matching | |
CN112328833A (en) | Label processing method and device and computer readable storage medium | |
Li et al. | Social context-aware person search in videos via multi-modal cues | |
Markatopoulou et al. | Local features and a two-layer stacking architecture for semantic concept detection in video | |
CN104778272B (en) | A kind of picture position method of estimation excavated based on region with space encoding | |
CN113128526A (en) | Image recognition method and device, electronic equipment and computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |