KR20210088940A - 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템 - Google Patents

동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템 Download PDF

Info

Publication number
KR20210088940A
KR20210088940A KR1020200002034A KR20200002034A KR20210088940A KR 20210088940 A KR20210088940 A KR 20210088940A KR 1020200002034 A KR1020200002034 A KR 1020200002034A KR 20200002034 A KR20200002034 A KR 20200002034A KR 20210088940 A KR20210088940 A KR 20210088940A
Authority
KR
South Korea
Prior art keywords
animal
information
image
processor
neural network
Prior art date
Application number
KR1020200002034A
Other languages
English (en)
Other versions
KR102321498B1 (ko
Inventor
이진근
양두환
Original Assignee
주식회사 애니멀고
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 애니멀고 filed Critical 주식회사 애니멀고
Priority to KR1020200002034A priority Critical patent/KR102321498B1/ko
Publication of KR20210088940A publication Critical patent/KR20210088940A/ko
Application granted granted Critical
Publication of KR102321498B1 publication Critical patent/KR102321498B1/ko

Links

Images

Classifications

    • G06K9/00362
    • 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
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01KANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
    • A01K29/00Other apparatus for animal husbandry
    • A01K29/005Monitoring or measuring activity, e.g. detecting heat or mating
    • G06K9/4652
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Environmental Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Animal Husbandry (AREA)
  • Multimedia (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Image Analysis (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

장치에 의해 동물 정보 판별용 어플리케이션을 구동하는 방법이 개시된다. 본 개시의 실시 예에 따른 동물 정보 판별용 어플리케이션을 구동하는 방법은, 카메라 모듈을 통해 피사체에 대한 이미지를 획득하는 단계, 카메라 모듈로부터 획득한 이미지를 적어도 하나의 프로세서로 전송하는 단계, 적어도 하나의 프로세서를 통해 획득한 이미지를 처리하는 단계, 적어도 하나의 프로세서가 메모리로부터 제1 뉴럴 네트워크 모델에 대한 정보를 획득하는 단계 및 적어도 하나의 프로세서가 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 처리된 이미지로부터 피사체 식별 정보를 추정하는 단계를 포함할 수 있다.

Description

동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템{APPARATUS FOR RUNNING APPLICATION FOR DISCRIMINATION OF ANIMAL INFORMATION, SERVER AND APPLICATION MANAGEMENT SYSTEM INCLUDING THEM}
본 개시는 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템 더욱 상세하게는, 동물 정보 판별용 어플리케이션을 구동하는 장치 및 이의 방법에 관한 것이다.
뉴럴 네트워크(neural network)는 생물학적 뇌를 모델링한 컴퓨터 아키텍쳐(computational architecture)를 지칭한다. 최근 뉴럴 네트워크 기술이 발전함에 따라, 다양한 종류의 전자 시스템에서 뉴럴 네트워크 장치를 사용하여 입력 데이터를 분석하고 유용한 정보를 추출하는 연구가 활발히 진행되고 있다.
최근 사회가 변화함에 따라, 동물에 대한 빅데이터를 확보하기 위한 연구가 활발히 진행되고 있다. 특히 반려동물이라는 인식이 확산되면서 반려동물의 대상이 되는 동물들에 대한 정보가 요구됨에 따라 반려동물이라 일컬어지는 동물들에 대한 빅데이터를 확보하기 위한 연구가 활발히 진행되는 추세이다.
따라서 동물의 정보, 특히 동물의 혈통에 대한 정보 및 동물의 부모 동물에 대한 정보 및 동물의 건강 상태를 나타내는 정보 등을 판별하기 위한 빅데이터를 확보하고 손쉽게 동물의 정보를 판별할 수 있는 시스템을 구축하는 방안이 요구된다.
동물 정보 판별용 어플리케이션을 구동하는 장치에 관한 것으로서, 적어도 하나의 프로세서를 포함하는 동물 정보 판별용 어플리케이션을 제공한다. 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 이하의 실시예들로부터 또 다른 기술적 과제가 유추될 수 있다.
일측면에 따른 장치에 의해 동물 정보 판별용 어플리케이션을 구동하는 방법은, 카메라 모듈을 통해 피사체에 대한 이미지를 획득하는 단계, 상기 카메라 모듈로부터 상기 획득한 이미지를 적어도 하나의 프로세서로 전송하는 단계, 상기 적어도 하나의 프로세서를 통해 상기 획득한 이미지를 처리하는 단계, 상기 적어도 하나의 프로세서가 메모리로부터 제1 뉴럴 네트워크 모델에 대한 정보를 획득하는 단계 및 상기 적어도 하나의 프로세서가 상기 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 처리된 이미지로부터 피사체 식별 정보를 추정하는 단계를 포함할 수 있다.
한편, 일 측면에 따른 상기 적어도 하나의 프로세서는 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 획득하여 상기 피사체 식별 정보를 추정하기 위한 제2 뉴럴 네트워크 모델을 생성하는 단계, 상기 적어도 하나의 프로세서가 상기 제2 뉴럴 네트워크 모델에 대한 정보를 상기 메모리로 전달하는 단계 및 상기 메모리가 상기 적어도 하나의 프로세서로부터 전달받은 상기 제2 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 제1 뉴럴 네트워크 모델을 업데이트하는 단계를 더 포함할 수 있다.
한편, 일 측면에 따른 상기 적어도 하나의 프로세서는 상기 처리된 이미지를 서버로 전달하는 단계를 더 포함할 수 있다.
한편, 일 측면에 따른 상기 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다.
한편, 일 측면에 따른 상기 동물의 혈통에 대한 정보는 상기 동물의 털의 색, 상기 동물의 털의 형태, 상기 동물의 털의 길이, 상기 동물의 귀의 모양, 상기 동물의 귀의 위치, 상기 동물의 코의 모양 또는 상기 동물의 이목구비의 분포 중 적어도 하나를 포함할 수 있다.
한편, 일 측면에 따른 상기 동물의 건강에 대한 정보는 상기 동물의 배변의 질감, 상기 동물의 배변의 분포도, 상기 동물의 배변의 모양 또는 상기 동물의 배변의 색 중 적어도 하나의 배변 정보로부터 획득될 수 있다.
한편, 일 측면에 따른 상기 적어도 하나의 프로세서는 상기 피사체 식별 정보에 포함되는 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나에 기초하여 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 추정하여 상기 제2 뉴럴 네트워크 모델을 생성할 수 있다.
한편, 일 측면에 따른 상기 카메라 모듈을 통해 피사체에 대한 이미지를 획득하는 단계는, 상기 카메라 모듈을 통해 상기 피사체를 촬영하여 상기 이미지를 획득하거나 상기 메모리에 저장된 상기 피사체에 대한 이미지를 상기 카메라 모듈로 불러와서 상기 이미지를 획득할 수 있다.
한편, 일 측면에 따른 상기 적어도 하나의 프로세서를 통해 상기 획득한 이미지를 처리하는 단계는, 상기 이미지 내에서 상기 피사체를 제외한 배경 영역의 이미지 정보를 제거하는 단계를 포함할 수 있다.
한편, 일 측면에 따른 디스플레이를 통해 상기 추정된 피사체 식별 정보를 디스플레이하는 단계를 더 포함할 수 있다.
한편, 일 측면에 따른 상기 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 처리된 이미지로부터 피사체 식별 정보를 추정하는 단계는, 상기 처리된 이미지로부터 Red-Greed-Blue (RGB) 색상 값을 추출하는 단계, 상기 처리된 이미지 및 상기 피사체 식별 정보를 해싱(Hashing)한 제1 해쉬 값을 출력하는 단계, 상기 제1 해쉬 값 및 상기 RGB 색상 값을 해싱한 제2 해쉬 값을 출력하는 단계 및 상기 제2 해쉬 값 및 상기 장치의 식별자를 해싱한 제3 해쉬 값을 출력하여 블록 체인에 저장하는 단계를 포함하고, 상기 피사체 식별 정보는 동물의 혈통에 대한 정보, 상기 동물의 부모 동물에 대한 정보 및 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다.
다른 일 측면에 따른 서버에 의해 동물 정보 판별용 어플리케이션을 구동하는 방법은, 적어도 하나의 장치로부터 피사체에 대한 이미지를 획득하는 단계, 상기 이미지로부터 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함하는 피사체 식별 정보를 누적하는 단계, 상기 피사체 식별 정보와 상기 이미지 간 관계에 기초하여 상기 피사체 식별 정보를 추정하기 위한 뉴럴 네트워크 모델을 생성하는 단계 및 상기 뉴럴 네트워크 모델을 상기 장치로 전달하는 단계를 포함할 수 있다.
한편, 다른 일 측면에 따른 상기 동물의 혈통에 대한 정보는 상기 동물의 털의 색, 상기 동물의 털의 형태, 상기 동물의 털의 길이, 상기 동물의 귀의 모양, 상기 동물의 귀의 위치, 상기 동물의 코의 모양 또는 상기 동물의 이목구비의 분포의 카테고리 중 적어도 하나를 포함하고, 상기 동물의 건강에 대한 정보는 상기 동물의 배변의 질감, 상기 동물의 배변의 분포도, 상기 동물의 배변의 모양 또는 상기 동물의 배변의 색의 카테고리 중 적어도 하나로부터 획득될 수 있다.
한편, 다른 일 측면에 따른 상기 서버가 상기 뉴럴 네트워크 모델을 생성하는 단계는, 상기 이미지를 상기 동물의 혈통에 대한 정보 또는 상기 동물의 건강에 대한 정보의 상기 카테고리 별로 분류하는 단계 및 상기 이미지의 분류된 카테고리와 상기 이미지 간 관계에 기초하여 상기 피사체 식별 정보를 추정하기 위한 상기 뉴럴 네트워크 모델을 생성하는 단계를 포함할 수 있다.
또 다른 일 측면에 따른 동물 정보 판별용 어플리케이션을 구동하는 장치는, 제1 뉴럴 네트워크 모델을 저장하는 메모리, 피사체에 대한 이미지를 획득하는 카메라 모듈 및 상기 메모리 및 상기 카메라 모듈에 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 카메라 모듈로부터 상기 피사체에 대한 이미지를 획득하고, 상기 획득한 이미지를 처리하고, 상기 메모리로부터 상기 제1 뉴럴 네트워크 모델에 대한 정보를 획득하고, 상기 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 처리된 이미지로부터 피사체 식별 정보를 추정하도록 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 적어도 하나의 프로세서는, 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 획득하여 상기 피사체 식별 정보를 추정하기 위한 제2 뉴럴 네트워크 모델을 생성하고, 상기 제2 뉴럴 네트워크 모델에 대한 정보를 상기 메모리로 전달하도록 더 구성되고, 상기 메모리는, 상기 전달받은 제2 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 제1 뉴럴 네트워크 모델을 업데이트하도록 더 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 적어도 하나의 프로세서는 상기 피사체 식별 정보에 포함되는 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나에 기초하여 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 추정하여 상기 제2 뉴럴 네트워크 모델을 생성하도록 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 카메라 모듈은, 상기 피사체를 촬영하여 상기 이미지를 획득하거나 상기 메모리에 저장된 상기 피사체에 대한 이미지를 불러와서 상기 이미지를 획득하도록 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 적어도 하나의 프로세서는, 상기 이미지 내에서 상기 피사체를 제외한 배경 영역의 이미지 정보를 제거하여 상기 획득한 이미지를 처리하도록 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 장치는 블록 체인을 더 포함하고, 상기 적어도 하나의 프로세서는, 상기 처리된 이미지로부터 Red-Greed-Blue (RGB) 색상 값을 추출하고, 상기 처리된 이미지 및 상기 피사체 식별 정보를 해싱(Hashing)한 제1 해쉬 값을 출력하고, 상기 제1 해쉬 값 및 상기 RGB 색상 값을 해싱한 제2 해쉬 값을 출력하고, 상기 제2 해쉬 값 및 상기 장치의 식별자를 해싱한 제3 해쉬 값을 출력하여 상기 블록 체인에 저장하도록 더 구성되고, 상기 피사체 식별 정보는 동물의 혈통에 대한 정보, 상기 동물의 부모 동물에 대한 정보 및 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다.
또 다른 일 측면에 따른 동물 정보 판별용 어플리케이션을 구동하는 서버는, 송수신기 및 상기 송수신기에 결합되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 적어도 하나의 장치로부터 피사체에 대한 이미지를 획득하고, 상기 이미지로부터 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함하는 피사체 식별 정보를 누적하고, 상기 피사체 식별 정보와 상기 이미지 간 관계를 획득하여 상기 피사체 식별 정보를 추정하기 위한 뉴럴 네트워크 모델을 생성하고, 상기 뉴럴 네트워크 모델을 상기 장치로 전달하도록 구성될 수 있다.
한편, 또 다른 일 측면에 따른 상기 적어도 하나의 프로세서가 상기 뉴럴 네트워크 모델을 생성하는 동작은, 상기 이미지를 상기 동물의 혈통에 대한 정보 또는 상기 동물의 건강에 대한 정보의 상기 카테고리 별로 분류하고, 상기 이미지가 분류된 카테고리와 상기 이미지 간 관계를 획득하고, 상기 획득된 결과에 기초하여 상기 피사체 식별 정보를 추정하기 위한 상기 뉴럴 네트워크 모델을 생성하는 동작을 포함할 수 있다.
본 개시에 따른 동물 정보 판별용 어플리케이션을 구동하는 장치 및 방법은, 뉴럴 네트워크 모델에 기반하여 동물의 정보를 판별할 수 있는 장치 및 방법을 제공할 수 있다. 또한, 동물에 대한 이미지와 이미지 내에 동물의 식별 정보, 특히 동물의 혈통에 대한 정보, 동물의 부모 동물에 대한 정보 또는 동물의 건강에 대한 정보 간 관계를 추정하여 뉴럴 네트워크 모델을 생성하고 이를 블록 체인에 저장 또는 업데이트함으로써, 더욱 개선된 동물 정보의 판별 기능을 제공하는 어플리케이션 구동 장치 및 방법을 제공할 수 있다.
도 1은 본 개시의 예시적 실시 예에 따른 무선 통신 시스템을 나타낸다.
도 2는 본 개시의 예시적 실시 예에 따른 서버와 장치간 신호의 구체적인 흐름도를 나타낸다.
도 3은 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하기 위한 블록도를 도시한다.
도 4는 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하는 순서도를 도시한다.
도 5는 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하는 순서도를 도시한다.
도 6은 본 개시의 예시적 실시 예에 따른 뉴럴 네트워크 모델의 일 예를 설명하는 도면이다.
도 7은 본 개시의 예시적 실시 예에 따른 서버의 동작을 설명하는 순서도를 도시한다.
도 8은 본 개시의 예시적 실시 예에 따른 서버의 동작을 설명하는 순서도를 도시한다.
도 9는 본 개시의 예시적 실시 예에 따른 이미지 처리의 일 예를 설명하기 위한 도면이다.
도 10은 본 개시의 예시적 실시 예에 따른 어플리케이션의 구동을 설명하기 위한 도면이다.
도 11 은 본 개시의 예시적 실시 예에 따른 어플리케이션의 구동을 설명하기 위한 도면이다.
도 12 는 본 개시의 예시적 실시예에 따른 동물 식별 정보의 획득 및 저장 동작을 설명하기 위한 도면이다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
 명세서 전체에서 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 “…부”, “…모듈” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 명세서에서 사용되는 '구성된다' 또는 '포함한다' 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 명세서에서 사용되는 '제 1' 또는 '제 2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
도 1은 본 개시의 예시적 실시 예에 따른 무선 통신 시스템을 나타낸다.
도 1을 참조하면, 무선 통신 시스템은 서버(10), 어플리케이션 구동 장치(20-1, 20-2 ? 20-M) 및 블록 체인(20-N)을 포함할 수 있다.
서버(10)는 하나 이상의 기지국 안테나를 통해 어플리케이션 구동 장치(20-1, 20-2 ? 20-M) 또는 블록 체인(20-N)과 무선으로 통신할 수 있다. 서버(10)가 지원하는 무선 통신 네트워크는 가용 네트워크 자원들을 공유함으로써 다수의 사용자들이 통신하는 것을 지원할 수 있다. 예를 들면, 무선 통신 네트워크에서 GSM (Global System for Mobile communication), CDMA(Code Division Multiple Access), FDMA(Frequency Division Multiple Access), TDMA(Time Division Multiple Access), OFDMA(Orthogonal Frequency Division Multiple Access), SC-FDMA(Single Carrier-Frequency Division Multiple Access) 등과 같은 다양한 방식으로 정보가 전달될 수 있다.
예시적 실시예에 있어서, 서버(10)는 뉴럴 네트워크 모델을 생성하는 신경망을 포함할 수 있다. 예를 들어 서버(10)는 빅데이터를 저장하는 클라우드 서버를 포함할 수 있다.
어플리케이션 구동 장치(20-1, 20-2 ? 20-M)는 무선 통신 기기로서, 고정되거나 이동성을 가질 수 있고, 서버(10)와 통신하여 데이터 및/또는 제어정보를 송수신할 수 있는 다양한 기기들을 지칭할 수 있다. 예를 들어, 어플리케이션 구동 장치(20-1, 20-2 ? 20-M)는 단말기기(terminal equipment), MS(Mobile Station), MT(Mobile Terminal), UT(User Terminal), SS(Subscribe Station), 무선 장치(Wireless device), 휴대 장치(handheld device) 등으로 지칭될 수 있다.
도 2는 본 개시의 예시적 실시 예에 따른 서버와 장치간 신호의 구체적인 흐름도를 나타낸다.
도 2 를 참조하면, 장치(20-1)는 카메라 모듈(22), 프로세서(24), 메모리(26) 및 디스플레이(28)를 포함할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 카메라 모듈(22)을 통해 피사체에 대한 이미지를 획득할 수 있다. 예를 들어, 피사체는 동물일 수 있고, 강아지 또는 고양이일 수 있으며 이에 한정되지 않는다. 예시적 실시예에 있어서, 장치(20-1)는 카메라 모듈(22)을 통해 피사체를 촬영하여 피사체에 대한 이미지를 획득할 수 있다. 예시적 실시예에 있어서 장치(20-1)는 메모리(26)에 기존에 저장된 피사체에 대한 이미지를 불러와 피사체에 대한 이미지를 획득할 수 있다. 카메라 모듈(22)은 장치(20-1)의 프로세서(24)로 획득한 이미지에 대한 정보를 전달할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 하나 이상의 프로세서로 구성될 수 있다. 예를 들어, 프로세서(24)가 복수의 프로세서들로 구성되는 경우, 프로세서(24)는 AP(application processor), CP(communication processor) 및 NP(neural processor) 중 적어도 하나를 포함할 수 있다. 예시적 실시예에 있어서, 프로세서(24)는 획득한 이미지를 처리할 수 있다. 예를 들어, 프로세서(24)는 획득한 이미지에 대해 이미지 내에서 피사체를 제외한 배경 영역의 이미지 정보를 제거하는 이미지 처리 과정을 수행할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 메모리(26)로부터 획득된 이미지로부터 피사체 식별 정보를 추정하기 위한 제1 뉴럴 네트워크 모델에 대한 정보를 획득할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 처리된 이미지로부터 이미지 내의 피사체에 대한 피사체 식별 정보를 추정할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 추정된 피사체 식별 정보를 장치(20-1)의 디스플레이로 전달할 수 있다. 예시적 실시예에 있어서, 장치(20-1)는 디스플레이(28)를 통해 추정된 피사체 식별 정보를 디스플레이 할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 이미지 처리를 수행한 피사체에 대한 이미지를 서버(10)로 전달할 수 있다. 예를 들어, 서버(10)는 전달받은 처리된 피사체에 대한 이미지에 기초하여 뉴럴 네트워크 모델을 생성하여 장치(20-1)로 전달할 수 있다.
도 3은 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하기 위한 블록도를 도시한다.
도 3 을 참조하면, 장치(20-1)는 카메라 모듈(22), 프로세서(24), 메모리(26) 및 디스플레이(28)를 포함할 수 있고, 장치(20-1)의 카메라 모듈(22)은 렌즈(22-1) 및 이미지 센서(22-3)를 포함할 수 있다.
비제한적인 예시로서, 장치(20-1)는 스마트 폰(smart phone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book render), 데스크톱 PC(desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘텍트 렌즈 및 머리 착용형 장치(head-mounted-device(HMD))와 같이 액세서리 형 웨어러블 장치 및 이식형 회로(implantable circuit)와 같은 생체 이식형 웨어러블 장치를 포함할 수 있다.
카메라 모듈(22)은 장치(20-1)의 외부의 피사체(또는 객체)를 촬영하고, 이미지 데이터를 생성할 수 있다. 예를 들어, 카메라 모듈(22)은 렌즈(22-1) 및 이미지 센서(22-3)를 포함할 수 있다.
렌즈(22-1)는 외부의 피사체에 의해 반사된 빛을 집광하는 역할을 수행할 수 있다. 렌즈는 예를 들어 줌 렌즈 및 포커스 렌즈 중 적어도 하나를 포함할 수 있다.
이미지 센서(22-3)는 렌즈(22-1)에 의해 집광된 빛을 전기적 신호로 변환함으로써 이미지 데이터를 생성할 수 있다. 이를 위해 이미지 센서(22-3)는 복수의 화소들이 2차원적으로 배열된 화소 배열을 포함할 수 있다. 예를 들어, 복수의 화소들 각각에는 복수의 기준색들 중 하나의 색이 할당될 수 있다. 예를 들어 복수의 기준색들은 RGB(red, green, blue), 또는 RGBW(red, green, blue, white)를 포함할 수 있다. 비제한적인 예시로서, 이미지 센서(22-3)는 전하결합소자(charge-coupled device; CCD) 또는 상보성 금속 산화막 반도체(complementary metal-oxide-semiconductor; CMOS)를 이용해 구현될 수 있다. 이미지 센서(22-3)가 생성하는 이미지 데이터는 이미지 프레임 및 프레임 데이터와 같이 다양한 형태로 명명될 수 있다. 이미지 센서(22-3)는 사전 결정된(predetermined) 시간 간격마다 새로운 이미지 데이터를 생성해낼 수 있는데, 새로운 이미지가 생성되는 주기에 대응되는 주파수를 프레임 레이트(frame rate)로 명명할 수 있다. 다시 말해서 프레임 레이트는 단위 시간당 새롭게 생성되는 이미지 데이터의 개수를 나타낼 수 있다.
도시되지는 않았으나, 카메라 모듈(22)은 생성한 이미지 데이터에 대해 하나 이상의 처리 동작을 수행하는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 또한, 카메라 모듈(22)은 셔터, 조리개, AFE(Analog Front End) 및 TG(Timing Generator) 중 적어도 하나를 더 포함할 수도 있다.
디스플레이(28)는 카메라 모듈(22)에서 생성된 이미지 신호에 기반하여 사용자에게 각종 컨텐츠(예를 들어, 텍스트, 이미지, 비디오, 아이콘, 또는 심볼 등)를 표시할 수 있다. 디스플레이(28)는 예를 들어 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 또는 마이크로 전자기계 시스템(MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 또한, 디스플레이(28)는 터치 스크린을 포함할 수도 있다. 예를 들어, 디스플레이(28)는 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접 또는 호버링 입력을 수신할 수도 있다.
메모리(26)는 데이터를 저장하기 위한 저장 장소로서, 예를 들어, OS(Operating System), 각종 프로그램들 및 각종 데이터(예를 들어, 이미지 데이터)를 저장할 수 있다. 메모리(50)는 휘발성 메모리(Volatile memory) 또는 비휘발성 메모리(non-volatile memory) 중 적어도 하나를 포함할 수 있다. 비휘발성 메모리는 ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리(Flash memory), PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM) 등을 포함할 수 있다. 휘발성 메모리는 DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous DRAM) 등을 포함할 수 있다. 또한, 일 실시예에 있어서, 메모리(26)는 HDD(Hard Disk Drive), SSD(Solid State Drive), CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 또는 메모리 스틱(Memory Stick) 중 적어도 하나를 포함할 수도 있다. 일 실시예에 있어서, 메모리(26)는 프로세서(24)에 의해 실행되는 프로그램들 및 복수의 명령(instruction)들을 반영구적으로 또는 일시적으로 저장할 수 있다.
프로세서(24)는 장치(20-1)의 전반적인 동작을 제어할 수 있다. 일 예로, 장치(20-1)는 중앙 프로세싱 유닛(Central Processing Unit; CPU)일 수 있다. 장치(20-1)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 장치(20-1)는 메모리(26)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 예를 들어, 장치(20-1)는 메모리(26)에 저장된 프로그램들을 실행함으로써 장치(20-1)의 기능을 제어할 수 있다.
예시적 실시예에 있어서, 카메라 모듈(22)은 획득한 이미지를 프로세서(24)로 전달할 수 있다. 예를 들어, 카메라 모듈이 획득한 이미지는 영역별 뎁스 정보를 포함할 수 있다. 일 예로, 카메라 모듈이 획득한 이미지는 이미지의 각 픽셀에 대한 뎁스를 나타내는 그레이 스케일(gray scale)의 2차원 이미지에 대응될 수 있다. 일 예로 이미지의 영역은 픽셀 단위로 구분될 수도 있고, 픽셀 단위보다 큰 기 설정된 영역으로 구분될 수도 있다.
도 4는 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하는 순서도를 도시한다.
도 4 를 참조하면, 장치(20-1)는 카메라 모듈(22)을 통해 피사체에 대한 이미지를 획득할 수 있다(S400). 예를 들어, 장치(20-1)는 카메라 모듈(22)을 통해 피사체를 촬영하여 피사체에 대한 이미지를 획득할 수 있다. 예시적 실시예에 있어서 장치(20-1)는 메모리(26)에 기존에 저장된 피사체에 대한 이미지를 불러와 피사체에 대한 이미지를 획득할 수 있다. 카메라 모듈(22)은 장치(20-1)의 프로세서(24)로 획득한 이미지에 대한 정보를 전달할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 획득한 이미지를 프로세서(24)를 통해 처리할 수 있다(S410). 예를 들어, 프로세서(24)는 획득한 이미지에 대해 이미지 내에서 피사체를 제외한 배경 영역의 이미지 정보를 제거하는 이미지 처리 과정을 수행할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 프로세서(24)를 통해 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 처리된 이미지로부터 피사체 식별 정보를 추정할 수 있다(S420). 예를 들어, 장치(20-1)는 프로세서(24)를 통해 메모리(26)로부터 피사체 식별 정보를 추정하기 위한 제1 뉴럴 네트워크 모델을 획득할 수 있다. 예시적 실시예에 있어서, 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 혈통에 대한 정보는, 동물의 털의 색, 동물의 털의 형태, 동물의 털의 길이, 동물의 귀의 모양, 동물의 귀의 위치, 동물의 코의 모양 또는 동물의 이목구비의 분포 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보는, 동물의 배변의 질감, 동물의 배변의 분포도, 동물의 배변의 모양 또는 동물의 배변의 색 중 적어도 하나를 포함할 수 있다.
도 5는 본 개시의 예시적 실시 예에 따른 장치의 동작을 설명하는 순서도를 도시한다.
도 5 를 참조하면, 장치(20-1)는 카메라 모듈(22)을 통해 피사체에 대한 이미지를 획득할 수 있다(S500). 예를 들어, 장치(20-1)는 카메라 모듈(22)을 통해 피사체를 촬영하여 피사체에 대한 이미지를 획득할 수 있다. 예시적 실시예에 있어서 장치(20-1)는 메모리(26)에 기존에 저장된 피사체에 대한 이미지를 불러와 피사체에 대한 이미지를 획득할 수 있다. 카메라 모듈(22)은 장치(20-1)의 프로세서(24)로 획득한 이미지에 대한 정보를 전달할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 획득한 이미지를 프로세서(24)를 통해 처리할 수 있다(S510). 예를 들어, 프로세서(24)는 획득한 이미지에 대해 이미지 내에서 피사체를 제외한 배경 영역의 이미지 정보를 제거하는 이미지 처리 과정을 수행할 수 있다.
예시적 실시예에 있어서, 프로세서(24)는 처리된 이미지와 피사체 식별 정보 간 관계를 획득하여 피사체 식별 정보를 추정하기 위한 제2 뉴럴 네트워크 모델을 생성할 수 있다(S520). 예시적 실시예에 있어서, 프로세서(24)는 피사체 식별 정보에 포함되는 동물의 혈통에 대한 정보 또는 동물의 배변으로부터 획득되는 동물의 건강에 대한 정보 중 적어도 하나에 기초하여 처리된 이미지와 피사체 식별 정보 간 관계를 추정할 수 있다. 예시적 실시예에 있어서, 프로세서(24)는 처리된 이미지와 피사체 식별 정보 간 추정된 관계에 기초하여 제2 뉴럴 네트워크 모델을 생성할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 제2 뉴럴 네트워크 모델에 기초하여 제1 뉴럴 네트워크 모델을 업데이트할 수 있다(S530). 예를 들어, 장치(20-1)의 프로세서(24)는 생성한 제2 뉴럴 네트워크 모델을 장치(20-1)의 메모리(26)로 전달할 수 있다. 예시적 실시예에 있어서, 장치(20-1)의 메모리(26)는 프로세서(24)로부터 전달받은 제2 뉴럴 네트워크 모델에 대한 정보에 기초하여 기존에 저장된 제1 뉴럴 네트워크 모델을 업데이트할 수 있다.
예시적 실시예에 있어서, 장치(20-1)는 프로세서(24)를 통해 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 처리된 이미지로부터 피사체 식별 정보를 추정할 수 있다(S540). 예를 들어, 장치(20-1)는 프로세서(24)를 통해 메모리(26)로부터 피사체 식별 정보를 추정하기 위한 제1 뉴럴 네트워크 모델을 획득할 수 있다. 예시적 실시예에 있어서, 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 혈통에 대한 정보는, 동물의 털의 색, 동물의 털의 형태, 동물의 털의 길이, 동물의 귀의 모양, 동물의 귀의 위치, 동물의 코의 모양 또는 동물의 이목구비의 분포 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보는, 동물의 배변의 질감, 동물의 배변의 분포도, 동물의 배변의 모양 또는 동물의 배변의 색 중 적어도 하나를 포함할 수 있다.
도 6은 본 개시의 예시적 실시 예에 따른 뉴럴 네트워크 모델의 일 예를 설명하는 도면이다.
도 6 을 참조하면, 뉴럴 네트워크(NN)는 입력 레이어, 히든 레이어들 및 출력 레이어를 포함하는 구조를 가질 수 있다. 뉴럴 네트워크(NN)는 수신되는 입력 데이터(예를 들어, I1 또는 I2)를 기초로 연산을 수행하고, 수행 결과를 기초로 출력 데이터(예를 들어, Q1 또는 Q2)를 생성할 수 있다. 예시적 실시예에 있어서, 뉴럴 네트워크(NN)는 장치(20-1)에 채용됨으로써, 획득된 이미지로부터 피사체 식별 정보를 추정할 수 있다.
뉴럴 네트워크(NN)는 2개 이상의 히든 레이어들을 포함하는 딥 뉴럴 네트워크(Deep Neural Network, DNN) 또는 n-레이어 뉴럴 네트워크(n-layers neural networks)일 수 있다. 예를 들어, 도 6에 도시된 바와 같이, 뉴럴 네트워크(NN)는 입력 레이어(610), 제1 및 제2 히든 레이어(630, 213) 및 출력 레이어(670)를 포함하는 DNN일 수 있다. DNN은 Convolution Neural Networks(CNN), Recurrent Neural Networks(RNN), Deep Belief Networks, Restricted Boltzman Machines 등을 포함할 수 있으나, 이에 제한되지 않는다.
뉴럴 네트워크(NN)가 DNN 구조를 갖는 경우 유효한 정보를 추출할 수 있는 보다 많은 레이어들을 포함하므로, 뉴럴 네트워크(NN)는 복잡한 데이터 집합들을 처리할 수 있다. 한편, 뉴럴 네트워크(NN)는 4개의 레이어들(610, 630, 650, 670)을 포함하는 것으로 도시되었으나, 이는 예시에 불과할 뿐 뉴럴 네트워크(NN)는 더 적거나 더 많은 레이어들을 포함할 수 있다. 또한, 뉴럴 네트워크(NN)는 도 6 에 도시된 것과는 다른 다양한 구조의 레이어들을 포함할 수도 있다.
뉴럴 네트워크(NN)에 포함된 레이어들(610, 630, 650, 670) 각각은 복수의 뉴런(neuron)들을 포함할 수 있다. 뉴런은, 프로세싱 엘리먼트(Processing Element, PE), 유닛(unit) 또는 이와 유사한 용어들로 알려진, 복수의 인공 노드(artificial node)들에 해당될 수 있다. 예를 들어, 도 6 에 도시된 바와 같이, 입력 레이어(610)는 2개의 뉴런들(노드들), 제1 및 제2 히든 레이어(630, 650) 각각은 3개의 뉴런들(노드들)을 포함할 수 있다. 다만, 이는 예시에 불과할 뿐 뉴런 네트워크(NN)에 포함된 레이어들 각각은 다양한 개수의 뉴런들(노드들)을 포함할 수 있다.
뉴런 네트워크(NN)에 포함된 레이어들 각각에 포함된 뉴런들은 서로 연결되어 데이터를 교환할 수 있다. 하나의 뉴런은 다른 뉴런들로부터 데이터를 수신하여 연산할 수 있고, 연산 결과를 또 다른 뉴런들로 출력할 수 있다.
뉴런들(노드들) 각각의 입력 및 출력은 입력 액티베이션(activation) 및 출력 액티베이션으로 지칭될 수 있다. 즉, 액티베이션은 한 뉴런의 출력임과 동시에, 다음 레이어에 포함된 뉴런들의 입력에 해당되는 파라미터일 수 있다. 한편, 뉴런들 각각은 이전 레이어에 포함된 뉴런들로부터 수신된 액티베이션들 및 가중치(weight)들에 기초하여 자신의 액티베이션을 결정할 수 있다. 가중치는 각 뉴런에서의 출력 액티베이션을 계산하기 위해 이용되는 파라미터로서, 뉴런들 간의 연결 관계에 할당되는 값일 수 있다.
뉴런들 각각은 입력을 수신하여 액티베이션을 출력하는 연산 유닛(computational unit) 또는 프로세싱 엘리먼트에 의해 처리될 수 있고, 뉴런들 각각의 입력-출력은 맵핑될 수 있다. 예를 들어
Figure pat00001
는 액티베이션 함수(activation function)이고,
Figure pat00002
는 (i-1) 번째 레이어에 포함된 k 번째 뉴런으로부터 i 번째 레이어에 포함된 j 번째 뉴런으로의 가중치 값일 수 있다.
Figure pat00003
는 i 번째 레이어에 포함된 j 번째 뉴런의 바이어스(bias) 값이고,
Figure pat00004
는 i 번째 레이어의 j 번째 뉴런의 액티베이션, 다시 말해서 포스트 액티베이션(post activation)으로 지칭될 수 있다. 포스트 액티베이션
Figure pat00005
는 다음의 [수학식 1]을 이용하여 계산 될 수 있다.
Figure pat00006
도 6 에 도시된 바와 같이, 제1 히든 레이어(630)의 첫 번째 뉴런의 포스트 액티베이션은
Figure pat00007
로 표현될 수 있다. 또한,
Figure pat00008
은 [수학식 1]에 따라
Figure pat00009
의 값을 가질 수 있다. 다시 말해서, 포스트 액티베이션은 이전 레이어로부터 수신된 액티베이션들의 합(sum)에 액티베이션 함수를 적용하여 획득된 값일 수 있다. 다만, [수학식 1]은 뉴럴 네트워크에서 데이터를 처리하기 위해 이용되는 액티베이션 및 가중치를 설명하기 위한 예시일 뿐, 이에 제한되지 않는다.
도 7은 본 개시의 예시적 실시 예에 따른 서버의 동작을 설명하는 순서도를 도시한다.
도 7 을 참조하면, 서버(10)는 적어도 하나의 장치(20-1, 20-2 ? 20-M)로부터 피사체에 대한 이미지를 획득할 수 있다(S700). 예시적 실시예에 있어서, 서버(10)는 적어도 하나의 장치(20-1, 20-2 ? 20-M)가 획득하여 이미지 처리 과정을 수행한 이미지를 전달받을 수 있다.
예시적 실시예에 있어서, 서버(10)는 획득한 이미지로부터 피사체 식별 정보를 누적할 수 있다(S710). 예를 들어, 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 혈통에 대한 정보는, 동물의 털의 색, 동물의 털의 형태, 동물의 털의 길이, 동물의 귀의 모양, 동물의 귀의 위치, 동물의 코의 모양 또는 동물의 이목구비의 분포 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보는, 동물의 배변의 질감, 동물의 배변의 분포도, 동물의 배변의 모양 또는 동물의 배변의 색 중 적어도 하나를 포함할 수 있다.
예시적 실시예에 있어서, 서버(10)는 누적된 피사체 식별 정보와 획득한 이미지 간 관계에 기초하여 뉴럴 네트워크 모델을 생성할 수 있다(S720). 예시적 실시예에 있어서, 서버(10)는 생성한 뉴럴 네트워크 모델을 장치(20-1)로 전달할 수 있다.
도 8은 본 개시의 예시적 실시 예에 따른 서버의 동작을 설명하는 순서도를 도시한다.
도 8 을 참조하면, 서버(10)는 적어도 하나의 장치(20-1, 20-2 ? 20-M)로부터 피사체에 대한 이미지를 획득할 수 있다(S800). 예시적 실시예에 있어서, 서버(10)는 적어도 하나의 장치(20-1, 20-2 ? 20-M)가 획득하여 이미지 처리 과정을 수행한 이미지를 전달받을 수 있다.
예시적 실시예에 있어서, 서버(10)는 획득한 이미지로부터 피사체 식별 정보를 누적할 수 있다(S810). 예를 들어, 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 혈통에 대한 정보는, 동물의 털의 색, 동물의 털의 형태, 동물의 털의 길이, 동물의 귀의 모양, 동물의 귀의 위치, 동물의 코의 모양 또는 동물의 이목구비의 분포의 카테고리 중 적어도 하나를 포함할 수 있다. 예를 들어, 동물의 배변 정보로부터 획득되는 동물의 건강에 대한 정보는, 동물의 배변의 질감, 동물의 배변의 분포도, 동물의 배변의 모양 또는 동물의 배변의 색의 카테고리 중 적어도 하나를 포함할 수 있다.
예시적 실시예에 있어서, 서버(10)는 획득한 이미지를 피사체 식별 정보에 대응하는 동물의 혈통에 대한 정보 또는 동물의 건강에 대한 정보의 카테고리 별로 분류할 수 있다(S820).
예시적 실시예에 있어서, 서버(10)는 이미지의 분류된 카테고리와 이미지 간 관계에 기초하여 피사체 식별 정보를 추정하기 위한 뉴럴 네트워크 모델을 생성할 수 있다(S830). 예시적 실시예에 있어서, 서버(10)는 생성한 뉴럴 네트워크 모델을 장치(20-1)로 전달할 수 있다.
도 9는 본 개시의 예시적 실시 예에 따른 이미지 처리의 일 예를 설명하기 위한 도면이다.
도 9 를 참조하면, 장치(20-1)는 프로세서(24)를 통해 획득한 이미지(900)를 처리할 수 있다. 예시적 실시예에 있어서, 프로세서(24)는 획득한 이미지(900)의 영역을 피사체 영역(910)과 배경 영역(920)으로 구분할 수 있다. 예시적 실시예에 있어서, 프로세서(24)는 구분된 배경 영역(920)의 이미지 정보를 제거하는 이미지 처리 과정을 수행할 수 있다.
도 10은 본 개시의 예시적 실시 예에 따른 어플리케이션의 구동을 설명하기 위한 도면이다.
도 10을 참조하면, 장치(20-1)의 프로세서(24)를 통해 이미지 처리 과정이 수행된 이미지는 피사체 영역만을 나타낸다.
예시적 실시예에 있어서, 동물 정보 판별용 어플리케이션은 처리된 이미지로부터 도출된 피사체 식별 정보에 뉴럴 네트워크 모델을 적용하여 피사체의 혈통 또는 건강 정보를 예측할 수 있다.
예시적 실시예에 있어서, 동물 정보 판별용 어플리케이션은 소정의 확률 이상으로 예측되는 혈통 또는 건강 정보 결과를 장치에 제공할 수 있다.
도 11 은 본 개시의 예시적 실시 예에 따른 어플리케이션의 구동을 설명하기 위한 도면이다.
도 11을 참조하면, 장치(20-1)의 프로세서(24)는 동물의 배변에 대해 획득한 이미지를 처리하여 동물의 건강에 대한 정보를 획득할 수 있다.
예시적 실시예에 있어서, 동물 정보 판별용 어플리케이션은 동물의 배변에 대한 이미지를 처리하여 획득되는 배변에 대한 정보, 구체적으로 동물의 배변의 질감, 배변의 분포도, 배변의 모양 또는 배변의 색 중 어느 하나의 정보를 획득하여, 동물의 건강에 대한 정보, 구체적으로 동물이 스트레스를 받았는지 혹은 건강에 이상이 있는지 등의 정보를 장치에 제공할 수 있다.
도 12 는 본 개시의 예시적 실시예에 따른 동물 식별 정보의 획득 및 저장 동작을 설명하기 위한 도면이다.
도 12를 참조하면, 장치(20-1)의 프로세서(24)는 카메라 모듈(22)로부터 획득하여 처리한 이미지인 이미지 원본 값(1220)으로부터 Red-Green-Blue (RGB) 색상 값의 이미지 변환 값(1200)을 추출할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 처리된 이미지로부터 피사체 식별 정보(1610)를 획득할 수 있다. 예를 들어, 피사체 식별 정보는 동물의 혈통에 대한 정보, 동물의 부모 동물에 대한 정보 또는 동물의 건강에 대한 정보일 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 파이썬의 Numpy 라이브러리로 행렬화하여 판별 전 값과 판별 후 값을 암호화시키는 해싱(Hashing; 이하, 해싱)과정을 수행할 수 있다. 예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 이미지 변환 값(1200)과 피사체 식별 정보 즉, 동물 정보(1610)를 해싱하여 제1 해쉬 값을 출력할 수 있다. 예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 제1 해쉬 값과 이미지 원본 값(1220)을 해싱하여 제2 해쉬 값을 출력할 수 있다. 예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 제2 해쉬 값과 장치의 식별 정보(1230)를 해싱하여 제3 해쉬 값을 출력할 수 있다.
예시적 실시예에 있어서, 장치(20-1)의 프로세서(24)는 제3 해쉬 값을 장치(20-1)의 블록 체인(20-N)에 저장할 수 있다.
한편, 상술한 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 방법에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 램, USB, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (11)

  1. 장치에 의해 동물 정보 판별용 어플리케이션을 구동하는 방법에 있어서,
    카메라 모듈을 통해 피사체에 대한 이미지를 획득하는 단계;
    상기 카메라 모듈로부터 상기 획득한 이미지를 적어도 하나의 프로세서로 전송하는 단계;
    상기 적어도 하나의 프로세서를 통해 상기 획득한 이미지를 처리하는 단계;
    상기 적어도 하나의 프로세서가 메모리로부터 제1 뉴럴 네트워크 모델에 대한 정보를 획득하는 단계; 및
    상기 적어도 하나의 프로세서가 상기 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 처리된 이미지로부터 피사체 식별 정보를 추정하는 단계를 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  2. 제1 항에 있어서,
    상기 적어도 하나의 프로세서가 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 획득하여 상기 피사체 식별 정보를 추정하기 위한 제2 뉴럴 네트워크 모델을 생성하는 단계;
    상기 적어도 하나의 프로세서가 상기 제2 뉴럴 네트워크 모델에 대한 정보를 상기 메모리로 전달하는 단계; 및
    상기 메모리가 상기 적어도 하나의 프로세서로부터 전달받은 상기 제2 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 제1 뉴럴 네트워크 모델을 업데이트하는 단계를 더 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  3. 제1 항에 있어서,
    상기 적어도 하나의 프로세서가 상기 처리된 이미지를 서버로 전달하는 단계를 더 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  4. 제1 항에 있어서,
    상기 피사체 식별 정보는 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  5. 제4 항에 있어서,
    상기 동물의 혈통에 대한 정보는 상기 동물의 털의 색, 상기 동물의 털의 형태, 상기 동물의 털의 길이, 상기 동물의 귀의 모양, 상기 동물의 귀의 위치, 상기 동물의 코의 모양 또는 상기 동물의 이목구비의 분포 중 적어도 하나를 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  6. 제4 항에 있어서,
    상기 동물의 건강에 대한 정보는 상기 동물의 배변의 질감, 상기 동물의 배변의 분포도, 상기 동물의 배변의 모양 또는 상기 동물의 배변의 색 중 적어도 하나의 배변 정보로부터 획득되는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  7. 제2 항에 있어서,
    상기 적어도 하나의 프로세서는 상기 피사체 식별 정보에 포함되는 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나에 기초하여 상기 처리된 이미지와 상기 피사체 식별 정보 간 관계를 추정하여 상기 제2 뉴럴 네트워크 모델을 생성하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  8. 제1 항에 있어서,
    상기 카메라 모듈을 통해 피사체에 대한 이미지를 획득하는 단계는, 상기 카메라 모듈을 통해 상기 피사체를 촬영하여 상기 이미지를 획득하거나 상기 메모리에 저장된 상기 피사체에 대한 이미지를 상기 카메라 모듈로 불러와서 상기 이미지를 획득하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  9. 제1 항에 있어서,
    상기 적어도 하나의 프로세서를 통해 상기 획득한 이미지를 처리하는 단계는, 상기 이미지 내에서 상기 피사체를 제외한 배경 영역의 이미지 정보를 제거하는 단계를 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
  10. 동물 정보 판별용 어플리케이션을 구동하는 서버에 있어서,
    송수신기; 및
    상기 송수신기에 결합되는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    적어도 하나의 장치로부터 피사체에 대한 이미지를 획득하고,
    상기 이미지로부터 동물의 혈통에 대한 정보 또는 상기 동물의 배변으로부터 획득되는 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함하는 피사체 식별 정보를 누적하고,
    상기 피사체 식별 정보와 상기 이미지 간 관계를 획득하여 상기 피사체 식별 정보를 추정하기 위한 뉴럴 네트워크 모델을 생성하고,
    상기 뉴럴 네트워크 모델을 상기 장치로 전달하도록 구성되는 동물 정보 판별용 어플리케이션을 구동하며,
    상기 적어도 하나의 프로세서가 상기 뉴럴 네트워크 모델을 생성하는 동작은,
    상기 이미지를 상기 동물의 혈통에 대한 정보 또는 상기 동물의 건강에 대한 정보의 상기 카테고리 별로 분류하고,
    상기 이미지가 분류된 카테고리와 상기 이미지 간 관계를 획득하고,
    상기 획득된 결과에 기초하여 상기 피사체 식별 정보를 추정하기 위한 상기 뉴럴 네트워크 모델을 생성하는 동작을 포함하는 동물 정보 판별용 어플리케이션을 구동하는 서버.


  11. 제1 항에 있어서, 상기 제1 뉴럴 네트워크 모델에 대한 정보에 기초하여 상기 처리된 이미지로부터 피사체 식별 정보를 추정하는 단계는,
    상기 처리된 이미지로부터 Red-Greed-Blue (RGB) 색상 값을 추출하는 단계;
    상기 처리된 이미지 및 상기 피사체 식별 정보를 해싱(Hashing)한 제1 해쉬 값을 출력하는 단계;
    상기 제1 해쉬 값 및 상기 RGB 색상 값을 해싱한 제2 해쉬 값을 출력하는 단계; 및
    상기 제2 해쉬 값 및 상기 장치의 식별자를 해싱한 제3 해쉬 값을 출력하여 블록 체인에 저장하는 단계를 포함하고,
    상기 피사체 식별 정보는 동물의 혈통에 대한 정보, 상기 동물의 부모 동물에 대한 정보 및 상기 동물의 건강에 대한 정보 중 적어도 하나를 포함하는 동물 정보 판별용 어플리케이션을 구동하는 방법.
KR1020200002034A 2020-01-07 2020-01-07 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템 KR102321498B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200002034A KR102321498B1 (ko) 2020-01-07 2020-01-07 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200002034A KR102321498B1 (ko) 2020-01-07 2020-01-07 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템

Publications (2)

Publication Number Publication Date
KR20210088940A true KR20210088940A (ko) 2021-07-15
KR102321498B1 KR102321498B1 (ko) 2021-11-03

Family

ID=76889583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200002034A KR102321498B1 (ko) 2020-01-07 2020-01-07 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템

Country Status (1)

Country Link
KR (1) KR102321498B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102330858B1 (ko) * 2021-08-03 2021-11-25 주식회사 넘버제로 배변 시트 대변 이미지를 활용한 반려 동물 대변 상태 분석 정보 제공 방법, 장치 및 시스템
KR102330859B1 (ko) * 2021-08-03 2021-11-25 주식회사 넘버제로 반려 동물의 대변 이미지 분석 정보 제공 방법, 장치 및 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160149390A (ko) * 2015-06-18 2016-12-28 이민성 배설물상태 및 배변활동을 이용한 애완동물 건강상태 판단 방법 및 장치
JP2018200531A (ja) * 2017-05-26 2018-12-20 富士通株式会社 教師データ生成装置、教師データ生成方法、教師データ生成プログラム、及び物体検出システム
JP2019095949A (ja) * 2017-11-21 2019-06-20 株式会社バイオーム 判別装置、判別方法、判別プログラム、判別システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160149390A (ko) * 2015-06-18 2016-12-28 이민성 배설물상태 및 배변활동을 이용한 애완동물 건강상태 판단 방법 및 장치
JP2018200531A (ja) * 2017-05-26 2018-12-20 富士通株式会社 教師データ生成装置、教師データ生成方法、教師データ生成プログラム、及び物体検出システム
JP2019095949A (ja) * 2017-11-21 2019-06-20 株式会社バイオーム 判別装置、判別方法、判別プログラム、判別システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102330858B1 (ko) * 2021-08-03 2021-11-25 주식회사 넘버제로 배변 시트 대변 이미지를 활용한 반려 동물 대변 상태 분석 정보 제공 방법, 장치 및 시스템
KR102330859B1 (ko) * 2021-08-03 2021-11-25 주식회사 넘버제로 반려 동물의 대변 이미지 분석 정보 제공 방법, 장치 및 시스템

Also Published As

Publication number Publication date
KR102321498B1 (ko) 2021-11-03

Similar Documents

Publication Publication Date Title
US20230082613A1 (en) Methods, systems and apparatus to improve convolution efficiency
US10360479B2 (en) Device and method for processing metadata
WO2022083536A1 (zh) 一种神经网络构建方法以及装置
US9239985B2 (en) Apparatus and methods for processing inputs in an artificial neuron network
US20190087647A1 (en) Method and apparatus for facial recognition
CN108174096A (zh) 拍摄参数设置的方法、装置、终端及存储介质
KR102321498B1 (ko) 동물 정보 판별용 어플리케이션을 구동하는 장치, 서버 및 이들을 포함하는 어플리케이션 관리 시스템
Bedeli et al. Clothing identification via deep learning: forensic applications
CN112529149B (zh) 一种数据处理方法及相关装置
Radu et al. Vision2sensor: Knowledge transfer across sensing modalities for human activity recognition
US11900722B2 (en) Electronic apparatus and control method thereof
US20200195910A1 (en) Apparatus including multiple cameras and image processing method
KR20210048272A (ko) 음성 및 영상 자동 포커싱 방법 및 장치
Taffel Google’s lens: Computational photography and platform capitalism
WO2024067884A1 (zh) 一种数据处理方法及相关装置
Aishwarya et al. Smart farming for detection and identification of tomato plant diseases using light weight deep neural network
CN109963072B (zh) 对焦方法、装置、存储介质及电子设备
US20240126810A1 (en) Using interpolation to generate a video from static images
CN113052025A (zh) 图像融合模型的训练方法、图像融合方法及电子设备
WO2022143314A1 (zh) 一种对象注册方法及装置
Raj et al. An improved human activity recognition technique based on convolutional neural network
US11222198B2 (en) Video analysis system for optimizing an activity protocol
CN114237861A (zh) 一种数据处理方法及其设备
KR20210048270A (ko) 복수 객체에 대한 오디오 포커싱 방법 및 장치
WO2022253053A1 (zh) 一种播放视频的方法及装置

Legal Events

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