KR102259009B1 - 수확 대상 과실 판단 방법 및 과실 수확 장치 - Google Patents

수확 대상 과실 판단 방법 및 과실 수확 장치 Download PDF

Info

Publication number
KR102259009B1
KR102259009B1 KR1020210026710A KR20210026710A KR102259009B1 KR 102259009 B1 KR102259009 B1 KR 102259009B1 KR 1020210026710 A KR1020210026710 A KR 1020210026710A KR 20210026710 A KR20210026710 A KR 20210026710A KR 102259009 B1 KR102259009 B1 KR 102259009B1
Authority
KR
South Korea
Prior art keywords
fruit
data
harvest
image
fruits
Prior art date
Application number
KR1020210026710A
Other languages
English (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 KR1020210026710A priority Critical patent/KR102259009B1/ko
Priority to KR1020210067270A priority patent/KR20220122433A/ko
Application granted granted Critical
Publication of KR102259009B1 publication Critical patent/KR102259009B1/ko
Priority to PCT/KR2022/002775 priority patent/WO2022182191A1/ko
Priority to US18/237,440 priority patent/US20230389474A1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D46/00Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
    • A01D46/24Devices for picking apples or like fruit
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D46/00Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
    • A01D46/30Robotic devices for individually picking crops
    • 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/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Investigating Or Analysing Materials By Optical Means (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 일 양상에 따르면, 과실 수확 방법은 인공신경망이 작물 이미지를 입력 받는 단계, 인공신경망이 작물 이미지에 포함된 각각의 과실의 숙성도와 관련된 인덱스 데이터를 출력하는 단계, 인덱스 데이터를 기초로 수확 대상 과실을 출력하는 단계를 포함하고, 수확 대상 과실을 출력하는 단계는 제1 시즌에는 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제1 기준보다 높은 과실을 수확 대상 과실로 출력하고, 제2 시즌에는 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제2 기준보다 높은 과실을 수확 대상 과실로 출력하며, 제1 기준과 제2 기준은 서로 다른 과실 수확 방법에 관한 것이다.

Description

수확 대상 과실 판단 방법 및 과실 수확 장치{METHOD FOR DETERMINING HARVEST TARGET FRUIT AND FRUITS HARVESTING DEVICE}
본 발명은 과실 수확 장치 및 방법에 관한 것으로, 보다 상세하게는 학습 데이터를 통해 학습된 인공신경망을 이용하여 수확 대상 과실을 시기에 따라 상이하게 수확하는 장치 및 방법에 관한 것이다.
자동 과실 수확 기술은 사용자가 수확해야 할 과실에 대해 인공지능을 활용하여 자동으로 판단하는 기술이다.
이러한 자동 과실 수확 기술에는 과실의 상태 정보를 기반으로 수확 대상 과실을 자동으로 판단하는 기술이 포함될 수 있고, 이 때 과실의 상태 정보는 이미지를 기반으로 획득하게 된다.
한편, 이러한 과실의 상태 정보에는 농업 종사자의 과실에 대한 수확 여부를 판단하는 방법이 반영될 필요가 있으며, 이러한 방법은 종래 대부분의 농업 종사자의 경험칙에 기초하여 판단하는 방법이었는 바, 한계가 있었다.
이와 관련하여 한국 등록 특허 제10-04332272호와 같은 선행기술이 있다.
본 발명의 일 과제는 사용자에게 수확 대상 과실 판단을 제공함에 있어서, 이미지를 기반으로 인공신경망을 활용하여 자동으로 수확 대상 과실을 판단하는 장치 및 그 방법을 제공함에 있다.
본 발명의 또 다른 과제는 사용자에게 수확 대상 과실 판단을 제공함에 있어서, 과실의 숙성도를 기초로 하여 판단하는 장치 및 그 방법을 제공함에 있다.
본 발명의 또 다른 과제는 사용자에게 수확 대상 과실 판단을 제공함에 있어, 수확 시기에 따라 상이한 수확 대상 과실을 판단하는 장치 및 그 방법을 제공함에 있다.
본 발명의 또 다른 과제는 작물 이미지에서 과실의 위치를 감지하고, 감지된 과실에 대응하는 과실의 숙성도를 출력하는 수확 장치 및 그 방법을 제공함에 있다.
본 발명의 또 다른 일 과제는 작물 이미지에서 수확 대상 과실을 판단하고, 수확 순서에 따라 수확 대상 과실을 수확하는 장치 및 그 방법을 제공함에 있다.
실시 예에 따른 수확 대상 과실 판단 방법은 인공신경망이 작물 이미지를 입력 받는 단계; 상기 인공신경망이 상기 작물 이미지에 포함된 각각의 과실의 숙성도와 관련된 인덱스 데이터를 출력하는 단계; 및 상기 인덱스 데이터를 기초로 수확 대상 과실을 출력하는 단계; 를 포함하고, 상기 수확 대상 과실을 출력하는 단계는 제1 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제1 기준보다 높은 과실을 수확 대상 과실로 출력하고, 제2 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제2 기준보다 높은 과실을 수확 대상 과실로 출력하며, 상기 제1 기준과 제2 기준은 서로 다르다.
실시 예에 따른 과실 수확 장치는, 온실에서 작물 이미지를 획득하는 이미지 획득부; 상기 작물 이미지를 저장하는 저장부; 상기 작물 이미지를 기초로 과실 수확 대상을 판단하는 제어부; 및 상기 수확 대상 과실을 수확하는 기구부; 를 포함하고, 상기 제어부는 인공신경망을 포함하고, 상기 인공신경망은 상기 작물 이미지에 포함된 복수의 과실에 대해서 상기 과실의 숙성도와 관련된 인덱스 데이터를 출력하고, 상기 인덱스 데이터를 기초로 수확 시즌에 따라 수확 대상 과실을 상이하게 판단한다.
본 발명에 의하면, 사용자는 이미지 내에 위치하는 과실 중 수확 대상 과실을 자동으로 제공받을 수 있다.
본 발명에 의하면, 사용자에게 제공하는 수확 대상 과실은 숙성도를 기초로 하며, 과실의 숙성도는 이미지를 기반으로 산출될 수 있다.
본 발명에 의하면, 사용자가 수확하는 시기에 따라, 수확 대상 과실이 상이하게 판단되어, 수확, 유통 및 판매까지 가장 최적의 과실 숙성도를 유지할 수 있다.
본 발명에 의하면 사용자는 수확 대상 과실로 판단된 과실을 일정 순서에 따라 수확하는 수확 장치를 제공받을 수 있다.
도 1은 일 실시 예에 따른 온실 시스템에 대한 개략도이다.
도 2는 일 실시 예에 따른 수확 장치를 나타내는 블록도이다.
도 3은 일 실시 예에 따른 인공신경망의 학습 과정에 관한 블록도이다.
도 4는 일 실시 예에 따른 과실 위치에 관한 학습 데이터를 나타내는 도면이다.
도 5는 일 실시 예에 따른 과실 숙성도에 관한 학습 데이터를 나타내는 도면이다.
도 6은 일 실시 예에 따른 과실 크기에 관한 학습 데이터를 나타내는 도면이다.
도 7은 일 실시 예에 따른 과실 거리에 관한 학습 데이터를 나타내는 도면이다.
도 8은 일 실시 예에 따른 과실 거리에 관한 학습 데이터를 나타내는 도면이다.
도 9는 일 실시 예에 따른 수확 대상 과실을 출력하고, 수확 순서를 판단하는 방법에 관한 순서도이다.
도 10은 일 실시 예에 따른 제어부에서 출력하는 출력 데이터에 관한 도면이다.
도 11는 일 실시 예에 따른 시즌에 따라 수확 대상 과실을 판단하는 방법에 대한 순서도이다.
도 12는 일 실시 예에 따른 과실 숙성도에 관련된 인덱스 데이터이다.
도 13은 일 실시 예에 따른 수확 순서를 판단하는 방법에 관한 순서도이다.
도 14는 일 실시 예에 따른 제2 인공신경망이 학습하는 것을 설명하는 도면이다.
도 15는 일 실시 예에 따른 제1 이미지 및 제2 이미지 획득에 관한 도면이다.
도 16은 일 실시 예에 따른 수확 장치에서 작물까지 거리를 구하는 방법을 설명하는 도면이다.
본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
도면들에 있어서, 층 및 영역들의 두께는 명확성을 기하기 위하여 과장되어진 것이며, 또한, 구성요소(element) 또는 층이 다른 구성요소 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 구성요소 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 구성요소를 개재한 경우를 모두 포함한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성 요소는 동일한 참조부호를 사용하여 설명한다.
본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
실시 예에 따른 수확 대상 과실 판단 방법은 인공신경망이 작물 이미지를 입력 받는 단계; 상기 인공신경망이 상기 작물 이미지에 포함된 각각의 과실의 숙성도와 관련된 인덱스 데이터를 출력하는 단계; 및 상기 인덱스 데이터를 기초로 수확 대상 과실을 출력하는 단계; 를 포함하고, 상기 수확 대상 과실을 출력하는 단계는 제1 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제1 기준보다 높은 과실을 수확 대상 과실로 출력하고, 제2 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제2 기준보다 높은 과실을 수확 대상 과실로 출력하며, 상기 제1 기준과 제2 기준은 서로 다르다.
상기 수확 대상 과실을 출력하는 단계는 상기 수확 대상 과실의 위치에 관한 라벨링 데이터도 함께 출력할 수 있다.
상기 제2 기준은 상기 제1 기준 보다 낮을 수 있다.
상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 상기 과실의 숙성도에 대한 '익음', '안익음' 클래스 데이터인 경우, 상기 제1 기준은 확률에 기초한 제1 기준값으로 설정되고, 제2 기준은 확률에 기초한 제2 기준값으로 설정될 수 있다.
상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 상기 과실의 숙성도에 따른 적어도 3가지 이상의 클래스 데이터인 경우, 기 제1 기준은 상기 과실의 숙성도에 따른 제1 기준 클래스가 되고, 상기 제2 기준은 상기 과실의 숙성도에 따른 제2 기준 클래스가 되며, 상기 제2 기준 클래스는 상기 제1 기준 클래스보다 낮을 수 있다.
상기 인공신경망은 학습 데이터를 통해 학습되며, 상기 학습 데이터는 상기 작물 이미지가 포함하는 과실 위치 라벨링 데이터를 포함할 수 있다.
상기 학습 데이터는 상기 작물 이미지에 포함된 과실을 복수의 크기 카테고리 분류한 과실 크기 라벨링 데이터를 포함할 수 있다.
상기 학습 데이터는 상기 작물 이미지에 포함된 과실의 거리를 복수의 카테고리로 분류한 과실 거리 라벨링 데이터를 포함하고, 상기 과실의 거리는 상기 작물 이미지에서 카메라와 상기 과실 사이의 거리를 나타낼 수 있다.
상기 학습 데이터는 상기 작물 이미지에서 인접 열에 위치한 과실과 이격 열에 위치한 과실을 분류한 과실 열 구분 라벨링 데이터를 포함할 수 있다.
상기 인공신경망은 상기 작물 이미지에 포함된 과실에 대한 인덱스 데이터를 출력하고, 상기 인덱스 데이터는 과실 숙성도, 크기, 거리, 열 구분에 관한 라벨링 데이터 중 적어도 하나를 포함하는 데이터일 수 있다.
실시 예에 따른 과실 수확 장치는, 온실에서 작물 이미지를 획득하는 이미지 획득부; 상기 작물 이미지를 저장하는 저장부; 상기 작물 이미지를 기초로 과실 수확 대상을 판단하는 제어부; 및 상기 수확 대상 과실을 수확하는 기구부; 를 포함하고, 상기 제어부는 인공신경망을 포함하고, 상기 인공신경망은 상기 작물 이미지에 포함된 복수의 과실에 대해서 상기 과실의 숙성도와 관련된 인덱스 데이터를 출력하고, 상기 인덱스 데이터를 기초로 수확 시즌에 따라 수확 대상 과실을 상이하게 판단한다.
상기 이미지 획득부는 제1 작물 이미지 및 제2 작물 이미지를 획득하고, 상기 인공신경망은 상기 제1 작물 이미지 및 제2 작물 이미지를 기초로 학습되며, 상기 인공신경망은 복수 열에 위치하는 작물을 포함하는 이미지를 입력받아 복수의 열 중 가장 인접한 열에 위치하는 작물만을 포함하는 이미지를 출력하며, 상기 제1 작물 이미지는 복수 열에 위치하는 작물을 포함하는 이미지이고, 상기 제2 작물 이미지는 복수의 열 중 가장 인접한 열에 위치하는 작물만을 포함하는 이미지일 수 있다.
상기 제2 이미지는 암막장치에 의해 복수의 열중 가장 인접한 열의 작물을 제외한 작물은 제거된 이미지일 수 있다.
상기 이미지 획득부는 스트레오스코픽 카메라에 의해 복수의 작물 이미지를 획득할 수 있다.
상기 이미지 획득부는 거리 센서를 통해 과실과 수확 장치 간의 거리를 산출할 수 있다.
상기 인덱스 데이터는 상기 작물 이미지에 포함된 복수의 과실에 대해 상기 과실의 숙성도, 위치, 거리, 열 구분에 관한 라벨링 데이터 중 적어도 하나를 포함하는 데이터일 수 있다.
상기 제어부는 상기 수확 대상 과실에 대한 수확 순서를 판단하고, 상기 기구부는 상기 수확 순서에 따라 과실을 수확할 수 있다.
상기 제어부는 상기 인덱스 데이터에 기초하여 수확 순서를 판단할 수 있다.
상기 제어부는 수확 보류 과실을 참고하여 상기 수확 순서를 판단하고, 상기 수확 보류 과실은 상기 인덱스 데이터가 포함하는 과실의 위치에 관한 라벨링 데이터가 바운딩 박스로 구현된 경우, 상기 바운딩 박스가 겹쳐져 있는지 여부에 기초하여 판단될 수 있다.
이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상 범위 내에 포함된다고 할 것이다.
이하에서는 도면을 참조하여, 온실 시스템을 설명하도록 한다.
도 1은 일 실시 예에 따른 온실 시스템에 대한 개략도이다.
도 1을 참조하면, 일 실시 예에 따른 온실 시스템(1)은 온실(2) 및 수확 장치(20)를 포함할 수 있다.
온실(2)은 작물이 생장하는 공간일 수 있다. 온실(2)은 작물의 생장을 위한 온실 내부 습도 및 온도 등, 온실 내부 기본 정보를 측정할 수 있는 시스템이 구축된 공간일 수 있다. 또한, 온실(2)은 측정된 내부 기본 정보를 바탕으로 온실 내부를 제어할 수 있는 시스템이 구축된 공간일 수 있다.
도면과 상세한 설명에는 온실(2)을 예로 들어 설명하였으나, 상기 온실(2)은 스마트팜일 수 있다. 즉, 실시 예에 따른 온실 시스템(1)은 온실(2)과 같은 폐쇄된 공간이 아니라 노지와 같은 공간에도 적용될 수 있다.
작물(10)은 온실(2)에서 생장할 수 있는 식물일 수 있다. 작물(10)은 토양에서 재배되는 식물이거나 양액을 통해 재배되는 식물일 수 있다. 예를 들어, 작물(10)은 토마토, 파프리카 등이 될 수 있다.
작물(10)은 온실(2)에서 서로 평행하는 열에 따라 배치되어 생장할 수 있다. 즉, 작물(10)은 열에 따라 구분되어 온실에서 생장할 수 있다.
작물(10)은 제1열 작물(11), 제2열 작물(12), 제3열 작물(13)을 포함할 수 있다. 제1열 작물(11)은 제1열에 배치되어 재배될 수 있고, 제2열 작물(12)은 제2열에 배치되어 재배될 수 있으며, 제3열 작물(13)은 제3열에 배치되어 재배될 수 있다.
작물(10)은 각 열에서 일정한 간격을 두고 재배될 수 있다. 작물(10)은 생장함에 따라 열 내에서 일정한 간격에 따라 이동할 수 있다. 작물(10)은 유인선을 따라 열 내에서 일정한 간격에 따라 이동할 수 있다.
수확 장치(20)는 온실(2) 내에서 이동할 수 있다. 수확 장치(20)는 작물이 재배되는 열 사이를 따라 이동할 수 있다. 수확 장치(20)는 제1열 작물(11)과 제2열 작물(12) 사이, 제2열 작물(12)과 제3열 작물(13) 사이를 이동할 수 있다. 수확 장치(20)는 제1열 작물(11)과 제2열 작물(12) 사이, 제2열 작물(12)과 제3열 작물(13) 사이에 설치된 레일을 통해 이동할 수도 있고, 레일 없이 작물 간의 간격을 일정 거리로 유지하며 이동할 수도 있다. 수확 장치(20)는 일정한 속도를 유지하며 이동할 수 있다.
수확 장치(20)는 온실(2) 내에서 과실을 포함하는 작물 이미지를 획득할 수 있다. 수확 장치(20)는 온실(2) 내를 이동하면서, 작물 이미지를 획득할 수 있다. 수확 장치(20)는 제1열 작물(11)과 제2열 작물(12) 사이, 제2열 작물(12)과 제3열 작물(13) 사이를 이동하며 과실을 포함하는 작물 이미지를 획득할 수 있다. 수확 장치(20)는 일정한 속도를 유지하며 작물 이미지를 획득할 수 있으며, 고정된 위치에서 작물 이미지를 획득할 수도 있다.
수확 장치(20)는 작물 이미지에 기초하여 작물 이미지가 포함하는 과실 정보를 획득할 수 있다. 상기 과실 정보는 과실의 위치, 숙성도, 크기, 거리, 열 정보 중 적어도 하나를 포함할 수 있다.
수확 장치(20)는 상기 과실 정보를 기초로 수확 대상 과실을 결정할 수 있다. 수확 장치(20)는 과실의 숙성도 정보를 기초로 수확 대상 과실을 결정할 수 있다. 수확 장치(20)는 과실의 숙성도 정보를 기초로 시즌 별로 상이한 수확 대상 과실을 결정할 수 있다.
수확 장치(20)는 수확 대상 과실을 결정하고, 수확 대상 과실에 대한 수확 순서를 판단할 수 있다. 수확 장치(20)은 수확 순서에 기초하여 수확 대상 과실을 수확할 수 있다.
수확 장치(20)는 수확된 과실을 수납 및 저장할 수 있다. 수확 장치(20)는 수확된 과실을 운반할 수 있다. 이하에서는 수확 장치(20)에 대해서 상세하게 설명하도록 한다.
도 2는 일 실시 예에 따른 수확 장치를 나타내는 블록도이다.
도 2를 참조하면, 일 실시 예에 따른 수확 장치(20)는 이미지 획득부(100), 제어부(200), 기구부(300), 및 저장부(400)를 포함할 수 있다.
이미지 획득부(100)는 적어도 하나 이상의 카메라로 구현될 수 있다.
이미지 획득부(100)는 이미지를 획득할 수 있다. 이미지 획득부(100)는 과실을 포함하는 작물 이미지를 획득할 수 있다. 이미지 획득부(100)는 다수의 이미지를 획득할 수 있다.
이미지 획득부(100)는 획득된 이미지를 제어부(200) 또는 저장부(400)로 전달할 수 있다.
이미지 획득부(100)는 거리 센서를 포함하는 형태로 구현될 수도 있다. 이미지 획득부(100)는 거리 센서를 활용하여 획득된 이미지에 포함된 오브젝트와의 거리를 산출할 수 있다. 이미지 획득부(100)는 산출된 거리를 제어부(200)로 전달할 수 있다.
제어부(200)는 이미지에서 과실에 대한 정보를 판단할 수 있다. 과실에 대한 정보는 작물 이미지에 포함된 과실에 대한 정보일 수 있다. 과실에 대한 정보는 작물 이미지에 포함된 과실의 숙성도, 크기, 위치, 거리 중 적어도 하나를 포함할 수 있다.
제어부(200)는 과실에 대한 정보를 기초로 수확 대상 과실을 판단할 수 있다. 제어부(200)는 시즌에 따라 수확 대상 과실을 상이하게 판단할 수 있다. 제어부(200)는 수확 대상 과실에 대해 수확 순서를 판단할 수 있다.
제어부(200)는 이미지에 포함된 오브젝트와의 거리를 산출할 수 있다. 제어부(200)는 이미지를 기초로 하여 이미지에 포함된 과실의 거리를 산출할 수 있다.
제어부(200)은 학습된 인공신경망을 포함할 수 있다. 인공신경망은 이미지를 활용하여 학습할 수 있다. 인공신경망은 이미지와 학습 데이터를 활용하여 학습할 수 있다. 학습 데이터는 라벨링 데이터를 포함할 수 있다.
라벨링 데이터는 작물 이미지에 포함된 과실의 숙성도, 크기, 위치, 거리 중 적어도 하나를 포함하는 데이터일 수 있다. 라벨링 데이터는 제어부(200)에서 판단하는 과실에 대한 정보와 서로 대응될 수 있다.
제어부(200)는 수확 대상 과실에 대한 수확 순서를 결정할 수 있다. 제어부(200)는 수확 대상 과실에 대한 정보를 기초로 수확 순서를 결정할 수 있다.
제어부(200)는 수확 대상 과실에 대한 정보를 기구부(300) 또는 저장부(400)로 전달할 수 있다. 제어부(200)는 수확 순서에 관한 정보를 기구부(300) 또는 저장부(400)로 전달할 수 있다.
기구부(300)는 수확부(380)와 수납부(390)를 포함할 수 있다.
수확부(380)는 과실을 수확할 수 있다. 수확부(380)는 제어부에서 판단한 수확 대상 과실을 수확할 수 있다. 수확부(380)는 제어부(200)에서 판단한 과실 수확 순서에 따라 과실을 수확할 수 있다.
수확부(380)는 수확한 과실을 수납부(390)로 전달할 수 있다.
수납부(390)는 수확한 과실을 보관할 수 있다. 수납부(390)는 과실에 대한 정보를 기초로 하여 과실을 보관할 수 있다. 과실에 대한 정보는 과실의 숙성도, 크기 중 적어도 하나를 포함할 수 있다. 예를 들어, 수납부(390)는 과실을 크기 별로 분류된 상태로 보관할 수 있다. 또는 수납부(390)는 과실의 숙성도를 기초로 하여 숙성도가 동일한 과실끼리 분류된 상태로 보관할 수 있다.
저장부(400)는 이미지 획득부(100)에서 획득한 이미지를 저장할 수 있다. 저장부(400)는 제어부(200)에서 판단한 수확 대상 과실에 대한 정보를 저장할 수 있다. 저장부(400)는 제어부(200)에서 결정한 수확 순서에 관한 정보를 저장할 수 있다.
이하에서는 제어부에 포함된 인공신경망에 대해서 상세하게 설명하도록 한다.
도 3은 일 실시 예에 따른 인공신경망의 학습 과정에 관한 블록도이다.
도 3을 참조하면, 제어부(200)는 인공신경망(220a)을 포함할 수 있다.
인공신경망은 Convolutional layer, pooling layer, fully connected layer, activating function layer을 포함할 수 있다.
Convolutional layer는 적어도 하나 이상의 Filter를 포함하고 있으며, 적어도 하나 이상의 Filter는 각각 특정 모양에 대한 특징을 가질 수 있다. 예를 들어, 물체의 윤곽을 알아내기 위한 edge Filter의 경우 이미지를 커버할 수 있는 선과 같은 특정 모양에 대한 특징을 가질 수 있다. edge Filter를 이미지에 적용시키는 경우, edge Filter에 부합하는 특징 정보를 얻을 수 있다. Convolutional layer에 포함된 적어도 하나 이상의 Filter를 통해 특징 맵을 추출할 수 있다.
Pooling layer는 Convolutional layer의 사이 사이에 구조적으로 위치할 수 있다. 또는 복수의 Convolutional layer가 계층적으로 위치한 후, Pooling layer가 위치할 수도 있다. Pooling layer는 Convolutional layer를 통해 추출된 특징 맵에서 특정 영역에 대한 특정 값을 추출하는 기능을 수행한다. Pooling layer는 여러 가지 종류를 가지고 있으며, 일 예로는 Max Pooling layer, Median Pooling layer 등이 있을 수 있다.
Fully Connected Layer는 적어도 하나 이상의 Convolutional Layer와 Pooling Layer를 통해 추출된 특징 맵에 대해서 이미지 분류 기능을 수행할 수 있다. 일 예로 Fully Connected Layer는 특징 맵을 일렬의 형태로 위치한 후 hidden layer를 거쳐 이미지를 분류할 수 있다.
Activation Function layer는 활성화 함수 층으로서 특징 맵에 적용될 수 있다. Activation Function layer는 Fully Connected Layer 이후 정량적 값에 대해, 특징 정보를 포함하고 있는 여부에 관한 결과로 바꿔 주는 기능을 수행할 수 있다.
인공신경망(220a)은 학습 데이터(210)을 통해 학습할 수 있다.
학습 데이터(210)는 과실을 포함하는 작물 이미지일 수 있다. 학습 데이터(210)는 이미지 획득부(100)에서 획득한 작물 이미지일 수 있다. 학습 데이터(210)는 작물 이미지와 라벨링 데이터를 포함하는 작물 이미지일 수 있다. 라벨링 데이터는 작물 이미지에 포함된 과실의 위치, 숙성도, 크기, 거리, 열 구분 중 적어도 하나를 포함하는 데이터일 수 있다.
인공신경망(220a)은 학습 데이터(210)를 입력 받고, 출력 데이터(230)를 출력할 수 있으며, 학습 데이터(210)와 출력 데이터(230)를 비교하여 학습할 수 있다. 일 예에 따르면, 출력 데이터(230)는 학습 데이터(210)가 라벨링 데이터를 포함하는 경우, 라벨링 데이터에 관한 확률값을 포함하는 데이터일 수 있다.
인공신경망(220a)은 오차 역전파 방법으로 학습할 수 있다. 오차 역전파 방법은 학습 데이터(210)와 출력 데이터(210)의 오차를 인공신경망(220a)이 포함하는 노드에 다시 반영하여 학습하는 방법일 수 있다. 인공신경망(220a)은 학습 데이터(210)와 출력 데이터(230)의 오차를 최소화하는 방향으로 학습할 수 있다.
학습된 인공신경망은 이미지가 입력되면 이미지 내의 오브젝트를 감지하거나 오브젝트의 종류를 분류할 수 있다. 학습된 인공신경망은 이미지 내 오브젝트의 속성에 따라 오브젝트를 분류할 수 있다.
학습된 인공신경망은 과실을 포함하는 작물 이미지를 입력 받고, 작물 이미지 내에서 과실에 대한 정보를 추출하고, 이에 따라 작물 이미지 내 과실을 분류할 수 있다. 상기 과실에 대한 정보는 작물 이미지가 포함하는 과실의 위치, 숙성도, 크기, 거리, 열 구분에 관한 정보 중 적어도 하나를 포함할 수 있다. 예를 들어, 학습된 인공신경망은 작물 이미지를 입력 받고, 작물 이미지가 포함하는 과실에 대해서 과실의 위치, 숙성도, 크기, 거리, 열 구분 중 적어도 하나에 대한 과실 정보를 출력할 수 있다.
이하에서는 인공신경망을 학습하기 위한 학습 데이터에 대해 구체적인 설명을 하도록 한다.
도 4는 일 실시 예에 따른 과실 위치에 관한 학습 데이터를 나타내는 도면이다.
도 4를 참조하면, 학습 데이터는 제1 작물 이미지(310)와 제2 작물 이미지(320)을 포함할 수 있다. 제2 작물 이미지(320)는 과실 위치에 관한 학습 데이터를 포함할 수 있다. 과실 위치에 관한 학습 데이터는 이미지내 과실 위치에 관한 라벨링 데이터를 포함할 수 있다.
또는, 학습 데이터는 제2 작물 이미지(320) 없이 라벨링 데이터로만 구현될 수 있다. 예를 들어, 학습 데이터는 제1 작물 이미지(310)와 제1 작물 이미지(310)와 같은 이미지 프레임을 가지나 배경 이미지 없이 라벨링 데이터로만 구현되어 있는 데이터를 포함할 수도 있다. 이러한 경우, 배경 이미지 없이 라벨링 데이터로만 구현되어 있는 데이터와 제1 작물 이미지(310)를 서로 대응시키면, 도4에서 구현한 제2 작물 이미지(320)가 라벨링 데이터를 포함하는 형태로 구현될 수 있다.
제1 작물 이미지(310)와 제2 작물 이미지(320)는 이미지 획득부(100)를 통해 획득된 이미지일 수 있다. 제1 작물 이미지(310)와 제2 작물 이미지(320)는 저장부(400)에 저장된 이미지일 수 있다. 또한 제2 작물 이미지(320)는 이미지 획득부(100)를 통해 획득된 이미지가 제어부에 의해 가공된 형태를 갖는 이미지일 수 있다. 또는 제1 작물 이미지(310)와 제2 작물 이미지(320)는 외부 서버로부터 전달받은 이미지일 수 있다.
제1 작물 이미지(310)와 제2 작물 이미지(320)는 적어도 하나 이상의 과실을 포함할 수 있다. 적어도 하나 이상의 과실은 숙성도, 크기, 위치, 거리 중 적어도 하나 이상이 서로 같거나 다를 수 있다.
제2 작물 이미지(320)는 과실 위치에 관한 라벨링 데이터를 포함할 수 있다. 과실 위치에 관한 라벨링 데이터는 과실이 위치하는 영역에 대해 바운딩 박스 형태로 구현한 데이터일 수 있다.
제2 작물 이미지(320)에서 과실 위치에 관한 라벨링 데이터가 바운딩 박스로 구현된 경우, 제2 작물 이미지(320) 내에 바운딩 박스(321)는 과실과 대응되는 위치에 표시될 수 있다. 바운딩 박스(321)에 대응되는 과실은 적어도 하나 이상일 수 있으나, 바람직하게는 하나의 과실에 대응될 수 있다.
바운딩 박스(321)의 형태는 사각형 형태로 구현될 수 있으며, 정사각형 또는 직사각형 형태로 구현될 수 있다. 바운딩 박스(321)의 위치는 바운딩 박스에 대응되는 과실이 제2 작물 이미지(320)에서 위치하는 영역에 대응될 수 있다.
바운딩 박스(321) 내부 면적은 제2 작물 이미지(320) 내에서 바운딩 박스(321)에 대응되는 과실이 차지하는 면적보다 클 수 있다. 예를 들어, 바운딩 박스(321)가 제2 작물 이미지(320)에서 차지하는 면적은 제2 작물 이미지(320) 내에서 과실이 차지하는 면적보다 넓을 수 있다. 상기 과실이 차지하는 면적은 이미지를 세그먼테이션(Image segmentation) 방법을 활용하여 과실을 detection 하는 경우, detection 된 과실이 차지하는 면적을 의미할 수 있다.
바운딩 박스(321)는 바운딩 박스(321)에 대응되는 과실의 정보를 벡터 형태로 표현한 과실 정보 백터와 대응될 수 있다. 보다 구체적으로, 적어도 하나 이상의 바운딩 박스(321)는 각각의 바운딩 박스(321)와 대응되는 과실 정보 벡터와 대응될 수 있으며, 과실 정보 벡터는 상기 과실에 대한 정보를 포함할 수 있다.
과실 정보 벡터는 과실의 위치, 숙성도, 크기, 거리, 열 구분 중 적어도 하나 이상의 정보를 포함하는 데이터일 수 있다. 과실 정보 벡터가 과실의 위치에 관한 정보를 포함하는 경우, 과실 정보 벡터는 (X,Y,L,H) 형태를 갖는 데이터일수 있다.
과실 정보 벡터가 (X,Y,L,H)의 벡터 형태를 갖는 경우, (X,Y)는 바운딩 박스(321)의 제2 작물 이미지(320) 내에서 위치를 뜻하고,(L,H)는 바운딩 박스의 면적을 나타낼 수 있다. L은 바운딩 박스(321)의 가로 일 변의 길이가, H는 바운딩 박스(321)의 세로 일 변의 길이를 뜻할 수 있다. 여기서 (X,Y)는 바운딩 박스의 가장 중심점의 위치 좌표 정보이거나 바운딩 박스의 일 꼭짓점의 위치 좌표 정보일 수 있다.
과실 정보 벡터의 L과 H를 통해 바운딩 박스(321)의 면적을 구할 수 있으며, 상기 면적은 과실 정보 벡터에 대응하는 과실의 크기와 대응될 수 있다. 예를 들어, 상기 면적에 따라 상기 과실 정보 벡터에 대응하는 과실의 크기를 산출할 수 있다.
인공신경망에 제1 작물 이미지(310)와 제2 작물 이미지(320)가 학습 데이터로서 입력되면, 인공신경망은 출력 데이터를 출력하고, 출력 데이터와 학습 데이터의 오차를 판단하고, 오차를 최소화하는 방향으로 학습할 수 있다.
이하에서는 도 5을 참조하여, 과실의 숙성도에 관한 학습 데이터를 설명하도록 한다.
도 5는 일 실시 예에 따른 과실 숙성도에 관한 학습 데이터를 나타내는 도면이다.
도 5를 참조하면, 학습 데이터는 과실 숙성도에 관한 라벨링 데이터를 더 포함할 수 있다. 학습 데이터는 도4에서 설명한 바와 같이 제2 작물 이미지(320)와 과실 위치에 관한 학습 데이터를 포함할 수 있다. 나아가, 학습 데이터는 과실 숙성도에 관한 학습 데이터를 포함할 수 있다.
과실 숙성도에 관한 학습 데이터는 과실 숙성도 라벨링 데이터(330)를 포함할 수 있다. 과실 숙성도 라벨링 데이터(330)는 제2 작물 이미지(320) 내에 적어도 하나 이상의 과실에 대해서 과실 각각에 대응되어 라벨링 될 수 있다. 따라서, 제2 작물 이미지(320) 내에 각각의 적어도 하나 이상의 과실들은 각각 과실 숙성도 라벨링 데이터(330)와 매칭될 수 있다.
과실 숙성도 라벨링 데이터(330)는 과실의 숙성도에 관해 적어도 하나 이상의 숙성도 클래스로 분류한 분류 데이터일 수 있다. 예를 들어, 과실의 숙성도를 "익음", "안 익음"의 클래스로 분류하는 경우, 과실 숙성도 라벨링 데이터는 "익음", "안 익음"의 2가지 클래스에 대응될 수 있다. 보다 구체적으로, 표(a)에 도시된 바와 같이, 과실 숙성도 라벨링 데이터는 "익음"에 대응되는 경우 (1,0)의 벡터 형태 데이터로 구현될 수 있다. 또는 "안 익음"에 대응되는 경우 (0,1)의 벡터 형태 데이터로 구현될 수 있다. 과실 숙성도 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
과실의 숙성도를 "익음", "안 익음"의 클래스로 분류하는 것은 "익음"에 대응하는 과실과 "안 익음"에 대응되는 과실의 색상에 따라 결정될 수 있다.
예를 들어, 일반적으로 "익음"에 대응하는 과실의 색상과 "안 익음"에 대응하는 과실의 색상은 과실이 착과된 후 과실이 가질 수 있는 여러 색상 중에 하나일 수 있다.
보다 구체적으로, "익음"에 대응하는 과실은 "안 익음"에 대응하는 과실 보다 과실이 착과된 시점을 기준으로 시간이 더 지속된 경우에 해당할 수 있다. 즉 "익음"에 대응하는 과실과 "안 익음"에 대응하는 과실의 착과된 시점이 동일하다면, "익음"에 대응하는 과실은 착과된 시점을 기준으로 더 오래된 경우일 수 있다.
따라서, "익음"에 대응하는 과실의 색상은 과실이 착과된 시점을 기준으로 더 오래된 시점에 과실이 가질 수 있는 색상과 대응될 수 있고, "안 익음"에 대응하는 과실의 색상은 과실이 착과된 시점을 기준으로 상대적으로 더 짧은 시점에 과실이 가질 수 있는 색상과 대응될 수 있다.
나아가, "익음"에 대응하는 과실의 색상과 "안 익음"에 대응하는 과실의 색상을 분류할 때, RGB Color Histogram을 활용할 수도 있다. 예를 들어, 제2 작물 이미지(320)에서 바운딩 박스 내부 영역을 RGB Color Histogram을 통해 도식화하면, 바운딩 박스(331)의 내부 영역 픽셀들의 칼라 정보를 추출할 수 있다. 이 때, "익음"에 대응하는 과실의 색상은 바운딩 박스(331)의 내부 영역에서 Red Color 픽셀 수가 상대적으로 Green Color 픽셀 수 보다 많은 경우일 수 있다. 또는 "안 익음"에 대응하는 과실의 색상은 바운딩 박스(332)의 내부 영역에서 Green Color 픽셀 수가 상대적으로 Red Color 픽셀 수 보다 상대적으로 많은 경우일 수 있다.
상술한 경우는 작물이 토마토인 경우에 해당하고, 온실에서 생장하는 작물이 다른 작물인 경우에는 과실의 "익음" 및 "안 익음"에 대응하는 Color 픽셀의 종류와 상대적인 픽셀 개수는 다를 수 있다.
또한, RGB Color Histogram을 활용할 때, 바운딩 박스 내부 영역에서 과실 부분만을 추출하여 도식화할 수도 있다. 보다 구체적으로, 바운딩 박스 내부 영역에서 이미지 세그먼테이션 방법을 활용하여 과실을 detecting 하고, detecting 된 과실 영역에 대해서만 RGB Color Histogram 통해 도식화할 수 있다.
이 경우, 과실이 detecting 된 영역에서의 Red Color 픽셀 수와 Green Color 픽셀 수를 비교하여 과실의 숙성도와 대응시킬 수 있다.
또 다른 예에 따르면, RGB Color Histogram을 활용할 때, 바운딩 박스 내부 영역에서 Color 픽셀의 변화가 급격한 지점을 edge로 하여 과실 영역을 추출할 수도 있다. 이 경우, edge의 내부 영역에 대해서 Red Color 픽셀 수와 Green Color 픽셀 수를 비교하여 과실의 숙성도와 대응시킬 수 있다.
과실 숙성도는 "익음" 또는 "안 익음"에 해당하는 2가지 클래스로 분류될 수도 있으나, "제1 숙성도", "제2 숙성도" 및 "제3 숙성도" ?? 의 형태로 적어도 3가지 이상의 숙성도 클래스로 분류될 수도 있다.
이를 통해, 과실 숙성도를 익음 여부로 분류하는 것에 국한되지 아니하고, 다양한 숙성도 클래스로 분류하여 과실 숙성도를 보다 더 세밀하게 분류할 수 있다.
또한, 과실 숙성도를 적어도 3가지 이상의 다양한 숙성도 클래스로 분류하면 과실을 숙성도에 기초하여 다양하게 분류할 수 있다. 이를 통해 과실을 수확할 때, 숙성도에 기초하여 숙성도가 같은 과실끼리 수확할 수 있으며, 수확 이후 과실을 보관하는 것에 있어서도 같은 숙성도를 가지는 과실끼리 보관할 수 있다. 또한, 과실의 숙성도를 3가지 이상의 클래스로 분류하는 경우 수확 이후 최종 소비자에게 공급하기까지의 유통 프로세스에서 소요되는 시간을 고려하여 숙성도를 기초하여 차등적으로 수확 및 유통할 수 있다. 이를 통해, 최종 소비자에게 과실을 공급할 때 가장 최적의 과실 숙성도 상태를 유지할 수 있는 이점이 있을 수 있다.
도 5를 참조하면, 과실의 숙성도를 적어도 3가지 이상의 클래스로 분류한 학습 데이터의 일 예를 확인할 수 있다. 제2 작물 이미지(320)는 적어도 3가지 이상의 과실을 포함하는 이미지일 수 있으며, 제1 과실은 제1 바운딩 박스(331)에 대응되고, 제2 과실은 제2 바운딩 박스(332)에 대응되며, 제3 과실은 제3 바운딩 박스(333)에 대응될 수 있다.
제1 바운딩 박스(331), 제2 바운딩 박스(332), 및 제3 바운딩 박스(333)는 도 4에서 상술한 과실 위치에 관한 라벨링 데이터일 수 있다. 각 바운딩 박스에 대응되는 과실은 서로 다른 과실의 숙성도를 가질 수 있다. 예를 들어, 제1 과실의 경우 제3 숙성도와 대응되며, 제2 과실의 경우 제1 숙성도와 대응되고, 제3 과실의 경우 제2 숙성도와 대응될 수 있다. 과실의 숙성도를 "제1 숙성도", "제2 숙성도" 및 "제3 숙성도" ?? 의 형태로 분류하는 경우, "제2 숙성도"는 "제1 숙성도"에 비해 과실의 성숙도가 더 성숙한 것을 의미할 수 있으며, "제3 숙성도"는 "제2 숙성도"에 비해 과실의 성숙도가 더 성숙한 것을 의미할 수 있다.
도 5의 표(b)를 참조하면, 과실 숙성도 라벨링 데이터(330)는 "제1 숙성도", "제2 숙성도" 및 "제3 숙성도"로 분류한 데이터일 수 있다. 과실 숙성도 라벨링 데이터는 "제1 숙성도"에 대응되는 경우 0의 라벨링 데이터로 구현될 수 있다. 나아가 "제2 숙성도"에 대응되는 경우 1의 라벨링 데이터로 구현될 수 있다. "제3 숙성도에 대응하는 경우에는 2의 라벨링 데이터로 구현될 수 있다. 과실 숙성도 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
과실의 숙성도를 3가지 이상의 클래스로 분류하는 것은 각 클래스에 대응되는 과실의 색상에 따라 결정될 수 있다.
예를 들어, "제1 숙성도"에 대응하는 과실의 색상과 "제2 숙성도"에 대응하는 과실의 색상, "제3 숙성도"에 대응하는 과실의 색상은 과실이 착과된 후 과실이 가질 수 있는 여러 색상 중에 하나일 수 있다.
보다 구체적으로, "제1 숙성도"에 대응하는 과실은 "제2 숙성도"에 대응하는 과실 보다 착과된 시점을 기준으로 시간이 더 지속된 경우에 해당할 수 있다. "제3 숙성도"에 대응하는 과실은 "제2 숙성도"에 대응하는 과실 보다 착과된 시점을 기준으로 시간이 더 지속된 경우에 해당할 수 있다. 즉 "제1 숙성도"에 대응하는 과실과 "제2 숙성도"에 대응하는 과실, 및 "제3 숙성도에 대응하는 과실"의 착과된 시점이 동일하다면, "제1 숙성도"에 대응하는 과실, "제2 숙성도"에 대응하는 과실. "제3 숙성도"에 대응하는 과실 순서대로 착과된 시점을 기준으로 더 오래된 경우일 수 있다.
따라서, "제3 숙성도"에 대응하는 과실의 색상은 과실이 착과된 시점을 기준으로 더 오래된 시점에 과실이 가질 수 있는 색상과 대응될 수 있고, "제2 숙성도"에 대응하는 과실의 색상은 과실이 착과된 시점을 기준으로 "제3 숙성도"에 대응하는 과실에 비해 상대적으로 더 짧은 시점에 과실이 가질 수 있는 색상과 대응될 수 있다.
또한, "제1 숙성도"에 대응하는 과실의 색상은 과실이 착과된 시점을 기준으로 "제2 숙성도"에 대응하는 과실에 비해 상대적으로 더 짧은 시점에 과실이 가질 수 있는 색상과 대응될 수 있다.
나아가, "제1 숙성도"에 대응하는 과실의 색상과 "제2 숙성도"에 대응하는 과실의 색상, "제3 숙성도"에 대응하는 색상을 분류할 때, RGB Color Histogram을 활용할 수도 있다. 예를 들어, 제2 작물 이미지(320)에서 바운딩 박스 내부 영역을 RGB Color Histogram을 통해 도식화하면, 바운딩 박스(331)의 내부 영역 픽셀들의 칼라 정보를 추출할 수 있다. 이 때, "제3 숙성도"에 대응하는 과실의 색상은 바운딩 박스(331)의 내부 영역에서 Red Color 픽셀 수가 상대적으로 Green Color 픽셀 수 보다 많은 경우일 수 있다. 또는 "제1 숙성도"에 대응하는 과실의 색상은 바운딩 박스(332)의 내부 영역에서 Green Color 픽셀 수가 상대적으로 Red Color 픽셀 수 보다 상대적으로 많은 경우일 수 있다. 나아가, "제2 숙성도"에 대응하는 과실의 색상은 바운딩 박스(333)의 내부 영역에서 Red Color 픽셀 수가 바운딩 박스(321)의 내부 영역의 Red Color 픽셀 수 보다는 적으나 바운딩 박스(332)의 내부 영역의 Red Color 픽셀 수 보다는 많은 경우일 수 있다.
상술한 경우는 작물이 토마토인 경우에 해당하고, 온실에서 생장하는 작물이 다른 작물인 경우에는 과실의 다양한 숙성도에 대응하는 Color 픽셀의 종류와 상대적인 픽셀 개수는 다를 수 있다.
또한, RGB Color Histogram을 활용할 때, 바운딩 박스 내부 영역에서 과실 부분만을 추출하여 도식화할 수도 있다. 보다 구체적으로, 바운딩 박스 내부 영역에서 이미지 세그먼테이션 방법을 활용하여 과실을 detecting 하고, detecting 된 과실 영역에 대해서만 RGB Color Histogram 통해 도식화할 수 있다.
이 경우, 과실이 detecting 된 영역에서의 Red Color 픽셀 수와 Green Color 픽셀 수를 비교하여 과실의 숙성도와 대응시킬 수 있다.
또 다른 예에 따르면, RGB Color Histogram을 활용할 때, 바운딩 박스 내부 영역에서 Color 픽셀의 변화가 급격한 지점을 edge로 하여 과실 영역을 추출할 수도 있다. 이 경우, edge의 내부 영역에 대해서 Red Color 픽셀 수와 Green Color 픽셀 수를 비교하여 과실의 숙성도와 대응시킬 수 있다.
도 4에서 상술한 과실 정보 벡터는 과실 숙성도 라벨링 데이터를 포함할 수 있다. 보다 구체적으로 상기 과실 정보 벡터는 도4에서 과실 위치에 관한 라벨링 데이터와 함께 과실 숙성도 라벨링 데이터를 포함할 수 있다.
보다 구체적으로, 과실 정보 벡터는 (과실 위치에 관한 라벨링 데이터, 과실 숙성도 라벨링 데이터)의 형태로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 과실 숙성도가 "익음", "안 익음"으로 분류될 때, (X,Y,L,H, (1,0))의 형태를 가질 수 있다. 또는, 과실 정보 벡터는 과실 숙성도가 적어도 3가지 이상의 클래스로 분류될 때, (X,Y,L,H, 1)의 형태를 가질 수 있다.
이하에서는 과실의 크기에 관한 학습 데이터를 설명하도록 한다.
도 6은 일 실시 예에 따른 과실 크기에 관한 학습 데이터를 나타내는 도면이다.
도 6을 참조하면, 학습 데이터는 과실 크기에 관한 라벨링 데이터를 더 포함할 수 있다. 학습 데이터는 도4에서 설명한 바와 같이 제2 작물 이미지(320)와 과실 위치에 관한 학습 데이터를 포함할 수 있다. 나아가, 학습 데이터는 과실 크기에 관한 학습 데이터를 포함할 수 있다.
표(a)를 참조하면, 과실 크기에 관한 학습 데이터는 과실 크기 라벨링 데이터(340)를 포함할 수 있다. 과실 크기 라벨링 데이터(340)는 제2 작물 이미지(320) 내에 적어도 하나 이상의 과실에 대해서 과실 각각에 대응되어 라벨링 될 수 있다. 따라서, 제2 작물 이미지(320) 내에 각각의 적어도 하나 이상의 과실들은 각각 과실 크기 라벨링 데이터(340)와 매칭될 수 있다.
과실 크기 라벨링 데이터(340)는 과실의 크기에 관해 적어도 하나 이상의 크기 클래스로 분류한 분류 데이터일 수 있다. 예를 들어, 과실의 크기를 "큰 크기", "작은 크기"의 클래스로 분류하는 경우, 과실 크기 라벨링 데이터는 "큰 크기", "작은 크기"의 2가지 클래스에 대응될 수 있다. 보다 구체적으로, 표(A)에 도시된 바와 같이, 과실 크기 라벨링 데이터는 "큰 크기"에 대응되는 경우 (1,0)의 벡터 형태 데이터로 구현될 수 있다. 또는 "작은 크기"에 대응되는 경우 (0,1)의 벡터 형태 데이터로 구현될 수 있다. 과실 크기 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
또한, 도 4에서 상술한 바와 같이 과실 정보 벡터는 과실 크기 라벨링 데이터를 포함할 수 있다. 예를 들어, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 크기 라벨링 데이터)로 구현될 수 있다. 또는 도5에서 상술한 과실 숙성도 라벨링 데이터도 포함할 수 있다. 이에 따라 구현된 과실 정보 벡터를 살펴보면, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터)로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 (X,Y,L,H (1,0), (1,0))으로 구현될 수 있다.
과실의 크기를 "큰 크기", "작은 크기"의 클래스로 분류하는 것은 "큰 크기"에 대응하는 과실과 "작은 크기"에 대응되는 과실이 이미지 내에서 차지하는 영역의 면적에 따라 분류될 수 있다.
예를 들어, 일반적으로 "큰 크기"에 대응하는 과실이 차지하는 영역의 면적은 "작은 크기"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다.
또는 상술한 과실 정보 벡터가 포함하는 과실 위치 라벨링 데이터를 활용해서 분류할 수도 있다. 보다 구체적으로 과실 정보 벡터가 (X,Y,L,H)로 구현된 경우에 있어, 과실의 크기는 L과 H를 통해 산출된 면적에 따라 구할 수 있다. 예를 들어, L과 H를 통해 산출된 제1 면적과 제2 면적에 대해서 제1 면적이 더 큰 경우, 제1 면적에 대응하는 과실의 크기는 "큰 크기"가 되고, 제2 면적에 대응하는 과실의 크기는 "작은 크기"가 될 수 있다.
과실 크기는 "큰 크기" 또는 "작은 크기"에 해당하는 2가지 클래스로 분류될 수도 있으나, "제1 크기", "제2 크기" 및 "제3 크기" ?? 의 형태로 적어도 3가지 이상의 크기 클래스로 분류될 수도 있다.
이를 통해, 과실 크기를 2가지로 분류하는 것에 국한되지 아니하고, 다양한 크기 클래스로 분류하여 과실 크기를 보다 더 세밀하게 분류할 수 있다. 이러한 경우, 과실을 수확할 때 크기가 비슷한 과실끼리 수확할 수 있어, 수확 이후 따로 크기별로 과실을 분류하지 않아도 되는 효과가 있다.
도 6를 참조하면, 과실의 크기를 적어도 3가지 이상의 클래스로 분류한 학습 데이터의 일 예를 확인할 수 있다. 제2 작물 이미지(320)는 적어도 3가지 이상의 과실을 포함하는 이미지일 수 있으며, 제1 과실은 제1 바운딩 박스(341)에 대응되고, 제2 과실은 제2 바운딩 박스(342)에 대응되며, 제3 과실은 제3 바운딩 박스(343)에 대응될 수 있다.
제1 바운딩 박스(341), 제2 바운딩 박스(342), 및 제3 바운딩 박스(343)는 도 4에서 상술한 과실 위치에 관한 라벨링 데이터일 수 있다. 각 바운딩 박스에 대응되는 과실은 서로 다른 과실의 크기를 가질 수 있다. 예를 들어, 제1 과실의 경우 제3 크기와 대응되며, 제2 과실의 경우 제1 크기와 대응되고, 제3 과실의 경우 제2 크기와 대응될 수 있다.
과실의 크기를 "제1 크기", "제2 크기" 및 "제3 크기" ?? 의 형태로 분류하는 경우, "제2 크기"는 "제1 크기"에 비해 과실의 크기가 더 큰 경우를 의미할 수 있으며, "제3 크기"는 "제2 크기"에 비해 과실의 크기가 더 큰 경우를 의미할 있다.
도 6의 표(B)를 참조하면, 과실 크기 라벨링 데이터(340)는 "제1 크기", "제2 크기" 및 "제3 크기"로 분류한 데이터일 수 있다. 과실 크기 라벨링 데이터는 "제1 크기"에 대응되는 경우 0의 라벨링 데이터로 구현될 수 있다. 나아가 "제2 크기"에 대응되는 경우 1의 라벨링 데이터로 구현될 수 있다. "제3 크기에 대응하는 경우에는 2의 라벨링 데이터로 구현될 수 있다. 과실 크기 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
과실의 크기를 3가지 이상의 클래스로 분류하는 것은 각 클래스에 대응되는 과실의 크기에 따라 결정될 수 있다.
과실의 크기를 "제1 크기", "제2 크기", "제3 크기"의 클래스로 분류하는 것은 "제1 크기"에 대응하는 과실과 "제2 크기"에 대응되는 과실, "제3 크기"에 대응되는 과실이 이미지 내에서 차지하는 영역의 면적에 따라 분류될 수 있다.
예를 들어, 일반적으로 "제3 크기"에 대응하는 과실이 차지하는 영역의 면적은 "제2 크기"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다. 또한, "제2 크기"에 대응하는 과실이 차지하는 영역의 면적은 "제1 크기"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다.
또는 상술한 과실 정보 벡터가 포함하는 과실 위치 라벨링 데이터를 활용해서 분류할 수도 있다. 보다 구체적으로 과실 정보 벡터가 (X,Y,L,H)로 구현된 경우에 있어, 과실의 크기는 L과 H를 통해 산출된 면적에 따라 구할 수 있다. 예를 들어, L과 H를 통해 산출된 제1 면적, 제2 면적, 및 제3 면적에 대해서 면적이 제일 큰 순서로 "제3 크기", "제2 크기", "제1 크기"로 순서대로 대응될 수 있다.
도 4에서 상술한 과실 정보 벡터는 과실 크기 라벨링 데이터를 포함할 수 있다. 보다 구체적으로 상기 과실 정보 벡터는 도4에서 과실 위치에 관한 라벨링 데이터와 함께 과실 크기 라벨링 데이터를 포함할 수 있다.
보다 구체적으로, 과실 정보 벡터는 (과실 위치에 관한 라벨링 데이터, 과실 크기 라벨링 데이터)의 형태로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 과실 크기가 3가지 클래스로 분류될 때, (X,Y,L,H, 1 )의 형태를 가질 수 있다. 또는, 과실 정보 벡터는 과실 숙성도 라벨링 데이터를 함께 포함할 수도 있다. 예를 들어, 과실 정보 벡터는 (과실 위치에 관한 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터)의 형태로 구현될 수도 있다.
상기에서 상술한 과실의 크기는 작물 이미지 내에서의 과실의 크기를 의미할 수 있다. 이는, 상기 작물 이미지가 온실 내에서 동일 열에서 재배되는 작물을 포함하는 경우가 일반적이기 때문이다. 따라서, 작물 이미지 내 과실의 크기를 산출하여 실제 과실의 크기와 대응되어 판단함이 가능할 수 있다.
다만, 작물 이미지가 온실 내에서 동일 열에서 재배되는 작물을 포함하는 경우에도 각 작물 간의 상대적인 거리는 다를 수 있는 바, 이하에서는 과실의 거리에 관한 학습 데이터에 대해서 설명하도록 한다.
도 7은 일 실시 예에 따른 과실 거리에 관한 학습 데이터를 나타내는 도면이다.
도 7을 참조하면, 학습 데이터는 과실 거리에 관한 라벨링 데이터를 더 포함할 수 있다. 학습 데이터는 도4에서 설명한 바와 같이 제2 작물 이미지(320)와 과실 위치에 관한 학습 데이터를 포함할 수 있다. 나아가, 학습 데이터는 과실 거리에 관한 학습 데이터를 포함할 수 있다.
과실 거리는 작물 이미지에서 과실이 이미지에서 위치하는 영역의 깊이를 의미할 수 있다. 또는 과실 거리는 수확 장치 내 이미지 획득부에서 과실이 실제 위치하는 지점과의 거리일 수 있다.
과실 거리에 관한 학습 데이터는 과실 거리 라벨링 데이터(350)를 포함할 수 있다. 과실 거리 라벨링 데이터(350)는 제2 작물 이미지(320) 내에 적어도 하나 이상의 과실에 대해서 과실 각각에 대응되어 라벨링 될 수 있다. 따라서, 제2 작물 이미지(320) 내에 각각의 적어도 하나 이상의 과실들은 각각 과실 거리 라벨링 데이터(350)와 매칭될 수 있다.
표(A)를 참조하면, 과실 거리 라벨링 데이터(350)는 과실의 거리에 관해 적어도 하나 이상의 거리 클래스로 분류한 분류 데이터일 수 있다. 예를 들어, 과실의 거리를 "인접 거리", "이격 거리"의 클래스로 분류하는 경우, 과실 거리 라벨링 데이터는 "인접 거리", "이격 거리"의 2가지 클래스에 대응될 수 있다. 보다 구체적으로, 표(A)에 도시된 바와 같이, 과실 거리 라벨링 데이터는 "인접 거리"에 대응되는 경우 (1,0)의 벡터 형태 데이터로 구현될 수 있다. 또는 "이격 거리"에 대응되는 경우 (0,1)의 벡터 형태 데이터로 구현될 수 있다. 과실 거리 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
여기서, "인접 거리" 와 "이격 거리"는 작물 이미지에서 과실이 위치하는 영역의 깊이를 비교하여 구분될 수 있으며, 예를 들어, "이격 거리"에 대응되는 과실은 "인접 거리"에 대응되는 과실 보다 과실이 위치하는 영역의 깊이가 상대적으로 깊을 수 있다.
또한, 도 4에서 상술한 바와 같이 과실 정보 벡터는 과실 거리 라벨링 데이터를 포함할 수 있다. 예를 들어, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 거리 라벨링 데이터)로 구현될 수 있다. 또는 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터도 포함할 수 있다. 이에 따라 구현된 과실 정보 벡터를 살펴보면, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터, 과실 거리 라벨링 데이터)로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 (X,Y,L,H (1,0), (1,0), (1,0))으로 구현될 수 있다.
과실의 거리를 "인접 거리", "이격 거리"의 클래스로 분류하는 것은 "인접 거리"에 대응하는 과실과 "이격 거리"에 대응되는 과실이 이미지 내에서 차지하는 영역의 면적에 따라 분류될 수 있다.
예를 들어, 일반적으로 "인접 거리"에 대응하는 과실이 차지하는 영역의 면적은 "이격 거리"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다.
또는 상술한 과실 정보 벡터가 포함하는 과실 위치 라벨링 데이터를 활용해서 분류할 수도 있다. 보다 구체적으로 과실 정보 벡터가 (X,Y,L,H)로 구현된 경우에 있어, 과실의 거리를 L과 H를 통해 산출된 면적에 따라 구할 수 있다. 예를 들어, L과 H를 통해 산출된 제1 면적과 제2 면적에 대해서 제1 면적이 더 큰 경우, 제1 면적에 대응하는 과실의 거리는 "인접 거리"가 되고, 제2 면적에 대응하는 과실의 거리는 "이격 거리"가 될 수 있다.
과실 거리는 "인접 거리" 또는 "이격 거리"에 해당하는 2가지 클래스로 분류될 수도 있으나, "제1 거리", "제2 거리" 및 "제3 거리" ?? 의 형태로 적어도 3가지 이상의 거리 클래스로 분류될 수도 있다.
이를 통해, 과실 거리를 2가지로 분류하는 것에 국한되지 아니하고, 다양한 거리 클래스로 분류하여 과실 거리를 보다 더 세밀하게 분류할 수 있다.
도 7를 참조하면, 과실의 거리를 적어도 3가지 이상의 클래스로 분류한 학습 데이터의 일 예를 확인할 수 있다. 제2 작물 이미지(320)는 적어도 3가지 이상의 과실을 포함하는 이미지일 수 있으며, 제1 과실은 제1 바운딩 박스(351)에 대응되고, 제2 과실은 제2 바운딩 박스(352)에 대응되며, 제3 과실은 제3 바운딩 박스(353)에 대응될 수 있다.
제1 바운딩 박스(351), 제2 바운딩 박스(352), 및 제3 바운딩 박스(353)는 도 4에서 상술한 과실 위치에 관한 라벨링 데이터일 수 있다. 각 바운딩 박스에 대응되는 과실은 서로 다른 과실의 거리를 가질 수 있다. 예를 들어, 제1 과실의 경우 제3 거리와 대응되며, 제2 과실의 경우 제1 거리와 대응되고, 제3 과실의 경우 제2 거리와 대응될 수 있다.
과실의 거리를 "제1 거리", "제2 거리" 및 "제3 거리" ?? 의 형태로 분류하는 경우, "제2 거리"는 "제1 거리"에 비해 과실의 거리가 더 짧은 경우를 의미할 수 있으며, "제3 거리"는 "제2 거리"에 비해 과실의 거리가 더 짧은 경우를 의미할 있다.
도 6의 표(B)를 참조하면, 과실 거리 라벨링 데이터(350)는 "제1 거리", "제2 거리" 및 "제3 거리"로 분류한 데이터일 수 있다. 과실 거리 라벨링 데이터는 "제1 거리"에 대응되는 경우 0의 라벨링 데이터로 구현될 수 있다. 나아가 "제2 거리"에 대응되는 경우 1의 라벨링 데이터로 구현될 수 있다. "제3 거리"에 대응하는 경우에는 2의 라벨링 데이터로 구현될 수 있다. 과실 거리 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
과실의 거리를 3가지 이상의 클래스로 분류하는 것은 각 클래스에 대응되는 과실의 거리에 따라 결정될 수 있다.
과실의 거리를 "제1 거리", "제2 거리", "제3 거리"의 클래스로 분류하는 것은 "제1 거리"에 대응하는 과실과 "제2 거리"에 대응되는 과실, "제3 거리"에 대응되는 과실이 이미지 내에서 차지하는 영역의 면적에 따라 분류될 수 있다. 이는, 도 1에서 상술한 온실은 균일한 환경을 제공할 수 있는 시스템을 구축하고 있는 바, 온실에서 생장하는 작물에서 착과되는 과실은 상대적으로 균일한 상태를 가질 수 있다. 즉, 온실 내에서 생장하는 과실의 크기는 실제로 크기의 차이가 적기 때문에, 작물 이미지에서 과실이 차지하는 면적이 과실의 거리와 대응될 수 있다.
예를 들어, 일반적으로 "제3 거리"에 대응하는 과실이 차지하는 영역의 면적은 "제2 거리"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다. 또한, "제2 거리"에 대응하는 과실이 차지하는 영역의 면적은 "제1 거리"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다.
또는 상술한 과실 정보 벡터가 포함하는 과실 위치 라벨링 데이터를 활용해서 분류할 수도 있다. 보다 구체적으로 과실 정보 벡터가 (X,Y,L,H)로 구현된 경우에 있어, 과실의 거리는 L과 H를 통해 산출된 면적에 따라 구할 수 있다. 예를 들어, L과 H를 통해 산출된 제1 면적, 제2 면적, 및 제3 면적에 대해서 면적이 제일 큰 순서로 "제3 거리", "제2 거리", "제1 거리"로 순서대로 대응될 수 있다.
도 4에서 상술한 과실 정보 벡터는 과실 거리 라벨링 데이터를 포함할 수 있다. 보다 구체적으로 상기 과실 정보 벡터는 도4에서 과실 위치에 관한 라벨링 데이터와 함께 과실 거리 라벨링 데이터를 포함할 수 있다.
보다 구체적으로, 과실 정보 벡터는 (과실 위치에 관한 라벨링 데이터, 과실 거리 라벨링 데이터)의 형태로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 과실 거리가 3가지 클래스로 분류될 때, (X,Y,L,H, 1 )의 형태를 가질 수 있다. 또는, 과실 정보 벡터는 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터를 함께 포함할 수도 있다. 예를 들어, 과실 정보 벡터는 (과실 위치에 관한 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터, 과실 거리 라벨링 데이터)의 형태로 구현될 수도 있다.
앞서 상술한 과실의 거리는 수확 장치에 설치된 별도의 장비를 활용할 수도 있다. 보다 구체적으로 수확 장치에 설치된 거리 센서를 통해, 실제 거리에 기초하여 과실 거리 라벨링 데이터를 생성할 수도 있다. 예를 들어, 수확 장치가 작물 이미지를 획득하는 경우, 상기 거리 센서가 상기 작물 이미지에 포함된 과실에 각각에 대한 실제 거리를 측정할 수 있다. 상기 실제 거리는 제어부로 전달되고, 제어부는 상기 실제 거리를 기초로 과실 거리 라벨링 데이터를 생성할 수 있다.
일 예를 설명하면, 제어부는 사용자가 설정한 값에 따라 상술한 "제1 거리", "제2 거리" 및 "제3 거리"에 대응되는 과실에 대해 과실 거리 라벨링 데이터를 생성할 수 있다. 상기 사용자가 설정한 값은 거리 센서가 측정한 실제 거리를 기초로 설정된 값일 수 있다.
또 다른 방법으로, 과실의 거리는 작물 이미지 내에서 가림 영역에 기초하여 산출될 수도 있다. 보다 구체적으로, 제어부는 작물 이미지에 대해서, 상기 작물 이미지가 포함하는 각각의 과실의 가림 영역을 판단할 수 있다. 상기 가림 영역 작물 이미지에서 과실이 잎이나 배경, 나뭇가지, 다른 과실에 의해서 가려져 있는 영역을 의미할 수 있다. 상기 가림 영역은 각 과실에 대해서 픽셀 수를 기초로 하여 산출될 수도 있다. 즉, 상기 가림 영역은 작물 이미지에서 하나의 과실이 겹쳐져 있는 픽셀 수를 세어 가림 영역의 면적을 산출할 수 있다.
제어부는 상기 가림 영역을 기초로 과실의 거리를 판단할 수 있다.
제어부는 가림 영역이 넓은 과실일수록 거리가 먼 과실로 판단할 수 있다. 예를 들어, 제어부는 제1 과실에 대한 제1 가림 영역과 제2 과실에 대한 제2 가림 영역을 산출할 수 있다. 제1 가림 영역이 제2 가림 영역보다 넓은 경우, 제1 과실의 거리가 제2 과실의 거리보다 먼 것으로 판단할 수 있다. 제어부는 이러한 방법을 활용하여 거리 라벨링 데이터를 생성할 수 있다.
제어부는 상기 가림 영역에 기초하여 다수의 과실과 촬영부 사이의 상대적 거리를 판단할 수 있다.
이하에서는 과실의 열 구분에 관한 라벨링 데이터를 포함하는 학습 데이터에 대해서 설명하도록 한다.
도 8은 일 실시 예에 따른 열구분에 관한 학습 데이터를 나타내는 도면이다.
도 8을 참조하면, 학습 데이터는 과실 열 구분에 관한 라벨링 데이터를 더 포함할 수 있다. 학습 데이터는 도4에서 설명한 바와 같이 제2 작물 이미지(320)와 과실 위치에 관한 학습 데이터를 포함할 수 있다. 나아가, 학습 데이터는 과실 열에 관한 학습 데이터를 포함할 수 있다.
과실 열은 작물 이미지에서 과실이 이미지에서 위치하는 열을 의미할 수 있다. 도 1에서 상술한 바와 같이, 온실 내에서 작물은 열에 따라 구분되어 생장할 수 있다. 수확 장치가 획득하는 작물 이미지는 제1 열 작물, 제2 열 작물, 제3 열 작물을 모두 포함하는 작물 이미지일 수 있다. 수확 장치가 제1 열 작물과 인접한 위치에서 수확 대상 과실을 판단하여 상기 과실을 수확할 때, 제2열 및 제3열에서 생장하는 작물은 수확 대상 과실로 판단하지 않을 필요가 있다. 이는, 수확 효율성 측면에서 수확 장치가 제1 열 작물과 인접한 경우에는 제1 열 작물만을 수확 대상 과실로 판단하여 수확하는 것이 수확 효율성 측면에서 더 효율적이기 때문이다. 제2 열 작물과 제3 열 작물은 수확 장치가 각각 제2 열 작물과 인접한 위치에 있는 경우, 제3 열 작물과 인접한 위치에 있는 경우에 수확 대상 과실로 판단됨이 수확 장치가 과실을 수확하는 것에 있어 더욱 효율적이다.
또한, 수확 장치에서 수확 대상 과실을 판단하는 프로세스의 효율성을 위해서도 제2 열 및 제3 열에서 생장하는 작물의 경우에는 수확 대상 과실로 판단하지 않음이 바람직하다. 또한, 수확 장치는 제2 열 작물과 제3 작물에 대한 수확이 불가능할 수 있으므로, 제2 열 및 제3 열에서 생장하는 작물은 수확 대상 과실로 판단하지 않음이 바람직하다
따라서, 수확 장치는 작물 이미지에서 작물 이미지가 포함하는 과실의 열을 구분할 필요가 있다.
이를 위해, 과실 열에 관한 학습 데이터를 활용할 수 있다. 과실 열에 관한 학습 데이터는 과실 열 라벨링 데이터(360)를 포함할 수 있다. 과실 열 라벨링 데이터(350)는 제2 작물 이미지(320) 내에 적어도 하나 이상의 과실에 대해서 과실 각각에 대응되어 라벨링 될 수 있다. 따라서, 제2 작물 이미지(320) 내에 각각의 적어도 하나 이상의 과실들은 각각 과실 열 라벨링 데이터(360)와 매칭될 수 있다.
먼저, 표(a)를 참조하면 과실 열 라벨링 데이터는 제2 작물 이미지(320)에서 적어도 하나 이상의 과실에 대해 인접 열에 위치하는 과실에 대해 구현될 수 있다. 보다 구체적으로, 표(a)에 도시된 바와 같이, 과실이 인접 열에 위치하는 경우, 1로 라벨링 될 수 있다.
또는, 과실의 열을 "인접 열", "이격 열"의 클래스로 분류하는 경우, 과실 열 라벨링 데이터는 "인접 열", "이격 열"의 2가지 클래스에 대응될 수 있다. 보다 구체적으로, 표(b)에 도시된 바와 같이, 과실 열 라벨링 데이터는 "인접 열"에 대응되는 경우 (1,0)의 벡터 형태 데이터로 구현될 수 있다. 또는 "이격 열"에 대응되는 경우 (0,1)의 벡터 형태 데이터로 구현될 수 있다. 과실 열 라벨링 데이터가 구현되는 형태는 상술한 예시에 한정되어 해석되지 아니한다.
도 8을 참조하면, 표(a)에 따라 작물 이미지에서 인접 열만 라벨링 하는 경우, 제2 작물 이미지(320)가 포함하는 제1 과실에 대해 제1 바운딩 박스(361)가 구현될 수 있으며, 상기 제1 바운딩 박스와 인접 열 라벨링 데이터가 대응될 수 있다.
또는 표(b)에 따라, 작물 이미지에서 "인접 열", "이격 열"로 라벨링 하는 경우, 제2 작물 이미지(320)가 포함하는 제1 과실에 대한 제1 바운딩 박스(361)와 제2 과실에 대한 제2 바운딩 박스(362)가 구현될 수 있으며, 상기 제1 바운딩 박스(361)와 인접 열 라벨링 데이터가 대응되고, 상기 제2 바운딩 박스(362)와 이격 열 라벨링 데이터가 대응될 수 있다.
여기서, "인접 열" 과 "이격 열"은 작물 이미지에서 과실이 위치하는 열에 따라 구분될 수 있다. 예를 들어, "이격 열"에 대응되는 과실은 수확 장치가 제1열과 인접한 위치에서 제1열, 제2열, 제3열 방향을 바라보며 작물 이미지를 획득한 경우, 제2열 또는 제3열에 위치하는 과실일 수 있으며, "인접 열"에 대응되는 과실은 제1열에 위치하는 과실일 수 있다.
또한, 도4에서 상술한 바와 같이 과실 정보 벡터는 과실 열 라벨링 데이터를 포함할 수 있다. 예를 들어, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 열 라벨링 데이터)로 구현될 수 있다. 또는 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터, 및 과실 거리 라벨링 데이터도 포함할 수 있다. 이에 따라 구현된 과실 정보 벡터를 살펴보면, 과실 정보 벡터는 (과실 위치 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터, 과실 거리 라벨링 데이터, 과실 열 라벨링 데이터)로 구현될 수 있다. 예를 들어, 과실 정보 벡터는 (X,Y,L,H (1,0), (1,0), (1,0), (1,0))으로 구현될 수 있다.
과실 열을 "인접 열", "이격 열"의 클래스로 분류하는 것은 "인접 열"에 대응되는 과실과 "이격 열"에 대응되는 과실이 이미지 내에서 차지하는 영역의 면적에 따라 분류될 수 있다.
예를 들어, 일반적으로 "인접 열"에 대응하는 과실이 차지하는 영역의 면적은 "이격 열"에 대응하는 과실이 차지하는 영역의 면적 보다 넓을 수 있다.
또는 상술한 과실 정보 벡터가 포함하는 과실 위치 라벨링 데이터를 활용해서 분류할 수도 있다. 보다 구체적으로 과실 정보 벡터가 (X,Y,L,H)로 구현된 경우에 있어, 과실의 열을 L과 H를 통해 산출된 면적에 따라 구할 수 있다. 예를 들어, L과 H를 통해 산출된 제1 면적과 제2 면적에 대해서 제1 면적이 더 큰 경우, 제1 면적에 대응하는 과실의 열은 "인접 열"이 되고, 제2 면적에 대응하는 과실의 열은 "이격 열"이 될 수 있다. 또는 제어부는 기준 값을 가지고, 제1 면적이 기준 값보다 큰 경우 "인접 열"로 판단되고, 제2 면적이 기준 값보다 작은 경우 "이격 열"로 판단될 수도 있다.
또한, 상술한 과실의 열은 작물 이미지가 포함하는 과실 영역의 해상도에 기초하여 분류될 수도 있다. 보다 구체적으로 "인접 열"에 대응하는 과실의 영역과 "이격 열"에 대응하는 과실의 영역은 작물 이미지에서 서로 다른 해상도를 가질 수 있다. 예를 들어, 제어부는 작물 이미지에서 제1 과실의 영역에 관한 제1 해상도와 제2 과실의 영역에 관한 제2 해상도를 산출할 수 있다. 상기 제1 해상도가 제2 해상도 보다 높은 경우, 상기 제1 과실은 인접 열에 대응하는 데이터로 라벨링 하고, 상기 제2 과실은 이격 열에 대응하는 데이터를 라벨링 할 수 있다.
이하에서는 학습 데이터를 통해 학습된 인공신경망이 작물 이미지에 기초하여 수확 대상 과실을 판단하고, 판단된 수확 대상 과실에 대한 수확 순서를 판단하는 방법에 대해 설명하도록 한다.
도 9는 일 실시 예에 따른 수확 대상 과실을 출력하고, 수확 순서를 판단하는 방법에 관한 순서도이다.
도 9를 참조하면, 수확 장치 내 제어부가 수확 대상 과실을 출력하고, 수확 순서를 판단하는 방법은 인공신경망이 작물 이미지를 입력 받는 단계(S101), 인공신경망이 과실의 숙성도와 관련된 인덱스 데이터를 포함하는 출력 데이터를 출력하는 단계(S102), 제어부가 인덱스 데이터를 기초로 수확 대상 과실을 출력하는 단계(S103), 제어부가 수확 대상 과실에 대한 수확 순서를 판단하는 단계(S104)를 포함할 수 있다.
수확 장치 내 제어부는 인공신경망을 포함할 수 있다. 인공신경망은 도 4 내지 도 8에 따른 학습 데이터를 통해 학습할 수 있다.
작물 이미지는 도 4 내지 도8에서 학습 데이터로 활용된 작물 이미지일 수도 있으나, 바람직하게는 학습 데이터로 활용된 작물 이미지와 상이한 작물 이미지일 수 있다. 작물 이미지는 이미지 내 적어도 하나 이상의 과실을 포함할 수 있다. 작물 이미지는 온실 내에서 수확 장치가 이동하며 실시간으로 수확 장치가 획득한 이미지일 수 있다.
제어부는 과실 숙성도에 관련된 인덱스 데이터를 포함하는 출력 데이터를 출력할 수 있다. 출력 데이터는 과실의 위치에 관한 데이터를 포함할 수 있으며, 출력 데이터는 인덱스 데이터를 포함할 수 있다. 상기 인덱스 데이터는 과실의 숙성도, 크기, 거리, 열 구분 중 적어도 하나의 인덱스 데이터를 포함할 수 있다. 상기 인덱스 데이터는 도5내지 도8에서 상술한 과실의 숙성도, 크기, 거리, 열 구분에 관한 라벨링 데이터와 대응될 수 있다. 보다 구체적으로, 상기 인덱스 데이터는 도 5 내지 도 8에서 상술한 과실 정보 벡터와 대응될 수 있다.
제어부는 인덱스 데이터를 기초로 수확 대상 과실을 판단하고 출력할 수 있다. 수확 대상 과실은 상기 인덱스 데이터 중 과실의 숙성도와 관련될 수 있으며, 제어부는 수확 대상 과실을 판단하는 시즌에 따라 수확 대상 과실을 상이하게 판단할 수도 있다.
제어부는 수확 대상 과실에 대한 수확 순서를 판단할 수 있다. 제어부는 상기 인덱스 데이터를 기초로 수확 순서를 판단할 수 있다. 상기 인덱스 데이터는 도5 내지 도 8에서 상술한 과실 정보 벡터와 대응될 수 있는 바, 상기 인덱스 데이터는 과실의 숙성도, 크기, 거리, 열에 관한 인덱스 데이터를 포함할 수 있다.
제어부는 상기 인덱스 데이터 중 크기에 관한 인덱스 데이터를 기초로 수확 순서를 판단할 수 있다. 예를 들어, 제어부는 크기 라벨링 데이터가 2인 과실을 먼저 수확하고, 이후 크기 라벨링 데이터가 1인 과실을 수확하며, 마지막으로 크기 라벨링 데이터가 0인 과실을 수확하도록 제어할 수 있다.
이하에서는 도 10 내지 도 12를 참조하여, 제어부가 출력하는 출력 데이터, 수확 대상 과실을 판단하는 방법, 제어부가 판단하는 수확 순서에 대한 구체적인 설명을 하도록 한다.
도 10은 일 실시 예에 따른 제어부에서 출력하는 출력 데이터에 관한 도면이다.
도 10을 참조하면, 도9에서 상술한 제어부가 과실의 숙성도와 관련된 인덱스 데이터를 포함하는 출력 데이터에 관한 일 예를 확인할 수 있다.
작물 이미지(110)가 제어부 내 인공신경망(220a)으로 입력되면, 인공신경망(220a)은 출력 데이터(120a)를 출력할 수 있다. 출력 데이터(120a)는 작물 이미지에 표시된 과실 위치에 관한 출력 데이터(122a)와 인덱스 데이터(122b)를 포함할 수 있다. 출력 데이터(120a)는 작물 이미지(110)와 서로 대응될 수 있다.
과실 위치에 관한 출력 데이터(122a)는 작물 이미지(110)내에 적어도 하나 이상의 과실에 대해서 과실이 위치할 것이라 예상되는 영역을 과실 각각에 대해 표시한 데이터일 수 있다. 예를 들어, 과실 위치에 관한 출력 데이터(122a)는 바운딩 박스 형태로 표시될 수 있다. 바운딩 박스 형태로 표시된 경우, 바운딩 박스 내부 영역에 상기 바운딩 박스와 대응되는 과실이 위치할 수 있고, 상기 과실이 차지하는 면적은 상기 바운딩 박스의 내부 면적보다 작을 수 있다.
인덱스 데이터(122b)는 과실의 숙성도, 크기, 거리, 열에 관한 라벨링 데이터중 적어도 하나를 포함하는 데이터일 수 있다. 인덱스 데이터(122b)는 인공신경망(220a)이 학습할 때 활용했던 학습 데이터와 대응될 수 있다. 학습 데이터는 도 5 내지 도 8에서 상술한 학습 데이터일 수 있다. 즉, 학습 데이터가 과실 정보 벡터 형태로 구현된 경우, 인덱스 데이터(122b) 역시 과실 정보 벡터 형태로 출력될 수 있다.
또한, 상기 인덱스 데이터(122b) 각 라벨링 데이터에 관한 확률값을 포함할 수 있다. 보다 구체적으로, 상기 인덱스 데이터(122b)는 과실의 숙성도, 크기, 거리, 열에 관한 라벨링 데이터에 대해서, 과실이 클래스에 분류될 확률값을 포함할 수 있다. 예를 들어, 상기 인덱스 데이터(122b)는 과실이 숙성도 클래스 1인 확률값, 과실의 크기 클래스 1인 확률값, 과실의 거리 클래스가 1인 확률값, 인접 열 클래스인 확률값을 포함할 수 있다.
구체적인 예를 살펴보면, 인덱스 데이터(122b)가 과실 정보 벡터 형태를 갖는 경우, 인덱스 데이터(122b)는 (과실 위치 라벨링 데이터, 과실 숙성도 라벨링 데이터, 과실 크기 라벨링 데이터, 과실 거리 라벨링 데이터, 과실 열 구분 라벨링 데이터)의 형태를 가질 수 있다. 예를 들어, 인덱스 데이터(122b)가 (X,Y,L,H, 1, 1, 1, 1)로 출력되는 경우, (X,Y,L,H)는 과실 위치에 관한 출력 데이터(122a)와 대응되고, (1,1,1,1)은 대응되는 과실이 과실 숙성도 클래스 중 라벨링이 1로 된 클래스, 과실 크기 클래스 중 라벨링이 1로 된 클래스, 과실 거리 클래스 중 라벨링이 1로 된 클래스, 과실 열 구분 클래스 중 라벨링이 1로 된 클래스를 갖음을 의미할 수 있다. 또한, 이러한 경우 인덱스 데이터(122b)는 각 클래스에 해당될 확률값을 포함할 수 있다.
제어부는 인덱스 데이터를 기초로 하여 수확 대상 과실을 판단할 수 있다. 예를 들어, 제어부는 과실 숙성도 라벨링 데이터를 기초로 수확 대상 과실을 판단할 수 있으며, 이는 시즌에 따라 상이하게 판단할 수 있다. 이하에서는 제어부에서 인덱스 데이터를 기초로 시즌에 따라 수확 대상 과실을 판단하는 방법에 대해 설명하도록 한다.
도 11는 일 실시 예에 따른 시즌에 따라 수확 대상 과실을 판단하는 방법에 대한 순서도이다.
제어부가 제1 시즌 및 제2 시즌을 판단하는 단계(S201), 제1 시즌인 경우, 제1 기준 이상 과실을 수확 대상 과실로 판단하는 단계(S202), 제2 시즌인 경우, 제2 기준 이상 과실을 수확 대상 과실로 판단하는 단계(S203), 및 수확 대상 과실을 출력하는 단계(S204)를 포함할 수 있다.
제어부는 과실 수확하는 시즌을 판단할 수 있다. 상기 시즌은 사용자가 미리 입력한 기간일 수 있다. 보다 구체적으로 상기 시즌은 봄, 여름, 가을 및 겨울을 포함하는 계절에 관한 시기일 수 있다. 제어부는 상기 사용자가 미리 설정한 기간에 따라 시즌을 판단할 수 있다. 예를 들어, 상기 시즌은 제1 시즌, 제2 시즌을 포함할 수 있다. 상기 제1 시즌은 사용자가 미리 설정한 제1 기간일 수 있으며, 제2 시즌은 사용자가 미리 설정한 제2 기간일 수 있다. 상기 제1 기간과 제2 기간은 적어도 1개월 이상의 기간을 포함할 수 있으며, 서로 다르거나 일정 기간이 겹칠 수도 있다.
또는 제어부는 온실 외부의 평균 온도를 기준으로 시즌을 판단할 수 있다. 제어부는 일정 기간동안 온실 외부의 일 평균 온도를 기초로 하여 시즌을 판단할 수 있다. 예를 들어, 제어부는 일정 기간 동안 온실 외부의 일 평균 온도가 기준 온도 보다 높은 경우 제1 시즌으로 판단하고, 기준 온도보다 낮은 경우에는 제2 시즌으로 판단할 수 있다. 상기 기준 온도는 사용자가 미리 설정한 값일 수 있다. 나아가, 기준 온도는 온실이 위치하는 지역의 계절 일 평균 온도값일 수 있다. 예를 들어, 기준 온도는 온실이 위치하는 지역을 기준으로 여름의 일 평균 온도이거나 겨울의 일 평균 온도일 수도 있다.
또는 제어부는 온실 외부의 일 평균 온도에 대해서 제1 시즌 기준 온도와 비교하여 그 차이가 일정 범위 내에 있는 경우, 제1 시즌으로 판단하고, 온실 외부의 일 평균 온다가 제2 시즌 기준 온도와 비교하여 그 차이가 일정 범위 내에 있는 경우, 제2 시즌으로 판단할 수 있다. 제1 시즌 기준 온도는 제2 시즌 기준 온도보다 높을 수 있다. 상기 제1 시즌은 여름이고 상기 제2 시즌은 겨울일 수 있다.
제어부는 제1 시즌인 경우 제1 기준 이상에 해당하는 과실을 수확 대상 과실로 판단할 수 있고, 제2 시즌인 경우 제2 기준 이상에 해당하는 과실을 수확 대상 과실로 판단할 수 있다. 제1 기준과 제2 기준은 단계 S201에서 출력한 과실 숙성도와 관련된 인덱스 데이터일 수 있으며, 이는 도 12에서 자세하게 상술하도록 한다.
도 12는 일 실시 예에 따른 과실 숙성도에 관련된 인덱스 데이터이다.
도 12를 참조하면, 제어부에서 출력하는 인덱스 데이터(130)는 제어부에서 출력하는 인덱스 데이터의 일 예에 해당하며, 과실의 숙성도, 라벨링 데이터, 출력값(140)을 포함할 수 있다. 제어부에서 출력하는 상기 인덱스 데이터(130)는 작물 이미지에 포함된 하나의 과실에 대한 인덱스 데이터일 수 있다. 과실의 숙성도는 도 5에서 상술한 바와 같이 "익음", "안 익음" 2가지로 분류될 수 있다. 상기 라벨링 데이터는 상기 과실의 숙성도의 각 클래스와 대응될 수 있으며, 상기 출력값(140) 역시 각각 상기 과실의 숙성도의 각 클래스와 대응될 수 있다.
출력값(140)은 확률값에 기초한 결과값일 수 있다. 보다 구체적으로 출력값(140)은 상기 출력값에 대응하는 과실이 상기 출력값에 대응하는 각 과실의 숙성도 클래스에 해당될 확률값을 의미할 수 있다. 따라서 도 12에서 도시한 바와 같이 "익음"에 해당하는 출력값과 "안 익음"에 해당하는 출력값을 합하면 1.00 값을 가질 수 있다.
제어부는 상기 인덱스 데이터의 출력값을 기초로 시즌에 따라 수확 대상 과실을 판단할 수 있다. 보다 구체적으로 제어부는 시즌에 따라 기준을 달리하여 상기 기준 이상의 해당하는 과실에 대해서만 수확 대상 과실로 판단할 수 있다. 예를 들어, 제어부는 제1 시즌의 경우, "익음"에 해당하는 과실에 대해서 제1 기준 보다 높은 출력값을 갖는 과실에 대해서만 수확 대상 과실로 판단할 수 있다. 또는 제어부는 제2 시즌의 경우에는 "익음"에 해당하는 과실에 대해서 제2 기준 보다 높은 출력값을 갖는 과실에 대해서만 수확 대상 과실로 판단할 수 있다. 이 때, 제2 기준은 제1 기준보다 낮은 값일 수 있다. 이를 통해, 제어부는 제1 시즌에는 "익음"에 해당하는 과실 중 확률적으로 더 높은 과실에 대해서만 수확 대상 과실로 판단하고, 제2 시즌에는 "익음"에 해당하는 과실 중 제1 시즌보다 상대적으로 낮은 확률을 갖는 과실에 대해서도 수확 대상 과실로 판단할 수 있다.
제어부는 과실의 숙성도가 적어도 3가지 이상의 클래스로 분류되는 경우에도 인덱스 데이터를 기초로 수확 대상 과실을 판단할 수 있다.
도 12를 참조하면, 과실의 숙성도를 적어도 3가지 이상의 클래스로 분류하는 경우 제어부는 인덱스 데이터(131)을 출력할 수 있다. 상기 인덱스 데이터(131)는 작물 이미지가 포함하는 하나의 과실이 과실의 숙성도 중 어떤 클래스로 분류되는지를 나타내는 출력 데이터일 수 있다.
상기 인덱스 데이터(131)는 과실의 숙성도, 라벨링 데이터, 출력값을 포함할 수 있다. 상기 인덱스 데이터(131)는 "제1 숙성도", "제2 숙성도", 및 "제3 숙성도"로 분류된 과실 숙성도와 상기 숙성도에 대응되는 라벨링 데이터, 출력값을 포함할 수 있다. 상기 인덱스 데이터(131)의 출력 값은 확률 값에 기초한 결과값일 수 있다. 보다 구체적으로 출력값은 상기 출력값에 대응하는 과실이 상기 출력값에 대응하는 각 과실의 숙성도 클래스에 해당될 확률값을 의미할 수 있다. 따라서 도 12에서 도시한 바와 같이 "제1 숙성도"에 해당하는 출력값과 "제2 숙성도"에 해당하는 출력값, "제3 숙성도"에 대응하는 출력값을 합하면 1.00 값을 가질 수 있다.
따라서, 상기 인덱스 데이터(131)을 기초로 제어부는 상기 인덱스 데이터(131)에 대응하는 과실이 어떠한 숙성도를 가지는 지 판단할 수 있다. 보다 구체적으로 제어부는 사용자가 설정한 미리 설정된 기준 임계값에 따라 상기 과실을 어떠한 숙성도 클래스로 분류할 지 판단할 수 있다.
상기 미리 설정된 기준 임계값은 시즌에 따라 다른 값일 수 있다. 보다 구체적으로 제1 시즌에는 제1 기준 임계값을 기초로 상기 제1 기준 임계값 보다 큰 출력값에 대응하는 숙성도 클래스를 상기 과실에 대한 클래스로 판단하고, 제2 시즌에는 제2 기준 임계값을 기초로 상기 제2 기준 임계값 보다 큰 출력값에 대응하는 숙성도 클래스를 상기 과실에 대한 클래스로 판단할 수 있다.
제어부가 작물 이미지가 포함하는 모든 과실에 대해서 과실 숙성도 클래스를 분류한 경우, 제어부는 제3 숙성도에 대응하는 과실만 수확 대상 과실로 판단할 수 있다. 따라서, 제3 숙성도에 대응하는 과실은 시즌 마다 상이한 임계 기준값을 기초로 판단되는 바, 제어부는 시즌에 따라 수확 대상 과실을 상이하게 판단할 수 있다.
또는, 제어부는 사용자가 미리 설정한 임계값의 변화가 아닌, 숙성도 클래스를 시즌에 따라 달리하여, 시즌에 따라 수확 대상 과실을 상이하게 판단할 수도 있다.
구체적으로, 제어부는 시즌에 따라 클래스 기준을 달리하여 상기 기준 이상의 해당하는 과실에 대해서만 수확 대상 과실로 판단할 수 있다. 예를 들어, 제어부는 제1 시즌의 경우, 제1 기준 클래스 이상 클래스에 해당하는 과실만 수확 대상 과실로 판단할 수 있다. 또는 제어부는 제2 시즌의 경우 제2 기준 클래스 이상 클래스에 해당하는 과실만 수확 대상 과실로 판단할 수 있다. 예를 들어, 제1 시즌에는 "제3 숙성도"에 대응하는 과실만을 수확 대상 과실로 판단하고, 제2 시즌에는 "제3 숙성도" 및 "제2 숙성도"에 대응하는 과실을 수확 대상 과실로 판단할 수 있다. 이 때, 제1 기준 클래스의 경우 제2 기준 클래스보다 더 높을 수 있다.
제어부가 시즌에 따라 수확 대상 과실을 판단함에 따라, 수확 장치는 수확하는 시기에 따라 숙성 정도가 서로 다른 과실을 수확할 수 있다. 제어부는 시즌에 따라 서로 다른 기준으로 수확 대상 과실을 판단함으로써, 유통과정에서 숙성되는 정도를 고려하여 소비자에게 적절한 과실을 제공할 수 있다. 예를 들어, 온도가 높은 시즌에는 온도가 낮은 시즌에 비해 유통과정에서 과실이 더 숙성될 수 있으므로, 상대적으로 덜 익은 과실을 수확하고, 온도가 낮은 시즌에는 상대적으로 더 익은 과실을 수확하여 과실의 상품성을 높일 수 있다.
나아가, 수확 장치는 수확 대상 과실에 대해서 수확 순서에 따라 과실을 수확할 수 있다.
이하에서는 도 13을 참조하여, 수확 순서에 대한 구체적인 설명을 하도록 한다.
도 13은 일 실시 예에 따른 수확 순서를 판단하는 방법에 관한 순서도이다.
도 13을 참조하면, 제어부는 수확 대상 과실에 대해 수확 순서를 판단할 수 있다. 수확 순서를 판단하는 방법은 수확 대상 과실을 판단하는 단계(S301), 수확 순서를 판단하는 단계(S302), 및 수확 순서에 따라 과실을 수확하는 단계(S303)를 포함할 수 있다.
제어부가 수확 대상 과실을 판단하는 단계는 상술한 도 12 및 도 13을 통해 설명하였는 바 생략하기로 한다.
제어부는 수확 대상 과실에 대해서 수확 순서를 판단할 수 있다. 상기 수확 순서는 도 9에서 상술한 출력 데이터가 포함하는 인덱스 데이터를 기초로 하여 판단될 수 있다. 예를 들어, 상기 인덱스 데이터는 과실 크기 라벨링 데이터, 과실 거리 라벨링 데이터와 각각 대응되는 인덱스 데이터를 포함할 수 있다.
제어부는 상기 인덱스 데이터에서 과실 크기 라벨링 데이터를 기초로 하여 수확 순서를 판단할 수 있다. 예를 들어, 제어부는 수확 대상 과실에 대해서, 과실 크기가 2로 라벨링 된 과실을 먼저 수확하고, 다음은 과실 크기가 1로 라벨링 된 과실을, 마지막으로 0으로 라벨링 된 과실을 수확하도록 수확순서를 판단할 수 있다. 또한, 제어부는 과실의 크기가 2로 라벨링 된 모든 과실을 먼저 수확하고, 과실의 크기가 0으로 라벨링 된 모든 과실을 나중에 수확하도록 수확순서를 결정할 수도 있다.
또 다른 예에 따르면 제어부는 상기 인덱스 데이터에서 과실 거리 라벨링 데이터를 기초로 하여 수확 순서를 판단할 수도 있다. 예를 들어, 제어부는 수확 대상 과실에 대해서 과실 거리가 2로 라벨링 된 과실을 먼저 수확하고 다음은 과실 거리가 1로 라벨링 된 과실을, 마지막으로 0으로 라벨링 된 과실을 수확하도록 수확 순서를 결정할 수 있다.
제어부는 object detection 방법을 활용하여 과실 수확 순서를 판단할 수도 있다. 보다 구체적으로 수확 장치는 앞서 상술한 거리 센서를 활용하여, 작물이 포함하고 있는 과실과 수확 장치 간의 실제 거리를 측정할 수 있다. 상기 실제 거리를 기초로 하여 제어부는 과실 수확 순서를 판단할 수 있다.
즉, 제어부는 측정된 실제 거리를 기초로 가장 짧은 거리에 있는 과실부터 수확하는 수확 순서를 판단할 수 있다.
즉, 수확시의 과실과 수확장치 상의 거리는 인공신경망에 의해 산출된 거리일 수도 있고, 별도의 거리센서에 의해 측정될 수도 있다.
제어부는 수확 순서를 판단하고, 상기 수확 순서에 대한 수확 보류 과실을 판단할 수 있다. 상기 수확 보류 과실은 크기 또는 거리에 기초하여 수확순서를 판단할 때, 수확 순서를 나중으로 유보해야하는 과실일 수 있다.
보다 구체적으로, 수확 보류 과실은 제어부가 판단한 수확 순서에 따라 수확 장치가 수확하려는 경우, 수확 기준에 의해서 수확하지 않고 보류한 과실일 수 있다. 예를 들어, 제어부가 앞서 상술한 과실 크기 라벨링 데이터를 기초로 수확 순서를 판단하는 경우에 있어, 과실 크기가 2로 라벨링된 과실을 수확하는 과정에서 과실 크기가 0 또는 1로 라벨링된 과실의 수확장치의 이동 경로 상에 위치하는 경우 과실 크기가 2로 라벨링된 과실을 수확 보류 과실로 설정할 수 있다.
또는 제어부가 거리가 짧은 순서대로 과실을 수확하는 수확 순서를 판단할 때, 과실이 제일 짧은 과실이나 작물의 잎이나 다른 과실에 가려진 경우에 수확 장치가 물리적으로 수확하기 어려운 경우가 있을 수 있다. 상기 과실을 제어부는 수확 보류 과실로 판단할 수 있다. 이 경우 과실의 크기에 관계없이 과실이 수확되지만, 제어부는 수확부를 제어하여 수납부에 과실을 크기에 따라 분류하여 분리 수납할 수 있다. 즉, 제어부는 거리가 짧은 순서대로 과실을 수확하지만 과실의 크기에 대한 정보는 알고 있는 상태이므로, 과실의 크기에 대한 정보에 기초하여 수납부에는 과실의 크기 분류별로 수납할 수 있다.
상기 거리는 앞서 상술한 거리 센서를 활용하여 측정된 실제 거리값일 수 있다.
또는 제어부는 수확 보류 과실을 작물 이미지를 기초로 하여 판단할 수도 있다. 보다 구체적으로 도 10에서 설명한 바와 같이 제어부에 포함된 인공신경망이 작물 이미지를 입력 받으면 과실 위치에 관한 출력 데이터를 출력하는 경우, 상기 출력 데이터를 기초로 하여 수확 보류 과실을 판단할 수도 있다.
상기 출력 데이터가 바운딩 박스 형태로 표시된 경우, 제어부는 상기 바운딩 박스가 다른 바운딩 박스와 겹쳐져 있는 영역에 대한 정보를 산출할 수 있다. 상기 겹쳐져 있는 영역에 대한 정보는 겹쳐져 있는 영역의 넓이일 수 있다. 즉, 상기 출력 데이터가 바운딩 박스 형태로 구현된 경우, 상기 바운딩 박스는 앞서 상술한 과실 정보 벡터가 가지는 과실 위치 라벨링 데이터와 대응될 수 있다. 상기 과실 위치 라벨링 데이터는 (X,Y,L,H)로 구현될 수 있고, (X,Y) 정보와 (L,H) 정보를 통해 제어부는 적어도 하나 이상의 바운딩 박스가 서로 다른 바운딩 박스와 겹쳐지는 경우, 겹쳐진 영역의 넓이를 구할 수 있다. 제어부는 상기 겹쳐진 영역의 넓이가 넓을수록 상기 영역에 대응하는 과실을 수확 보류 과실로 판단할 수도 있다. 즉, 다른 과실에 의해 가려진 영역이 큰 과실들을 수확 보류 과실로 판단할 수 있다. 이 경우 제어부는 미리 정의된 값을 가지고 있는 상태에서, 가려진 영역이 미리 정의된 값보다 큰 과실은 수확 보류 과실로 판단할 수 있다.
제어부가 수확 순서에 따라 수확 보류 과실을 판단한 경우, 제어부는 상기 수확 보류 과실을 수확하는 판단을 하거나 상기 수확 보류 과실을 수확하지 않은 판단을 할 수 있다. 제어부가 수확 보류 과실을 수확하는 판단을 한 경우 수확 장치는 상기 수확 보류 과실을 수확할 수 있다. 또한, 수확 장치는 상기 수확 보류 과실을 따로 분리해서 보관할 수도 있다.
이하에서는 도 14를 참조하여, 앞서 상술한 실시 예와는 다른 방법으로 온실 내 열을 구분할 수 있는 방법에 관해 설명하도록 한다.
도 14는 일 실시 예에 따른 제2 인공신경망이 학습하는 것을 설명하는 도면이다.
도 14를 참조하면, 제2 인공신경망(220b)의 학습 과정에 관한 일 예를 블록도로 설명할 수 있다.
앞서 상술한 바와 같이 인공신경망을 학습시키기 위한 학습 데이터는 열 라벨링 데이터를 포함할 수 있다. 상기 학습 데이터를 통해 학습된 인공신경망은 작물 이미지가 인공신경망으로 입력되면, 상기 작물 이미지가 포함하는 과실의 열에 관한 데이터를 출력할 수 있다.
이러한 방법과는 다르게, 또 다른 실시 예에 따르면, 제2 인공신경망을 활용하여 작물이 포함하는 과실의 열을 구분할 수 있다.
도 1에서 도시한 바와 같이 온실은 제1열 작물, 제2열 작물, 및 제3열 작물이 열에 따라 구분되어 생장하는 공간일 수 있다. 온실에서 수확 장치는 열과 열 사이를 이동하며 수확 대상이 되는 과실을 판단하고, 수확할 수 있다.
수확 장치가 제1열 작물에 대해서 수확하려는 경우, 제2열 작물 및 제3열 작물은 물리적으로 수확할 수 없는 경우가 있을 수 있다. 또는 제2열 작물 및 제3열 작물을 수확 대상 과실로 판단하는 경우, 수확 장치의 수확 작동으로 인해 제1열 작물이 손실되는 경우가 있을 수 있다. 따라서, 수확 장치가 제1열 작물을 수확 대상 과실로 판단하는 경우, 제2열 및 제3열 작물의 경우에는 수확 대상 과실로 판단되지 않아야 한다.
이를 해결하기 위해, 수확 장치에서 이미지를 획득할 때 제1열 작물만을 포함하는 이미지를 획득할 필요가 있다. 즉, 제1열 작물에 대해 이미지를 획득할 시 제2열 작물 및 제3열 작물이 상기 이미지에 포함된다면, 이는 노이즈에 해당될 수 있으며 상기 노이즈를 제거할 필요가 있다.
도 14를 참조하면, 제2 인공신경망을 활용하여 이를 해결할 수 있다. 제2 인공신경망은 도 3에서 상술한 인공신경망의 기능을 수행할 수 있다. 제2 인공신경망은 CNN 알고리즘으로 구현될 수 있으나 이에 한정되어 해석되는 것은 아니다.
제2 인공신경망은 제1열, 제2열, 제3열에서 생장하는 작물이 모두 포함된 작물 이미지가 입력되면, 제1열 작물만을 포함하는 이미지를 출력할 수 있다.
이를 위해 제2 인공신경망(220b)은 작물 이미지를 기초로 학습할 필요가 있다. 보다 구체적으로, 제2 인공신경망(220b)은 제1이미지(920a)가 입력되고, 제2인공신경망(220b)은 제3이미지(920c)를 출력하고, 제3이미지(920c)와 제2이미지(920b)를 비교하여 그 오차의 역전파를 통해 제2인공신경망(220b)이 학습할 수 있다.
제1 이미지(920a)와 제2 이미지(920b)는 수확 장치의 이미지 획득부에서 획득된 이미지이거나 수확 장치 내 저장부에 저장된 이미지일 수 있다.
제1 이미지(920a)는 제1열 작물, 제2열 작물 및 제3열 작물이 모두 포함되는 이미지일 수 있다. 제2 이미지(920b)는 제1열 작물만을 포함하는 작물 이미지일 수 있다. 제1 이미지(920a)와 제2 이미지(920b)에 포함된 제1열 작물 이미지는 서로 같을 수 있다.
제3 이미지(920c)는 제2 인공신경망(220b)이 학습하는 과정에서 출력하는 이미지일 수 있다. 제3 이미지(920c)는 제2 인공신경망이 제1 이미지(920a)를 입력 받으면, 제1 이미지(920a)에서 제1 열 작물만을 남기고 제2열 작물 및 제3열 작물을 노이즈로 인식하여 제거한 후 출력하는 이미지일 수 있다. 제2 인공신경망(220b)는 제3 이미지(920c)와 제2 이미지(920b)의 차이를 비교하여 학습할 수 있다.
이하에서는 도 15을 참조하여 제1 이미지(920a)와 제2 이미지(920b)를 획득하는 과정에 대해 구체적으로 설명하도록 한다.
도 15는 일 실시 예에 따른 제1 이미지 및 제2 이미지 획득에 관한 도면이다.
수확 장치(20)는 제1 이미지(920a) 및 제2 이미지(920b)를 획득할 수 있다. 수확 장치(20)의 이미지 획득부(100)는 제1 이미지(920a) 및 제2 이미지(920b)를 획득할 수 있다. 수확 장치(20)은 온실 내 설치된 레일 위를 일정 속도로 이동하며 제1 이미지(920a) 및 제2 이미지(920b)를 획득할 수 있다.
제1 이미지(920a)는 수확 장치(20)와 인접한 제1열 작물(11)과 수확 장치와 이격된 제2열 작물(12), 및 제3열 작물(13)를 포함할 수 있다.
제2 이미지(920b)는 수확 장치(20)와 인접한 제1열 작물(11)만을 포함하는 이미지일 수 있다. 제1 이미지(920a)와 제2 이미지(920b)에 포함된 제1열 작물(11)은 각 이미지에서 동일한 작물일 수 있다.
제2 이미지(920b)는 온실 내에서 암막 장치(30)가 설치된 후 수확 장치(20)에서 획득한 이미지일 수 있다. 암막 장치(30)는 제1열 작물(11)과 제2열 작물(12) 사이에 설치될 수 있다. 암막 장치(30)은 제1열 작물(11)과 제2열 작물(12) 사이에 설치된 레일을 따라 일정한 속도로 이동할 수 있다. 암막 장치(30)은 수확 장치(20)가 제2 이미지(920b)를 획득할 때, 제2 열 작물(12) 및 제3 열 작물(13)을 가리는 기능을 수행할 수 있다.
암막 장치(30)는 수확 장치(20)와 동기화 된 상태로 온실 내에서 이동할 수 있다. 상기 동기화 된 상태란 암막 장치(30)와 수확 장치(20)가 같은 속도로 일정 거리를 유지한 상태로 온실 내에서 이동하는 것을 의미할 수 있다.
암막 장치(30)는 일 실시 예에 해당하고, 온실 내에서 수확 장치(20)가 이미지를 획득할 때, 제1 열 작물(11)과 제2 열 작물(12) 및 제3열 작물(13)을 가리는 기능을 수행하는 장치이면 어떠한 형태도 포함될 수 있다.
수확 장치(20)는 상술한 도9 및 도 10을 통한 기술적 방법뿐만 아니라, 스테레오 스코픽 카메라를 활용하여 작물과 수확 장치(20)간의 거리를 산출할 수도 있다. 보다 구체적으로, 수확 장치는 스테레오 스코픽 카메라를 활용하여 상기 제1 이미지(920a) 및 상기 제2 이미지(920b)를 포함하는 복수의 작물 이미지를 획득할 수 있으며, 상기 획득된 이미지를 제2 인공신경망 학습에 활용할 수 있다.
이하에서는 온실 내에서 수확 장치와 작물 간의 실제 거리를 구하는 다른 방법을 설명하도록 한다.
도 16은 일 실시 예에 따른 수확 장치에서 작물까지 거리를 구하는 방법을 설명하는 도면이다.
도 16을 참조하면, 과실(15)과 수확 장치(20)의 직선 거리를 구하는 방법을 설명할 수 있다.
수확 장치(20)는 온실에서 일정 속도를 유지하며 이동할 수 있고, 이동하는 중에 작물 (10) 이미지를 획득할 수 있다. 수확 장치(20) 내 이미지 획득부(100)는 일정 속도로 이동하며 작물(10) 이미지를 획득할 수 있다. 상기 작물 이미지는 과실(15)을 포함하는 이미지일 수 있다.
수확 장치(20)는 제1 시점에서 제1 영역(21)에 위치하는 경우, 과실(15)의 이미지를 획득할 수 있다. 또한 수확 장치(20)는 제1 시점에서 제2 시점으로 시간이 경과하는 중에 제2 영역(22)로 이동할 수 있으며, 이동하는 중에 과실(15)을 포함하는 이미지를 획득할 수 있다. 상기 제2 영역(22)은 수확 장치(20)의 이미지 획득부(100)의 정중앙과 과실(15)의 기준점을 이은 가상선과 겹치는 영역일 수 있다.
수확 장치(20)가 일정 속도로 이동하며 제2 시점에서 제2 영역(22)에 위치하는 경우, 제1 시점에서 제2 시점까지의 시간 차이가 T1일 수 있다. 여기서, 수확 장치(20)는 일정 속도로 움직이기 때문에 수확 장치가 제1 영역(21)에서 제2 영역(22)까지 움직인 거리인 L1을 구할 수 있다. 즉 L1은 수확 장치(20)가 제1 영역(21)에서 제2 영역(22)로 이동한 거리일 수 있다.
여기서, 수확 장치(20)의 이미지 획득부(100)와 과실(15)간의 사이각(355)을 구할 수 있다. 보다 구체적으로 사이각(355)은 이미지 획득부(100)의 정중앙 점과 과실(15)를 직선 거리로 이은 가상선과 이미지 획득부(100)의 정중앙 점에서 이미지 획득부(100)의 정면 방향으로 이은 직선 가상선 간의 각도일 수 있다.
상기 사이각(355)과, L1 거리값을 통해 수확 장치(20)와 과실(15)간의 거리인 H1을 구할 수 있다. 보다 구체적으로 H1은 탄젠트 함수(tan 함수)를 활용하여 구할 수 있다.
수확 장치(20)와 과실(15)간의 거리인 H1을 활용하여 수확 장치(20) 내 제어부는 수확 순서를 판단할 수 있다. 상기 수확 순서는 도 13에서 상술한 수확 순서 중 하나일 수 있다.
앞서 상술한 방법과 다르게, 거리 센서 등 추가적인 장치를 활용해서 작물과 수확 장치 간의 거리를 산출할 수도 있다. 예를 들어, 수확 장치는 거리 센서 또는 3D Depth Camera를 활용하여 앞서 상술한 방법을 통하지 아니하고도 직접 수확 장치와 작물 간의 실제 거리를 구할 수도 있다. 상기 거리 센서는 오브젝트와의 거리를 구하는 기능을 수행하는 장치라면 어떠한 형태도 포함할 수 있다.
상기에서는 본 발명에 따른 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.
10: 작물
20: 수확장치

