KR102629764B1 - Apparatus and Method for face Recognition based on Crawling and Deep Learning - Google Patents

Apparatus and Method for face Recognition based on Crawling and Deep Learning Download PDF

Info

Publication number
KR102629764B1
KR102629764B1 KR1020210050594A KR20210050594A KR102629764B1 KR 102629764 B1 KR102629764 B1 KR 102629764B1 KR 1020210050594 A KR1020210050594 A KR 1020210050594A KR 20210050594 A KR20210050594 A KR 20210050594A KR 102629764 B1 KR102629764 B1 KR 102629764B1
Authority
KR
South Korea
Prior art keywords
server
data
deep learning
feature point
learning
Prior art date
Application number
KR1020210050594A
Other languages
Korean (ko)
Other versions
KR20220144209A (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 KR1020210050594A priority Critical patent/KR102629764B1/en
Publication of KR20220144209A publication Critical patent/KR20220144209A/en
Application granted granted Critical
Publication of KR102629764B1 publication Critical patent/KR102629764B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation

Landscapes

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

Abstract

본 발명은 크롤링 및 딥러닝 기반의 얼굴인식장치 및 방법에 관한 것으로, SNS, 웹사이트를 크롤링한 데이터를 저장하고, 얼굴사진의 딥러닝 학습과정을 통해 얼굴 특징점을 인식하고, 크롤링한 영상 키프레임에서 얼굴검출 이미지를 분리 분석하여 얼굴 특징점(Facial landmark)과 매칭 및 비교를 통해 사용자 얼굴 이미지를 추출하여 사용자에게 제공하는데 그 목적이 있다.The present invention relates to a face recognition device and method based on crawling and deep learning, which stores data crawled from SNS and websites, recognizes facial features through a deep learning learning process of face photos, and creates keyframes from crawled images. The purpose is to separate and analyze the face detection image and extract the user's face image through matching and comparison with facial landmarks and provide it to the user.

Description

크롤링 및 딥러닝 기반의 얼굴인식장치 및 방법 {Apparatus and Method for face Recognition based on Crawling and Deep Learning}Face recognition device and method based on crawling and deep learning {Apparatus and Method for face Recognition based on Crawling and Deep Learning}

본 발명은 크롤링 및 딥러닝 기반의 얼굴인식방법에 관한 것으로, 보다 상세하게는 SNS, 웹사이트를 크롤링한 데이터를 저장하고, 얼굴사진의 딥러닝 학습과정을 통해 얼굴 특징점을 인식하고, 크롤링한 영상 키프레임에서 얼굴검출 이미지를 분리 분석하여 얼굴 특징점(Facial landmark)과 매칭 및 비교를 통해 사용자 얼굴 이미지를 추출하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법에 관한 것이다.The present invention relates to a face recognition method based on crawling and deep learning. More specifically, it stores data crawled from SNS and websites, recognizes facial features through a deep learning learning process of face photos, and crawls video. This relates to a face recognition method based on crawling and deep learning, which is characterized by separating and analyzing face detection images from key frames and extracting user face images through matching and comparison with facial landmarks.

최근 이미지 처리 기술의 발달로 쿼리 이미지(query image)로부터 추출된 특징점을 데이터베이스에 저장된 이미지들의 특징점과 비교하여 유사 이미지를 검색하는데 많이 사용되고 있다.With the recent development of image processing technology, it is widely used to search for similar images by comparing feature points extracted from a query image with feature points of images stored in a database.

종래에는 웹(Web) 상에서 이미지들을 크롤링하고, 각 이미지들의 특징점을 데이터베이스화 한다. 웹 기반 이미지 검색의 경우, 서버에 미리 저장된 데이터에 기반하여 쿼리 이미지와 유사한 이미지들에 제공될 수 있다. Conventionally, images are crawled on the Web and the characteristic points of each image are created into a database. In the case of web-based image search, images similar to the query image may be provided based on data previously stored on the server.

예를 들어, 유사 이미지는 쿼리 이미지와 의미론적 태그(semantic tag)가 동일한 이미지일 수 있다. 예를 들어, 쿼리 이미지로서 셀피(selfie) 이미지가 이용되는 경우, 유사한 구도의 셀피 이미지가 유사 이미지로 제공될 수 있다. 그러나, 웹 기반 이미지 검색에 이용되는 데이터베이스는 쿼리 이미지 내의 인물과 동일한 인물을 포함하는 이미지에 대한 정보를 포함하지 않을 수 있다. 따라서, 검색 결과는 쿼리 이미지 내의 인물과 동일한 인물의 이미지를 사용자에게 제공하지 못할 수도 있다. For example, a similar image may be an image that has the same semantic tag as the query image. For example, when a selfie image is used as a query image, a selfie image with a similar composition may be provided as a similar image. However, the database used for web-based image search may not contain information about images containing the same person as the person in the query image. Accordingly, the search results may not provide the user with an image of the same person as the person in the query image.

이와 같이 쿼리 이미지의 태그에 기반하여 유사 이미지 검색이 수행될 수 있다. 이 경우, 쿼리 이미지의 태그와 동일한 태그를 갖는 데이터 베이스 내의 이미지들이 유사 이미지로서 사용자에게 제공될 수 있다. In this way, similar image search can be performed based on the tags of the query image. In this case, images in the database that have the same tag as the tag of the query image may be provided to the user as similar images.

웹기반 이미지 검색의 경우, 데이터 베이스 내에 많은 수의 이미지들이 저장된다. 따라서, 각각의 태그에 대응하는 이미지들의 수가 상대적으로 크다. 반면, 사용자 장치에 저장될 수 있는 이미지의 수는 웹 서버에 비하여 상대적으로 작다. In the case of web-based image search, a large number of images are stored in the database. Therefore, the number of images corresponding to each tag is relatively large. On the other hand, the number of images that can be stored on a user device is relatively small compared to a web server.

따라서, 태그에 기반하여 사용자 장치의 이미지들에 대한 유사 이미지 검색이 수행되는 경우, 쿼리 이미지의 태그에 대응할 수 있는 유사 이미지의 수가 상대적으로 제한적이다. Therefore, when a similar image search is performed for images of a user device based on a tag, the number of similar images that can correspond to the tag of the query image is relatively limited.

또한, 쿼리 이미지로부터 식별된 태그가 실제 쿼리 이미지의 문맥(context)에 대응하지 않는 경우, 실제 쿼리 이미지와 유사하지 않은 이미 지들이 태그 기반 이미지 검색 결과로서 제공될 수 있다. Additionally, if the tag identified from the query image does not correspond to the context of the actual query image, images that are not similar to the actual query image may be provided as tag-based image search results.

그러나, 사용자의 얼굴인식을 위해 보다 정확하고, 구체적인 다양한 얼굴 특징점(Face landmark)에 의한 얼굴인식 기술이 요구되고 있으며, 지속적으로 얼굴인식 학습을 수행하고, 사용자 얼굴을 매칭 성능 향상을 위한 딥러닝 기술이 요구되고 있다.However, for user face recognition, more accurate and specific face recognition technology based on various facial landmarks is required, and deep learning technology is used to continuously perform face recognition learning and improve user face matching performance. This is being demanded.

국내특허공개 제10-2019-0021130호 (공개일 2019.03.05.)Domestic Patent Publication No. 10-2019-0021130 (publication date 2019.03.05.) 국내특허공개 제10-2019-0069920호 (공개일 2019.06.20.)Domestic Patent Publication No. 10-2019-0069920 (publication date 2019.06.20.)

따라서, 본 발명은 SNS, 웹사이트를 크롤링한 데이터를 저장하고, 얼굴사진의 딥러닝 학습과정을 통해 얼굴 특징점을 인식하고, 크롤링한 영상 키프레임에서 얼굴검출 이미지를 분리 분석하여 얼굴 특징점(Facial landmark)과 매칭 및 비교를 통해 사용자 얼굴 이미지를 추출하여 사용자에게 제공하도록 하는 크롤링 및 딥러닝 기반의 얼굴인식방법을 제공하는데 그 목적이 있다.Therefore, the present invention stores data crawled from SNS and websites, recognizes facial landmarks through a deep learning learning process of face photos, and separates and analyzes face detection images from crawled image keyframes to determine facial landmarks. The purpose is to provide a face recognition method based on crawling and deep learning that extracts the user's face image through matching and comparison and provides it to the user.

본 발명의 목적을 달성하기 위한 크롤링 및 딥러닝 기반의 얼굴인식장치는 크롤러를 이용하여 SNS(Social Network Service) 또는 웹사이트에서 데이터를 크롤링하고, 크롤링한 크롤링 데이터에서 사용자의 얼굴 이미지와 매칭되는 이미지를 추출하는 크롤링 및 딥러닝 기반의 얼굴인식장치에 있어서, 상기 크롤러의 크롤링 데이터를 임시저장DB에 저장하고, 딥러닝과정을 통해 분석된 영상정보 및 키프레임별 얼굴 특징점 데이터를 메인서버DB 에 저장하는 메인서버; 상기 임시저장DB에 저장된 크롤링 데이터의 영상 또는 이미지 데이터를 다운로드하여 상기 저장서버DB에 저장하는 미디어 다운로더; 상기 메인서버로부터 얼굴 이미지가 포함된 키프레임 이미지 데이터를 입력받아 학습 및 재학습을 통한 추론모델에 의해 얼굴 데이터에서 키프레임별 얼굴 특징점을 추출하여 상기 메인서버로 제공하는 딥러닝서버; 및 상기 메인서버로부터 상기 특징점DB에 저장된 크롤링에 의한 얼굴 특징점 데이터와 특정 얼굴 특징점 데이터를 비교하여 설정된 일치도 이상의 데이터를 추출하여 결과를 보여주는 웹서버;를 포함하여 이루어진 것을 특징으로 한다.To achieve the purpose of the present invention, a face recognition device based on crawling and deep learning uses a crawler to crawl data from SNS (Social Network Service) or a website, and an image that matches the user's face image in the crawled data. In the crawling and deep learning-based face recognition device that extracts, the crawling data of the crawler is stored in a temporary storage DB, and the image information and facial feature point data for each key frame analyzed through the deep learning process are stored in the main server DB. The main server that does; a media downloader that downloads video or image data of the crawling data stored in the temporary storage DB and stores it in the storage server DB; A deep learning server that receives key frame image data containing a face image from the main server, extracts facial feature points for each key frame from the face data using an inference model through learning and re-learning, and provides the facial feature points to the main server; And a web server that compares the crawled facial feature point data stored in the feature point DB from the main server with the specific facial feature point data, extracts data greater than a set match value, and displays the results.

여기서, 상기 딥러닝서버는 상기 메인서버로부터 입력된 얼굴데이터를 추론모듈 및 특징점모듈을 이용하여 얼굴의 특징점을 추출하여 상기 메인서버로 출력하되, 상기 메인서버를 통해 상기 특징점DB로부터의 특징점 데이터를 요청하는 재학습서버; 상기 메인서버로부터 수집된 얼굴데이터와 특징점 데이터를 학습을 수행하여 추론모델을 추출하는 학습서버;를 포함하며, 상기 학습서버를 통해 추출된 새로운 추론모델을 기존의 추론모델과 교체하여 상기 추론서버로 제공하는 것을 특징으로 한다.Here, the deep learning server extracts facial feature points from the face data input from the main server using an inference module and a feature point module and outputs them to the main server, and extracts feature point data from the feature point DB through the main server. Requesting re-learning server; It includes a learning server that extracts an inference model by learning the face data and feature point data collected from the main server, and replaces the new inference model extracted through the learning server with the existing inference model and sends it to the inference server. It is characterized by providing.

상기 딥러닝서버는 얼굴의 특징점을 추출을 통해 생성된 R,G,B이미지를 입력받는 입력레이어; 준비된 학습자료를 바탕으로 레이어 파일에 기술된 내용으로 학습을 진행하여 얼굴 특징점 포인트의 위치를 찾는 학습레이어; 및 상기 학습레이어에서의 얼굴 특징점 포인트의 좌표값을 출력하는 출력레이어;를 포함하여 이루어진 것을 특징으로 한다.The deep learning server includes an input layer that receives R, G, and B images generated by extracting facial feature points; A learning layer that finds the location of facial feature points by learning with the content described in the layer file based on the prepared learning materials; and an output layer that outputs coordinate values of facial feature points in the learning layer.

본 발명의 목적을 달성하기 위한 크롤링 및 딥러닝 기반의 얼굴인식과정은 크롤러를 이용하여 SNS(Social Network Service) 또는 웹사이트에서 데이터를 크롤링하여 메인서버를 통해 저장하고, 상기 크롤링 데이터에서 사용자의 특정 얼굴 이미지와 매칭되는 이미지를 추출하는 크롤링 및 딥러닝 기반의 얼굴인식방법에 있어서, 상기 크롤러가 지정된 웹사이트 또는 SNS에서 데이터를 크롤링하여 크롤링 데이터를 저장하고, 저장된 크롤링 데이터에서 얼굴 이미지가 포함된 키프레임(Keyframe) 데이터를 추출하는 제1과정; 상기 제1과정에서 추출된 얼굴 이미지 키프레임 데이터를 딥러닝서버로 전송하여 얼굴 특징점을 요청하는 제2과정; 상기 얼굴 이미지 키프레임 데이터를 입력받은 딥러닝서버는 학습 및 재학습과정을 통해 추론모델에 대한 키프레임 별 얼굴 특징점을 추출하는 제3과정; 및 상기 제3과정에서 추출된 얼굴 특징점 데이터를 저장하고, 상기 특정 얼굴 특징점과 비교 분석하여 매칭되는 얼굴 이미지를 추출하는 제4과정;을 포함하여 이루어진 것을 특징으로 한다.The crawling and deep learning-based face recognition process to achieve the purpose of the present invention uses a crawler to crawl data from SNS (Social Network Service) or a website, stores it through the main server, and specifies the user's identity in the crawled data. In a face recognition method based on crawling and deep learning that extracts an image matching a face image, the crawler crawls data from a designated website or SNS, stores the crawled data, and stores a key containing a face image from the stored crawling data. First process of extracting frame (Keyframe) data; A second process of transmitting the facial image keyframe data extracted in the first process to a deep learning server to request facial feature points; A third process in which the deep learning server that receives the facial image keyframe data extracts facial feature points for each keyframe for the inference model through a learning and re-learning process; And a fourth process of storing the facial feature point data extracted in the third step, comparing and analyzing the specific facial feature point, and extracting a matching facial image.

상기 제1과정은 메인서버에 의해 상기 크롤러에 의해 등록된 SNS 또는 웹사이트의 큐에 따라 이미지 또는 동영상을 크롤링하여 임시저장DB에 저장하는 11단계; 및 상기 임시저장DB에 저장된 상기 이미지 또는 동영상 정보를 미디어 다운로더에서 프레임 분석 큐에 등록하고, 상기 프레임 분석프로그램에 의해 큐를 처리하는 12단계; 상기 프레임 분석프로그램에 의해 원본 이미지가 포함된 키프레임을 분석하여, 키프레임 속 얼굴정보를 확인하고, 키프레임 및 얼굴 이미지를 추출하여 저장서버DB에 저장하는 13단계;를 포함하는 것을 특징으로 한다.The first process includes step 11 of crawling images or videos by the main server according to the queue of SNS or website registered by the crawler and storing them in a temporary storage DB; and step 12 of registering the image or video information stored in the temporary storage DB in a frame analysis queue in the media downloader and processing the queue by the frame analysis program. 13 steps of analyzing the key frame containing the original image by the frame analysis program, confirming the facial information in the key frame, extracting the key frame and face image, and storing them in the storage server DB. .

또한, 상기 제2과정에서 딥러닝 학습은 크롤링된 이미지에서 얼굴 이미지만 추출 및 잘라내기(crop)하는 21단계; 상기 추출 및 잘라낸 얼굴 이미지에서 얼굴 특징점을 추출하는 22단계; 얼굴 이미지의 위치 교정 및 투영하는 23단계; 교정된 얼굴 이미지에서 기본 측정값을 추출하고 인코딩하는 24단계; 및 얼굴 이미지의 특징 분류 및 신경망 훈련을 통해 얼굴 특징 분류기 학습과 특징점을 생성하도록 트레이닝하는 25단계;를 포함하는 것을 특징으로 한다.In addition, deep learning in the second process includes step 21 of extracting and cropping only the face image from the crawled image; Step 22 of extracting facial feature points from the extracted and cropped face image; 23 steps to correct and project the position of the face image; 24 steps to extract and encode baseline measurements from the calibrated face images; And 25 steps of learning a facial feature classifier and training to generate feature points through feature classification of facial images and neural network training.

또한, 상기 제3과정에 부가하여, 상기 딥러닝서버는 재학습서버에서 학습에 필요한 얼굴 이미지 데이터와 특징점 데이터를 요청하는 31단계; 상기 메인서버는 상기 재학습서버에서 특징점 데이터를 상기 특징점DB로 요청하는 32단계; 상기 메인서버는 상기 특징점DB에서 얼굴 특징점들을 랜덤하게 추출하여 상기 딥러닝서버의 학습서버로 전달하는 33단계; 상기 학습서버로부터 추출된 얼굴 특징점들을 이용한 새롭게 학습된 추론모델을 기존 추론모델로 교체하는 34단계; 및 상기 추론서버는 상기 34단계에서 새롭게 교체된 추론모델을 사용하여 상기 얼굴 특징점 데이터를 추출한 후 상기 메인서버로 제공하는 35단계;를 포함하는 것을 특징으로 한다.Additionally, in addition to the third process, step 31 of the deep learning server requesting face image data and feature point data required for learning from the re-learning server; Step 32, where the main server requests feature point data from the re-learning server to the feature point DB; Step 33, wherein the main server randomly extracts facial feature points from the feature point DB and transmits them to the learning server of the deep learning server; Step 34 of replacing the newly learned inference model using facial feature points extracted from the learning server with the existing inference model; and step 35 in which the inference server extracts the facial feature point data using the newly replaced inference model in step 34 and provides the facial feature point data to the main server.

본 발명에 따른 크롤링 및 딥러닝 기반의 얼굴인식장치 및 방법은 SNS, 웹사이트를 크롤링한 데이터를 저장하고, 얼굴사진의 딥러닝 학습과정을 통해 얼굴 특징점을 인식하고, 크롤링한 영상 키프레임에서 얼굴 이미지를 분리 분석하여 얼굴 특징점과 매칭 및 비교를 통해 사용자의 동일 얼굴 이미지만을 추출할 수 있으며, 특히, 자신의 얼굴이 노출되기 원치 않는 사용자의 얼굴 이미지를 데이터 학습하고, 이와 매칭되는 얼굴 이미지를 인터넷상에서 크롤링하여 추출할 수 있는 효과가 있다. The crawling and deep learning-based face recognition device and method according to the present invention stores data crawled from SNS and websites, recognizes facial feature points through a deep learning learning process of face photos, and recognizes faces from the crawled image keyframes. By separating and analyzing the images, you can extract only the same face images of the user by matching and comparing them with facial features. In particular, you can learn the data of the face images of users who do not want their faces exposed, and upload the matching face images to the Internet. There is an effect of being able to extract it by crawling on it.

또한, 크롤링한 영상이 10~100MB 사이의 큰 데이터일 경우 이를 처리하는데 어려움이 있으나, 이를 해결하기 위해 'Horizontal Scalability' 및 'High Availability'의 특징을 활용 NoSQL 데이터 베이스를 적용하고, 여러 데이터베이스에 분산 저장하여 빠른 접근 및 대용량 데이터 감당할 수 있으며, 대용량을 감당하기 위한 환경으로 클라우드 서버와 리얼 서버를 동시 사용하는 환경으로 고용량의 데이터를 처리할 수 있는 효과가 있으며, 플랫폼 환경을 구현하기 위해 임시저장DB, 저장서버DB 및 메인서버DB로 분할처리를 통해 효과적으로 처리할 수 있다.In addition, if the crawled video is large data between 10 and 100MB, it is difficult to process it. To solve this, apply a NoSQL database using the characteristics of 'Horizontal Scalability' and 'High Availability' and distribute it across multiple databases. It can be stored for quick access and handle large amounts of data. It is an environment that uses cloud servers and real servers simultaneously to handle large amounts of data, which is effective in processing high volumes of data. Temporary storage DB is used to implement a platform environment. , It can be processed effectively through split processing into the storage server DB and main server DB.

도 1은 본 발명의 실시예에 따른 크롤링 및 딥러닝 기반의 얼굴인식장치의 구성도이고,
도 2는 본 발명의 실시예에 따른 크롤링 및 딥러닝 기반의 얼굴인식과정의 전체 흐름도이다.
1 is a configuration diagram of a crawling and deep learning-based face recognition device according to an embodiment of the present invention;
Figure 2 is an overall flowchart of the crawling and deep learning-based face recognition process according to an embodiment of the present invention.

상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. The features and effects of the present invention described above will become more apparent through the following detailed description in conjunction with the accompanying drawings, and accordingly, those skilled in the art will be able to easily implement the technical idea of the present invention. You will be able to.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 예시하고 본문에 상세하게 설명하고자 한다. Since the present invention can be subject to various changes and can have various forms, specific embodiments will be illustrated and described in detail in the text.

그러나, 이는 본 발명을 특정한 개시형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the present invention to a specific disclosed form, and should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention.

본 출원에서 사용한 용어는 단지 특정한 실시 예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.The terms used in this application are only used to describe specific embodiments and are not intended to limit the invention.

본 발명의 바람직한 실시예에 따른 크롤링 및 딥러닝 기반의 얼굴인식장치 및 방법에 대하여 첨부된 도면을 참고하여 상세히 설명하면 다음과 같다.The crawling and deep learning-based face recognition device and method according to a preferred embodiment of the present invention will be described in detail with reference to the attached drawings as follows.

도 1은 본 발명의 실시예에 따른 크롤링 및 딥러닝 기반의 얼굴인식장치의 구성도로서, SNS(Social Network Service) 또는 웹사이트에서 데이터를 크롤링하여(①) 데이터를 수집하는(②) 크롤러(100)와, 상기 크롤러(100)의 크롤링 데이터(③)를 임시저장DB(120)에 저장하고(④), 딥러닝과정을 통해 분석된 영상정보 및 키프레임별 얼굴 특징점 데이터를 메인서버DB(151)에 저장하는 메인서버(150)와, 상기 임시저장DB(120)에 저장된 크롤링 데이터의 이미지/영상 데이터를 미디어 다운로더(121)을 통해 다운로드하고(⑤), 이미지/영상 데이터의 키프레임에서 얼굴 이미지만 분리하여 저장하는(⑥) 저장서버DB(122)와, 상기 저장서버DB(122)에 저장된 얼굴 이미지 데이터를 상기 메인서버(150)를 통해 입력받아(⑦) 학습 및 재학습을 통한 추론모델에 의해 얼굴 데이터에서 키프레임별 얼굴 특징점을 추출하여 상기 메인서버로 제공하는(⑧) 딥러닝서버(130)와, 상기 메인서버(150)에 입력된 상기 딥러닝서버(130)에서의 추론 결과 특징점 데이터를 저장하는(⑨) 메인서버DB(151)와, 상기 메인서버DB(151)에 저장된 크롤링된 얼굴 특징점과 사용자의 특정 얼굴 특징점 데이터를 비교하여 설정된 일치도 이상의 데이터를 추출하는 웹서버(160); 상기 웹서버(160)로부터 상기 추출된 얼굴데이터 표시해주는 웹클라이언트(170)로 구성된다.Figure 1 is a configuration diagram of a crawling and deep learning-based face recognition device according to an embodiment of the present invention, which includes a crawler (②) that collects data (①) by crawling data from SNS (Social Network Service) or a website. 100), the crawling data (③) of the crawler 100 is stored in the temporary storage DB (120) (④), and the image information and facial feature point data for each key frame analyzed through the deep learning process are stored in the main server DB ( 151), the image/video data of the crawling data stored in the temporary storage DB 120 is downloaded (⑤) through the media downloader 121, and in the keyframe of the image/video data A storage server DB (122) that separates and stores only facial images (⑥), and facial image data stored in the storage server DB (122) is input through the main server (150) (⑦) through learning and re-learning. A deep learning server 130 that extracts facial feature points for each key frame from facial data using an inference model and provides them to the main server (⑧), and the deep learning server 130 input to the main server 150. A main server DB 151 that stores the inference result feature point data (⑨), and a web server that compares the crawled facial feature points stored in the main server DB 151 with the user's specific facial feature point data and extracts data exceeding a set match level. (160); It consists of a web client 170 that displays the facial data extracted from the web server 160.

