(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024140177
(43)【公開日】2024-10-10
(54)【発明の名称】作物体識別システム及び作物体識別プログラム
(51)【国際特許分類】
G08G 5/00 20060101AFI20241003BHJP
【FI】
G08G5/00 A
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023051197
(22)【出願日】2023-03-28
(71)【出願人】
【識別番号】501203344
【氏名又は名称】国立研究開発法人農業・食品産業技術総合研究機構
(74)【代理人】
【識別番号】100087480
【弁理士】
【氏名又は名称】片山 修平
(72)【発明者】
【氏名】坪田 将吾
(72)【発明者】
【氏名】難波 和彦
【テーマコード(参考)】
5H181
【Fターム(参考)】
5H181AA26
5H181BB04
5H181BB05
5H181BB20
5H181CC04
5H181FF10
5H181FF13
5H181FF27
5H181FF33
5H181MC19
5H181MC27
(57)【要約】
【課題】作物列に含まれる作物体それぞれに識別情報を付与する。
【解決手段】作物体識別システムは、複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置と、前記撮影装置により撮影された画像に含まれる作物体の数を特定し、第1画像に含まれる作物体の数と、前記第1画像の直前に撮影された画像に含まれる作物体の数との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する処理装置と、を備えている。
【選択図】
図11
【特許請求の範囲】
【請求項1】
複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置と、
前記撮影装置により撮影された画像に含まれる作物体の数を特定し、第1画像に含まれる作物体の数と、前記第1画像の直前に撮影された画像に含まれる作物体の数との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する処理装置と、
を備える作物体識別システム。
【請求項2】
複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置と、
前記撮影装置により撮影された画像に含まれる作物体の位置を特定し、第1画像に含まれる作物体の位置と、前記第1画像の直前に撮影された画像に含まれる作物体の位置との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する処理装置と、
を備える作物体識別システム。
【請求項3】
前記撮影装置により撮影された画像に含まれる作物体の位置は、前記画像内の前記作物体に対応する領域の重心位置である、ことを特徴とする請求項2に記載の作物体識別システム。
【請求項4】
前記処理装置は、前記撮影装置が移動を開始してから、前記画像に含まれる作物体の数が0から1になったタイミングから、前記作物体に識別情報を付与する処理を開始する、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項5】
前記処理装置は、前記撮影装置が移動を開始してから、前記画像に前記作物列の近傍に設置された所定の物体が撮影されたタイミングから、前記作物体に識別情報を付与する処理を開始する、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項6】
前記処理装置は、前記第1画像に含まれる1又は複数の作物体の位置に基づいて、前記第1画像に含まれる作物体の数を補正する、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項7】
前記撮影装置は、複数の作物列を同時に撮影し、
前記処理装置は、前記第1画像に含まれる第1の作物列の作物体の数を、他の作物列の作物体の数に基づいて補正する、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項8】
前記撮影装置が画像を撮影する間隔において移動する距離は、前記作物体の植え付け間隔よりも短い、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項9】
前記処理装置は、前記第1画像に含まれる作物体に付与した識別情報に基づいて、前記撮影装置の位置を推定する、ことを特徴とする請求項1~3のいずれか一項に記載の作物体識別システム。
【請求項10】
複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置により撮影された画像を取得し、
取得した画像に含まれる作物体の数を特定し、
第1画像に含まれる作物体の数と、前記第1画像の直前に撮影された画像に含まれる作物体の数との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する、
処理をコンピュータに実行させることを特徴とする作物体識別プログラム。
【請求項11】
複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置により撮影された画像を取得し、
取得した画像に含まれる作物体の位置を特定し、
第1画像に含まれる作物体の位置と、前記第1画像の直前に撮影された画像に含まれる作物体の位置との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する、
を備える作物体識別プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作物体識別システム及び作物体識別プログラムに関する。
【背景技術】
【0002】
作物生産において、生産性の向上、環境の保全、経営の合理化のために、圃場内のできる限り多数の作物体自体、又は、作物体が栽植する位置情報に、生産にかかる各種情報(生体情報、環境情報、作業情報等)をひも付けて管理することが重要である。
【0003】
例えば、カメラを有する移動体(台車やドローン等)を圃場内で移動させつつ、カメラで作物体を撮影し、撮影した画像から作物体の情報(成長具合や果実数など)を取得し、取得した情報と画像を撮影したときの移動体の位置情報とを紐づけて管理することが好ましい。
【0004】
これに対し、近年においては、位置情報取得部が取得した位置情報と、品質情報取得部が取得した品質情報と、が対応付けられた管理データを生成する技術が知られている(例えば特許文献1等参照)。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、果樹園や温室内等においては、GNSS(Global Navigation Satellite System:全球測位衛星システム)衛星との通信ができないなど、移動体の位置情報を正確に検出できない場合がある。
【0007】
そこで、本発明は、作物列を撮影した画像に含まれる作物体それぞれに対し識別情報を付与することが可能な作物体識別システム及び作物体識別プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の作物体識別システムは、複数の作物体が並んだ作物列に沿って移動しつつ、前記作物列の一部を繰り返し撮影する撮影装置と、前記撮影装置により撮影された画像に含まれる作物体の数を特定し、第1画像に含まれる作物体の数と、前記第1画像の直前に撮影された画像に含まれる作物体の数との差異に基づいて、前記第1画像に含まれる作物体に識別情報を付与する処理装置と、を備える。
【発明の効果】
【0009】
本発明の作物体識別システム及び作物体識別プログラムは、作物列を撮影した画像に含まれる作物体それぞれに対し識別情報を付与することができるという効果を奏する。
【図面の簡単な説明】
【0010】
【
図1】第1の実施形態に係る作物体管理システムの構成を概略的に示す図である。
【
図2】
図2(a)は、移動体のハードウェア構成の一例を示す図であり、
図2(b)は、移動体を水平方向から見た状態を示す図である。
【
図3】作物体が栽培される温室内を上方から見た状態を示す図である。
【
図4】
図4(a)は、情報処理装置のハードウェア構成の一例を示す図であり、
図4(b)は、情報処理装置の機能ブロック図である。
【
図5】
図5(a)は、栽培ベッドを+X方向から見た状態を模式的に示す図であり、
図5(b)は、栽培ベッドにおいて栽培されている作物体を上方から(+Z側から)見た状態を模式的に示す図である。
【
図6】
図6(a)、
図6(b)は、撮影間隔について説明するための図である。
【
図7】情報処理装置の処理を示すフローチャートである。
【
図8】
図8(a)、
図8(b)は、ステップS20に移行するときの画像n-1、画像nを示す図である。
【
図9】解析結果DBのデータ構造の一例を示す図である。
【
図10】
図7のステップS26の詳細処理を示すフローチャートである。
【
図11】
図10のステップS58の詳細処理を示すフローチャートである。
【
図16】第2の実施形態における、
図10のステップS58の詳細処理を示すフローチャートである。
【
図18】変形例における、
図7のステップS26の詳細処理を示すフローチャートである。
【
図19】
図18のステップS57の詳細処理を示すフローチャートである。
【
図22】
図22(a)、
図22(b)は、作物列2列を同時に撮影する例について説明するための図である。
【発明を実施するための形態】
【0011】
《第1の実施形態》
以下、第1の実施形態に係る作物体管理システムについて、詳細に説明する。
【0012】
図1には、第1の実施形態に係る作物体識別システムとしての作物体管理システム100の構成が概略的に示されている。本実施形態の作物体管理システム100は、移動体10と、処理装置としての情報処理装置70と、を備える。移動体10と情報処理装置70は、インターネット、携帯電話通信網、WAN(Wide Area Network)、LAN(Local Area Network)などのネットワーク80に接続されており、移動体10と情報処理装置70の間における情報のやり取りが可能となっている。
【0013】
(移動体10について)
移動体10は、温室内を移動しつつ、温室内で栽培されている作物体(イチゴの株)を撮影する装置である。
図2(a)には、移動体10のハードウェア構成が示されている。また、
図2(b)には、移動体10を水平方向から見た状態が示されている。
図2(a)に示すように、移動体10は、駆動装置20と、撮影装置28と、通信装置30と、制御装置32と、を備える。
【0014】
駆動装置20は、モータや電源等を有し、移動体10が有するタイヤ22(
図2(b)参照)を回転駆動する装置である。駆動装置20は、タイヤ22を回転駆動することで、移動体10を温室内に設置された栽培ベッド102の長手方向に沿って移動する。なお、駆動装置20は、移動体10を栽培ベッド102の長手方向に沿って移動する。
【0015】
駆動装置20の上側には、複数の支持柱24を介して、天板26が設けられている。天板26は、栽培ベッド102の上方に張り出した状態となっており、その下面(作物体に対向する位置)には、撮影装置28が設けられている。
【0016】
撮影装置28は、CCD(Charge Coupled Device)カメラ、CMOS(Complementary Metal Oxide Semiconductor)カメラ、赤外線カメラなどのカメラである。撮影装置28は、移動体10が栽培ベッド102の長手方向(
図2(b)のY軸方向)に沿って移動している間に、栽培ベッド102において栽培されている作物体を上方から所定時間ごとに撮影する。撮影装置28により撮影された画像は、制御装置32に送信される。
【0017】
通信装置30は、撮影装置28により撮影された画像を制御装置32から取得し、情報処理装置70に送信する。
【0018】
制御装置32は、作業者が入力した駆動指示に基づいて、駆動装置20や撮影装置28を制御する。
【0019】
なお、移動体10は、駆動装置20を有していなくてもよい。例えば、作業者が手押しすることにより、移動体10が温室内を移動してもよい。この場合、制御装置32は、タイヤ22の回転量を計測する計測装置の出力を取得し、タイヤ22が所定数回転するごとに撮影装置28による撮影を行うこととしてもよい。また、移動体10は、ドローンなどの飛行体であってもよい。飛行体は、作物列に沿って(又は作物列近傍に設けたガイドラインに沿って)移動できれば良い。
【0020】
図3には、作物体が栽培される温室200内を上方から見た状態が示されている。温室200内には、
図3に示すように、作物体を栽培する栽培ベッド102が複数設けられている。各栽培ベッド102上には、作物体の作物列が2列並んだ状態となっている。本明細書においては、栽培ベッド102の長手方向をY軸方向とし、栽培ベッド102が並ぶ方向をX軸方向とし、鉛直方向をZ軸方向とする。なお、温室200内に設けられる栽培ベッド102の数は、任意である。なお、作物体は、栽培ベッドで栽培されていなくてもよく、例えば畝に地植えされていてもよい。
【0021】
移動体10は、1つ目の(最も-X側にある)栽培ベッド102の-X側の近傍を+Y方向に沿って移動しつつ、作物体(作物列)の撮影を所定時間間隔で行う。また、1つ目の栽培ベッド102の+Y側の端部まで到達すると、同じ栽培ベッド102の+X側の近傍を-Y方向に沿って移動しつつ、作物体の撮影を所定時間間隔で行う。その後は、同様にして、2つ目の栽培ベッド102、3つ目の栽培ベッド102、…の近傍を移動体10が往復移動しながら撮影を実行する。すなわち、移動体10は、温室200内において往復移動を繰り返しながら、温室200内の作物体の全てを上方から撮影する。
【0022】
(情報処理装置70について)
情報処理装置70は、スマートフォンやPC(Personal Computer)、サーバなどであり、移動体10が有する撮影装置28によって撮影された画像を通信装置30から受信する。そして、情報処理装置70は、受信した画像において撮影された作物体(画像に含まれる作物体と呼ぶ)に識別情報(ID)を付与するとともに、作物体の解析を行い、解析結果をIDと紐づけて管理する。
【0023】
図4(a)には、情報処理装置70のハードウェア構成が示されている。
図4(a)に示すように、情報処理装置70は、CPU(Central Processing Unit)190、ROM(Read Only Memory)192、RAM(Random Access Memory)194、記憶部(HDD(Hard Disk Drive)やSSD(Solid State Drive)等)196、ネットワークインタフェース197、表示部193、入力部195、及び可搬型記憶媒体用ドライブ199等を備えている。表示部193は液晶ディスプレイや有機ELディスプレイ等を含み、入力部195はこれら情報処理装置70の構成各部は、バス198に接続されている。情報処理装置70では、ROM192あるいは記憶部196に格納されているプログラム(作物体識別プログラムを含む)、或いは可搬型記憶媒体用ドライブ199が可搬型記憶媒体191から読み取ったプログラムをCPU190が実行することにより、
図4(b)に示す各部の機能が実現される。なお、
図4(b)の各部の機能は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
【0024】
図4(b)に示すように、情報処理装置70においては、CPU190がプログラムを実行することにより、画像取得部40、ID付与部42、情報解析部44、情報管理部46としての機能が実現されている。
【0025】
画像取得部40は、移動体10が有する撮影装置28が撮影した画像を、移動体10の通信装置30から取得する。
【0026】
ID付与部42は、画像に撮影されている作物体(画像に含まれる作物体)それぞれに対し、識別情報としてIDを付与し、情報管理部46に送信する。ID付与部42の具体的な処理内容については、後述する。
【0027】
情報解析部44は、移動体10の撮影装置28が撮影した画像内から、作物体の観察対象部位の情報を解析し、情報管理部46に送信する。
【0028】
情報管理部46は、ID付与部42が画像内の作物体に付与したIDと、情報解析部44が画像内の作物体を解析した結果と、を取得し、IDと解析結果を紐づけて、解析結果DB50に格納する。
【0029】
(撮影間隔について)
ここで、撮影装置28による撮影間隔(直前に撮影した位置からどれだけ移動した後に次の撮影を行うか)について説明する。
図5(a)は、栽培ベッド102を+X方向から見た状態を模式的に示す図である。また、
図5(b)は、栽培ベッド102において栽培されている作物体を上方から(+Z側から)見た状態を模式的に示す図である。
【0030】
図5(a)に示すように、撮影装置28の画角数(X軸方向のピクセル数×Y軸方向のピクセル数)をW×Lとし、撮影速度(1秒間に撮影する回数)をk(回/秒)、移動速度をv(mm/s)、画角をα、撮影装置28の栽培ベッド102上面からの高さをh(mm)とする。なお、撮影速度は、撮影装置28が静止画を撮影する場合には、シャッタを切る間隔を意味し、撮影装置28が動画を撮影する場合には、フレームレートを意味する。なお、本実施形態では、説明の便宜上、撮影装置28は静止画を撮影するものとする。
【0031】
この場合、撮影間隔Ymt(ピクセル)は、次式(1)のように表すことができる。
Ymt=vL/(2kh・tan(α/2)) …(1)
【0032】
一方、Y軸方向に並ぶ2つの作物体の中心間距離(株間)をYpm(mm)とした場合、株間Ypm(mm)をピクセル値に変換した株間Yp(ピクセル)は、次式(2)により表すことができる。
Yp=(Ypm・L)/(2h・tan(α/2)) …(2)
なお、株間YPm(mm)は作物体の植え付け間隔であるともいえる。
【0033】
図6(a)には、撮影間隔Ymt(ピクセル)を株間Yp(ピクセル)と同一に設定し、n-1枚目の画像を撮影し(
図6(a)の左図参照)、その後に、撮影間隔Ymt(ピクセル)移動してn枚目の画像を撮影した(
図6(a)の中央の図参照)様子が模式的に示されている。なお、
図6(a)においては、撮影範囲が破線枠で示されている。
【0034】
本実施形態においては、後述するように、連続的に撮影される画像に含まれる作物体の数の変化に基づいて、各画像に含まれる作物体にIDを付与することとしている。しかしながら、
図6(a)の左図及び中央の図の例では、n-1枚目の画像に含まれる作物体の数と、n枚目の画像に含まれる作物体の数が同一であるため、各画像に含まれる作物体が同一の作物体であるのか、異なる作物体であるのかが区別できない。
【0035】
また、撮影間隔Ymt(ピクセル)を株間Yp(ピクセル)よりも大きく設定したとする。そして、n-1枚目の画像を撮影し(
図6(a)の左図参照)、その後に、撮影間隔Ymt(ピクセル)だけ移動してn枚目の画像を撮影したとする(
図6(a)の右図参照)。この場合、各画像に含まれる作物体の数が異なるものの、n-1枚目の画像に含まれる作物体と、n枚目の画像に含まれる作物体とがどのように対応しているのかを判別することができない。
【0036】
一方、
図6(b)には、撮影間隔Ymt(ピクセル)を株間Yp(ピクセル)よりも小さく設定し、n-1枚目の画像を撮影し(
図6(b)の左図参照)、その後に、撮影間隔Ymt(ピクセル)だけ移動してn枚目の画像を撮影した(
図6(b)の右図参照)様子が模式的に示されている。
図6(b)の例では、n枚目の画像において、n-1枚目の画像に含まれている作物体と同一の作物体が撮影されつつ、作物体の数が増加しているため、n枚目の画像に含まれる作物体のうち、n-1枚目の画像に含まれる作物体と同一の作物体がどれであるかを判別することができる。すなわち、n-1枚目の画像に含まれる各作物体に付与したIDを引き継いで、n枚目の画像に含まれる各作物体にIDを付与することができる。
【0037】
したがって、本実施形態においては、上式(1)で示される撮影間隔Ymt(ピクセル)と上式(2)で示される株間Yp(ピクセル)の関係を、次式(3)のように設定している。
Ymt<Yp …(3)
本実施形態では、例えば、移動体10の移動速度が一定である場合には、当該移動速度に基づいて、撮影間隔Ymt(ピクセル)が株間Yp(ピクセル)よりも小さくなるように、撮影タイミングを決定すればよい。また、移動体10の移動速度が一定でない場合には、速度計等により移動速度をモニタし、モニタ結果に基づいて、撮影間隔Ymt(ピクセル)が株間Yp(ピクセル)よりも小さくなるように、撮影タイミングを決定すればよい。
【0038】
(情報処理装置70の処理について)
以下、情報処理装置70の処理について、
図7、
図10、
図11のフローチャートに沿って、その他図面を参照しつつ詳細に説明する。
図7の処理は、作業者が移動体10の制御装置32及び情報処理装置70に対して、撮影開始の指示を入力した段階から開始されるものとする。なお、この段階では、移動体10は、1列目の作物列の近傍に位置決めされているものとし、移動体10の制御装置32は、撮影開始の指示が入力された段階から、移動体10の移動と撮影を開始するものとする。
【0039】
図7の処理が開始されると、まず、ステップS10において、画像取得部40は、作物列の列番号を示すパラメータmを1に設定するとともに、画像の枚数を示すパラメータnを1に設定する。
【0040】
次いで、ステップS12において、画像取得部40は、作物列mのn枚目の画像(画像nと呼ぶ)を取得する。
【0041】
次いで、ステップS14において、ID付与部42は、画像nから作物体を検出する。なお、ID付与部42は、機械学習、深層学習等により、画像内に映っている物体を認識し、作物体を検出する。
【0042】
次いで、ステップS16において、ID付与部42は、処理を開始するか否かを判断する。ここでは、一例として、ID付与部42は、画像n内に1つの作物体が撮影されていることが確認された場合に、処理を開始すると判断する。このステップS16の判断が否定された場合には、ステップS18に移行し、画像取得部40は、nを1だけインクリメント(n=n+1)する。その後は、ステップS12に戻る。
【0043】
一方、ステップS16の判断が肯定された場合には、ステップS20に移行する。ステップS20に移行するのは、直前に撮影された画像n-1が
図8(a)に示すような撮影範囲を撮影した画像であり、今回撮影された画像nが
図8(b)に示すような撮影範囲を撮影した画像であるような場合である。ステップS20に移行すると、ID付与部42は、画像nから検出した作物体にIDを付与する。具体的には、作物列mの画像nに含まれる作物体のIDとして、
ID
m,n_bottom=ID
m,n_top=1
を付与する。なお、ID
m,n_bottomは、作物列mの画像nのうち最も下側(
図6(b)の最も-Y側)に位置する作物体のIDを意味し、ID
m,n_topは、作物列mの画像nのうち最も上側(
図6(b)の最も+Y側)に位置する作物体のIDを意味する。すなわち、画像内に1つしか作物体が含まれていない場合には、上記のようにID
m,n_bottomとID
m,n_topは、同じ作物体のIDを意味する。
【0044】
次いで、ステップS22において、情報解析部44は、画像を解析して、画像に含まれる作物体の観察対象部位の情報を取得し、情報管理部46に送信する。作物体の観察対象部位の情報には、花の数や果実の数、完熟した果実の数などの情報が含まれる。
【0045】
次いで、ステップS24において、情報管理部46は、IDに紐づけて、作物体の情報(作物体情報)を解析結果DB50に格納する。例えば、解析結果DB50は、
図9に示すようなデータ構造を有している。
【0046】
ステップS24の後は、ステップS26に移行し、識別処理のサブルーチンが実行される。このステップS26においては、
図10のフローチャートに沿った処理が実行される。
【0047】
図10の処理においては、まず、ステップS50において、画像取得部40が、nを1だけインクリメント(n=n+1)する。
【0048】
次いで、ステップS52において、画像取得部40が、画像nを取得する。
【0049】
次いで、ステップS54において、ID付与部42が、画像nを解析し、作物体を検出する。
【0050】
次いで、ステップS56において、ID付与部42が、終了であるか否かを判断する。ここでは、ステップS54の処理の結果、作物体が1つも検出されなかった場合に、作物列mに沿った移動及び作物列mの撮影が終了したと判断する。このステップS56の判断が否定された場合には、ステップS58に移行する。
【0051】
ステップS58に移行すると、ID識別処理のサブルーチンが開始される。このステップS58においては、
図11のフローチャートに沿った処理が実行される。
【0052】
図11の処理が開始されると、まず、ステップS70において、ID付与部42が、画像nにおける作物体の検出数C
nと、直前の画像n-1における作物体の検出数C
n-1を取得する。
【0053】
次いで、ステップS72において、ID付与部42が、次式(4)により、検出数の変化Cchを算出する。
Cch=Cn-Cn-1 …(4)
【0054】
例えば、
図12(a)に示すように、画像n-1において1つの作物体が検出され、次の画像nにおいて2つの作物体が検出されたような場合には、C
chは、1となる。
【0055】
次いで、ステップS74において、ID付与部42は、検出数の変化Cchが0であるか否かを判断する。Cchが1の場合、このステップS74の判断は否定され、ステップS78に移行する。
【0056】
ステップS78に移行すると、ID付与部42は、Cchが1であるか否かを判断する。ここでの判断が肯定されると、ステップS80に移行する。
【0057】
ステップS80に移行すると、ID付与部42は、次式(5)、(6)に基づいて、画像nに含まれる各作物体にIDを付与する。
IDm,n_top=IDm,n-1_top+1 …(5)
IDm,n_bottom=IDm,n-1_bottom …(6)
【0058】
図12(a)の例では、画像n-1の最も上側(+Y側)の作物体のID(=ID
m,n-1_top)は、1であるので、ID付与部42は、上式(5)より、画像nの最も上側(+Y側)の作物体のID(=ID
m,n_top)を1+1=2とする(
図12(b)参照)。また、ID付与部42は、上式(6)より、画像nの最も下側(-Y側)の作物体のID(=ID
m,n_bottom)として、画像n-1の最も下側(-Y側)の作物体のID(=ID
m,n-1_bottom)と同一のID=1を付与する(
図12(b)参照)。
【0059】
なお、
図13(a)に示すような場合も、
図12(a)の場合と同様、ステップS80の処理が実行される。この場合、画像n-1の最も上側(+Y側)の作物体のID(=ID
m,n-1_top)は、11であるので、ID付与部42は、
図13(b)に示すように、上式(5)より、画像nの最も上側(+Y側)の作物体のID(=ID
m,n_top)を11+1=12とする。また、ID付与部42は、上式(6)より、画像nの最も下側(-Y側)の作物体のID(=ID
m,n_bottom)として、画像n-1の最も下側(-Y側)の作物体のID(=ID
m,n-1_bottom)と同一のID=10を付与する。なお、
図13(b)の場合、ID
m,n_topの作物体とID
m,n_bottomの作物体の間に、作物体が1つ存在しているため、ID付与部42は、その作物体のIDとして、ID
m,n_top=12と、ID
m,n_bottom=10の間の値(=11)を付与する。上述したようにステップS80の処理が行われた後は、
図10のステップS60に移行する。
【0060】
一方、例えば、
図14(a)に示すように、画像n-1において2つの作物体(ID=1,2)が検出され、次の画像nにおいても2つの作物体が検出される場合がある。この場合には、ステップS72において算出される検出数の変化C
chは、2-2=0となる。
【0061】
この場合、ステップS74の判断が肯定されるため、ステップS76に移行する。ステップS76に移行すると、ID付与部42は、
IDm,n_bottom~IDm,n_top=IDm,n-1_bottom~IDm,n-1_top …(7)
とする。
【0062】
すなわち、画像n-1において作物体に付与されたID(=1,2)が、
図14(b)に示すように、画像nに含まれる作物体にもそのまま付与される。ステップS76の処理が行われた後は、
図10のステップS60に移行する。
【0063】
また、例えば、
図15(a)に示すように、画像n-1において3つの作物体(例えばID=10,11,12)が検出され、次の画像nにおいて2つの作物体が検出される場合がある。この場合には、ステップS72において算出される検出数の変化C
chは、2-3=-1となる。
【0064】
この場合、ステップS74の判断が否定されるとともに、ステップS78の判断が否定されるため、ステップS82に移行する。ステップS82に移行すると、ID付与部42は、次式(8)、(9)に基づいて、画像nの各作物体にIDを付与する。
IDm,n_bottom=IDm,n-1_bottom+1 …(8)
IDm,n_top=IDm,n-1_top …(9)
【0065】
図15(a)の例では、画像n-1の最も下側(-Y側)の作物体のID(=ID
m,n-1_bottom)は、10であるので、ID付与部42は、上式(8)より、画像nの最も下側(-Y側)の作物体のID(=ID
m,n_bottom)を10+1=11とする(
図15(b)参照)。また、ID付与部42は、上式(9)より、画像nの最も上側(+Y側)の作物体のID(=ID
m,n_top)として、画像n-1の最も上側(+Y側)の作物体のID(=ID
m,n-1_top)と同一のID=12を付与する(
図15(b)参照)。なお、仮に、ID
m,n_bottomとID
m,n_topが連番でない場合(画像nに作物体が3以上含まれる場合)には、ID付与部42は、画像nの最も上側の作物体と最も下側の作物体の間の作物体に、ID
m,n_bottomとID
m,n_topの間のIDを付与する。以上のように、ステップS82の処理が行われた後は、
図10のステップS60に移行する。
【0066】
図11の処理が終わり、
図10のステップS60に移行すると、情報解析部44は、画像nを解析して、画像に含まれる作物体の観察対象部位の情報を取得し、情報管理部46に送信する。
【0067】
次いで、ステップS62において、情報管理部46は、IDに紐づけて、作物体の情報(作物体情報)を解析結果DB50(
図9参照)に格納する。
【0068】
その後は、ステップS50に戻る。ステップS50に戻った後は、上述したステップS50~S62の処理が繰り返し実行される。なお、本実施形態では、同一の作物体が複数回撮影される(複数の画像に含まれる)ため、同一の作物体の観察対象部位の情報が複数回得られることになる。このため、花の数や、果実の数であれば、複数回得られた値のうち最も大きい値を採用して、解析結果DB50に格納するようにすればよい。
【0069】
そして、ステップS50~S62の繰り返し処理の結果、ステップS56の判断が肯定された段階で(すなわち、画像nに作物体が1つも撮影されなくなった段階で)、
図10の処理が終了する。
図10の処理が終了すると、
図7のステップS28に移行する。
【0070】
図7のステップS28に移行すると、画像取得部40は、観測範囲が終了したか否か、すなわち、mが所定数M(Mは温室200内の作物列の数とする)であるか否かを判断する。このステップS28の判断が否定された場合には、ステップS30に移行する。
【0071】
ステップS30に移行すると、画像取得部40は、mを1インクリメント(m=m+1)し、移動体10にmの値を送信する。移動体10は、新たな作物列mへの移動を開始し、当該作物列mに沿った移動と撮影を開始する。その後は、ステップS12以降の処理が繰り返し実行される。そして、ステップS28の判断が肯定されると、
図7の全処理が終了する。
図7の全処理が終了した段階では、移動体10による温室200内の移動が終了し、
図9の解析結果DB50には、全作物列の全作物体にIDが付与され、IDに紐づけて作物体情報(花の数や果実の数など)が格納された状態となる。
【0072】
以上、詳細に説明したように、本第1の実施形態によると、撮影装置28は、栽培ベッド102(作物列)に沿って移動しつつ、作物列の一部を繰り返し撮影する。また、情報処理装置70は、撮影装置28により撮影された画像に含まれる作物体の数を特定し、画像nに含まれる作物体の数Cnと、画像nの直前に撮影された画像n-1に含まれる作物体の数Cn-1との差異(変化)Cchに基づいて、画像nに含まれる作物体にIDを付与する。これにより、画像nに含まれる作物体に適切なIDを付与することができるので、各作物体の情報(作物体情報)をIDと紐づけて解析結果DB50において適切に管理することが可能となっている。ここで、GNSS等を用いて撮影装置28の位置を計測できる環境下では、画像を撮影した位置の情報と、当該位置において撮影された画像に含まれる作物体の情報とを対応付けて管理することがある。これに対し、本実施形態によれば、温室など撮影装置28の位置を計測できない環境下であっても、画像から得られる情報を用いて、各作物体の情報を適切に管理することが可能である。
【0073】
また、本第1の実施形態では、情報処理装置70は、撮影装置28が移動を開始してから、画像nに含まれる作物体の数が0から1になったタイミングから、作物体にIDを付与する処理を開始する(
図7のステップS16:肯定)。これにより、本実施形態では、適切なタイミングで、作物体にIDを付与する処理を開始することができる。なお、処理を開始するタイミングは、画像nに含まれる作物体の数が0から1になったタイミング以外としてもよい。例えば、作物列の先頭の作物体の近傍に処理開始タイミングを特定するための所定の物体(マーカとする)を設置しておき、当該マーカが撮影されたタイミングから作物体にIDを付与する処理を開始するようにしてもよい(
図7のステップS16:肯定)。なお、画像内におけるマーカの認識においては、機械学習や深層学習等を用いるものとする。
【0074】
また、本第1の実施形態では、撮影装置28が移動している間に撮影される画像nに含まれる作物体の数が0になったときに、作物体にIDを付与する処理を終了する(
図10のステップS56:肯定)。これにより、本第1の実施形態では、適切なタイミングで、作物体にIDを付与する処理を終了することができる。なお、処理を終了するタイミングは、画像nに含まれる作物体の数が1になったタイミング以外としてもよい。例えば、作物列に並ぶ作物体のうち最後の作物体の近傍に処理終了タイミングを特定するためのマーカを設置しておき、当該マーカが撮影されたときに作物体にIDを付与する処理を終了するようにしてもよい(
図10のステップS56:肯定)。
【0075】
また、本実施形態では、上式(3)のように、撮影間隔Ymt(ピクセル)を株間Yp(ピクセル)よりも小さく設定している。これにより、
図6(a)で説明したような不具合が生じずに、各画像に含まれる作物体に適切なIDを付与することができるようになっている。
【0076】
《第2の実施形態》
次に、第2の実施形態について説明する。なお、本第2の実施形態においては、第1の実施形態と共通する部分の説明は省略するものとする。
【0077】
本第2の実施形態では、
図10のステップS58(ID識別処理)において、
図11の処理を実行せずに、
図16のフローチャートに沿った処理を実行する点が第1の実施形態と異なっている。
【0078】
図16の処理が開始されると、まず、ステップS100において、ID付与部42は、画像n-1に含まれる作物体の重心(作物体に対応する領域の重心)と、画像nに含まれる作物体の重心のY座標の差Ymを算出する。
【0079】
具体的には、
図17(a)の例のように画像n-1と画像nがある場合に、ID付与部42は、画像n-1の下から1つ目の作物体の重心Gaの座標(画像の左下の端部を原点とする座標)と下から2つ目の作物体の重心Gbの座標とを求める。また、ID付与部42は、画像nの下から1つ目の作物体の重心Ga’の座標と、下から2つ目の作物体の重心Gb’の座標と、下から3つ目の作物体の重心Gc’の座標と、を求める。そして、ID付与部42は、重心Gaと重心Ga’、Gb’、Gc’それぞれとの組み合わせ、重心Gbと重心Ga’、Gb’、Gc’それぞれとの組み合わせについて、Y座標の差Ymを算出する。
【0080】
図16に戻り、次のステップS102において、ID付与部42は、Y座標の差(Ym)が所定範囲内となる作物体の組み合わせを特定する。所定範囲内とは、Ymが次式(10)を満たす範囲である。なお、Ymtは、第1実施形態で説明した撮影間隔であり、γ、βは、移動体10の走行誤差や撮影装置28の振動、作物体の検出範囲等の誤差を許容するための調整値であり、γは、Ymtよりも小さい値であり、βは0以上の値であるものとする。
Ymt+γ>Ym>0-β …(10)
【0081】
図17(a)の例では、
図17(b)に示すように、重心Gaを有する作物体と、重心Ga’を有する作物体の組み合わせ、及び重心Gbを有する作物体と、重心Gb’を有する作物体の組み合わせが特定されたものとする。
【0082】
次いで、ステップS104において、ID付与部42は、特定した組み合わせの画像nの作物体に画像n-1の対応する作物体のIDを付与する。
図17(b)に示すように、重心Gaの作物体のIDが10、重心Gbの作物体のIDが11である場合、ID付与部42は、重心Ga’のIDとして10を付与し、重心Gb’のIDとして11を付与する。
【0083】
次いで、ステップS106において、ID付与部42は、組み合わせが無かった画像nの作物体に新たなID(移動方向に加算)を付与する。すなわち、画像nの重心Gc’の作物体のIDとして、10、11に続く12を付与する。
【0084】
【0085】
以上説明したように、本第2の実施形態によると、撮影装置28は、栽培ベッド102(作物列)に沿って移動しつつ、作物列の一部を繰り返し撮影する。また、情報処理装置70は、撮影装置28により撮影された画像に含まれる作物体の重心座標を特定し、画像nに含まれる作物体の重心座標と、画像nの直前に撮影された画像n-1に含まれる作物体の重心座標との差異に基づいて、画像nに含まれる作物体にIDを付与する。これにより、画像nに含まれる作物体に適切なIDを付与することができるので、各作物体の情報(作物体情報)をIDと紐づけて解析結果DB50において管理することができる。また、本第2の実施形態では、温室など撮影装置28の位置を計測できない環境下であっても、画像から得られる情報を用いて、各作物体の情報を適切に管理することが可能である。
【0086】
なお、上記第2の実施形態では、情報処理装置70が、撮影装置28により撮影された画像に含まれる作物体の重心座標(作物体に対応する領域の重心座標)を特定し、特定した重心座標に基づいて、画像nに含まれる作物体にIDを付与する場合について説明した。しかしながらこれに限らず、情報処理装置70は、撮影装置28により撮影された画像に含まれる作物体の領域から、重心以外の特徴点の位置座標(領域の所定の角部の位置座標や、所定の辺上の点の位置座標など)を特定し、特定した位置座標に基づいて、上記第2の実施形態と同様にして、画像nに含まれる作物体にIDを付与することとしてもよい。
【0087】
(変形例)
なお、上記第1、第2の実施形態では、
図10のステップS26の処理に代えて、
図18のフローチャートに沿った処理を実行することとしてもよい。具体的には、
図18に示すように、ステップS58の処理の前に、ステップS57の処理を実行してもよい。なお、本変形例においては、
図7のステップS16の処理開始、及び
図18のステップS56の終了、を適切に判断するために、前述した所定の物体(マーカ等)を用いることが好ましい。
【0088】
図18のステップS57においては、画像n内の作物体の特定処理が実行される。なお、ステップS57の処理は、ステップS54において画像nから作物体を検出した結果、適切に作物体が検出できなかった場合に、作物体の検出結果を補正する処理である。ステップS57の処理としては、
図19のフローチャートに沿った処理が実行される。
【0089】
図19の処理が開始されると、まず、ステップS200において、ID付与部42は、画像n内の作物体の重心を求める。例えば、
図20(a)に示すように、重心Gaの座標として(Xa,Ya)が求められたとする。
【0090】
次いで、ステップS202において、ID付与部42は、撮影範囲の±Y側の端部と作物体の重心Gaとの距離が株間Ypよりも大きいか否かを判断する。
図20(a)の場合、重心Gaと撮影範囲(破線枠)の-Y側の端部(辺)との距離Laと、重心Gaと撮影範囲の+Y側の端部(辺)との距離Lbのうち、距離Lbが株間Ypよりも大きい。この場合、ステップS202の判断が肯定され、ステップS204に移行する。なお、ステップS202においては、株間Ypよりも大きいか否かを判断する際に、株間Ypから所定値δを差し引いた値よりも大きいかを判断することとしてもよい。
【0091】
ステップS204に移行すると、ID付与部42は、重心Gaを有する作物体の上側(+Y側)に作物体が検出できていないことから、画像nに作物体を追加する処理を実行する。具体的には、
図20(b)に示すように、ID付与部42は、重心Gaから株間Yp(又はYp-σ)だけ離れた位置に重心Gbを有する作物体を追加する。その後は、ステップS206に移行する。一方、ステップS202の判断が否定された場合には、ステップS204を経ずに、ステップS206に移行する。
【0092】
ステップS206に移行すると、ID付与部42は、画像nに含まれる隣接する2つの作物体の重心間の距離が、株間Ypの2倍の長さ(Yp×2)よりも大きいものがあるか否かを判断する。例えば、
図20(c)に示すように、重心Ga,Gbの間の距離が、株間Ypの2倍の長さよりも大きい場合には、ステップS206の判断は肯定され、ステップS208に移行する。このとき、重心Gaを有する作物体と、重心Gbを有する作物体との間の作物体が検出されていない可能性が高いため、ID付与部42は、ステップS208において、2つの作物体の間に新たな作物体を追加する処理を実行する。具体的には、
図20(d)に示すように、ID付与部42は、重心Gc(重心Gcは重心Ga,Gbの中点)を有する作物体を追加する。ステップS208の後は、ステップS210に移行する。なお、ステップS206の判断が否定された場合には、ステップS208を経ずに、ステップS210に移行する。なお、ステップS206においては、画像nに含まれる隣接する2つの作物体の重心間の距離が、Yp×2から所定値σを差し引いた値(Yp×2-σ)よりも大きいかを判断することとしてもよい。
【0093】
ステップS210に移行すると、ID付与部42は、画像nに含まれる隣接する作物体の重心間の距離が、株間Ypの1/2倍の長さ(Yp×2)よりも小さいものがあるか否かを判断する。例えば、
図21(a)に示すように、重心Gb,Gcの間の距離が、株間Ypの1/2倍の長さよりも小さい場合には、ステップS210の判断は肯定され、ステップS212に移行する。このとき、重心Gb、Gcを有する作物体が誤検出されている可能性が高いため、ID付与部42は、ステップS212において、2つの作物体を1つの作物体に置き換える処理を実行する。具体的には、
図21(b)に示すように、ID付与部42は、
図21(a)の重心Gb、Gcの作物体に代えて、重心Ge(重心Geは重心Ga,Gdの中点)を有する作物体を追加する。ステップS212の後は、
図19の全処理を終了し、
図18のステップS58に移行する。なお、ステップS210の判断が否定された場合には、ステップS212を経ずに、
図19の全処理を終了し、
図18のステップS58に移行する。
【0094】
以上のように、本変形例によれば、ID付与部42は、画像nに含まれる1又は複数の作物体の重心位置に基づいて、画像nに作物体を追加したり、検出した作物体の代わりに、新たな作物体を追加したりする。これにより、画像nにおいて検出すべき作物体を検出していない場合や、画像nにおいて作物体を誤検出しているような場合に、作物体の検出結果を適切に修正することができる。
【0095】
なお、上記第1、第2の実施形態においては、複数の作物列(例えば
図3の1列目と2列目)を同時に撮影することもできる。例えば、
図22(a)に示すように、1つの栽培ベッド102上で栽培されている2列の作物列を同時に撮影してもよい。この場合において、例えば、
図22(b)において灰色で示す作物体が検出できなかった場合には、隣の作物列の並び(配列間隔等)に基づいて、灰色で示す作物体を補完するようにしてもよい。
【0096】
なお、上記第1、第2の実施形態及び変形例においては、作物列の端からt番目の作物体の近傍に当該作物体のIDを示すマーカを設けておいてもよい。ID付与部42は、撮影装置28がこのマーカを撮影した場合に、マーカ近傍に位置する作物体のIDがtであるかを確認し、異なっている場合には、そのIDをtに補正するようにしてもよい。
【0097】
なお、上記第1、第2の実施形態及び変形例においては、予め各作物体のIDと温室200内における各作物体の位置座標とを紐づけて管理してもよい。この場合、撮影装置28が撮影した作物体にID付与部42が付与したIDに基づいて、撮影装置28及び移動体10の位置を検出するようにしてもよい。これにより、GNSS等を用いなくても、作物体を撮影した画像から移動体10の位置を特定することが可能となる。
【0098】
なお、上記実施形態では、移動体10を用いて作物体の観察対象部位の観察(画像解析)を行う場合について説明したが、これに限られるものではない。例えば、移動体10を用いて軽作業(受粉、摘花弁、苗踏み等)を行うこととしてもよい。また、移動体10を肥料や農薬散布等に利用してもよい。また、作物体のIDに紐づけて、環境情報や作業情報等を管理してもよい。
【0099】
なお、上記第1、第2の実施形態や変形例においては、撮影装置28が作物体を上方から撮影する場合について説明したが、これに限らず、撮影装置28は作物体を水平方向から撮影してもよい。
【0100】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【0101】
10 移動体
28 撮影装置
40 画像取得部
42 ID付与部
44 情報解析部
46 情報管理部
50 解析結果DB
70 情報処理装置(処理装置)
100 作物体管理システム(作物体識別システム)
102 栽培ベッド