Claims (19)

  1. 수확 대상 과실 판단 방법에 있어서,
    인공신경망이 작물 이미지를 입력 받는 단계;
    상기 인공신경망이 상기 작물 이미지에 포함된 각각의 과실의 숙성도와 관련된 인덱스 데이터를 출력하는 단계; 및
    상기 인덱스 데이터를 기초로 수확 대상 과실을 출력하는 단계; 를 포함하고,
    상기 수확 대상 과실을 출력하는 단계는
    제1 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제1 기준보다 높은 과실을 수확 대상 과실로 출력하고,
    제2 시즌에는 상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 제2 기준보다 높은 과실을 수확 대상 과실로 출력하며,
    상기 제1 기준과 제2 기준은 서로 다른
    수확 대상 과실 판단 방법.
  2. 제1항에 있어서,
    상기 수확 대상 과실을 출력하는 단계는 상기 수확 대상 과실의 위치에 관한 라벨링 데이터도 함께 출력하는
    수확 대상 과실 판단 방법.
  3. 제1항에 있어서,
    상기 제2 기준은 상기 제1 기준 보다 낮은
    수확 대상 과실 판단 방법.
  4. 제1항에 있어서,
    상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 상기 과실의 숙성도에 대한 '익음', '안익음' 클래스 데이터인 경우,
    상기 제1 기준은 확률에 기초한 제1 기준값으로 설정되고,
    상기 제2 기준은 확률에 기초한 제2 기준값으로 설정되는
    수확 대상 과실 판단 방법.
  5. 제1항에 있어서,
    상기 인덱스 데이터가 포함하는 과실 숙성도에 관한 라벨링 데이터가 상기 과실의 숙성도에 따른 적어도 3가지 이상의 클래스 데이터인 경우,
    상기 제1 기준은 상기 과실의 숙성도에 따른 제1 기준 클래스가 되고,
    상기 제2 기준은 상기 과실의 숙성도에 따른 제2 기준 클래스가 되며,
    상기 제2 기준 클래스는 상기 제1 기준 클래스보다 낮은
    수확 대상 과실 판단 방법.
  6. 제1항에 있어서,
    상기 인공신경망은 학습 데이터를 통해 학습되며,
    상기 학습 데이터는 상기 작물 이미지가 포함하는 과실 위치 라벨링 데이터를 포함하는
    수확 대상 과실 판단 방법.
  7. 제6항에 있어서,
    상기 학습 데이터는 상기 작물 이미지에 포함된 과실을 복수의 크기 카테고리 분류한 과실 크기 라벨링 데이터를 포함하는
    수확 대상 과실 판단 방법.
  8. 제6항에 있어서,
    상기 학습 데이터는 상기 작물 이미지에 포함된 과실의 거리를 복수의 카테고리로 분류한 과실 거리 라벨링 데이터를 포함하고,
    상기 과실의 거리는 상기 작물 이미지에서 카메라와 상기 과실 사이의 거리를 나타내는
    수확 대상 과실 판단 방법.
  9. 제6항에 있어서,
    상기 학습 데이터는 상기 작물 이미지에서 인접 열에 위치한 과실과 이격 열에 위치한 과실을 분류한 과실 열 구분 라벨링 데이터를 포함하는
    수확 대상 과실 판단 방법.
  10. 제1항에 있어서,
    상기 인공신경망은 상기 작물 이미지에 포함된 과실에 대한 인덱스 데이터를 출력하고,
    상기 인덱스 데이터는 과실 숙성도, 크기, 거리, 열 구분에 관한 라벨링 데이터 중 적어도 하나를 포함하는 데이터인
    수확 대상 과실 판단 방법.
  11. 과실 수확 장치에 있어서,
    온실에서 작물 이미지를 획득하는 이미지 획득부;
    상기 작물 이미지를 저장하는 저장부;
    상기 작물 이미지를 기초로 과실 수확 대상을 판단하는 제어부; 및
    상기 수확 대상 과실을 수확하는 기구부; 를 포함하고,
    상기 제어부는 인공신경망을 포함하고,
    상기 인공신경망은 상기 작물 이미지에 포함된 복수의 과실에 대해서 상기 과실의 숙성도와 관련된 인덱스 데이터를 출력하고,
    상기 인덱스 데이터를 기초로 수확 시즌에 따라 수확 대상 과실을 상이하게 판단하고,
    상기 이미지 획득부는 제1 작물 이미지 및 제2 작물 이미지를 획득하고,
    상기 인공신경망은 상기 제1 작물 이미지 및 제2 작물 이미지를 기초로 학습되며,
    상기 인공신경망은 복수 열에 위치하는 작물을 포함하는 이미지를 입력받아 복수의 열 중 가장 인접한 열에 위치하는 작물만을 포함하는 이미지를 출력하며,
    상기 제1 작물 이미지는 복수 열에 위치하는 작물을 포함하는 이미지이고, 상기 제2 작물 이미지는 복수의 열 중 가장 인접한 열에 위치하는 작물만을 포함하는 이미지인
    과실 수확 장치.
  12. 삭제
  13. 제11항에 있어서,
    상기 제2 작물 이미지는 암막장치에 의해 복수의 열중 가장 인접한 열의 작물을 제외한 작물은 제거된 이미지인
    과실 수확 장치.
  14. 제11항에 있어서,
    상기 이미지 획득부는 스트레오스코픽 카메라에 의해 복수의 작물 이미지를 획득하는
    과실 수확 장치.
  15. 제11항에 있어서,
    상기 이미지 획득부는 거리 센서를 통해 과실과 수확 장치 간의 거리를 산출하는
    과실 수확 장치.
  16. 제11항에 있어서,
    상기 인덱스 데이터는 상기 작물 이미지에 포함된 복수의 과실에 대해 상기 과실의 숙성도, 위치, 거리, 열 구분에 관한 라벨링 데이터 중 적어도 하나를 포함하는 데이터인
    과실 수확 장치.
  17. 제16항에 있어서,
    상기 제어부는 상기 수확 대상 과실에 대한 수확 순서를 판단하고,
    상기 기구부는 상기 수확 순서에 따라 과실을 수확하는
    과실 수확 장치.
  18. 제17항에 있어서,
    상기 제어부는 상기 인덱스 데이터에 기초하여 수확 순서를 판단하는
    과실 수확 장치.
  19. 제17항에 있어서,
    상기 제어부는 수확 보류 과실을 참고하여 상기 수확 순서를 판단하고,
    상기 수확 보류 과실은 상기 인덱스 데이터가 포함하는 과실의 위치에 관한 라벨링 데이터가 바운딩 박스로 구현된 경우, 상기 바운딩 박스가 겹쳐져 있는지 여부에 기초하여 판단되는
    과실 수확 장치.