여기서, 상기 딥러닝서버(130)는 상기 메인서버(150)로부터 입력된 얼굴 데이터를 추론모듈 및 특징점 모듈을 이용하여 얼굴의 특징점을 추출하여 상기 메인서버(150)로 출력하되, 상기 메인서버(150)를 통해 상기 특징점DB(152)로부터의 특징점 데이터를 요청하는(⑪,⑫,⑬) 재학습서버(131)와, 상기 메인서버(150)를 통해 수집된 상기 특징점DB(152)로부터의 특징점 데이터(⑭⑮)를 학습을 수행하여 추론모델을 추출하는 학습서버(132)로 구성된다.Here, the deep learning server 130 extracts facial feature points from the face data input from the main server 150 using an inference module and a feature point module and outputs them to the main server 150, where the main server ( 150), a re-learning server 131 that requests feature point data from the feature point DB 152 (⑪, ⑫, ⑬), and a re-learning server 131 that requests feature point data from the feature point DB 152 through the main server 150. It consists of a learning server 132 that extracts an inference model by learning the feature point data (⑭⑮).

이와 같이 구성된 본 발명의 구체적인 작용에 대하여 첨부된 도 1 및 도 2를 참조하여 상세히 설명하면 다음과 같다.The specific operation of the present invention configured as described above will be described in detail with reference to the attached FIGS. 1 and 2 as follows.

