JP6942764B2 - システム、クライアント端末、その制御方法 - Google Patents

システム、クライアント端末、その制御方法 Download PDF

Info

Publication number
JP6942764B2
JP6942764B2 JP2019145571A JP2019145571A JP6942764B2 JP 6942764 B2 JP6942764 B2 JP 6942764B2 JP 2019145571 A JP2019145571 A JP 2019145571A JP 2019145571 A JP2019145571 A JP 2019145571A JP 6942764 B2 JP6942764 B2 JP 6942764B2
Authority
JP
Japan
Prior art keywords
data
livestock
estimation
weight
estimated
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2019145571A
Other languages
English (en)
Other versions
JP2021023241A (ja
Inventor
健太 矢部
健太 矢部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019145571A priority Critical patent/JP6942764B2/ja
Priority to US16/983,519 priority patent/US11516992B2/en
Publication of JP2021023241A publication Critical patent/JP2021023241A/ja
Application granted granted Critical
Publication of JP6942764B2 publication Critical patent/JP6942764B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • A01K11/00Marking of animals
    • A01K11/006Automatic identification systems for animals, e.g. electronic devices, transponders for animals
    • A01K11/008Automatic identification systems for animals, e.g. electronic devices, transponders for animals incorporating GPS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Environmental Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Animal Husbandry (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Zoology (AREA)
  • Birds (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computational Linguistics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Human Computer Interaction (AREA)

Description

本発明は、家畜の体重推定を行うシステム、クライアント端末、その制御方法に関する。
家畜の健康管理は、畜産農家にとって商品としての品質に直結する作業である。例えば、日本において牛の場合は1回でも病気に罹れば等級を下げられてしまう。また、豚の場合は商品出荷時の体重が規定の範囲内におさまっていないと、いくら他の要素が良くても等級を下げられてしまう。家畜の商品としての品質を定める基準は国によって異なるが、家畜の健康状態の品質への影響は国を問わず大きく、その管理は畜産農家にとって重要な関心事となっている。
家畜の健康状態の測る重要な指標として体重が挙げられる。しかし、通常多数の個体を飼育する畜産農家にとって、家畜を1頭ずつ体重計に乗せて体重を測定する作業は重労働であり、相当の時間を要する。また、畜産農家は体重計測以外にも給餌作業、飼育施設の掃除等、家畜の健康状態に密接に関与する作業を合わせて毎日行わなければならない作業も多い。こうした背景のもと、毎日家畜の体重を計測することは、畜産農家にとって多大な負担となってしまう。
これに対して、特許文献1に記載の手法は3次元スキャナ装置を用いて撮像した動物の3次元画像から動物の体表面を統計的に分析することで、直接動物に触れることなく、客観的な体重を推定する。
特開2006−59300
一般的に筋肉と脂肪では比重が異なる。そのため、動物の体表面の大きさが同一であっても、体表面の内側の肉質には個体差が存在し、推定される体重の精度に影響する。また、骨や血液などの動物の体表面画像からは判別できない要素も他に存在する。特許文献1に記載の手法は、それらの体表面からは把握できない要素の影響を加味していない。
本発明の一実施形態に係るシステムは、家畜を撮影した画像データを使い機械学習を行うことで生成された第1の学習済みモデルを利用し推定を行う推定装置と、前記推定装置に推定の要求を送信するクライアント端末とから構成されるシステムであって、前記推定装置は、前記クライアント端末が送信する識別情報から特定された家畜の活動データと給餌データを取得する取得手段と、家畜を撮影した画像データと前記活動データと給餌データとを基に機械学習を行うことで生成された第2の学習済みモデル、および受信した識別情報に対応する家畜の画像データと前記取得手段により取得された当該家畜の活動データと給餌データを基に推定を行い、推定結果を提供する推定手段を有し、前記クライアント端末は、推定家畜を識別する識別情報とともに推定要求を送信し、前記推定結果を受信し推定の対象となる家畜の体重データをユーザーに提示する提示手段を有し、前記推定手段は、再推定の必要があると判断した場合は前記第2の学習済みモデルを利用して推定することを特徴とする。
家畜の画像データから得られる解析データを、それに加えて体重と関連性の高い活動データと飼育データとも合わせて再度機械学習を行い体重推定することで、画像データだけでは判断しにくい体重の増減要素を反映し、体重の推定を行う際の精度が向上する。
システム全体図 ハードウェア構成図 ソフトウェア構成図 学習モデル402、412 学習の一連の流れを示したフロー図 体重推定システムの動作シーケンス図 実施例1における体重推定サーバー114における体重推定処理の詳細を示したフローチャート 実施例1におけるクライアント端末141に表示されるユーザーインターフェースである。 実施例2における体重推定サーバー114における体重推定処理の詳細を示したフローチャート 実施例3における体重推定システムの動作シーケンス図 実施例3における体重推定サーバー114における体重推定処理の詳細を示したフローチャート 実施例3におけるクライアント端末141に表示されるユーザーインターフェースである。
以下、本発明を実施するための形態について図面を用いて説明する。
図1は、本実施例に係る家畜体重推定システムの全体構成を示す図である。図1において、サーバー111〜114、カメラ121〜122、識別タグ131、クライアント端末141はネットワーク100〜103を介して接続されている。ネットワーク100〜103は、例えば、インターネット等のLocal Area Netowrk(以降、LANと略称する)、WIDe Area Network(以降、WANと略称する)、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等により実現される。ネットワーク100〜103は、データの送受信が可能であればその種類を問わない。本提案書では、ネットワーク100はインターネット、ネットワーク101、102、103はローカルネットワークとして説明する。
カメラ121は、ネットワーク接続機能を有し、撮影した画像データを画像データ管理サーバー113に送信する。ビデオカメラ122は、ネットワーク接続機能を有し、撮影した映像データを画像データ管理サーバー113に送信する。なお、本構成要素については画像データあるいは映像データを撮影するハードウェアおよびソフトウェアを有していればカメラ以外の機器であっても構わないものとする。例えば、スマートフォンのようにカメラ機能を有するクライアント端末であってもよい。また、カメラ121、あるいはビデオカメラ122がネットワーク接続機能を有していなくても、別途、クライアント端末141を介して画像データ管理サーバーに画像データあるいは映像データを送信することができれば本システムの対象とする。
識別タグ131は、RFIDなどの技術によって装着した家畜を識別することのできるタグ情報を保持し、タグ情報を個体識別データとして送信可能な装置である。また、識別タグ131はGPSなどの技術によって装着した対象の位置情報を取得し、活動データ管理サーバー111に送信することができる。
クライアント端末141はプログラム実行環境が内蔵された情報機器である。例えば、デスクトップパソコン、ノートパソコン、Personal Data Assistant(以降、PDAと略称する)やスマートフォン等である。クライアント端末141は、Webブラウザ(インターネットブラウザ、WWWブラウザ、World WIDe Webの利用に供するソフトウェア)等のプログラムを実行する環境が内蔵されている。
活動データ管理サーバー111は、識別タグ131から受信した家畜のタグ情報と位置情報を受信し、関連付けて保存、管理するサーバーである。活動データ管理サーバー111は、識別タグ131から受信した家畜それぞれの位置情報から移動距離や移動ルート等の活動データを生成し、体重推定サーバー114やクライアント端末141に提供する。なお、活動データ管理サーバー111が受信した位置情報から活動データを生成する手順は本発明内容とは直接の関係はないため、説明を省略する。
飼育データ管理サーバー112は、家畜に与えた餌の量等の情報や毎日の気温や湿度といった天候情報等をクライアント端末141から受信し、識別タグ131から受信した家畜のタグ情報と関連付けて保存、管理するサーバーである。また、飼育データ管理サーバー112は体重推定サーバー114から家畜の推定体重データ、クライアント端末141から実測した家畜の体重データを受信してタグ情報と関連付けて保存、管理するサーバーである。
画像データ管理サーバー113は、カメラ121、ビデオカメラ122、あるいはクライアント端末141から受信した画像データおよび映像データを、識別タグ131から受信したタグ情報と関連付けて保存、管理するサーバーである。
体重推定サーバー114は、画像データ管理サーバー113から受信した画像データ、活動データ管理サーバー111から受信した活動データ、飼育データ管理サーバー112から受信した飼育データをもとに家畜の体重を推定する機能を持つサーバーである。体重推定サーバー114は、推定した結果の体重データを飼育データ管理サーバー112およびクライアント端末141に送信する。
図1において、本実施例での説明を簡略化するためサーバー111〜114をそれぞれ1台構成として図示しているが、その台数を限定する意図はない。それぞれのサーバーは複数台の物理サーバーコンピューター、複数台の仮想サーバーコンピューター、あるいはその両方によって構成されていても構わない。
図2は、本実施例に係る家畜体重推定システムの各構成要素のハードウェア構成の一例を示す図である。図2(a)は、サーバー111〜114のサーバーコンピューターのハードウェア構成の一例を示す図である。システムバス201は、サーバーの各構成要素を接続するシステムバスである。
CPU202は、装置全体の制御を行うCentral Processing Unitであり、システムバス201に接続する各構成要素のアクセスを統括的に制御する。
ROM203は、記憶手段であるRead Only Memoryであり、内部には基本I/Oプログラム等の各種データを記憶する。RAM204は、一時記憶手段であるRandom Access Memoryであり、CPU202やGPU209の主メモリ、ワークエリア等として機能する。記憶装置205は、外部記憶手段の一つで、大容量メモリとして機能し、本発明に係るプログラム等を格納する。例えば、Hard Disk Drive(以降、HDDと略称する)である。
NIC206は、Network Interface Cardであり、ネットワーク100を介して、図1に示す各構成要素とのデータのやり取りを行う。入力部207は、キーボード(不図示)やマウス(不図示)等の入力機器を介した指示入力手段である。表示部208は、ディスプレイ(不図示)等の出力機器を介した表示手段である。GPU209は、ディープラーニングのような学習モデルを用いて、複数回に渡り学習を行う場合の処理を行うGraphics Processing Unitである。GPU209を利用することで、データをより多く並列処理することが可能となり、効率的な演算を行うことができる。
なお、上記サーバーコンピューターの構成は、あくまでも一例であり図2(a)に示す組み合わせに限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM203、RAM204、記憶装置205のいずれかに変更することも可能である。
図2(b)は、カメラ121およびビデオカメラ122のハードウェア構成の一例を示す図である。システムバス211は、カメラの各構成要素を接続するシステムバスである。CPU212は、装置全体の制御を行うCentral Processing Unitであり、システムバス211に接続する各構成要素のアクセスを統括的に制御する。
ROM213は、記憶手段であるRead Only Memoryであり、内部には基本I/Oプログラム等の各種データを記憶する。RAM214は、一時記憶手段であるRandom Access Memoryであり、CPU212の主メモリ、ワークエリア等として機能する。
記憶装置215は、外部記憶手段の一つで、大容量メモリとして機能し、本発明に係るプログラム、イメージセンサー220が読み取った画像データおよび映像データ等を格納する。例えば、Hard Disk Drive(以降、HDDと略称する)やSDメモリーカードである。
NIC216は、Network Interface Cardであり、ネットワーク101を介して、図1に示す各構成要素とのデータのやり取りを行う。入力部217は、ハードウェアボタン(不図示)等の入力機器を介した指示入力手段である。表示部218は、ディスプレイ(不図示)等の出力機器を介した表示手段である。
レンズ219は、画像および映像を撮影するためのレンズである。レンズを介して入力された光をイメージセンサー220で読み取り、その結果を記憶装置215に格納することで画像データおよび映像データを撮影することが可能となる。
なお、上記カメラの構成は、あくまでも一例であり図2(b)に示す組み合わせに限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM213、RAM214、記憶装置215のいずれかに変更することも可能である。また、記憶装置215に格納した画像データおよび映像データはNIC216を介して画像データ管理サーバー113やクライアント端末141に送信される。しかし、構成要素としてNIC216を持たないカメラの場合にはSDメモリーカード等の記憶装置を介して直接、接続しても構わない。
図2(c)は、識別タグ131のハードウェア構成の一例を示す図である。システムバス221は、識別タグ131の各構成要素を接続するシステムバスである。CPU222は、装置全体の制御を行うCentral Processing Unitであり、システムバス221に接続する各構成要素のアクセスを統括的に制御する。ROM223は、記憶手段であるRead Only Memoryであり、内部には基本I/Oプログラムや識別タグ131を一意に識別するための識別コード等の各種データを記憶する。RAM224は、一時記憶手段であるRandom Access Memoryであり、CPU222の主メモリ、ワークエリア等として機能する。記憶装置225は、外部記憶手段の一つで、大容量メモリとして機能し、GPS227が取得した位置情報データ等を格納する。例えば、Hard Disk Drive(以降、HDDと略称する)やSDメモリーカードである。
NIC226は、Network Interface Cardであり、ネットワーク102を介して、図1に示す各構成要素とのデータのやり取りを行う。GPS227は、Global Positioning Systemであり、識別タグ131を装着した家畜の位置情報を定期的に取得する。
なお、上記識別タグの構成は、あくまでも一例であり図2(c)に示す組み合わせに限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM223、RAM224、記憶装置225のいずれかに変更することも可能である。また、GPS227が取得する位置情報と合わせて識別タグを装着した家畜の体温、心拍などの生体情報を取得する場合には、それら生体情報取得のためのハードウェアを接続しても構わない。
図2(d)はクライアント端末141のハードウェア構成の一例を示す図である。システムバス231は、クライアント端末141の各構成要素を接続するシステムバスである。CPU232は、装置全体の制御を行うCentral Processing Unitであり、システムバス231に接続する各構成要素のアクセスを統括的に制御する。
ROM233は、記憶手段であるRead Only Memoryであり、内部には基本I/Oプログラム等の各種データを記憶する。RAM234は、一時記憶手段であるRandom Access Memoryであり、CPU232の主メモリ、ワークエリア等として機能する。記憶装置235は、外部記憶手段の一つで、大容量メモリとして機能し、本発明に係るプログラム等を格納する。例えば、Hard Disk Drive(以降、HDDと略称する)である。
NIC236は、Network Interface Cardであり、ネットワーク103を介して、図1に示す各構成要素とのデータのやり取りを行う。入力部237は、キーボード(不図示)やマウス(不図示)等の入力機器を介した指示入力手段である。表示部238は、ディスプレイ(不図示)等の出力機器を介した表示手段である。なお、本実施例においては、入力部237と表示部238が一体化したタッチディスプレイを備えたスマートフォン、タブレットとして説明を行う。
カメラ239は、画像データおよび映像データを取得し、記憶装置235に格納するカメラモジュールである。なお、上記クライアント端末の構成は、あくまでも一例であり図2(d)に示す組み合わせに限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM203、RAM204、記憶装置205のいずれかに変更することも可能である。また、カメラ239が備わっていないクライアント端末であっても、画像データおよび映像データをSDメモリーカード等の記憶装置から取得することができれば、本発明の対象とする。
図3は、本実施例に係る家畜体重推定システムの各構成要素のソフトウェア構成の一例を示す図である。カメラ121およびビデオカメラ122は、データ記憶部301、データ送信部302、データ受信部303、撮影部304から構成される。撮影部304は、レンズ219を介して入力される光をイメージセンサー220により信号に変換する。
データ記憶部301は、撮影部304が変換した信号を、画像データあるいは映像データとして記憶装置215に格納して管理する。データ受信部303は、NIC216を介して撮影部304の被写体である家畜に装着された識別タグ131と接続し、データ送信部312から識別IDを受信する。受信した識別IDは、記憶装置215に格納された画像データあるいは映像データと関連付けてデータ記憶部301が記憶装置215に格納する。データ送信部302は、記憶装置に格納された画像データあるいは映像データと、そのデータに関連付けられた識別IDを画像データ管理サーバー113に送信する。
識別タグ131は、データ記憶部311、データ送信部312、位置情報管理部313から構成される。データ記憶部311は、識別タグ131を一意に識別するための識別IDを記憶装置225に格納して管理する。表1は、識別タグ131のデータ記憶部311が管理する識別IDのデータテーブルの一例を示したものである。
Figure 0006942764
識別IDカラムは、識別タグ1つ1つに割り当てられた一意のIDを格納するカラムである。識別タグから一意に家畜を特定する識別情報として識別IDを用いるが、識別情報の形態に制限はなく、識別情報として運用できる情報であれば識別IDに限定されるものではない。識別IDのフォーマットは、利用する識別タグの数に応じて一意性が確保できるのであればそのフォーマットを限定する意図はない。本実施例に係る家畜体重推定システムにおいて、生成および管理される家畜の各種データは識別IDに関連付けられ各構成要素で管理される。
データ送信部312は、NIC226を介して接続されるカメラ121、ビデオカメラ122、飼育データ管理サーバー112に識別IDを送信する。また、データ送信部312は、活動データ管理サーバー111に位置情報管理部313がGPSから取得した位置情報を適宜、識別IDと関連付けて送信する。
位置情報管理部313は、GPSから現在の位置情報を取得する。取得した位置情報は、データ記憶部311によって記憶装置225に格納される。なお、位置情報のフォーマットについては本発明内容とは直接の関係はないため、説明を省略する。位置情報管理部313は最低限、時刻情報と位置座標情報を関連付けて取得するものとしその他の付随情報について、その取得の可否を限定する意図は本発明にはない。
活動データ管理サーバー111は、データ記憶部351、データ送信部352、データ受信部353、活動データ解析部354から構成される。データ受信部353は、NIC206を介して識別タグ131から識別IDおよび位置情報を受信する。データ記憶部351は、データ受信部353が受信した識別IDと位置情報を関連付けて記憶装置205に格納して管理する。また、データ記憶部351は活動データ解析部354が位置情報を解析して生成した活動データも識別IDと関連付けて記憶装置205に格納して管理する。
データ送信部352は、NIC206を介してデータ記憶部351が管理する活動データを体重推定サーバー114からの要求に従って送信する。活動データ解析部354は、データ記憶部351が管理する識別タグ131から受信した位置情報を解析して、識別タグが装着された家畜の個体ごとの活動データを生成する。表2は、活動データ解析部354が生成した活動データのデータテーブルの一例を示したものである。
Figure 0006942764
活動データ解析部354は、識別タグ131から受信した位置情報を識別IDごと、1日単位で集計し、識別タグを装着した家畜の移動距離を活動データとして生成し、活動データテーブルで管理する。識別IDカラムは、識別IDを格納するカラムである。
生成日カラムは、位置情報から活動データを生成した日付を格納するカラムである。午前の移動距離カラムは、識別タグから受信した位置情報から生成した午前の移動距離を格納するカラムである。午後の移動距離カラムは、識別タグから受信した位置情報から生成した午後の移動距離を格納するカラムである。総移動距離カラムは、識別タグから受信した位置情報から生成した1日の総移動距離を格納するカラムである。
飼育データ管理サーバー112は、データ記憶部361、データ送信部362、データ受信部363から構成される。データ受信部363は、NIC206を介して識別タグ131から識別IDを受信する。また、データ受信部363は、クライアント端末141から飼育データを受信する。
データ記憶部361は、データ受信部363が受信した識別IDと飼育データを関連付けて記憶装置205に格納して管理する。また、データ記憶部361は体重推定サーバー114の推定部343あるいは再推定部344が推定し、格納するのに十分な精度と判断された体重データを受信し、識別IDと関連付けて記憶装置205に格納して管理する。
データ送信部362は、NIC206を介してデータ記憶部361が管理する飼育羽データを体重推定サーバー114からの要求に従って送信する。表3、4、5は、データ記憶部361が管理する飼育データのデータテーブルの一例を示したものである。
Figure 0006942764
飼育データ管理テーブルは、クライアント端末141を介して入力された家畜の実測体重あるいは体重推定サーバーから受信した推定体重を別途給餌データテーブルで管理する給餌データと関連付けて管理する。
識別IDカラムは、識別IDを格納するカラムである。記録日カラムは、対象の家畜の体重と給餌データとを関連付けた日付を格納するカラムである。体重カラムは、家畜の体重カラムを格納するカラムである。測定カラムは、データ受信部363が受信した家畜の体重データが実測によって行われクライアント端末141を介して入力されたのか、体重推定サーバー114によって推定されたのかどうかを判別する値が入る。実測された値の場合には「実測」、体重推定サーバー114によって推定された値の場合には「推定」が格納される。本実施例に示すシステムにおいて登録される飼育データの内、体重が実測された家畜以外の飼育データについては体重カラムの値と測定タイプカラムの値は体重推定サーバー114による推定処理が行われるまでは空の状態である。
動物タイプカラムは、対象の家畜の動物の種類を格納するカラムである。給餌IDカラムは、後述する給餌データテーブルで管理される給餌データを一意に識別するIDを格納するカラムである。画像IDカラムは、後述する画像データテーブルで管理される画像データを一意に識別するIDを格納するカラムである。
Figure 0006942764
給餌データテーブルは、家畜に対して与えた餌の種類と量を管理するテーブルである。なお、給餌データの各項目は、クライアント端末141を介したユーザー操作によって飼育データ管理サーバー112に入力されるものであり、その手順は本発明とは直接の関係はないため説明を省略する。
給餌IDカラムは、給餌データを一意に識別するIDを格納するカラムである。給餌日カラムは、家畜に餌を与えた日付を格納するカラムである。給餌記録カラム1〜Nは、給餌内容の詳細情報を格納するカラムであり、与えた餌の種類の数だけ存在する。給餌記録カラムは給餌種カラムと給餌量カラムで構成される。給餌種カラムは、家畜に与えた餌の種類を示す情報を格納するカラムである。後述する餌マスタテーブルで管理される餌マスタデータを一意に識別する給餌種の値を格納する。給餌量カラムは、家畜に与えた餌の量を格納するカラムである。
Figure 0006942764
餌マスタテーブルは、家畜に与えた餌の詳細情報を管理するテーブルである。一般的に家畜に与える餌は1種類以上の材料を混合した形で提供されるためその内訳を餌マスタテーブルで管理する。給餌種カラムは、家畜に与える餌の種類を示す情報を格納するカラムである。構成物カラム1〜Nは、餌を構成する材料の詳細情報を格納するカラムである。構成物カラムは材料カラムと含有率カラムで構成される。材料カラムは、餌の構成材料を示す情報を格納するカラムである。含有率カラムは、餌全体に含まれる材料カラムが示す材料の割合を格納するカラムである。
画像データ管理サーバー113は、データ記憶部331、データ送信部332、データ受信部333、画像データ解析部334から構成される。データ受信部333は、NIC206を介してカメラ121およびビデオカメラ122から画像データ、映像データ、識別IDを受信する。あるいは、データ受信部333は、クライアント端末141を介して画像データ、映像データ、識別IDを受信する。
データ記憶部331は、データ受信部333が受信した画像データ、映像データ、識別IDを関連付けて記憶装置205に格納して管理する。表6は、データ記憶部331が管理する画像データテーブルの一例を示したものである。
Figure 0006942764
画像IDカラムは、画像データを一意に識別するために画像データ管理サーバー113が生成した識別子である。登録日カラムは、画像データを画像データ管理サーバー113が受信した日時情報を格納するカラムである。保存パスカラムは、画像データを保存している画像データ管理サーバー113の記憶装置205の論理パスを格納するカラムである。識別IDカラムは、画像データに関連付けられた識別IDを格納するカラムである。
データ送信部332は、NIC206を介してデータ記憶部331が管理する画像データ、映像データを体重推定サーバー114からの要求に従って送信する。画像データ解析部334は、データ記憶部331で管理される画像データ、映像データを解析し、映っている家畜の画像を抽出する。さらに抽出した家畜の体全体の体長、表面積、家畜の特定部位ごとの大きさ等を抽出し、データ記憶部331で管理する。
表7は、データ記憶部331が管理する画像解析データテーブルの一例を示したものである。なお、表6においては、本実施例における家畜として牛を対象とした場合の解析データの一例を示している。
Figure 0006942764
識別IDカラムは、解析した画像データに関連付けられた識別IDを格納するカラムである。解析日カラムは、画像データ解析部334が、画像データを解析した日付を格納するカラムである。動物タイプカラムは、対象の家畜の動物の種類を格納するカラムである。全長カラムカラムは、画像データから抽出した家畜画像から算出した全長を格納するカラムである。
体表面積カラムは、画像データから抽出した家畜画像から算出した体表面積を格納するカラムである。臀部カラムは、画像データから抽出した家畜画像から算出した臀部に限った体長を格納するカラムである。腰骨カラムは、画像データから抽出した家畜画像から算出した腰骨に限った体長を格納するカラムである。
画像解析データテーブルに格納される画像解析結果は、後述する体重推定サーバー114の学習部342で用いられる学習モデルに合わせて変動するため、その解析結果の内容は表6に示した項目に限定されることはない。なお、画像データ、映像データから家畜を抽出する手順と方法、また家畜画像から体表面積や特定領域の長さ等を算出する手順と方法については、本発明内容とは直接の関係はないため説明を省略する。
体重推定サーバー114は、データ記憶部341、学習部342、推定部343、再推定部344、データ受信部345、データ送信部346から構成される。データ受信部345は、NIC206を介してクライアント端末141のデータ送信部322から体重推定要求を受信する。また、データ受信部345は、クライアント端末141から受信した体重推定要求に応じて、活動データ管理サーバー111、飼育データ管理サーバー112、画像データ管理サーバー113から体重推定に必要な各種データを受信する。
データ記憶部341は、学習部342によって生成される後述する学習モデル402および412を用いて推定部343、再推定部344で実行される各体重推定プログラムを格納して管理する。学習部342は、データ受信部345を介して受信した活動データ、飼育データ、画像解析データを使用して学習を行い、学習モデル402、412を生成および教育する。
推定部343は、学習モデル402を用いた体重推定プログラムを実行することで、データ受信部345が受信した家畜の画像解析データから、体重データを推測する。再推定部344は、学習モデル412を用いた体重推定プログラムを実行することで、データ受信部345が受信した家畜の画像解析データ、飼育データ、活動データから、体重データを推測する。データ送信部346は、NIC206を介して体重推定要求を受信したクライアント端末141に対して推定体重データを送信する。また、データ送信部346は、推定体重データを飼育データ管理サーバー112に送信し、飼育データテーブルの識別IDが一致するデータの体重カラムに推定体重データを格納する。
図4は、学習部342および推定部343、再推定部344で使用される学習モデルと、入出力の関係を示した概念図である。図4(a)は推定部343で実行される体重推定プログラムが使用する学習モデルと、入出力の関係を示した概念図である。学習モデル402は、学習部342が生成する学習モデルである。入力データ401は、データ受信部345で受信した家畜の画像解析データをベクトル化したデータである。出力データ403は、入力された画像解析データに対応する家畜の個体の推定体重データである。
図4(b)は再推定部344で実行される体重再推定プログラムが使用する学習モデルと、入出力の関係を示した概念図である。学習モデル412は、学習部342が生成する学習モデルである。入力データ411は、データ受信部345で受信した家畜の画像解析データ、再推定を行う時点までの飼育データと活動データをベクトル化したデータである。出力データ413は、入力された各データに対応する家畜の個体の再推定体重データである。
学習モデル402、412を用いた家畜の体重推定プログラムの実行タイミングはクライアント端末141から体重推定要求に応じて実施してもよい。また、画像データ管理サーバー113が画像データを受信したタイミングを体重推定サーバー114が検知して、クライアント端末141からの要求を受ける前に予め実施してもよい。
図5は、学習部342が学習モデルを生成する一連の処理を示したフローの詳細である。ステップS501において、体重推定サーバー114のデータ受信部345は画像データ管理サーバー113から画像解析データテーブルで管理される画像解析データを取得する。
ステップS502において、データ受信部345は、飼育データ管理サーバー112から飼育データテーブルで管理される飼育データのうちステップS501で受信したデータの識別IDカラムの値が一致し、かつ測定タイプの値が「実測」であるデータを取得する。加えて、取得した飼育データの給餌IDカラムの値と一致する給餌データを給餌データテーブルから、給餌データの給餌種カラムの値と一致する餌マスタデータを餌マスタデータテーブルからそれぞれ合わせて取得する。また、データ受信部345は、活動データ管理サーバー111から活動データテーブルで管理活動データのうちステップS501で受信したデータの識別IDカラムの値が一致するデータを取得する。ステップS503において、データ受信部345はステップS501およびS502で受信した各学習データを学習部342における入力データと正解データに分類する。
表8は学習モデル402における入力データと正解データの一例を示したデータテーブルである。
Figure 0006942764
学習モデル402の学習には、入力データとして画像解析データのデータ項目を使用する。なお、本実施例においては入力データとして、家畜の画像データから得ることができる各解析結果を限定するものではない。体重推定方法に応じて、適した解析結果を入力データとして適用可能である。例えば、体重を特許文献1に記載の動物の体表面積によって推定する方法であれば、入力データとしては画像解析データの体表面積のデータ項目のみを入力データとして選択しても良い。
表9は学習モデル412における入力データと正解データの一例を示したデータテーブルである。
Figure 0006942764
学習モデル412の学習には、入力データとして画像解析データ、給餌データ、活動データのデータ項目を使用する。なお給餌データについては、給餌種カラムの値が示す餌において実際に与えた材料の量を算出して、入力データとする。例えば、表4に示す給餌データで説明すると、粗資料Aを10kg家畜に与えた場合、入力データとしてはその材料である生草10kg(10kgx100%)を採用する。
ステップS504において、学習部342はステップS503で分類した学習データをそれぞれ入力ベクトルと正解ベクトルに変換する。ステップS505において、学習部342は、ステップS504でベクトルに変換した学習データを1項目ずつ、全項目に学習処理を施す。全項目に対する学習処理が完了したら、フローに示す一連の処理を終了する。
ステップS506において、学習部342は表7に示す学習データを用いて学習モデル402の学習処理を行う。ステップS507において、学習部342は表8に示す学習データを用いて学習モデル412の学習処理を行う。GPU209はデータをより多く並列処理することで効率的な演算を行うことができるので、ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合にはGPU209で処理を行うことが有効である。そこで実施形態1では、学習部342による処理にはCPU202に加えてGPU209を用いる。具体的には、学習モデルを含む学習プログラムを実行する場合に、CPU202とGPU209が協働して演算を行うことで学習を行う。なお、学習部342の処理はCPU202またはGPU209のみにより演算が行われても良い。また、推定部343も学習部342と同様にGPU209を用いても良い。
学習部342はステップS506、S507において変換した入力ベクトルと正解ベクトルの1設定項目をもって、入力ベクトルから正解ベクトルが得られるようにSVM(Support Vector Machine)を利用して学習する。SVMは公知の機械学習アルゴリズムであり本実施例では、RBF(Radial Basis Function Kernel)による非線形ソフトマージンSVMを利用する。学習では、学習データをランダムに解析データと検証データに分割する交差検証によって学習結果を評価する。またRBFを用いたSVMのハイパーパラメータにコストパラメータ(C)とガンマ(γ)があり推定性能に影響を及ぼすので、それぞれ複数の値を網羅的に試すグリッドサーチを行い推定性能が高いものを学習結果とする。SVMは分類と回帰のどちらの学習も行うことができる。
本実施例においては家畜の体重を推定するものであるので回帰を行う。ここで機械学習アルゴリズムにはパーセプトロンやロジスティック回帰、ニューラルネットワーク、k近傍法、ナイーブベイズ、ニューラルネットワーク、畳み込みニューラルネットワークがある。また、決定木、ランダムフォレスト、線形回帰、多項式回帰、Lasso回帰、Ridge回帰など他にも様々なものがある。またSVMにもハードマージンSVMや多項式カーネルSVMなどの種類がある。機械学習アルゴリズムのハイパーパラメータも機械学習アルゴリズムによって異なる。
また学習結果の評価手法には交差検証法以外に代替推定法やテストサンプル法などがある。さらに機械学習アルゴリズムのハイパーパラメータの最適化手法にはグリッドサーチ以外にランダムサーチ、ラテン超方格サンプリング法、ベイズ最適化などがある。本実施例において機械学習アルゴリズムや学習結果を評価手法、機械学習アルゴリズムのハイパーパラメータの最適化手法などの学習手法は変更してもよい。
ステップS508において、データ記憶部341は学習した学習済みモデルを記憶装置205に格納する。クライアント端末141は、データ記憶部321、データ送信部322、データ受信部323、推定結果表示部324から構成される。データ記憶部321は、クライアント端末141がスマートフォンのように構成要素としてカメラ239を持っていた場合に、撮影した画像データ、映像データを格納して管理する。また、データ記憶部321は、格納した画像データ、映像データをNIC236を介して接続した被写体の家畜に装着された識別タグ131の識別IDと関連付けて管理する。
データ送信部322は、画像データ管理サーバー113にデータ記憶部321が管理する画像データ、映像データ、識別IDを指定して、体重推定サーバー114に体重推定要求を送信する。また、既に推定すべき画像データがカメラ121、ビデオカメラ122を介して画像データ管理サーバー113に送信済みの場合には、データ送信部322は体重推定対象の識別IDのみを体重推定サーバー114に送信する。
データ受信部323は、体重推定サーバー114のデータ送信部346から推定体重データを受信する。受信した推定体重データは、推定結果表示部324によってクライアント端末141の表示部238に表示される。
図6は、図4で示した学習モデルを利用した本発明の体重推定システムの動作シーケンスを表す図である。活動データ管理サーバー111において、活動データ解析部354が識別タグ131から受信した位置情報から活動データを生成する処理、飼育データ管理サーバー112がクライアント端末141から給餌データを受信する処理については定期的に行われる。また、これらの処理は、体重推定システムの動作とは独立して行われる。なお、図6においてはクライアント端末141がカメラ239を備えたスマートフォンを前提として本発明の体重システムの動作を説明する。
ステップS601において、クライアント端末141は、まず被写体となる家畜に装着された識別タグ131にNIC236を介して接続し、データ送信部312から識別IDを受信する。次いで、クライアント端末141はカメラ239を使用して家畜の画像を撮影する。なお、NIC236を使わず、識別IDは撮影した家畜の画像から識別タグ131を認識し、識別IDを特定する方法であっても良い。ステップS602において、クライアント端末141は、ステップS601において撮影した画像データと識別IDとをNIC236を介して、画像データ管理サーバー113に送信する。
ステップS603において、クライアント端末141は、体重推定サーバー114にステップS602で画像データ管理サーバー113に送信した画像データに映る家畜の体重推定要求を送信する。このタイミングで識別情報である識別タグから特定される識別IDを送るものとするが、これ以外のタイミングで送っても良い。この推定要求は1回目に送信される推定要求である。
ステップS604において、体重推定サーバー114は、画像データ管理サーバー113から画像データ解析部334がクライアント端末141から受信した画像データから生成した画像解析データを受信する。ステップS605において、体重推定サーバー114の推定部343は、ステップS604において受信した画像解析データの各カラムから入力データを抽出し、学習モデル402に入力して体重を推定する。
ステップS606において、体重推定サーバー114はステップS603でクライアント端末141から受信した識別IDに一致する飼育データのなかから体重カラムに値が格納されたデータのうち、記録日が最新の飼育データを取得する。そして、体重推定サーバー114のデータ送信部346はステップS605で推定した体重データの値と、飼育データ管理サーバー112から取得した最新の体重データと推定した体重データとの差異データをクライアント端末141に送信する。
この時、体重推定サーバー114が推定した体重データの値が納得のいく精度ではなかった場合、本システムの利用者はクライアント端末141を介してステップS607において、体重推定サーバー114に推定のやり直しを要求することができる。これを再推定要求と呼び、推定要求を再び送信するものである。具体的には、ステップS606で受信した推定体重データと最新の体重データとの差異データが現実的な値ではなかった場合、例えば現実的にはありえないほど体重が増加していた場合等である。
ステップS608において、体重推定のやり直し要求を受信した体重推定サーバー114は、活動データ管理サーバー111と飼育データ管理サーバー112からそれぞれステップS603で受信した識別IDと一致する活動データと飼育データを受信する。
ステップS609において、体重推定サーバー114の再推定部344は、ステップS604で受信した画像解析データ、ステップS608で受信した活動データ、飼育データの各カラムから入力データを抽出し、学習モデル412に入力して体重を推定する。なお、S609は再推定の際に実行するものとして実施例1では説明するが、必ずしもS605の推定を行った後にS609を実行する必要はない。S603乃至S606の処理を行わずに、最初からS607の推定の要求を行う形態であっても良い。
ステップS610において、体重推定サーバー114はクライアント端末141に再推定した体重データを送信する。なお、仮にステップS609で再推定した体重データもまた納得がいく精度のデータでなかった場合には、本システムの利用者は被写体の家畜の体重を実測し、飼育データ管理サーバー112にその値を直接入力する。また、そこで入力された体重データの実測値は学習モデル402、学習モデル412の学習データとして利用する。
図7は、ステップS606およびステップS608で概略を説明した体重推定サーバー114における体重推定処理の詳細を示したフローチャートである。ステップS701において、体重推定サーバー114のデータ受信部345は画像データ管理サーバー113にステップS603で受信した識別IDの値と一致する画像解析データの送信を要求する。画像データ管理サーバー113のデータ記憶部331は、画像解析データテーブルを参照し、要求を受けた識別IDと一致し、要求を受けた日付に一致する画像解析データの有無を確認する。この時、画像データ解析部334がステップS602で受信した画像データの解析処理を完了していない場合、所望のデータは画像解析データテーブルに登録されていない。その場合は、体重推定サーバー114は画像データ解析部334の処理が完了するまで待機する。
画像データ解析部334の解析処理が完了すると、ステップS702において、データ受信部345は画像データ管理サーバー113から画像解析データを取得する。ステップS703において、推定部343は、ステップS702で取得した画像解析データから入力データを抽出し、学習モデル402に入力し、体重の推定処理を実行する。この時、入力データとして画像解析データから抽出する項目については、学習モデル402が学習した体重推定ロジックに依存し、必ずしも画像解析データの全ての項目を入力する必要はない。
ステップS704において、データ受信部345はステップS603でクライアント端末141から受信した識別IDに一致する飼育データのなかから体重カラムに値が格納されたデータのうち、記録日が最新の飼育データを取得する。ステップS705において、データ送信部346はステップS703で推定した推定体重データと、推定体重データとステップS704で受信した前回の体重データとの差異データをクライアント端末141に送信する。データ受信部323は体重推定サーバー114から受信した推定体重データと差異データを推定結果表示部324に表示する。なお、前回の体重データとしているが、過去の体重データであれば必ずしも前回である必要はない。だが、過去の体重データがあまりにも古すぎると意味が薄れる可能性があると付け加えておく。
ステップS706において、クライアント端末141の入力部237を介して体重推定サーバー114が体重の再推定要求を受信した場合にはステップS707に進む。体重推定サーバー114が体重の再推定要求を受信しなかった場合は、データ送信部346は、飼育データ管理サーバー112にステップS703で推定した体重データの値を送信する。データ受信部363は、受信した推定体重データの値を体重カラムに、測定タイプカラムに「推定」の値をそれぞれ格納した飼育データをデータ記憶部361が管理する飼育データテーブルに登録する。
ステップS707において、データ受信部345は活動データ管理サーバー111からステップS603で受信した識別IDと一致する活動データを受信する。ステップS708において、データ受信部345は飼育データ管理サーバー112からステップS603で受信した識別IDと一致する飼育データを受信する。
ステップS709において、再推定部344は、ステップS702で取得した画像解析データ、ステップS707から受信した活動データ、ステップS708で受信した飼育データからそれぞれ入力データを抽出する。そして、学習モデル412に入力し、体重の再推定処理を実行する。家畜の一日の移動距離や与えた餌の量と質などの要素と画像の解析データとは異なる観点の体重に影響を与える要素を複数含めた学習モデル412を利用することで、画像の解析データよりも精度の高い推定処理を見込むことができる。
ステップS710において、データ送信部346はステップS709で推定した再推定体重データをクライアント端末141に送信する。データ受信部323は体重推定サーバー114から受信した再推定体重データを推定結果表示部324に表示する。なお、前述した通り、S709の推定は再推定要求を受信した場合にのみ実施される形態でなくても良く、S701の処理を実行した後S702〜S706の処理を実行せずにS707の処理を実行する別の形態であっても良い。
図8は、本実施例に示す体重推定システムにおいて、クライアント端末141に表示されるユーザーインターフェースの一例を示した図であり、ユーザーへの提示方法の一例でもある。図8(a)は、ステップS601、S602においてクライアント端末141の表示部238に表示されるユーザーインターフェースの一例を示した図である。
識別ID表示ラベル801は、クライアント端末141に家畜の識別タグ131がNIC236を介して接続されている場合に、その識別IDの値を表示するラベルである。また、後述する画像選択ボタン803を押下して、画像データを選択した場合には画像データに関連付く識別IDの値を表示する。
画像撮影ボタン802が押下されると、表示部238にはカメラ239を操作するためのユーザーインターフェース(不図示)が表示され、ステップS601において家畜の画像を撮影することが可能となる。画像選択ボタン803が押下されると、クライアント端末141の記憶装置235に格納されている家畜の画像データから体重の推定対象の画像データを選択するためのユーザーインターフェース(不図示)が表示される。
体重の推定を行う画像データを撮影、あるいは選択すると画像データ表示エリア804に、その画像データが表示される。体重推定ボタン805が押下されると、画像データ表示エリア804に表示されているが画像データと識別ID表示ラベル801に表示されている識別IDがステップS602において画像データ管理サーバー113に送信される。また同時に識別ID表示ラベル801に表示されている識別IDがステップS603において体重推定要求として、体重推定サーバー114に送信される。
図8(b)は、ステップS606においてクライアント端末141の表示部238に表示されるユーザーインターフェースの一例を示した図である。推定結果表示ダイアログ811は、ステップS606において、推定結果表示部324が表示するダイアログである。推定結果表示ダイアログ811は推定体重データ表示ラベル812、差異体重データ表示ラベル813、再推定依頼ボタン814、推定依頼終了ボタン815から構成される。
推定体重データ表示ラベル812は、ステップS606において受信した推定体重データを表示するラベルである。差異体重データ表示ラベル813は、ステップS606において受信した差異体重データを表示するラベルである。再推定依頼ボタン814が押下されると、データ送信部322はステップS607において、再推定要求を体重推定サーバー114に送信する。推定依頼終了ボタン815が押下されると、ステップS605で推定した体重データが飼育データ管理サーバー112に登録され、体重の推定処理が完了する。
図8(c)は、ステップS610において、クライアント端末141の表示部238に表示されるユーザーインターフェースの一例を示した図である。ステップS610において、推定結果表示ダイアログ811は再推定体重データ表示ラベル821、差異体重データ表示ラベル822、再推定依頼終了ボタン823、推定中断ボタン824から構成される。
再推定体重データ表示ラベル821は、ステップS610において受信した再推定体重データを表示するラベルである。差異体重データ表示ラベル822は、ステップS610において受信した差異体重データを表示するラベルである。再推定依頼終了ボタン823が押下されると、ステップS609で推定した体重データが飼育データ管理サーバー112に登録され、体重の推定処理が完了する。推定中断ボタン824が押下されると、一連の推定処理を中断し、表示部238はユーザーインターフェースの表示を終了する。
なお、ユーザーへの提示方法の一例としてユーザーインターフェースを提供する形としたが、メールの他、音声などの提示方法であっても良い。いずれにせよ、体重推定の結果がユーザーに伝わる提示方法であるならが、どのような提示方法であっても良い。
以上のように、家畜の画像データから解析したデータを収集および学習した結果を学習モデル402として体重推定サーバー114で利用することで、家畜の体重データを家畜に触れることなく推測することができる。また、家畜の日々の活動データと給餌データを収集および学習した結果を学習モデル412として体重推定サーバー114で利用し、画像からの解析データ単体で推定した体重データを検証し、再推定することで推定結果の精度を高めることが可能となる。また、実施例1の変化形として、活動データと飼育データも利用し学習した学習済みモデルを、再推定での利用ではなく最初の推定要求のタイミングで利用する形態も説明した。これにより、二度の推定を行わずとも精度の高い体重データを取得することができる。
実施例1において、画像解析データによる家畜の体重推定結果に対して、システムの利用者が前回の体重データの差異を確認したうえで、再推定の要不要を判断する形態を説明した。しかしながら、動物の体重の1日の増減値はある程度想定することが可能である。例えば、差異が極端に大きい場合には学習モデル402に入力した画像解析データの精度が疑われる。このような場合には、ステップS607において敢えて利用者から再推定依頼要求を待つまでもなく再推定処理を実行すべきである。
本実施例では、学習モデル402を用いた体重推定処理の結果の精度が低かった場合に、システムの利用者が再推定依頼要求を送信することなく、学習モデル412を用いた再推定処理を行う例を示す。なお、以降の説明はこれまでの実施例との差分のみを説明するものであり、説明がなかった部分は実施例1もしくはその変化例と同一であるものとする。
図9は、本実施例において体重推定サーバー114における体重推定処理の詳細を示したフローチャートである。なお、図9に示した本実施例における推定処理のフローチャートにより、図6に示した体重推定システムのシーケンス図においてステップS606、S607は実行されなくなる。
ステップS901からS904まではステップS701からS704までと同様の処理のため、説明を省略する。ステップS905において、推定部343はステップS903で推定した推定体重データとステップS904で取得した前回の体重データの差分を計算する。そして、データ記憶部341で管理される再推定閾値テーブルを参照し、その差分結果が閾値を超えているかどうかを確認し、ステップS903で行った推定処理の精度を判断する。
表10は、データ記憶部341が管理する再推定閾値テーブルの一例を示したデータテーブルである。
Figure 0006942764
推定対象動物タイプカラムは、体重の推定対象の動物の種別を格納するカラムである。再推定閾値テーブルでは動物に応じてそれぞれの閾値を格納する。閾値カラムは、推定結果の体重データと前回体重データとの許容できる差分値を格納するカラムである。
ステップS905において、画像解析データを学習モデル402に入力して得られた結果がここに格納する閾値の値の範囲を超えた体重データであった場合、再推定の必要ありと判断しステップS906に進む。ステップS906からS909まではステップS707からS710までの処理と同様のため、説明を省略する。
以上のように、画像解析データを入力データとした体重推定処理の精度をあらかじめ定められた閾値で判断することで、本システムの利用者が敢えて要求を出さずとも体重の再推定処理を実行して、精度の高い推定体重データを提供することが可能となる。
実施例1、2において、画像データ、そして活動データと飼育データを活用して家畜に触れることなく体重を推定するシステムについて説明した。飼育する家畜の数によっては画像データから体重を推定することができても、1匹ずつ撮影することがなお作業負担となる場合がある。
本実施例においては、そのような背景のもと家畜の画像を1匹ずつ手動で撮影するのではなく、飼育場に設置されたビデオカメラ122を介して定期的に家畜の画像を撮影し、複数の家畜の体重を一括で推定するシステムの例を示す。なお、以降の説明はこれまでの実施例との差分のみを説明するものであり、説明がなかった部分は実施例1および2もしくはそれらの変化例と同一であるものとする。
図10は、複数の家畜の体重一括推定システムの動作シーケンスを表す図である。ステップS1001において、ビデオカメラ122は、データ受信部303を介して接続した識別タグ131を装着した家畜の映像データを撮影する。データ記憶部301は、映像データと映像データに映る家畜の識別タグ131が示す識別IDとを関連づけて管理する。
ステップS1002において、データ送信部302は画像データ管理サーバー113にステップS1001で撮影した映像データと識別IDを画像データ管理サーバー113に送信する。なお、映像データの撮影と送信は定期的に実行される。その頻度は例えば、数時間間隔や、定刻、リアルタイム等が想定され、本発明においてはその頻度を限定しない。画像データ管理サーバー113の画像データ解析部334は、受信した映像データを映っている被写体ごとに画像データにまず分割し、それぞれの画像データから画像解析データを生成してデータ記憶部331に格納する。なお、映像データから画像データを抽出する手順については本発明とは直接の関係がないため、説明を省略する。データ記憶部331は画像解析データを識別ID単位でまとめて管理する。
ステップS1003において、体重推定サーバー114のデータ受信部345は画像データ管理サーバー113から、推定処理を行っていない画像解析データを一括で取得してする。ステップS1004において、学習部342はステップS1003で取得した画像解析データ全てに対して学習モデル402に入力して、体重の推定処理を行う。また、識別IDが共通の推定体重データが複数存在する場合には、その中から一番精度の高い推定値を決定する。
ステップS1005、S1006において、体重推定サーバー114は、活動データ管理サーバー111と飼育データ管理サーバー112からそれぞれステップS1003で画像解析データと共に受信した識別IDと一致する活動データと飼育データを受信する。
ステップS1007において、再推定部344は、ステップS1003で受信した各画像解析データ、ステップS1005、S1006で受信した活動データ、飼育データの各カラムから入力データを抽出し、学習モデル412に入力して体重を推定する。また、識別IDが共通の推定体重データが複数存在する場合には、その中から一番精度の高い推定値を決定する。ステップS1008において、体重推定サーバー114はステップS1004および、S1007で推定した各体重データを、識別IDごとに全てクライアント端末141に送信する。
図11は、ステップS1004およびステップS1007で概略を説明した体重推定サーバー114における映像データから生成した複数画像解析データを用いた体重推定処理の詳細を示したフローチャートである。
ステップS1101において、体重推定サーバー114のデータ受信部345は画像データ管理サーバー113にステップS1003で受信した識別IDの値と一致する画像解析データのうち推定処理を実施していない全ての画像解析データの送信を要求する。
画像データ管理サーバー113のデータ記憶部331は、画像解析データテーブルを参照し、要求を受けた識別IDと一致し、要求を受けた日付に一致する画像解析データの有無を確認する。この時、画像データ解析部334がステップS1002で受信した画像データの解析処理を完了していない場合、所望のデータは画像解析データテーブルに登録されていない。その場合は、体重推定サーバー114は画像データ解析部334の処理が完了しているデータのみをステップS1102で取得する。ステップS1103において、推定部343は、ステップS1102で取得した画像解析データから推定処理を実施していない画像解析データを選択する。
ステップS1104において、画像解析データから入力データを抽出し、学習モデル402に入力し、体重の推定処理を実行する。この時、入力データとして画像解析データから抽出する項目については、学習モデル402が学習した体重推定ロジックに依存し、必ずしも画像解析データの全ての項目を入力する必要はない。例えば、学習モデル402の体推定ロジックが特許文献1に記載の家畜の体表面積に基づくものであれば動物タイプカラムと体表面積カラムの値を入力データとして抽出する。
ステップS1105において、データ記憶部331は推定結果を識別IDと関連付けて管理する。識別IDが同一で異なる解析結果の画像解析データに対して推定処理を行った場合には、それらをひとまとめにして管理する。ステップS1106において、データ受信部345は活動データ管理サーバー111からステップS1003で受信した識別IDと一致する活動データを全て受信する。
ステップS1107において、データ受信部345は飼育データ管理サーバー112からステップS1003で受信した識別IDと一致する飼育データを全て受信する。ステップS1108において、再推定部344は、ステップS1102で取得した画像解析データから再推定処理を実施していない画像解析データを選択する。
ステップS1109において、再推定部344は、ステップS1102で取得した画像解析データ、ステップS1106から受信した活動データ、ステップS1107で受信した飼育データからそれぞれ入力データを抽出する。そして、学習モデル412に入力し、体重の再推定処理を実行する。家畜の一日の移動距離や与えた餌の量と質などの要素と画像の解析データとは異なる観点の体重に影響を与える要素を複数含めた学習モデル412を利用することで、画像の解析データよりも精度の高い推定処理を見込むことができる。ステップS1110において、データ記憶部331は再推定結果を識別IDと関連付けて管理する。識別IDが同一で異なる解析結果の画像解析データに対して推定処理を行った場合には、それらをひとまとめにして管理する。
ステップS1111において、推定部343は、ステップS1105で識別IDごとにまとめた推定結果のなかから、それぞれ精度が一番高い結果を選択する。同様に再推定部344は、ステップS1110で識別IDごとにまとめた推定結果のなかから、それぞれ精度が一番高い結果を選択する。画像データ管理サーバー113の画像データ解析部334が映像データから生成した画像データに映る家畜の画像は全てが同じアングルの画像とは限らない。画像データを生成した映像データの録画タイミングによっては全体が映っているかもしれないし、体の一部しか映っていない場合もある。
推定部343および再推定部344はそれらの画像データから得られた画像解析データに最適な推定プログラムを利用する学習モデル402,412を選択して体重の推定処理を行う。しかしながら、それら推定プログラム間でも精度差が想定されるため、ステップS1111でそれぞれ最も精度が高いと思われる結果を選択する。代表となる推定結果の選択の方法については、例えばステップS905で用いたようなそれぞれの家畜の前回の体重データの差異を求めて、その差分値が最小のものを代表の推定結果とする。
ステップS1112において、データ送信部346はステップS1111で決定したス推定体重データ、再推定体重データ、それらを推定するのに使用された画像データを全てクライアント端末141に送信する。データ受信部323は体重推定サーバー114から受信した再推定体重データを推定結果表示部324に表示する。
図12は、本実施例に示す体重推定システムにおいて、クライアント端末141に表示されるユーザーインターフェースの一例を示した図である。図12(a)は、ステップS1112においてクライアント端末141の表示部238に表示されるユーザーインターフェースの一例を示した図である。
推定結果表示画面1201は、クライアント端末141がステップS1112で受信した全ての識別IDごとに推定体重データ、再推定体重データを表示する画面である。推定結果表示画面1201には識別IDの数だけ1202から1207までの各構成要素が表示される。画像データ表示部1202には、ステップS1111で代表の推定体重を推定するのに使用した画像データが表示される。
識別ID表示ラベル1204には、ステップS1111で代表の推定体重を推定するのに使用した画像データに関連付く識別IDの値が表示される。記録日表示ラベル1203には、ステップS1111で代表の推定体重を推定するのに使用した画像データが画像データ管理サーバー113に登録された日付情報が表示される。具体的には画像データテーブルの登録日カラムの値が表示される。
代表推定体重表示ラベル1205には、ステップS1104で推定された画像解析データから抽出した入力データを学習モデル402に入力して推定した体重データのうちステップS1111で最も精度が高いと判定された値が表示される。
代表再推定体重表示ラベル1206には、ステップS1109で推定された画像解析データから抽出した入力データを学習モデル412に入力して推定した体重データのうちステップS1111で最も精度が高いと判定された値が表示される。推定結果参照ボタン1207を押下すると、ステップS1104、S1109で推定された他の推定体重データ、再推定体重データが推定結果表示画面1201に表示される。
図12(b)は推定結果参照ボタン1207が押下された場合に表示される画面の一例を示した図である。他推定結果表示エリア1211は、ステップS1111で精度がもっとも高いと判定されなかった画像データ、推定体重データ、再推定体重データを表示する領域である。本システムの利用者は、他推定結果表示エリア1211に表示される画像データ内の家畜のアングルとそこから推定される体重の精度を参照することで、体重の推定に最適なアングルを知ることができる。
なお、推定結果参照ボタン1207は、他推定結果表示エリア1211が表示されている間は推定結果参照取り消しも単1212に切り替わり、利用者の任意のタイミングで他推定結果表示エリア1211を非表示にすることができる。
以上により、映像データから得ることのできる同一個体の家畜の異なるアングル画像から推定した各体重データを選別することで、家畜を1匹ずつ撮影することなく、精度の高い推定体重データを得ることができる。
〔その他の実施例〕
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータがプログラムを読出し実行する処理でも実現可能である。コンピュータは、1または複数のプロセッサーまたは回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータまたは分離した複数のプロセッサーまたは回路のネットワークを含みうる。
プロセッサーまたは回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサーまたは回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、またはニューラルプロセッシングユニット(NPU)を含みうる。
111 活動データ管理サーバー
112 飼育データ管理サーバー
113 画像データ管理サーバー
114 体重推定サーバー
121 カメラ
122 ビデオカメラ
131 識別タグ
141 クライアント端末

Claims (12)

  1. 家畜を撮影した画像データを使い機械学習を行うことで生成された第1の学習済みモデルを利用し推定を行う推定装置と、前記推定装置に推定の要求を送信するクライアント端末とから構成されるシステムであって、
    前記推定装置は、
    前記クライアント端末が送信する識別情報から特定された家畜の活動データと餌データを取得する取得手段と、
    家畜を撮影した画像データと活動データと給餌データとを基に機械学習を行うことで生成された第2の学習済みモデル、および受信した識別情報に対応する家畜の画像データと前記取得手段により取得された当該家畜の活動データと給餌データを基に推定を行い、推定結果を提供する推定手段を有し、
    前記クライアント端末は、
    推定家畜を識別する識別情報とともに推定要求を送信し、前記推定結果を受信し推定の対象となる家畜の体重データをユーザーに提示する提示手段を有し、
    前記推定手段は、再推定の必要があると判断した場合は前記第2の学習済みモデルを利用して推定することを特徴とすることを特徴とするシステム。
  2. 前記第1の学習済みモデルは、前記第2の学習済みモデルの生成に使用していた活動データと給餌データを使わず生成された学習済みモデルであることを特徴とする請求項1に記載のシステム。
  3. 前記推定手段は、推定要求を受信した場合は、前記第1の学習済みモデルを利用し推定を行い、推定要求を再び受信した場合は、前記第2の学習済みモデルを利用し推定を行うことを特徴とする請求項2に記載のシステム。
  4. 前記提示手段は、
    前記第1の学習済みモデルを利用し推定された前記推定結果を受信し推定の対象となる家畜の体重データをユーザーに提示し、前記ユーザーから再推定が指示されたことに応じて推定要求を再び送信し、前記第2の学習済みモデルを利用し推定された前記推定結果を受信し推定の対象となる家畜の体重データをユーザーに提示することを特徴とする請求項2または3に記載のシステム。
  5. 前記推定手段は、
    家畜の過去の体重データと、前記第1の学習済みモデルを利用し推定を行った推定結果との差異が閾値を超えていると判定した場合は、前記第2の学習済みモデルを利用し推定を行うことを特徴とする請求項2または3に記載のシステム。
  6. 前記閾値は、推定の対象となる家畜の種別によって異なることを特徴とする請求項5に記載のシステム。
  7. 家畜を撮影した前記画像データは、飼育場に設定された複数台のカメラで家畜を撮影した画像データであり、家畜を撮影した前記画像データも前記クライアント端末が送信する識別情報から特定されることを特徴とする請求項1乃至6の何れか1項に記載のシステム。
  8. 飼育場に設定された複数台のカメラで撮影した画像データには複数の家畜が撮影されており、
    前記推定手段は、複数の家畜に対して推定を行い、
    前記提示手段は、複数の家畜の体重データをユーザーに提示することを特徴とする請求項7に記載のシステム。
  9. 家畜を撮影した画像データを使い機械学習を行うことで生成された第1の学習済みモデルで推定を行い、再推定の必要があると判断した場合は家畜を撮影した画像データと家畜の活動データと給餌データとを基に機械学習を行うことで生成された第2の学習済みモデルで再推定を行う推定装置と、前記推定装置に推定の要求を送信するクライアント端末とから構成されるシステムにおける前記クライアント端末であって、
    推定の対象となる家畜を識別する識別情報とともに推定要求を送信し、前記識別情報で特定される家畜の推定結果を受信し推定の対象となる家畜の体重データをユーザーに提示する提示手段を有することを特徴とするクライアント端末。
  10. 家畜の体重データを推定しユーザーに提示する方法であって、
    ユーザーから提供された家畜の識別情報で特定される家畜のデータと、
    家畜を撮影した画像データを使い機械学習を行うことで生成された第1の学習済みモデルで推定を行い、再推定の必要があると判断した場合は、家畜を撮影した画像データと家畜の活動データと給餌データとを基に機械学習を行うことで生成された第2の学習済みモデルで再推定を行う推定ステップと、
    推定結果から推定の対象となる家畜の体重データをユーザーに提示する提示ステップと、を含む制御方法。
  11. 家畜を撮影した画像データを使い機械学習を行うことで生成された第1の学習済みモデルで家畜の体重データを推定しユーザーに提示するシステムであって、
    家畜の識別情報から特定された家畜のデータを取得する取得手段と、
    家畜を撮影した画像データと家畜の活動データと給餌データとを基に生成された第2の学習済みモデルを基に再推定を行い、前記取得手段により取得された家畜の体重の推定結果を提供する推定手段と、
    前記推定結果を基に推定の対象となる家畜の体重データをユーザーに提示する提示手段を有することを特徴とするシステム。
  12. 家畜を撮影した画像データと家畜の活動データと給餌データを収集する収集手段と、
    収集手段により収集されたデータを基に学習モデルに順次データ入力していくことで複数回に渡り学習を行う学習手段と、
    前記学習手段による学習することにより得られた第2の学習済みモデルを、家畜を撮影した画像データを使い機械学習を行うことで得られた第1の学習済みモデルで推定を行った結果再推定の必要があると判断した場合に利用する第2の学習済みモデルとして提供する提供手段と、を有する学習システム。
JP2019145571A 2019-08-07 2019-08-07 システム、クライアント端末、その制御方法 Active JP6942764B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019145571A JP6942764B2 (ja) 2019-08-07 2019-08-07 システム、クライアント端末、その制御方法
US16/983,519 US11516992B2 (en) 2019-08-07 2020-08-03 System, client terminal, control method for system, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019145571A JP6942764B2 (ja) 2019-08-07 2019-08-07 システム、クライアント端末、その制御方法

Publications (2)

Publication Number Publication Date
JP2021023241A JP2021023241A (ja) 2021-02-22
JP6942764B2 true JP6942764B2 (ja) 2021-09-29

Family

ID=74498301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019145571A Active JP6942764B2 (ja) 2019-08-07 2019-08-07 システム、クライアント端末、その制御方法

Country Status (2)

Country Link
US (1) US11516992B2 (ja)
JP (1) JP6942764B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11393088B2 (en) 2019-06-27 2022-07-19 Nutech Ventures Animal detection based on detection and association of parts
US11910781B2 (en) * 2019-12-26 2024-02-27 Organic Intelligence Technologies, Inc. Analyzing media based on non-human animal input
KR102234508B1 (ko) * 2020-04-27 2021-03-31 주식회사 아이티테크 스마트 가축 관리 시스템 및 그 방법
KR102564104B1 (ko) * 2021-03-26 2023-08-04 대구대학교 산학협력단 가축의 활동 감지 시스템

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011135786A (ja) * 2009-12-25 2011-07-14 Fujitsu Ltd 自動体重選別装置およびプログラム
US20160125276A1 (en) * 2013-06-04 2016-05-05 Clic RWeight ,LLC Methods and systems for marking animals
US9084411B1 (en) * 2014-04-10 2015-07-21 Animal Biotech Llc Livestock identification system and method
JP2016059300A (ja) * 2014-09-17 2016-04-25 国立大学法人広島大学 牛体診断システムおよび牛体診断方法
JP6844609B2 (ja) * 2016-03-15 2021-03-17 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10952410B2 (en) * 2017-11-06 2021-03-23 Dairy Tech, Inc. System and method of estimating livestock weight
US10701905B2 (en) * 2017-12-06 2020-07-07 International Business Machines Corporation Imaging and three dimensional reconstruction for weight estimation

Also Published As

Publication number Publication date
JP2021023241A (ja) 2021-02-22
US11516992B2 (en) 2022-12-06
US20210037785A1 (en) 2021-02-11

Similar Documents

Publication Publication Date Title
JP6942764B2 (ja) システム、クライアント端末、その制御方法
Wu et al. Automatic landmark estimation for adolescent idiopathic scoliosis assessment using BoostNet
Wang et al. ASAS-NANP SYMPOSIUM: Applications of machine learning for livestock body weight prediction from digital images
US9084411B1 (en) Livestock identification system and method
US20190279363A1 (en) Medical evaluation machine learning workflows and processes
JP7470203B2 (ja) 水産養殖における分析及び選別
CN114727766A (zh) 从图像和专家知识收集和识别皮肤状况的***
US20170018075A1 (en) Method and apparatus for adaptive Computer-Aided Diagnosis
JP2024019441A (ja) 人工知能モデルを使用機関に特化させる学習方法、これを行う装置
Roberts et al. Prediction of welfare outcomes for broiler chickens using Bayesian regression on continuous optical flow data
WO2017217169A1 (ja) 情報処理装置、方法及びプログラム
JP7465342B2 (ja) 2d/3d***画像を精査するための読み取り時間および読み取り複雑性を予測するためのaiシステム
KR20190028022A (ko) 애완동물의 행태와 감정을 보여주는 그래픽 사용자 인터페이스 제공 방법 및 장치
US20130281871A1 (en) System and method for classifying the respiratory health status of an animal
CN111226287A (zh) 用于分析医学成像数据集的方法、用于分析医学成像数据集的***、计算机程序产品以及计算机可读介质
JP2019101654A (ja) 健康管理支援装置、方法およびプログラム
Christensen et al. Augmented reality in the slaughterhouse-a future operation facility?
US20230084267A1 (en) System and a control method thereof
WO2021149816A1 (ja) 推定プログラム、推定方法および情報処理装置
Ositanwosu et al. Automatic measurement and prediction of Chinese Grown Pigs weight using multilayer perceptron neural networks
KR102355681B1 (ko) 가축사양표준에 기초한 가축사양관리 가이드 제공 방법
WO2018221302A1 (en) Information processing apparatus and method for controlling the same
Caffarini et al. Predicting ribeye area and circularity in live calves through 3D image analyses of body surface
Pan et al. Regression analysis for dairy cattle body condition scoring based on dorsal images
US20220027982A1 (en) Systems and methods for processing images of persons

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201019

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20201019

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210712

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210908

R151 Written notification of patent or utility model registration

Ref document number: 6942764

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151