KR1020210026710A 2021-02-26 2021-02-26 수확 대상 과실 판단 방법 및 과실 수확 장치 KR102259009B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020210026710A KR102259009B1 (ko) 2021-02-26 2021-02-26 수확 대상 과실 판단 방법 및 과실 수확 장치
KR1020210067270A KR20220122433A (ko) 2021-02-26 2021-05-25 수확 대상 과실 판단 방법 및 과실 수확 장치
PCT/KR2022/002775 WO2022182191A1 (ko) 2021-02-26 2022-02-25 수확 대상 과실 판단 방법 및 과실 수확 장치.
US18/237,440 US20230389474A1 (en) 2021-02-26 2023-08-24 Method for determining a fruit to be harvested and a device for harvesting a fruit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210026710A KR102259009B1 (ko) 2021-02-26 2021-02-26 수확 대상 과실 판단 방법 및 과실 수확 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210067270A Division KR20220122433A (ko) 2021-02-26 2021-05-25 수확 대상 과실 판단 방법 및 과실 수확 장치

Publications (1)

Publication Number Publication Date
KR102259009B1 true KR102259009B1 (ko) 2021-06-01

Family

ID=76375769

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210026710A KR102259009B1 (ko) 2021-02-26 2021-02-26 수확 대상 과실 판단 방법 및 과실 수확 장치
KR1020210067270A KR20220122433A (ko) 2021-02-26 2021-05-25 수확 대상 과실 판단 방법 및 과실 수확 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210067270A KR20220122433A (ko) 2021-02-26 2021-05-25 수확 대상 과실 판단 방법 및 과실 수확 장치