먼저, 본 발명은 사용자가 자신의 얼굴 이미지와 동일한 얼굴 이미지가 포함된 다수의 웹사이트 또는 SNS에서 추출하고자 할 경우, 크롤러를 이용하여 다수의 웹사이트 또는 SNS에서 이미지/영상을 수집하고, 딥러닝과정을 통해 학습되어 산출된 얼굴 특징점과 사용자의 얼굴 이미지를 딥러닝과정을 통해 추출된 특정 얼굴 특징점을 비교 분석하여 매칭도가 기준값 이상의 얼굴이미지를 추출하게 된다. First, the present invention collects images/videos from multiple websites or SNS using a crawler when a user wants to extract facial images from multiple websites or SNS containing the same face image as his or her own face image, and uses deep learning to collect images/videos from multiple websites or SNS. By comparing and analyzing the facial feature points learned and calculated through the process and the specific facial feature points extracted through the deep learning process of the user's face image, a facial image with a matching degree higher than the reference value is extracted.

도 2를 참조하면, 크롤러는 크롬 브라우저 환경에서 셀레늄(selenium)을 설치하여 이용하며, 선택자(Selector : Xpath/css selector 등 제목, 이미지 위치, 영상위치 등을 프로그램이 일 수 있도록 정의 가능한 선택자) 템플릿을 미리 정의해 준 후, 복제하여 사용한다. 또한, 크롤러는 사이트 접속, 크롤링 할 목록확인 미 크롤러 큐에 등록하고, 크롤러 큐에 등록된 내용을 바탕으로 크롤링을 진행한 후 저장소 업로드, 임시저장DB(120)에 동영상 또는 이미지의 자료를 등록한다.Referring to Figure 2, the crawler is used by installing Selenium in the Chrome browser environment, and a selector (Selector: a selector such as Xpath/css selector that can define the title, image location, video location, etc.) template After defining it in advance, it is copied and used. In addition, the crawler connects to the site, checks the list to be crawled, registers in the crawler queue, performs crawling based on the contents registered in the crawler queue, uploads to the storage, and registers video or image data in the temporary storage DB (120). .

크롤링을 위해 웹사이트 또는 SNS를 지정한다. 크롤러(100)는 지정된 웹사이트로부터 동영상 또는 이미지를 크롤링(①)하며, 영상 하나에 10~100MB의 대용량 데이터를 수집(②)하게 되고, 상기 메인서버(150)로 크롤링 결과 데이터를 전송(③)하게 된다. Specify a website or SNS for crawling. The crawler 100 crawls videos or images from a designated website (①), collects large amounts of data of 10 to 100 MB per video (②), and transmits the crawling result data to the main server 150 (③). ) is done.

이와 같이 대용량의 데이터 처리는 수평확장(Horizontal Scalability)과 고가용성(High Availability)의 특징을 활용한 NoSQL(Not Only SQL) 데이터베이스와 같은 분산 환경에서 데이터를 보다 빠르게 처리하도록 한다. In this way, large-capacity data processing allows data to be processed more quickly in a distributed environment such as a NoSQL (Not Only SQL) database that utilizes the characteristics of horizontal scalability and high availability.

즉, 상기 대용량 데이터 처리를 위해 임시저장DB(120), 저장서버DB(122) 및 메인서버DB(151)로 분할처리 하도록 플랫폼 환경을 구현하고, 클라우드 서버(Clod server)와 리얼서버(Real server)를 동시 사용하도록 설계한다. In other words, in order to process the large amount of data, a platform environment is implemented to split the processing into temporary storage DB 120, storage server DB 122, and main server DB 151, and cloud server and real server. ) is designed to be used simultaneously.

예를 들어, 상기 임시저장DB(120)는 상기 메인서버(150)에 의해 상기 크롤러(100)에서 생성된 크롤링 데이터를 임시로 저장하며(④), 상기 저장서버DB(122)에 업로드 하기 전에 검수 및 동기화 과정으로 사용하며, 미디어 다운로더(121)를 이용하여 이미지/영상을 다운로드(⑤)하여 상기 저장서버DB(122)에 저장한다(⑥).For example, the temporary storage DB 120 temporarily stores the crawling data generated by the crawler 100 by the main server 150 (④), before uploading it to the storage server DB 122. It is used as an inspection and synchronization process, and images/videos are downloaded (⑤) using the media downloader (121) and stored in the storage server DB (122) (⑥).

상기 크롤러(100)에서 분석한 영상을 저장하는 저장소와 영상의 위치정보를 저장하게 된다.A storage for storing the images analyzed by the crawler 100 and location information of the images are stored.

상기 크롤러(100)의 동작 과정에 대하여 보다 상세히 설명하면, 크롤러(100)는 먼저 등록된 지장 웹사이트 또는 SNS의 큐에 따라 동영상 또는 이미지를 상기 임시저장DB(120)에 저장하고, 상기 임시저장DB(120)에 저장된 동영상/이미지 정보를 입력하고 프레임 분석 프로그램의 프레임 분석 큐에 등록한다.To describe the operation process of the crawler 100 in more detail, the crawler 100 first stores a video or image in the temporary storage DB 120 according to a queue of a registered Jiji website or SNS, and stores the video or image in the temporary storage DB 120. Enter video/image information stored in DB 120 and register it in the frame analysis queue of the frame analysis program.

상기 프레임 분석 프로그램은 각 키프레임 사이의 프레임들의 기본이 되는 프레임으로 원본 이미지를 포함하고 있으며, 키프레임들은 압축된 영상속에 여러 장이 들어 있으며, 프레임 숫자보다 적다. 상기 키프레임을 추출하여 프레임 분석 프로그램의 큐에 등록한다.The frame analysis program includes the original image as the basic frame of the frames between each key frame, and several key frames are included in the compressed video, and are less than the number of frames. The keyframe is extracted and registered in the queue of the frame analysis program.

또한, 상기 프레임 분석 프로그램은 큐를 처리하며 키프레임 속 얼굴정보를 확인하며, 이때 PCA(Principal Component Analysis) 또는 LDA(Linear Discriminant Analysis)와 같은 머신러닝 알고리즘을 사용하여 얼굴정보를 확인한다. In addition, the frame analysis program processes the cue and checks the facial information in the key frame, and at this time, uses a machine learning algorithm such as PCA (Principal Component Analysis) or LDA (Linear Discriminant Analysis) to check the facial information.

상기 프레임 분석 프로그램에 의해 얼굴정보가 있을 경우 키프레임과 영상정보를 상기 임시저장DB(120)에 업로드 하며, 상기 업로드된 영상정보를 처리하는 알고리즘을 이용하여 검증된 얼굴 특징점 정보가 확인되면 이를 메인서버DB(151)에 등록한다.If there is facial information by the frame analysis program, key frames and image information are uploaded to the temporary storage DB 120, and when facial feature point information verified using an algorithm for processing the uploaded image information is confirmed, it is used as main information. Register in server DB (151).

또한, 크롤러 업데이트의 경우, 도커(Docker) 이미지를 이용하여 가용성을 확보하고, 크롤러의 확장성을 요구함으로, 도커를 이용한 크롤러 실시간 증/감이 가능하도록 한다. 클라우드 서버에서는 리얼서버와 가장 근접한 도커를 하고, 상기 도커의 활용으로 크롤러들을 모두 동일한 환경위에서 실행, 이미지 변경 시 모든 크롤러 시스템에서 동일 이미지 사용으로 업데이트 한다. In addition, in the case of crawler updates, availability is secured using Docker images, and crawler scalability is required, allowing real-time increase/decrease of crawlers using Docker. In the cloud server, Docker is used closest to the real server, and by using Docker, all crawlers are run in the same environment, and when the image is changed, all crawler systems are updated to use the same image.

이와 같은 과정으로 크롤링된 데이터는 상기 임시저장DB(120)에 저장되는데, 상기 임시저장DB(120)는 영상들의 용량이 크기 때문에 별도의 저장소 클러스터를 만들어 저장하며 이 저장된 정보를 관리하게 된다. 관리하는 영상정보는 이름, 원본 URL, 저장된 영상의 해시(Hash)값, 키프레임 위치, 키프레임 정보, 얼굴 검출정보, 분석대상 사이트 큐정보, 이미지/영상 데이터, 시간정보 등을 포함하며, 영상이 저장된 위치정보가 등록된다.The data crawled through this process is stored in the temporary storage DB 120. Since the temporary storage DB 120 has a large capacity of images, a separate storage cluster is created and stored to manage the stored information. Managed video information includes name, original URL, hash value of stored video, key frame location, key frame information, face detection information, analysis target site cue information, image/video data, time information, etc. This saved location information is registered.

상기 임시저장DB(100), 저장서버DB(120) 및 메인서버DB(150)는 서로 밀접하게 연결되도록 하며, 연동된 저장소의 절대경로를 추적이 가능하도록 하면서, 데이터 분산저장 및 해시데이터 저장하는 기능을 갖게 된다.The temporary storage DB (100), storage server DB (120), and main server DB (150) are closely connected to each other, enable tracking of the absolute path of the linked storage, and perform distributed data storage and hash data storage. It has a function.

상기 과정을 통해 크롤링된 영상데이터는 상기 메인서버(150)의 요청에 따라 얼굴이 포함된 키프레임 이미지를 딥러닝서버(130)로 보내어 얼굴 특징점을 요청하게 되고(⑦), 상기 딥러닝서버(130)는 딥러닝 학습을 수행하게 되는데, 상기 딥러닝서버(130)의 레이어 구성은 다음과 같다.The video data crawled through the above process sends a keyframe image containing a face to the deep learning server 130 at the request of the main server 150 to request facial feature points (⑦), and the deep learning server ( 130) performs deep learning learning, and the layer configuration of the deep learning server 130 is as follows.

먼저, 얼굴 검출과정은 얼굴검출(face detection) 모델인 "Tinyfaces" 모델을 활용하여 얼굴위치를 검출하며, 이때 눈, 코, 입을 최대한 가운데로 올 수 있도록 회전(rotation), 크기변화(scaling) 및 전단(Shear)을 포함한 3D warps를 실행하며, 이 과정을 수행 시에는 눈과 입을 이미지상 대략적으로 동일한 위치에 맞추도록 한다.First, the face detection process detects the face position using the "Tinyfaces" model, which is a face detection model. At this time, rotation, scaling, and rotation are performed to bring the eyes, nose, and mouth to the center as much as possible. 3D warps, including shear, are performed, and when performing this process, the eyes and mouth are aligned to approximately the same position in the image.