Country Status (3)

Country Link
US (1) US20230389474A1 (ko)
KR (2) KR102259009B1 (ko)
WO (1) WO2022182191A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114260895A (zh) * 2021-12-22 2022-04-01 江苏大学 一种采摘机器人机械臂抓取避障方向确定的方法及其系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101846301B1 (ko) * 2017-05-10 2018-04-09 안주형 자동제어 장비를 이용한 작물 수확 및 관리 시스템
WO2018087546A1 (en) * 2016-11-08 2018-05-17 Dogtooth Technologies Limited A robotic fruit picking system
KR20190136774A (ko) * 2018-05-31 2019-12-10 주식회사 쎄슬프라이머스 작물의 수확시기 예측시스템 및 그 방법
JP2020123319A (ja) * 2019-01-30 2020-08-13 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド 画像に基づくデータ処理方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4171806B2 (ja) * 2005-03-04 2008-10-29 国立大学法人弘前大学 果実そ菜類の等級判別方法。
KR20090124335A (ko) * 2008-05-29 2009-12-03 한국산업기술대학교산학협력단 과실 색상 선별용 색 인자 결정 방법 및 과실 색상 등급판별 방법
US11003958B2 (en) * 2018-06-26 2021-05-11 Walmart Apollo, Llc Food quality image classification
JP2020012667A (ja) * 2018-07-13 2020-01-23 株式会社ニコン 識別装置、識別方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018087546A1 (en) * 2016-11-08 2018-05-17 Dogtooth Technologies Limited A robotic fruit picking system
KR101846301B1 (ko) * 2017-05-10 2018-04-09 안주형 자동제어 장비를 이용한 작물 수확 및 관리 시스템
KR20190136774A (ko) * 2018-05-31 2019-12-10 주식회사 쎄슬프라이머스 작물의 수확시기 예측시스템 및 그 방법
JP2020123319A (ja) * 2019-01-30 2020-08-13 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド 画像に基づくデータ処理方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114260895A (zh) * 2021-12-22 2022-04-01 江苏大学 一种采摘机器人机械臂抓取避障方向确定的方法及其系统
CN114260895B (zh) * 2021-12-22 2023-08-22 江苏大学 一种采摘机器人机械臂抓取避障方向确定的方法及其系统