이와 같이 검출된 얼굴 이미지는 입력레이어에서 상기 얼굴 특징점 추출을 통해 생성된 3채널 이미지(R,G,B)를 입력 받는 레이어이며, 회색조(Grayscale Image) 이미지로 변경 가능하다.The face image detected in this way is a layer that receives the 3-channel image (R, G, B) generated by extracting the facial feature points from the input layer, and can be changed to a grayscale image.

학습 레이어에서는 지도 학습의 과정으로 미리 준비된 학습 자료를 바탕으로 학습을 진행하며, 학습은 SGD(Stochastic Gradient Descent) 알고리즘을 바탕으로 진행되며, 레이어 파일에 기술된 내용으로 실제 학습을 진행 68개의 얼굴 특징점 포인트의 위치를 찾아주는 68개의 출력을 가진 레이어이다.In the learning layer, learning is conducted based on pre-prepared learning materials as a supervised learning process. Learning is conducted based on the SGD (Stochastic Gradient Descent) algorithm, and actual learning is performed using the content described in the layer file. 68 facial feature points It is a layer with 68 outputs that finds the location of points.

출력 레이어는 상기 학습레이어에서의 얼굴 특징점 포인트 68개 위치의 얼굴특징점 x,y좌표를 출력하는 레이어로, 모든 얼굴 이미지는 같은 사이즈로 조절 된다.The output layer is a layer that outputs the x, y coordinates of the 68 facial feature points in the learning layer, and all face images are adjusted to the same size.

한편, 딥러닝서버(130)는 "Tensorflow" 혹은 "Pytorch" 로 개발된 모델을 서빙해주는 서버로, 필요 퍼포먼스에 따라 분산하여 여러 서버에서 처리하도록 하며, 상기 학습서버(120)에서 68개의 얼굴 특징점을 추출해내는 모델을 다음 순서에 따라 설계한다.Meanwhile, the deep learning server 130 is a server that serves models developed with “Tensorflow” or “Pytorch” and is distributed according to required performance to be processed on several servers, and the learning server 120 provides 68 facial feature points. Design a model that extracts in the following order.

(1) 얼굴 특징점 68개 위치를 라벨링한 학습용 데이터와 검증용 데이터를 8:2 비율로 준비 (각 데이터들은 최대한 연관 관계가 없는 데이터를 선별하여 과적합 예방)(1) Prepare training data and verification data labeling 68 facial feature points in a ratio of 8:2 (prevent overfitting by selecting data that is as unrelated as possible for each data).

(2) 설계된 모델을 이용하여 학습을 진행검증 데이터로 (검증 진행 -> 모델 수정) 과정을 반복하며 모델의 과적합 예방 및 성능, 인식률 향상 작업을 지속적으로 진행 개발된 모델을 서빙 가능한 형태로 내보냄 (2) Proceed with learning using the designed model, repeat the process with verification data (proceed with verification -> modify model), and continuously work to prevent overfitting of the model and improve performance and recognition rate. Export the developed model in a serviceable form.

(3) 딥러닝서버로 배포 서빙을 위한 모델 준비 (3) Preparing a model for distribution and serving with a deep learning server

(4) 딥러닝서버를 위한 새로운 모델이 적용된 도커(Docker) 파일 생성(4) Creation of Docker file with new model for deep learning server

(5) 딥러닝서버 목록에서 해당 서버 제거 이후 준비된 딥러닝서버들을 순차적으로 종료하며 새로운 Docker 파일을 업로드 및 재시작(5) After removing the server from the deep learning server list, sequentially shut down the prepared deep learning servers and upload and restart a new Docker file.

(6) 새로운 버전의 모델로 적용되었는지 확인(6) Check whether it has been applied as a new version of the model

(7)딥러닝서버 목록에 등록 및 동작(7) Registration and operation in the deep learning server list

(8) 딥러닝서버를 통해 들어온 데이터들의 검수 및 재학습 과정(8) Inspection and re-learning process of data received through deep learning server

(9) 딥러닝서버를 통해 적합율이 높은 데이터를 별도의 폴더 혹은 서버에 저장 검수를 통해 데이터를 재학습에 사용 가능한지 확인(9) Save and inspect data with a high compliance rate in a separate folder or server through a deep learning server to check whether the data can be used for re-learning.

(10) 학습서버의 훈련 데이터 혹은 검증 데이터에 비율에 맞게 추가 및 재학습을 통한 검출율 향상(10) Improved detection rate by proportionally adding and relearning the training data or verification data of the learning server.

이와 같이 설계된 딥러닝서버(130)의 동작에 대하여 상세히 설명하면 다음과 같다.The operation of the deep learning server 130 designed in this way will be described in detail as follows.

상기 딥러닝서버(130)는 이미지에서 얼굴만 분리한다. 이를 위해 "Tinyfaces" 모델로 얼굴위치 추출 및 잘라내기(crop)를 수행하며, 이는 작은 얼굴까지 검출하는데 탁월하다.The deep learning server 130 separates only the face from the image. For this purpose, face location extraction and cropping are performed using the "Tinyfaces" model, which is excellent for detecting even small faces.

다음은 얼굴의 특징점(Facial Landmark) 추출한다. 얼굴의 특징점은 모든 얼굴에 존재하는 턱의 상단, 눈 바깥의 가장자리, 눈썹 안쪽의 가장자리 등 68개의 특징점을 추출한다. 구체적으로는 눈 Gradient(점)의 가로, 세로, 곡률을 산출하고, 좌측 눈의 오른쪽 끝점, 우측 눈의 왼쪽 끝점의 간격을 산출하고, 눈썹 양쪽 하단 끝점의 위치 계산 및 눈썹 양쪽 상단 끝점의 위치를 산출하고, 눈썹의 곡률을 산출하고, 입술 양쪽 하단 끝의 위치 및 인중과 하단 크기를 산출하고, 그 밖의 얼굴 형태에 대한 17개의 특징점을 산출한다.Next, facial landmarks are extracted. 68 facial feature points are extracted, including the top of the chin, the outer edge of the eye, and the inner edge of the eyebrow, which exist in all faces. Specifically, it calculates the horizontal, vertical, and curvature of the eye gradient (point), calculates the interval between the right end point of the left eye and the left end point of the right eye, calculates the positions of the lower end points on both sides of the eyebrows, and calculates the positions of the upper end points on both sides of the eyebrows. Calculate the curvature of the eyebrows, calculate the position of both lower ends of the lips and the size of the philtrum and lower part, and calculate 17 feature points for other facial shapes.

또한, 얼굴 이미지의 위치 교정 및 투영을 통해 눈과 입이 가운데로 올 수 있도록 회전(Rotate), 크기조절(Scale) -> 전단(Shear) 단계를 수행한다. In addition, through position correction and projection of the face image, rotation and scale -> shear steps are performed to bring the eyes and mouth to the center.

다음은 교정된 얼굴을 인코딩한다. 즉 각각의 사진에서 기본 측정값 추출하고, 귀의 크기 눈 사이의 간격 코의 길이 입술의 길이 등을 인코딩한다.Next, the corrected face is encoded. That is, basic measurements are extracted from each photo, and the size of the ears, the distance between the eyes, the length of the nose, the length of the lips, etc. are encoded.

다음은 얼굴특징을 분류 및 신경망 훈련을 수행한다. 즉, 얼굴특징 분류기(SVM: Support-vector machine)를 이용하여 분류하고, 각각의 사진에서 객체를 인식하도록 신경망을 훈련시키는 대신 각 얼굴에 대해 68 개의 측정값을 추론하도록 트레이닝(임베딩) 한다.Next, classify facial features and train a neural network. In other words, it is classified using a facial feature classifier (SVM: Support-vector machine), and instead of training a neural network to recognize objects in each photo, it is trained (embedded) to infer 68 measurements for each face.

상기 학습서버(140)는 이와 같이 딥러닝서버(130)에서 설계된 모델에 대한 지속적으로 학습을 진행하게 되며, 크롤링 및 분석 프로세서에 의해 추론된 얼굴 데이터들의 지속적 학습을 수행하므로, 학습을 하면 할수록 검출성능이 향상된다.The learning server 140 continuously learns the model designed by the deep learning server 130, and continuously learns the face data inferred by the crawling and analysis processor, so the more it learns, the more it is detected. Performance improves.

상기 딥러닝서버(130)에서 추출된 얼굴 특징점 데이터는 상기 메인서버(150)로 전송하고(⑧), 상기 메인서버(150)는 입력된 얼굴 특징점 데이터를 메인서버DB(151)에 저장하고, 상기 메인서버DB(151)에 저장된 얼굴 특징점 데이터는 개인정보 암호화를 위해 암호화하여 특징점DB(152)에 저장하며, 상기 특징점DB(152)의 고유값과 저장서버DB(122)의 고유값을 함께 저장한다.(⑨) The facial feature point data extracted from the deep learning server 130 is transmitted to the main server 150 (⑧), and the main server 150 stores the input facial feature point data in the main server DB 151, The facial feature point data stored in the main server DB (151) is encrypted to encrypt personal information and stored in the feature point DB (152), and the unique value of the feature point DB (152) and the unique value of the storage server DB (122) are combined. Save. (⑨)

상기 메인서버(150)는 상기 딥러닝서버(130)과 함께 검출율을 매칭하며, 상기 메인서버DB(151)는 영상의 임시저장DB(120) 정보와, 동영상 일시, 동영상 내 키프레임 위치 정보, 영상에서 검출된 얼굴 특징점 정보를 저장하여 얼굴 비교에 활용된다.The main server 150 matches the detection rate with the deep learning server 130, and the main server DB 151 provides video temporary storage DB 120 information, video date and time, and keyframe location information within the video. , Facial feature point information detected in the image is stored and used for face comparison.

또한, 메인서버(150)는 빠른 접근성 및 장애 보수를 위한 프로세스가 필수적으로 필요하며, NoSQL 서버의 자동 복구 프로세스 또는 백업 복구를 활용한다. In addition, the main server 150 essentially requires a process for quick accessibility and fault repair, and utilizes the automatic recovery process or backup recovery of the NoSQL server.

또한, 대용량 데이터를 처리함으로써 DB의 높은 퍼포먼스가 필수적임 이를 위해서는 데이터 저장 및 읽기 최적화 문제가 발생을 방지하기 위하여, 메모리 상에 저장 또는 분산 데이터베이스로 저장하게 된다.In addition, high performance of the DB is essential by processing large amounts of data. To achieve this, data is stored in memory or in a distributed database to prevent data storage and reading optimization problems.

또한, 얼굴 데이터의 비교 과정은 많은 데이터 연산이 요구되는데, 실시간 처리를 위해서는 SQL 명령어 상에서의 처리가 필요하며, 데이터베이스 상에 컨트롤러 추가 또는 KNN(K-Nearest Neighbor) 알고리즘을 SQL 명령어로 구현한다.In addition, the process of comparing facial data requires a lot of data operations. Real-time processing requires processing on SQL commands, and a controller is added to the database or the KNN (K-Nearest Neighbor) algorithm is implemented with SQL commands.

상기 웹서버(160)로부터 요청된 사용자 얼굴 데이터와 비교 분석을 통해 매칭되는 정도에 따른 일치도를 산출하고, 일정 일치도 이상의 얼굴 이미지를 추출한다.Through comparative analysis with the user's face data requested from the web server 160, a degree of match is calculated according to the degree of matching, and face images above a certain degree of match are extracted.

즉, 상기 웹서버(160)는 사용자의 얼굴사진 등을 학습하는 학습서버(132)를 통해 사용자의 얼굴사진 등의 학습을 위해 웹 클라이언트(170)와 상호 연동되는 서버로서, 학습 완료된 딥러닝 서빙모델을 추론서버로 전송하는 서빙 모델 공급기(deployed served model provider) 로 전송한다.In other words, the web server 160 is a server that interoperates with the web client 170 to learn the user's face photo, etc. through the learning server 132, which learns the user's face photo, etc., and serves the learned deep learning. The model is sent to a deployed served model provider that transmits it to the inference server.

상기 서빙 모델 공급기(Served model provider)에서 68개의 사용자 얼굴 특징점 정보를 획득하고, 사용자 얼굴 특징점을 이용하여 상기 메인서버DB(151)에 저장된 얼굴 특징점들과 비교 분석하여 매칭 정도를 산출하고, 그 결과 일정 일치도 이상의 얼굴 이미지를 추출하여 웹서버(160) 전송한다. 68 user facial feature point information is obtained from the served model provider, and the user facial feature points are compared and analyzed with the facial feature points stored in the main server DB 151 to calculate the degree of matching, and as a result, Facial images exceeding a certain level of match are extracted and transmitted to the web server 160.

상기 학습서버(132) 및 재학습서버(131)에서 지속적인 배포를 통해 서빙모델 공급기(Deployed Served Model)을 대체하며, 대체된 모델을 통해 모델을 업데이트한다.The serving model supplier (Deployed Served Model) is replaced through continuous distribution in the learning server 132 and re-learning server 131, and the model is updated through the replaced model.

상기 재학습서버(131)는 학습에 필요한 얼굴 데이터와 특정점 데이터를 수집을 요청하고(⑪,⑫), 상기 메인서버(150)는 특징점DB(152)에 학습을 위해 얼굴 특징점들을 랜덤하게 추출해 오도록 요청한다.(⑬)The re-learning server 131 requests collection of face data and specific point data required for learning (⑪,⑫), and the main server 150 randomly extracts facial feature points for learning from the feature point DB 152. Request them to come. (⑬)

상기 특정점DB(152)와 메인서버(151)는 랜덤하게 추출된 얼굴 특이점들을 상기 메인서버(150)를 통해 딥러닝서버(130)로 전달하고(⑭,⑮), 상기 학습서버(132)는 상기 수집된 얼굴 특이점들을 전달받아(), 이를 이용하여 새로운 추론모델을 추출한다.()The specific point DB 152 and the main server 151 transmit randomly extracted facial singular points to the deep learning server 130 through the main server 150 (⑭, ⑮), and the learning server 132 receives the collected facial singularities ( ), and use this to extract a new inference model. ( )

상기 학습서버로부터 새로운 추론모델을 기존 추론모델로 교체하고,() 상기 추론서버는 상기 새롭게 교체된 추론모델을 사용하여 상기 얼굴 특징점 데이터를 추출한 후 상기 메인서버(150)로 제공하게 된다.(⑧)Replace the new inference model with the existing inference model from the learning server, ( ) The inference server extracts the facial feature point data using the newly replaced inference model and provides it to the main server 150. (⑧)

검수 및 재배포 과정은 과적합의 문제를 해결하기 위하여 최대한 연관관계가 없도록 데이터의 사전처리 및 모델을 최적화하며, 딥러닝의 특성상 학습 데이터 양에 따른 모델의 성능문제는 딥러닝 서버의 학습평가 과정의 산출물을 재학습 해주는 과정을 통해 해결하고, 단일 서버의 성능문제는 도커(Docker)를 이용한 로드 밸런싱으로 순간 처리량이 많을 경우 새로운 서버를 등록하여 균형 잡히고 빠른 처리량을 보증하도록 한다.The inspection and redistribution process pre-processes the data and optimizes the model to ensure that there is no correlation as much as possible to solve the problem of overfitting. Due to the nature of deep learning, model performance problems depending on the amount of learning data are the output of the learning evaluation process of the deep learning server. The performance problem of a single server is solved through a process of re-learning, and when the instantaneous throughput is high through load balancing using Docker, a new server is registered to ensure balanced and fast throughput.

상기 웹서버(150) 및 웹클라이언트(170)는 이미지 업로드시 상기 딥러닝서버(130)의 배포된 모델을 이용하여 얼굴 특징점 정보를 가져오며, 얼굴 특징점 정보를 KNN 알고리즘을 이용하여 상기 메인DB서버(150)의 얼굴 특징점 데이터와 비교하여, 일정 일치도 이상의 얼굴 데이터를 획득하여 상기 웹클라이언트(170)의 화면을 통해 사용자에게 제공한다. When uploading an image, the web server 150 and the web client 170 retrieve facial feature point information using the distributed model of the deep learning server 130, and use the KNN algorithm to retrieve facial feature point information from the main DB server. By comparing with the facial feature point data of 150, facial data with a certain degree of matching or higher is obtained and provided to the user through the screen of the web client 170.

이상과 같이, 본 발명의 실시예에 따른 크롤링 및 딥러닝 기반의 얼굴인식장치 및 방법은 비록 한정된 실시예와 도면에 의해 설명되었으나 이 실시예에 의해 한정되지 않으며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형 가능함은 물론이다.As described above, the crawling and deep learning-based face recognition device and method according to the embodiment of the present invention, although described with limited embodiments and drawings, are not limited to this embodiment and are commonly known in the technical field to which the present invention pertains. Of course, various modifications and variations can be made by those skilled in the art within the technical spirit of the present invention and the equivalent scope of the claims described below.

100 : 크롤러 110 : 웹사이트, SNS
120 : 임시저장DB 121 : 미디어 다운로더
122: 저장서버DB 130 : 딥러닝서버
131 : 재학습서버 132 : 학습서버
150 : 메인서버 151 : 메인서버DB
152 : 특징점DB 160 : WEB서버
170 : 웹클라이언트
100: Crawler 110: Website, SNS
120: Temporary storage DB 121: Media downloader
122: Storage server DB 130: Deep learning server
131: Re-learning server 132: Learning server
150: main server 151: main server DB
152: Feature point DB 160: WEB server
170: Web client

Claims (17)