Also Published As

Publication number Publication date
WO2022182191A1 (ko) 2022-09-01
KR20220122433A (ko) 2022-09-02
US20230389474A1 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
Gao et al. Multi-class fruit-on-plant detection for apple in SNAP system using Faster R-CNN
Linker et al. Determination of the number of green apples in RGB images recorded in orchards
Qureshi et al. Machine vision for counting fruit on mango tree canopies
Amatya et al. Detection of cherry tree branches with full foliage in planar architecture for automated sweet-cherry harvesting
Liu et al. A computer vision system for early stage grape yield estimation based on shoot detection
Wang et al. Machine vision assessment of mango orchard flowering
Montoya-Cavero et al. Vision systems for harvesting robots: Produce detection and localization
Zhang et al. Computer vision‐based tree trunk and branch identification and shaking points detection in Dense‐Foliage canopy for automated harvesting of apples
CN110213376B (zh) 一种用于虫害预防的信息处理系统及方法
CN110197308B (zh) 一种用于农业物联网的作物监测系统及方法
US11830191B2 (en) Normalizing counts of plant-parts-of-interest
Akin et al. Detection of the pomegranate fruits on tree using image processing
KR102259009B1 (ko) 수확 대상 과실 판단 방법 및 과실 수확 장치
US20240032485A1 (en) System for monitoring enclosed growing environment
Rahim et al. Tomato flower detection and counting in greenhouses using faster region-based convolutional neural network
Tejada et al. Proof-of-concept robot platform for exploring automated harvesting of sugar snap peas
Hsieh et al. Fruit maturity and location identification of beef tomato using R-CNN and binocular imaging technology
KR102351652B1 (ko) 스마트팜 제어 방법 및 스마트팜 제어 시스템
WO2022254210A1 (en) Tool for counting and sizing plants in a field
Behera et al. On-tree detection and counting of apple using color thresholding and CHT
Payne et al. Machine vision in estimation of fruit crop yield
KR20230061863A (ko) 합성곱신경망과 다층 퍼셉트론의 앙상블 모델을 이용한 과실 발달 단계 예측 장치 및 그 방법
CN112541383B (zh) 杂草区域的识别方法和装置
CN113807132B (zh) 植物生长区域的灌水状态的识别方法、装置和存储介质
KR102398294B1 (ko) 싱크 용량 및 소스 용량 판단 시스템 및 방법

Legal Events

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