크롤러를 이용하여 SNS(Social Network Service) 또는 웹사이트에서 데이터를 크롤링하고, 크롤링한 크롤링 데이터에서 사용자의 얼굴 이미지와 매칭되는 이미지를 추출하는 크롤링 및 딥러닝 기반의 얼굴인식장치에 있어서,
상기 크롤러의 크롤링 데이터를 임시저장DB에 저장하고, 딥러닝과정을 통해 분석된 영상정보 및 키프레임별 얼굴 특징점 데이터를 메인서버DB 에 저장하는 메인서버;
상기 임시저장DB에 저장된 크롤링 데이터의 영상 또는 이미지 데이터를 다운로드하여 저장서버DB에 저장하는 미디어 다운로더;
상기 메인서버로부터 얼굴 이미지가 포함된 키프레임 이미지 데이터를 입력받아 학습 및 재학습을 통한 추론모델에 의해 얼굴 데이터에서 키프레임별 얼굴 특징점을 추출하여 상기 메인서버로 제공하는 딥러닝서버; 및
상기 딥러닝서버에서 추출된 얼굴특징점 데이터를 암호화하여 저장하는 특징점DB;
상기 메인서버로부터 상기 특징점DB에 저장된 크롤링에 의한 얼굴 특징점 데이터와 특정 얼굴 특징점 데이터를 비교하여 설정된 일치도 이상의 데이터를 추출하여 결과를 보여주는 웹서버;를 포함하되,
상기 크롤링된 데이터는 임시저장DB, 저장서버DB, 메인서버DB에 분산저장 하며, 상기 각 임시저장DB, 메인서버DB 및 저장서버DB는 상호 밀접하게 연결되며, 연동된 각 DB의 절대경로 추적이 가능하도록 해시(Hash) 데이터를 포함하며,
상기 딥러닝서버는 상기 메인서버로부터 입력된 얼굴데이터를 추론모듈 및 특징점 모듈을 이용하여 얼굴의 특징점을 추출하여 상기 메인서버로 출력하되,
상기 메인서버를 통해 상기 특징점DB로부터의 특징점 데이터를 요청하는 재학습서버;
상기 메인서버로부터 수집된 얼굴데이터와 특징점 데이터를 학습을 수행하여 추론모델을 추출하는 학습서버; 및
상기 학습서버를 통해 새롭게 추출된 추론모델을 사용하여 상기 얼굴의 특징점 데이터를 추출한 후 상기 메인서버에 제공하는 추론서버;를 포함하며,
상기 딥러닝서버는 얼굴의 특징점을 추출을 통해 생성된 R,G,B이미지를 입력받는 입력레이어;
준비된 학습자료를 바탕으로 레이어 파일에 기술된 내용으로 학습을 진행하여 얼굴 특징점 포인트의 위치를 찾는 학습레이어; 및
상기 학습레이어에서의 얼굴 특징점 포인트의 좌표값을 출력하는 출력레이어;를 포함하여 이루어진 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
In a crawling and deep learning-based face recognition device that crawls data from SNS (Social Network Service) or a website using a crawler and extracts an image matching the user's face image from the crawled data,
A main server that stores crawling data of the crawler in a temporary storage DB and stores image information and facial feature point data for each key frame analyzed through a deep learning process in a main server DB;
A media downloader that downloads video or image data of the crawling data stored in the temporary storage DB and stores it in the storage server DB;
A deep learning server that receives key frame image data containing a face image from the main server, extracts facial feature points for each key frame from the face data using an inference model through learning and re-learning, and provides the facial feature points to the main server; and
a feature point DB that encrypts and stores facial feature point data extracted from the deep learning server;
A web server that compares crawled facial feature point data stored in the feature point DB from the main server with specific facial feature point data, extracts data equal to or higher than a set match value, and displays the results,
The crawled data is distributed and stored in temporary storage DB, storage server DB, and main server DB. Each temporary storage DB, main server DB, and storage server DB are closely connected to each other, and the absolute path of each linked DB is tracked. Contains hash data to make it possible,
The deep learning server extracts facial feature points from the facial data input from the main server using an inference module and a feature point module and outputs them to the main server,
a re-learning server that requests feature point data from the feature point DB through the main server;
a learning server that extracts an inference model by learning face data and feature point data collected from the main server; and
An inference server that extracts feature point data of the face using an inference model newly extracted through the learning server and then provides the feature point data to the main server,
The deep learning server includes an input layer that receives R, G, and B images generated by extracting facial feature points;
A learning layer that finds the location of facial feature points by learning with the content described in the layer file based on the prepared learning materials; and
A face recognition device based on crawling and deep learning, comprising: an output layer that outputs coordinate values of facial feature points in the learning layer.
제1항에 있어서,
상기 메인서버는 상기 얼굴데이터를 상기 딥러닝서버에 전송하고, 상기 딥러닝서버에서 추출된 얼굴의 특징점 데이터와 상기 저장서버DB의 고유값을 상기 메인서버DB에 저장하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
According to paragraph 1,
The main server transmits the face data to the deep learning server, and stores facial feature point data extracted from the deep learning server and unique values of the storage server DB in the main server DB. Learning-based face recognition device.
제1항에 있어서,
상기 임시저장DB에 저장된 크롤링 데이터는 영상의 해시(Hash) 값, 키프레임 위치, 키프레임 정보, 얼굴 검출정보, 분석 대상 사이트 큐(Queue) 정보, URL, 이미지 및 동영상 데이터를 포함하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
According to paragraph 1,
The crawling data stored in the temporary storage DB includes video hash values, key frame positions, key frame information, face detection information, analysis target site queue information, URL, image and video data. A face recognition device based on crawling and deep learning.
삭제delete 제1항에 있어서,
상기 메인서버는 상기 딥러닝서버로부터의 특징점 데이터 요청에 따라 특징점DB로부터 랜덤하게 추출된 특징점 데이터를 상기 딥러닝서버로 전달하고, 상기 딥러닝서버는 상기 메인서버에서 전달받은 특징점 데이터를 학습서버를 통해 추론모델을 추출하여 기존의 추론모델을 새로운 추론모델로 교체하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
According to paragraph 1,
The main server transmits feature point data randomly extracted from the feature point DB to the deep learning server in response to a feature point data request from the deep learning server, and the deep learning server sends the feature point data received from the main server to the learning server. A face recognition device based on crawling and deep learning that extracts an inference model and replaces the existing inference model with a new inference model.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 학습서버는 상기 딥러닝서버에서 생성된 모델에 대한 학습을 수행하고, 상기 크롤링 및 분석 프로세서에 의해 생성된 데이터들을 지속적으로 재학습을 수행하여 검출율을 높이는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
According to paragraph 1,
The learning server performs learning on the model generated by the deep learning server and continuously retrains the data generated by the crawling and analysis processor to increase the detection rate. face recognition device.
제1항에 있어서,
상기 특정 얼굴 특징점 데이터는 상기 웹서버에서 상기 메인서버로 사용자 사진 업로드시 상기 딥러닝서버로 전달하여 학습과정을 통해 상기 사용자의 특정 얼굴 특징점을 추출하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식장치.
According to paragraph 1,
The specific facial feature point data is transmitted to the deep learning server when a user photo is uploaded from the web server to the main server, and facial recognition based on crawling and deep learning is characterized in that the user's specific facial feature point is extracted through a learning process. Device.
크롤러를 이용하여 SNS(Social Network Service) 또는 웹사이트에서 데이터를 크롤링하여 메인서버를 통해 저장하고, 상기 크롤링 데이터에서 사용자의 특정 얼굴 이미지와 매칭되는 이미지를 추출하는 크롤링 및 딥러닝 기반의 얼굴인식방법에 있어서,
상기 크롤러가 지정된 웹사이트 또는 SNS에서 데이터를 크롤링하여 크롤링 데이터를 임시저장DB에 저장하고, 저장된 크롤링 데이터에서 얼굴 이미지가 포함된 키프레임(Keyframe) 데이터를 추출하는 제1과정;
상기 제1과정에서 추출된 얼굴 이미지 키프레임 데이터를 딥러닝서버로 전송하여 얼굴 특징점을 요청하는 제2과정;
상기 얼굴 이미지 키프레임 데이터를 입력받은 딥러닝서버는 학습 및 재학습과정을 통해 추론모델에 대한 키프레임 별 얼굴 특징점을 추출하는 제3과정; 및
상기 제3과정에서 추출된 얼굴 특징점 데이터를 메인서버DB에 저장하고, 상기 특정 얼굴 특징점과 비교 분석하여 매칭되는 얼굴 이미지를 추출하는 제4과정;을 포함하되,
상기 제1과정은 메인서버에 의해 상기 크롤러에 의해 등록된 SNS 또는 웹사이트의 큐에 따라 이미지 또는 동영상을 크롤링하여 임시저장DB에 저장하는 11단계; 및
상기 임시저장DB에 저장된 상기 이미지 또는 동영상 정보를 미디어 다운로더에서 프레임 분석 큐에 등록하고, 프레임 분석프로그램에 의해 큐를 처리하는 12단계;를 포함하고,
상기 프레임 분석프로그램은 원본 이미지가 포함된 키프레임을 분석하여, 키프레임 속 얼굴정보를 확인하고, 키프레임 및 얼굴 이미지를 추출하여 저장서버DB에 저장하고,
상기 제3과정에서 상기 딥러닝서버는 재학습서버에서 학습에 필요한 얼굴 이미지 데이터와 특징점 데이터를 요청하는 31단계;
상기 메인서버는 상기 재학습서버에서 특징점 데이터를 얼굴 특징점 데이터가 암호화되어 저장된 특징점DB로 요청하는 32단계;
상기 메인서버는 상기 특징점DB에서 얼굴 특징점들을 랜덤하게 추출하여 상기 딥러닝서버의 학습서버로 전달하는 33단계;
상기 학습서버로부터 추출된 얼굴 특징점들을 이용한 새롭게 학습된 추론모델을 기존 추론모델로 교체하여 추론서버로 전달하는 34단계; 및
상기 추론서버는 상기 34단계에서 새롭게 교체된 추론모델을 사용하여 상기 얼굴 특징점 데이터를 추출한 후 상기 메인서버로 제공하는 35단계;를 포함하여 이루어진 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법.
A face recognition method based on crawling and deep learning that uses a crawler to crawl data from SNS (Social Network Service) or websites, stores it through the main server, and extracts images that match the user's specific face image from the crawled data. In
A first process in which the crawler crawls data from a designated website or SNS, stores the crawled data in a temporary storage DB, and extracts keyframe data including a face image from the stored crawling data;
A second process of transmitting the facial image keyframe data extracted in the first process to a deep learning server to request facial feature points;
A third process in which the deep learning server that receives the facial image keyframe data extracts facial feature points for each keyframe for the inference model through a learning and re-learning process; and
A fourth process of storing the facial feature point data extracted in the third step in the main server DB, comparing and analyzing the specific facial feature point and extracting a matching facial image,
The first process includes step 11 of crawling images or videos by the main server according to the queue of SNS or website registered by the crawler and storing them in a temporary storage DB; and
12 steps of registering the image or video information stored in the temporary storage DB in a frame analysis queue in the media downloader and processing the queue by a frame analysis program;
The frame analysis program analyzes key frames containing the original image, checks facial information in the key frames, extracts the key frames and face images, and stores them in the storage server DB.
In the third process, step 31, the deep learning server requests facial image data and feature point data required for learning from the re-learning server;
Step 32, wherein the main server requests feature point data from the re-learning server to a feature point DB where facial feature point data is encrypted and stored;
Step 33, wherein the main server randomly extracts facial feature points from the feature point DB and transmits them to the learning server of the deep learning server;
Step 34 of replacing the newly learned inference model using the facial feature points extracted from the learning server with the existing inference model and transmitting it to the inference server; and
A face recognition method based on crawling and deep learning, characterized in that the inference server extracts the facial feature point data using the newly replaced inference model in step 34 and provides the facial feature point data to the main server.
삭제delete 제11항에 있어서,
상기 제2과정에서 딥러닝 학습은 크롤링된 이미지에서 얼굴 이미지만 추출 및 잘라내기(crop)하는 21단계;
상기 추출 및 잘라낸 얼굴 이미지에서 얼굴 특징점을 추출하는 22단계;
얼굴 이미지의 위치 교정 및 투영하는 23단계;
교정된 얼굴 이미지에서 기본 측정값을 추출하고 인코딩하는 24단계; 및
얼굴 이미지의 특징 분류 및 신경망 훈련을 통해 얼굴 특징 분류기 학습과 특징점을 생성하도록 트레이닝하는 25단계;를 포함하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법.
According to clause 11,
In the second process, deep learning includes 21 steps of extracting and cropping only face images from crawled images;
Step 22 of extracting facial feature points from the extracted and cropped face image;
23 steps to correct and project the position of the face image;
24 steps to extract and encode baseline measurements from the calibrated face images; and
A face recognition method based on crawling and deep learning, comprising 25 steps of learning a facial feature classifier and training to generate feature points through feature classification of facial images and neural network training.
제13항에 있어서,
상기 22단계에서 얼굴 특징점 추출은 눈 기울기의 가로,세로,곡률값;
좌측 눈의 오른쪽 끝점, 우측눈의 왼쪽 끝점의 거리;
눈썹의 곡률값;
입술 양쪽 하단 끝의 위치 및 인중과 하단 크기값; 및
얼굴의 형태에 대한 17개의 포인트;를 포함하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법.
According to clause 13,
In step 22, the extraction of facial features includes horizontal, vertical, and curvature values of eye tilt;
Distance between the right endpoint of the left eye and the left endpoint of the right eye;
Curvature value of eyebrows;
The position of both lower ends of the lips and the size of the philtrum and lower end; and
A face recognition method based on crawling and deep learning, characterized by including 17 points about the shape of the face.
삭제delete 제11항에 있어서,
상기 특정 얼굴 특징점은 상기 메인서버에서 사용자에 의해 웹서버를 통해 요청된 사용자의 얼굴 이미지를 상기 딥러닝서버로 전달하여 특정 얼굴 특징점 데이터를 산출하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법.
According to clause 11,
The specific facial feature point is a face recognition method based on crawling and deep learning, characterized in that the main server transmits the user's facial image requested by the user through a web server to the deep learning server to calculate specific facial feature point data. .
제16항에 있어서,
상기 웹서버는 상기 딥러닝서버에서 추출된 특정 얼굴 특징점 데이터와 상기 제3과정에서 추출된 얼굴 특징점 데이터를 비교 분석하여 매칭 정도를 산출하는 것을 특징으로 하는 크롤링 및 딥러닝 기반의 얼굴인식방법.
According to clause 16,
A face recognition method based on crawling and deep learning, wherein the web server compares and analyzes specific facial feature point data extracted from the deep learning server and facial feature point data extracted in the third process to calculate the degree of matching.
KR1020210050594A 2021-04-19 2021-04-19 Apparatus and Method for face Recognition based on Crawling and Deep Learning KR102629764B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210050594A KR102629764B1 (en) 2021-04-19 2021-04-19 Apparatus and Method for face Recognition based on Crawling and Deep Learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210050594A KR102629764B1 (en) 2021-04-19 2021-04-19 Apparatus and Method for face Recognition based on Crawling and Deep Learning

Publications (2)

Publication Number Publication Date
KR20220144209A KR20220144209A (en) 2022-10-26
KR102629764B1 true KR102629764B1 (en) 2024-01-29

Family

ID=83784356

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210050594A KR102629764B1 (en) 2021-04-19 2021-04-19 Apparatus and Method for face Recognition based on Crawling and Deep Learning

Country Status (1)

Country Link
KR (1) KR102629764B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150317511A1 (en) * 2013-11-07 2015-11-05 Orbeus, Inc. System, method and apparatus for performing facial recognition
JP2017143490A (en) * 2016-02-12 2017-08-17 株式会社東芝 Information processing apparatus, system, program, and method
US20190205620A1 (en) * 2017-12-31 2019-07-04 Altumview Systems Inc. High-quality training data preparation for high-performance face recognition systems
US20210042527A1 (en) * 2019-08-09 2021-02-11 Clearview AI Methods for Providing Information about a Person Based on Facial Recognition

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190021130A (en) 2017-08-22 2019-03-05 삼성전자주식회사 Method for detecting similar image based on facial image and the appratus thereof
KR102433393B1 (en) 2017-12-12 2022-08-17 한국전자통신연구원 Apparatus and method for recognizing character in video contents

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150317511A1 (en) * 2013-11-07 2015-11-05 Orbeus, Inc. System, method and apparatus for performing facial recognition
JP2017143490A (en) * 2016-02-12 2017-08-17 株式会社東芝 Information processing apparatus, system, program, and method
US20190205620A1 (en) * 2017-12-31 2019-07-04 Altumview Systems Inc. High-quality training data preparation for high-performance face recognition systems
US20210042527A1 (en) * 2019-08-09 2021-02-11 Clearview AI Methods for Providing Information about a Person Based on Facial Recognition

Also Published As

Publication number Publication date
KR20220144209A (en) 2022-10-26

Similar Documents

Publication Publication Date Title
Rothe et al. Deep expectation of real and apparent age from a single image without facial landmarks
US11423076B2 (en) Image similarity-based group browsing
CN106203242B (en) Similar image identification method and equipment
WO2019120115A1 (en) Facial recognition method, apparatus, and computer apparatus
JP6431934B2 (en) System, method and apparatus for organizing photos stored on a mobile computing device
Bae et al. High-precision vision-based mobile augmented reality system for context-aware architectural, engineering, construction and facility management (AEC/FM) applications
AU2013213886B2 (en) Notification and privacy management of online photos and videos
US9940577B2 (en) Finding semantic parts in images
BRPI0719735A2 (en) IMAGE IDENTIFICATION USING FACE RECOGNITION
US11080316B1 (en) Context-inclusive face clustering
US20220215205A1 (en) Robust content fingerprinting for image attribution
CN106874877A (en) A kind of combination is local and global characteristics without constraint face verification method
US20170091539A1 (en) ID Information for Identifying an Animal
CN107273859B (en) Automatic photo marking method and system
Li et al. Multi-label pattern image retrieval via attention mechanism driven graph convolutional network
Lin et al. Lightweight face anti-spoofing network for telehealth applications
CN113762049B (en) Content identification method, content identification device, storage medium and terminal equipment
KR102629764B1 (en) Apparatus and Method for face Recognition based on Crawling and Deep Learning
WO2021189908A1 (en) Image classification method based on deep learning, image classification apparatus, server and medium
Sarker et al. Transformer-Based Person Re-Identification: A Comprehensive Review
CN113989914B (en) Security monitoring method and system based on face recognition
CN115880702A (en) Data processing method, device, equipment, program product and storage medium
WO2023173546A1 (en) Method and apparatus for training text recognition model, and computer device and storage medium
CN113869099A (en) Image processing method and device, electronic equipment and storage medium
JPWO2020185948A5 (en)

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant