IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 楽天株式会社の特許一覧

特開2023-973ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム
<>
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図1
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図2
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図3
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図4
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図5
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図6
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図7
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図8
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図9
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図10
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図11
  • 特開-ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023000973
(43)【公開日】2023-01-04
(54)【発明の名称】ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20221222BHJP
【FI】
G06T7/00 350B
【審査請求】有
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021130173
(22)【出願日】2021-08-06
(31)【優先権主張番号】63/212,091
(32)【優先日】2021-06-17
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】オールソン スティーブン
(72)【発明者】
【氏名】カラニ サレム
(72)【発明者】
【氏名】アウ-ヨン ジャスティン
(72)【発明者】
【氏名】セイヤーズ カイル
(72)【発明者】
【氏名】アーレン ケナン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA02
5L096JA11
5L096KA04
(57)【要約】
【課題】ゴルフ場において不健康な芝が存在する領域をピンポイントに高速で特定できるゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラムを提供する。
【解決手段】ゴルフ場画像取得部32は、ゴルフ場を撮影したゴルフ場画像を取得する。芝領域抽出部44は、ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する。第1判定部56は、芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する。第2判定部64は、写っている芝が不健康であると判定される第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する。
【選択図】図2
【特許請求の範囲】
【請求項1】
ゴルフ場を撮影したゴルフ場画像を取得するゴルフ場画像取得手段と、
前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する芝領域抽出手段と、
前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する第1判定手段と、
写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する第2判定手段と、
を含むことを特徴とするゴルフ場における芝健康状態判定システム。
【請求項2】
前記第1判定手段は、前記芝領域の画像を分割した複数の前記第1判定対象画像のそれぞれについて、当該第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1に記載のゴルフ場における芝健康状態判定システム。
【請求項3】
前記第1判定手段は、所定画素数である前記第1判定対象画像を学習済モデルに入力した際の当該学習済モデルからの出力に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1又は2に記載のゴルフ場における芝健康状態判定システム。
【請求項4】
前記第2判定手段は、前記第2判定対象画像に含まれる画素の画素値の標準偏差又は分散の小ささに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から3のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項5】
前記第2判定手段は、前記第2判定対象画像にバンドパスフィルタを適用した画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から4のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項6】
前記第2判定手段は、前記第2判定対象画像に平滑化処理を行った画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から5のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項7】
ゴルフ場を撮影したゴルフ場画像を取得するステップと、
前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出するステップと、
前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定するステップと、
写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定するステップと、
を含むことを特徴とするゴルフ場における芝健康状態判定方法。
【請求項8】
ゴルフ場を撮影したゴルフ場画像を取得する手順、
前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する手順、
前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する手順、
写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する手順、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、センサカメラが撮像する作物の画像に基づいて、当該作物の生育指標を算出する生育管理システムが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2014-183788号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の技術は、例えば、ゴルフ場においてフェアウェイやグリーンなどの芝の健康状態を判定する場面でも活用できるものと思われる。
【0005】
しかし、ゴルフ場では、不健康な芝をできるだけ早くメンテナンスするために、例えば毎日のような高頻度で、不健康な芝が存在する領域をピンポイントに高速で特定する必要があるが、作物の生育に係る特許文献1に記載の技術ではこのようなことができない。
【0006】
本発明は上記課題に鑑みてなされたものであって、その目的の1つは、ゴルフ場において不健康な芝が存在する領域をピンポイントに高速で特定できるゴルフ場における芝健康状態判定システム、ゴルフ場における芝健康状態判定方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明に係るゴルフ場における芝健康状態判定システムは、ゴルフ場を撮影したゴルフ場画像を取得するゴルフ場画像取得手段と、前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する芝領域抽出手段と、前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する第1判定手段と、写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する第2判定手段と、を含む。
【0008】
本発明の一態様では、前記第1判定手段は、前記芝領域の画像を分割した複数の前記第1判定対象画像のそれぞれについて、当該第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する。
【0009】
また、本発明の一態様では、前記第1判定手段は、所定画素数である前記第1判定対象画像を学習済モデルに入力した際の当該学習済モデルからの出力に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する。
【0010】
また、本発明の一態様では、前記第2判定手段は、前記第2判定対象画像に含まれる画素の画素値の標準偏差又は分散の小ささに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する。
【0011】
また、本発明の一態様では、前記第2判定手段は、前記第2判定対象画像にバンドパスフィルタを適用した画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する。
【0012】
また、本発明の一態様では、前記第2判定手段は、前記第2判定対象画像に平滑化処理を行った画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する。
【0013】
また、本発明に係るゴルフ場における芝健康状態判定方法は、ゴルフ場を撮影したゴルフ場画像を取得するステップと、前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出するステップと、前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定するステップと、写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定するステップと、を含む。
【0014】
また、本発明に係るプログラムは、ゴルフ場を撮影したゴルフ場画像を取得する手順、前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する手順、前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する手順、写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する手順、をコンピュータに実行させる。
【図面の簡単な説明】
【0015】
図1】本発明の一実施形態に係る芝健康状態判定システムの構成の一例を示す図である。
図2】本発明の一実施形態に係る芝健康状態判定システムの機能の一例を示す機能ブロック図である。
図3】グレースケールで表現されたRGB画像の一例を示す図である。
図4】セグメンテーション結果画像の一例を示す図である。
図5】二値化画像の一例を示す図である。
図6】二値化画像の一例を示す図である。
図7】芝領域画像の一例を示す図である。
図8】第1判定対象画像の一例を示す図である。
図9】CNNにより注目された画素のヒートマップの一例を示す図である。
図10】第1判定対象画像と第2判定対象画像との関係の一例を模式的に示す図である。
図11】芝健康状態判定結果画像の一例を示す図である。
図12】本発明の一実施形態に係る芝健康状態判定システムで行われる処理の流れの一例を示すフロー図である。
【発明を実施するための形態】
【0016】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0017】
図1は、本実施形態に係る芝健康状態判定システム10の構成の一例を示す図である。
本実施形態に係る芝健康状態判定システム10は、例えば、パーソナルコンピュータやサーバコンピュータなどのコンピュータである。図1に示すように、芝健康状態判定システム10には、例えば、プロセッサ12、記憶部14、通信部16、表示部18、操作部20が含まれる。
【0018】
プロセッサ12は、例えば芝健康状態判定システム10にインストールされるプログラムに従って動作するCPU等のプログラム制御デバイスである。
【0019】
記憶部14は、例えばROMやRAM等の記憶素子やソリッドステートドライブやハードディスクドライブなどである。記憶部14には、プロセッサ12によって実行されるプログラムなどが記憶される。
【0020】
通信部16は、例えばネットワークボードなどの通信インタフェースである。
【0021】
表示部18は、例えば液晶ディスプレイ等の表示デバイスであって、プロセッサ12の指示に従って各種の画像を表示する。
【0022】
操作部20は、例えばキーボードやマウスなどといったユーザインタフェースであって、ユーザの操作入力を受け付けて、その内容を示す信号をプロセッサ12に出力する。
【0023】
なお、芝健康状態判定システム10は、DVD-ROMやBlu-ray(登録商標)ディスクなどの光ディスクを読み取る光ディスクドライブ、USB(Universal Serial Bus)ポートなどを含んでいてもよい。
【0024】
本実施形態に係る芝健康状態判定システム10は、画像処理パイプラインと機械学習ネットワークとを組み合わせたものである。本実施形態に係る芝健康状態判定システム10によれば、ゴルフ場を撮影した高解像度のオルソモザイクマップ画像を用いた、ゴルフ場における芝の健康状態における潜在的な問題の検出及び同定が可能となる。
【0025】
図2は、本実施形態に係る芝健康状態判定システム10の機能の一例を示す機能ブロック図である。なお、本実施形態に係る芝健康状態判定システム10で、図2に示す機能のすべてが実装される必要はなく、また、図2に示す機能以外の機能が実装されていても構わない。
【0026】
図2に示すように、本実施形態に係る芝健康状態判定システム10には、機能的には例えば、ゴルフ場画像記憶部30、ゴルフ場画像取得部32、第1処理部40、第2処理部50、第3処理部60が含まれている。
【0027】
そして、図2に示すように、第1処理部40には、セグメンテーション部42、芝領域抽出部44、隙間埋めノイズ除去部46が含まれる。また、第2処理部50には、第1分割部52、機械学習モデル54、第1判定部56が含まれる。また、第3処理部60には、第2分割部62、第2判定部64、表示制御部66が含まれる。
【0028】
ゴルフ場画像記憶部30は、記憶部14を主として実装される。ゴルフ場画像取得部32、芝領域抽出部44、隙間埋めノイズ除去部46、第1分割部52、第1判定部56、第2分割部62、第2判定部64は、プロセッサ12を主として実装される。セグメンテーション部42、機械学習モデル54は、プロセッサ12及び記憶部14を主として実装される。表示制御部66は、プロセッサ12及び表示部18を主として実装される。
【0029】
以上の機能は、コンピュータである芝健康状態判定システム10にインストールされた、以上の機能に対応する指令を含むプログラムを芝健康状態判定システム10で実行することにより実装されてもよい。また、このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介して芝健康状態判定システム10に供給されてもよい。
【0030】
ゴルフ場画像記憶部30は、本実施形態では例えば、ゴルフ場を撮影したゴルフ場画像を記憶する。本実施形態に係るゴルフ場画像は、例えば、ドローン等の無人航空機(UAV)に搭載されたカメラがゴルフ場を撮影した画像である。
【0031】
本実施形態に係るUAVには、例えば、RGBカメラ、近赤外(NIR)カメラ、及び、サーマルカメラが搭載されている。そして、本実施形態では、RGBカメラ、近赤外カメラ、及び、サーマルカメラのそれぞれによって画像の撮影が行われる。
【0032】
そして、撮影されたこれらの画像に対して、画像処理が実行されることで、ゴルフ場の領域全体をカバーするオルソモザイクマップ画像である、RGB画像、近赤外画像、及び、サーマル画像が生成される。そして、生成された3種類のオルソモザイクマップ画像が、本実施形態に係るゴルフ場画像(RGB画像、近赤外画像、及び、サーマル画像)として、ゴルフ場画像記憶部30に記憶される。本実施形態ではこれらのオルソモザイクマップ画像は、例えば、tif形式の画像である。図3は、本実施形態に係るRGB画像の一例を示す図である。図3に示すRGB画像は、グレースケールで表現されているが、実際のRGB画像は、フルカラーの画像である。また、ゴルフ場画像には、撮影された場所の緯度や経度などといった地理情報が地理参照として関連付けられている。
【0033】
ゴルフ場画像取得部32は、本実施形態では例えば、ゴルフ場を撮影したゴルフ場画像を取得する。例えば、ゴルフ場画像取得部32は、ゴルフ場画像記憶部30に記憶されているゴルフ場画像を取得する。
【0034】
セグメンテーション部42は、本実施形態では例えば、ゴルフ場画像を互いに異なる複数種類の領域にセグメンテーションする。ここでは例えば、ゴルフ場画像(例えば、RGB画像)に表れている領域が、バンカー等の砂を示す領域、カートパスを示す領域、建物又はクラッターを示す領域、ラフを示す領域、木を示す領域、フェアウェイを示す領域、グリーンを示す領域、ティーボックスを示す領域、ウォーターハザード等の水を示す領域、背景を示す領域、といった、10種類の領域にセグメンテーションされる。
【0035】
本実施形態に係るセグメンテーション部42は、既存の学習済のUnetニューラルネットワークを含んでいてもよい。そして、セグメンテーション部42が、学習済のUnetニューラルネットワークを用いて上述のセグメンテーションを実行してもよい。
【0036】
当該学習済のUnetニューラルネットワークは、例えば、ゴルフ場画像の入力に応じて、図4に例示されているセグメンテーション結果画像を出力する。ここで、当該学習済のUnetニューラルネットワークには、例えば、ゴルフ場画像取得部32が取得するRGB画像、近赤外画像、又は、サーマル画像のうちの一部又は全部が入力される。
【0037】
本実施形態では例えば、上述の10種類の領域のそれぞれに対応付けられる互いに異なる画素値が予め定められている。そして、本実施形態では例えば、ゴルフ場画像と縦横画素数が同じであり、各画素に、当該画素に対応付けられるゴルフ場画像内の画素についての分類結果である領域の種類に対応付けられる画素値が設定されたグレースケールの画像であるセグメンテーション結果画像が生成される。また、本実施形態に係るセグメンテーション結果画像は、例えば、png形式の画像である。
【0038】
芝領域抽出部44は、本実施形態では例えば、ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する。
【0039】
芝領域抽出部44は、本実施形態では例えば、上述のRGB画像から、セグメンテーション結果画像においてフェアウェイ又はグリーンに対応する画素値が設定されている画素に対応する画素を抽出する。
【0040】
芝領域抽出部44は、例えば、図4に示すセグメンテーション結果画像からフェアウェイ又はグリーンに対応する画素を抽出した画像であるマスク画像によってRGB画像をマスクすることで、RGB画像からフェアウェイ又はグリーンを示す画素を抽出してもよい。例えば、RGB画像からマスク画像に示されている画素に相当する画素が抽出されるようにしてもよい。
【0041】
例えば、芝領域抽出部44は、マスク画像におけるフェアウェイ又はグリーンの画素の座標値を特定してもよい。そして、芝領域抽出部44は、特定された座標値をRGB画像に含まれる画素の座標値と相互参照することで、フェアウェイ又はグリーンを示す領域以外の領域をRGB画像から切り抜いてもよい。このことによって、RGB画像において、グリーン又はフェアウェイを示す領域以外の領域は所定の画素値となる。ここでは例えば、RGB画像においてグリーン又はフェアウェイを示す領域以外の領域は黒色画素となることとする。以下、このようにしてフェアウェイ又はグリーンを示す領域以外の領域が切り抜かれたRGB画像を、抽出済RGB画像と呼ぶこととする。
【0042】
隙間埋めノイズ除去部46は、本実施形態では例えば、抽出済RGB画像に対して隙間を埋める処理及びノイズを除去する処理を実行する。
【0043】
上述のUnetニューラルネットワークで高解像度の画像に対するセグメンテーションを行うと、ゴルフ場全体に係る上述のマスク画像に穴や隙間が生じることがある。このような穴や隙間は背景又はクラッターを示す領域として分類されることが多く、このような画素についてはマスク画像から欠落する。マスク画像に生じた穴や隙間に相当する画素には、最終的な分類において重要な情報が含まれていることが多い。このことを踏まえ、本実施形態では穴や隙間を埋める処理が実行されるようになっている。
【0044】
隙間埋めノイズ除去部46は、例えば、まず、抽出済RGB画像を二値化する。図5は、このようにして二値化された抽出済RGB画像の一例を示す図である。以下、この画像を二値化画像と呼ぶこととする。図5に示す二値化画像では、フェアウェイ又はグリーンを示す領域が白色で表現され、それ以外の領域が黒色で表現されている。なお、抽出済RGB画像の代わりにマスク画像を二値化することで、二値化画像が生成されるようにしてもよい。
【0045】
そして、隙間埋めノイズ除去部46は、本実施形態では例えば、いくつかのモルフォロジー変換を二値化画像に対して実行することで、背景にあるクラッターのスポットを除去する。
【0046】
具体的には例えば、二値化画像に対してオープニングトランスフォーメーションを実行し、その後、クロージングトランスフォーメーションを実行することで、隙間が埋められ、クラッターが除去される。
【0047】
オープニングトランスフォーメーションでは、例えば、画像の白色領域のエッジを少なくするエロージョンが実行され、その後、画像の白色領域を拡大するダイレーションが実行される。オープニングトランスフォーメーションによって、背景における追加のノイズが除去される。
【0048】
クロージングトランスフォーメーションでは、オープニングトランスフォーメーションと真逆の処理が実行される。すなわち、クロージングトランスフォーメーションでは、ダイレーションが実行され、その後、エロージョンが実行される。クロージングトランスフォーメーションによって、前景における隙間が埋められる。
【0049】
図6は、以上の処理が実行された二値化画像の一例を示す図である。隙間埋めノイズ除去部46は、以上の処理が実行された二値化画像における白色画素のすべてに相当する画素を上述のRGB画像から抽出することで、最終的な抽出済RGB画像を生成する。以下、このようにして生成される芝領域の画像を、芝領域画像と呼ぶこととする。
【0050】
図7は、芝領域画像の一例を示す図である。図3と同様、図7では、芝領域画像がグレースケールで表現されているが、実際の芝領域画像は、フルカラーの画像である。
【0051】
第1分割部52は、本実施形態では例えば、上述の芝領域画像を分割することで、第1判定対象画像を生成する。例えば、第1の所定画素数×第2の所定画素数の領域ごとに芝領域画像を分割することで、第1判定対象画像が生成される。ここでは、1024画素×1024画素の領域ごとに芝領域画像を分割することで、第1判定対象画像が生成されることとする。図8は、第1判定対象画像の一例を示す図である。本実施形態に係る第1判定対象画像は、例えば、1024画素×1024画素のタイル画像である。第1判定対象画像の生成は、例えば、ウィンドウが1024画素ずつスライドしながらタイルを取得するウィンドウアプローチによって容易に実行可能である。
【0052】
芝領域画像の背景はすべて黒色である。このことを踏まえ、第1分割部52は、第1判定対象画像に含まれる画素のうちの黒色画素の割合を計算する。ここで、黒色画素の割合が50%を超える第1判定対象画像は、以降の処理の対象から除外される。このようにすることで、処理時間が短縮できる。また、このようにして除外された第1判定対象画像の大部分は、不健康な芝が写っていない。
【0053】
機械学習モデル54は、本実施形態では例えば、第1判定対象画像の入力に応じてヒートマップ画像を出力する学習済の機械学習モデル(学習済モデル)である。
【0054】
本実施形態において例えば、複数の訓練データによる機械学習モデル54の学習が予め実行されてもよい。訓練データには、例えば、学習入力画像と教師データとが含まれていてもよい。学習入力画像は、機械学習モデル54の学習において機械学習モデル54に入力される芝の画像であってもよい。訓練データに含まれる教師データは、例えば、当該訓練データに含まれる学習入力画像に含まれる画素単位で当該画素が表す芝が健康であるか不健康であるかが表された画像であってもよい。例えば、教師データである画像は、例えば、健康な芝を表す画素については黒色であり、不健康な芝を表す画素については白色である画像であってもよい。
【0055】
そして例えば、機械学習モデル54に、訓練データに含まれる学習入力画像を入力した際の出力が特定されてもよい。そして、当該出力と、当該訓練データに含まれる教師データと、の誤差(比較結果)が特定されてもよい。ここで例えばソフトマックスエントロピー誤差が特定されてもよい。そして特定される誤差に基づいて、例えば誤差逆伝搬法により、機械学習モデル54のパラメータの値が更新されてもよい。
【0056】
そして、以上の処理が複数の訓練データについて実行されることで、機械学習モデル54の学習が実行されてもよい。
【0057】
発明者は、利用可能な訓練データが比較的少量(約5000個)であったために、最初は、事前学習が実行されたInceptionResnetV2モデルを用いて特徴を抽出し、小さなシーケンシャル畳み込みニューラルネットワーク(CNN)の学習を実行した。そして、当該CNNが、InceptionResnetV2モデルに追加された。
【0058】
次に、ベースのモデルの上位4層のみに対して、遅い学習速度での確率的勾配降下アルゴリズムによって前処理がされた150エポックのデータセットの学習が実行された。
【0059】
また、発明者は、モデルに対してゼロから学習を実行するのではなく、転移学習を使用した。また、発明者は、一般的な形状の識別などの普遍的な低レベルの特徴を活用するためにImagenetの重みに基づく学習を実行した。
【0060】
発明者は、さらに、Densenet、VGG19、及び、VGG16モデルに対しても同様の学習手順での学習を実行した。そして、学習の最終段階では、健康又は不健康のいずれかの値をとる分類ラベルによる投票が行われた相関のないCNNのアンサンブル学習が実行された。このようにすることで、バイアスが少なくなり、分類精度が向上することとなる。
【0061】
また発明者は、学習の際に、モデルのパフォーマンスを監視及び調整するためのメトリックとして、擬陽性と偽陰性を使用した。このことは、真に不健康な芝が写る第1判定対象画像をできるだけ多く見つけ、芝健康状態判定システム10のユーザに対する信頼を失わないようにするために、誤って不健康であると分類される第1判定対象画像の量を減らすために行われた。
【0062】
第1判定部56は、本実施形態では例えば、芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する。ここでは例えば、当該第1判定対象画像に写る芝が健康であるか不健康であるかが判定される。ここで、第1判定対象画像は、上述のように、芝領域画像を分割した画像であってもよい。そして、第1判定部56は、芝領域画像を分割した複数の第1判定対象画像のそれぞれについて、当該第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定してもよい。
【0063】
本実施形態では例えば、第1判定部56は、第1判定対象画像を学習済の機械学習モデル54に入力する。
【0064】
ここで、第1判定部56は、除外されなかった第1判定対象画像に対して、画素値における測定ノイズ及び異常なスパイクノイズを抑制するために、ガウシアンブラーによって前処理を行ってもよい。また、第1判定部56は、モルフォロジー操作(エロージョン及びダイレーション)を第1判定対象画像に対して実行してもよい。当該モルフォロジー操作は、形状における境界の不連続性を閉じ、第1判定対象画像内における凸状オブジェクト内の穴を埋めることによって第1判定対象画像をさらに清浄化するために実行される。そして、第1判定部56は、このような処理が実行された第1判定対象画像を学習済の機械学習モデル54に入力してもよい。
【0065】
そして、上述のように、学習済の機械学習モデル54は、第1判定対象画像の入力に応じてヒートマップ画像を出力する。図9は、第1判定対象画像の入力に応じて学習済の機械学習モデル54から出力されるヒートマップ画像の一例を示す図である。図9に示すヒートマップ画像に含まれる各画素の画素値は、当該画素が表す芝が不健康である確率に対応するものとなっている。
【0066】
そして、第1判定部56は、ヒートマップ画像に基づいて、学習済の機械学習モデル54に入力された第1判定対象画像に写る芝が不健康である確率を特定してもよい。そして、第1判定部56は、特定された確率が所定の閾値(例えば85%)よりも高ければ、当該第1判定対象画像に写る芝が不健康であると判定してもよい。
【0067】
以上で説明したように、第1判定部56が、所定画素数である第1判定対象画像を学習済モデルに入力した際の当該学習済モデルからの出力に基づいて、当該第1判定対象画像に写る芝の健康状態を判定してもよい。
【0068】
ただし、ここでの判定は、1024画素×1024画素の第1判定対象画像内において不健康な芝が写っている領域を正確に判定するものではなく、当該第1判定対象画像内に不健康な可能性がある芝が写る領域が含まれていることを示しているにすぎない。
【0069】
第2分割部62は、本実施形態では例えば、写っている芝が不健康であると判定される第1判定対象画像のそれぞれについて、当該第1判定対象画像を第3の所定画素数×第4の所定画素数の領域ごとに分割することで、第2判定対象画像を生成する。ここでは例えば、図10に示すように、第1判定対象画像I1を256画素×256画素の領域ごとに分割することで、第2判定対象画像I2が生成されることとする。この例では、1個の第1判定対象画像I1から16個の第2判定対象画像I2が生成されている。
【0070】
ここで、すべての画素が黒色画素である第2判定対象画像は、以降の処理の対象から除外される。このことは、不健康な芝が存在する場所をピンポイントで正確に特定するのに役立つ。また、不健康な芝が存在する領域の数と同じぐらい存在する無関係なゴルフ場内の領域が示されないようにすることができる。
【0071】
第2判定部64は、本実施形態では例えば、写っている芝が不健康であると判定される第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する。
【0072】
本実施形態では、第2判定部64によって、擬陽性であるものを除外するために、外れ値が少なく画素値が均一な領域を探索する追加の判定処理が実行される。ここでは、当該領域に写る芝が不健康あるいは病気であることが明確ではないような、色の分布のばらつきがほとんどない領域、あるいは、まったくない領域が探索される。
【0073】
ここで、第2判定部64は、まず、第2判定対象画像にバンドパスフィルタを適用してもよい。当該バンドパスフィルタは、例えば、バンカーなどの砂を示す領域、通路を示す領域、黒色領域、又は、芝ではない領域に相当する色を除去するフィルタである。
【0074】
そして、第2判定部64は、ノイズを抑制するために、第2判定対象画像に平滑化処理を行ってもよい。第2判定部64は、例えば、第2判定対象画像に追加で粗いガウシアンブラーによる平滑化処理を行ってもよい。このようにすれば、芝の健康状態をより精度よく判定することが可能となる。
【0075】
そして、第2判定部64は、第2判定対象画像に含まれる画素の画素値の標準偏差又は分散の小ささに基づいて、当該第2判定対象画像に写る芝の健康状態を判定してもよい。ここでは例えば、当該第2判定対象画像に写る芝が健康であるか不健康であるかが判定される。例えば、第2判定部64は、第2判定対象画像に含まれる画素の画素値のばらつきを示す値(例えば、標準偏差又は分散)を特定する。そして、第2判定部64は、画素値のばらつきを示す値と所定値(小さな値が想定される)との差が閾値以下である場合は、当該第2判定対象画像に写る芝が健康である(すなわち、擬陽性である)と判定する。
【0076】
あるいは、第2判定部64は、第2判定対象画像に含まれる画素の画素値のばらつきを示す値(例えば、標準偏差又は分散)が所定の閾値未満である場合は、当該第2判定対象画像に写る芝が健康である(すなわち、擬陽性である)と判定してもよい。
【0077】
このようにして擬陽性であると判定された第2判定対象画像に相当する領域は、芝が不健康であると判定される領域から除外される。
【0078】
ここで、第2判定部64が、上述のようにして第2判定対象画像にバンドパスフィルタを適用した画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定してもよい。
【0079】
また、第2判定部64が、上述のように第2判定対象画像に平滑化処理を行った画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定してもよい。
【0080】
発明者は、サンプルである複数の第2判定対象画像を、画素値のヒストグラムに存在する外れ値の数に基づいてランク付けした。ここで、外れ値の数が上位25%である第2判定対象画像においては、画素値のばらつきは、画素値のヒストグラムの標準偏差に基づいて分析可能であることが判明した。このことから、発明者は、均一で健康である芝が写る第2判定対象画像の画素値の標準偏差は、タイト、あるいは、小さい傾向があることを発見した。
【0081】
このことを踏まえ、本実施形態では、以上で説明したように、画素値の標準偏差又は分散に基づいて、第2判定対象画像が擬陽性であるか否かを判定することとした。
【0082】
表示制御部66は、本実施形態では例えば、第1判定部56及び第2判定部64による判定結果に基づいて、図11に例示されている芝健康状態判定結果画像を生成して、表示部18に表示させる。
【0083】
表示制御部66は、例えば、生えている芝が健康であるフェアウェイ又はグリーンに相当する地理的領域である健康芝領域、及び、生えている芝が不健康であるフェアウェイ又はグリーンに相当する地理的領域である不健康芝領域を特定してもよい。例えば、表示制御部66は、第1判定部56において写っている芝が健康であると判定された第1判定対象画像に対応付けられる地理的領域を、健康芝領域として特定してもよい。また、表示制御部66は、第1判定部56において写っている芝が不健康であると判定された第1判定対象画像を分割した第2判定対象画像であって、第2判定部64において写っている芝が健康であると判定された第2判定対象画像に対応付けられる地理的領域も、健康芝領域として特定してもよい。
【0084】
そして、表示制御部66は、第1判定部56において写っている芝が不健康であると判定された第1判定対象画像を分割した第2判定対象画像であって、第2判定部64においても写っている芝が不健康であると判定された第2判定対象画像に対応付けられる地理的領域を、不健康芝領域として特定してもよい。
【0085】
そして、表示制御部66は、健康芝領域と不健康芝領域とが識別可能に表現された芝健康状態判定結果画像を生成してもよい。例えば、健康芝領域と不健康芝領域とが異なる色で表された芝健康状態判定結果画像が生成されてもよい。
【0086】
本実施形態では例えば、上述の第2判定部64による判定が終了すると、第2判定対象画像に関連付けられている地理情報に基づいて、判定結果が地理参照に変換される。
【0087】
ここでは例えば、第2判定対象画像の地理参照がポリゴンに変換される。そして、オープンソースのphthonライブラリにおけるcascaded unionアルゴリズムを用いてグループ化される。このグループ化によって、すべての隣接するポリゴンをグループ化し、一連の新たにグループ化されたポリゴンが生成される。
【0088】
不健康芝領域を表すポリゴンの座標は、芝健康状態アラートマーカーを生成するためのAPIリクエストを生成するために使用される。芝健康状態アラートマーカーはgeojson形式のファイルで保存され、所与のオルソモザイク地図の上に半透明のポリゴンとして視覚化される。このようにして視覚化された画像の一例が、図11に例示されている芝健康状態判定結果画像である。
【0089】
ここで、本実施形態に係る芝健康状態判定システム10で行われる処理の流れの一例を、図12に例示するフロー図を参照しながら説明する。
【0090】
本処理例では、所与のゴルフ場を撮影した3つのゴルフ場画像(RGB画像、近赤外画像、及び、サーマル画像)が、ゴルフ場画像記憶部30に予め記憶されていることとする。
【0091】
まず、ゴルフ場画像取得部32が、ゴルフ場画像記憶部30に記憶されている3つのゴルフ場画像を取得する(S101)。
【0092】
そして、セグメンテーション部42が、S101に示す処理で取得されたゴルフ場画像に基づいて、セグメンテーション結果画像を生成する(S102)。
【0093】
そして、芝領域抽出部44が、S101に示す処理で取得されたRGB画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出することで、抽出済RGB画像を生成する(S103)。
【0094】
そして、隙間埋めノイズ除去部46が、S103に示す処理で生成された抽出済RGB画像に基づいて、二値化画像を生成する(S104)。
【0095】
そして、隙間埋めノイズ除去部46が、S104に示す処理で生成された二値化画像に対して、上述のモルフォロジー変換を実行する(S105)。
【0096】
そして、隙間埋めノイズ除去部46が、S105に示す処理でモルフォロジー変換が実行された二値化画像と、S101に示す処理で取得されたRGB画像と、に基づいて、芝領域画像を生成する(S106)。
【0097】
そして、第1分割部52が、S106に示す処理で生成された芝領域画像を分割することで、複数の第1判定対象画像を生成する(S107)。
【0098】
そして、第1分割部52が、S107に示す処理で生成された複数の第1判定対象画像のうちから、後続の処理の実行対象となる第1判定対象画像を選択する(S108)。
【0099】
そして、第1判定部56が、S108に示す処理で選択された第1判定対象画像のそれぞれに対して、ガウシアンブラーによる前処理やモルフォロジー操作等の所定の加工処理を実行する(S109)。
【0100】
そして、第1判定部56が、S109に示す処理で加工された第1判定対象画像のそれぞれについて、当該第1判定対象画像に写る芝が健康であるか不健康であるかを判定する(S110)。
【0101】
そして、第2分割部62が、S110に示す処理で写っている芝が不健康であると判定された第1判定対象画像を特定する(S111)。
【0102】
そして、第2分割部62が、S111に示す処理で特定された第1判定対象画像のそれぞれについて、当該第1判定対象画像を分割することで、当該第1判定対象画像に対応付けられる複数の第2判定対象画像を生成する(S112)。
【0103】
そして、第2分割部62が、S112に示す処理で生成された複数の第2判定対象画像のうちから、後続の処理の実行対象となる第2判定対象画像を選択する(S113)。
【0104】
そして、第2判定部64が、S113に示す処理で選択された第2判定対象画像のそれぞれに対して、所与のバンドパスフィルタを適用する(S114)。
【0105】
そして、第2判定部64が、S114に示す処理でバンドパスフィルタが適用された第2判定対象画像のそれぞれに対して、平滑化処理を実行する(S115)。
【0106】
そして、第2判定部64が、S115に示す処理で平滑化処理が実行された第2判定対象画像に含まれる画素の画素値の標準偏差又は分散の小ささに基づいて、当該第2判定対象画像に写る芝が健康であるか不健康であるかを判定する(S116)。
【0107】
そして、表示制御部66が、上述のS110に示す処理、及び、S116に示す処理の結果に基づいて、芝健康状態判定結果画像を生成する(S117)。
【0108】
そして、表示制御部66が、S117に示す処理で生成された芝健康状態判定結果画像を、表示部18に表示させて(S118)、本処理例に示す処理は終了される。
【0109】
ゴルフ場では、不健康な芝をできるだけ早くメンテナンスするために、例えば毎日のような高頻度で、不健康な芝が存在する領域をピンポイントに高速で特定する必要がある。
【0110】
そして、機械学習モデル54を用いてゴルフ場の領域の全体についての芝の健康状態の判定するにあたって、機械学習モデル54に入力される画像の数が増えれば増えるほど、一般的に、芝の健康状態の判定に時間がかかる。
【0111】
そこで、機械学習モデル54に入力される第1判定対象画像に相当する地理的領域が広くなるよう、第1判定対象画像に含まれる画素の数を多く(データサイズを大きく)することが考えられる。このようにすると、ゴルフ場の領域の全体に対する当該判定を行うために機械学習モデル54に入力する必要がある第1判定対象画像の数を減らすことができるので、芝の健康状態の判定に要する時間を短くすることが可能となる。
【0112】
しかしこのようにすると、当該判定によって芝の健康状態が判定される地理的領域の粒度が粗くなってしまい、ピンポイントな領域での判定ができない。
【0113】
そこで本実施形態では、第1判定対象画像に基づく判定を一旦行い、その結果、写っている芝が不健康であると判定された第1判定対象画像を分割して、対応する地理的領域が第1判定対象画像より狭い第2判定対象画像を生成することにした。
【0114】
そして、一般的に機械学習モデル54を用いた判定よりも処理負荷が小さい、画素値のばらつきに基づく判定を第2判定対象画像に対して行うこととした。
【0115】
このようにして本実施形態によれば、多重的な判定を行うことで、ゴルフ場において不健康な芝が存在する領域をピンポイントに高速で特定できることとなる。
【0116】
なお、本発明は上述の実施形態に限定されるものではない。
【0117】
例えば、第2判定部64が、上述のS114に示す処理を実行しなくてもよい。また、第2判定部64が、上述のS115に示す処理を実行しなくてもよい。
【0118】
また、第1判定部56は、機械学習モデル54を用いることなく、他の既存の手法を用いて、第1判定対象画像に写る芝の健康状態を判定してもよい。
【0119】
また、フェアウェイを示す領域及びグリーンを示す領域の両方に対して、芝が健康であるか不健康であるかが判定される必要はない。フェアウェイを示す領域又はグリーンを示す領域のいずれかに対して、芝が健康であるか不健康であるかが判定されてもよい。
【0120】
また、第2判定部64が、第2判定対象画像に含まれる画素の画素値の標準偏差又は分散に基づいて、当該第2判定対象画像に写る芝が健康であるか不健康であるかを判定する必要はない。例えば、第2判定対象画像に含まれる画素のうちから、所定の基準に従って画素値が外れ値である画素を特定してもよい。そしてこのようにして特定された画素の数に基づいて、当該第2判定対象画像に写る芝が健康であるか不健康であるかが判定されてもよい。
【符号の説明】
【0121】
10 芝健康状態判定システム、12 プロセッサ、14 記憶部、16 通信部、18 表示部、20 操作部、30 ゴルフ場画像記憶部、32 ゴルフ場画像取得部、40 第1処理部、42 セグメンテーション部、44 芝領域抽出部、46 隙間埋めノイズ除去部、50 第2処理部、52 第1分割部、54 機械学習モデル、56 第1判定部、60 第3処理部、62 第2分割部、64 第2判定部、66 表示制御部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
【手続補正書】
【提出日】2022-10-26
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ゴルフ場を撮影したゴルフ場画像を取得するゴルフ場画像取得手段と、
前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する芝領域抽出手段と、
前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する第1判定手段と、
写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する第2判定手段と、
を含むことを特徴とするゴルフ場における芝健康状態判定システム。
【請求項2】
前記第1判定手段は、前記芝領域の画像を分割した複数の前記第1判定対象画像のそれぞれについて、当該第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1に記載のゴルフ場における芝健康状態判定システム。
【請求項3】
前記第1判定手段は、所定画素数である前記第1判定対象画像を学習済モデルに入力した際の当該学習済モデルからの出力に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1又は2に記載のゴルフ場における芝健康状態判定システム。
【請求項4】
前記第2判定手段は、前記第2判定対象画像に含まれる画素の画素値の標準偏差又は分散の小ささに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から3のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項5】
前記第2判定手段は、前記第2判定対象画像にバンドパスフィルタを適用した画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から4のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項6】
前記第2判定手段は、前記第2判定対象画像に平滑化処理を行った画像に基づいて、当該第2判定対象画像に写る芝の健康状態を判定する、
ことを特徴とする請求項1から5のいずれか一項に記載のゴルフ場における芝健康状態判定システム。
【請求項7】
ゴルフ場画像取得手段が、ゴルフ場を撮影したゴルフ場画像を取得するステップと、
芝領域抽出手段が、前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出するステップと、
第1判定手段が、前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定するステップと、
第2判定手段が、写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定するステップと、
を含むことを特徴とするゴルフ場における芝健康状態判定方法。
【請求項8】
ゴルフ場を撮影したゴルフ場画像を取得する手順、
前記ゴルフ場画像内における、フェアウェイ又はグリーンのうちの少なくとも一方を示す芝領域を抽出する手順、
前記芝領域の少なくとも一部の領域の画像である第1判定対象画像に基づいて、当該第1判定対象画像に写る芝の健康状態を判定する手順、
写っている芝が不健康であると判定される前記第1判定対象画像について、当該第1判定対象画像を分割した複数の第2判定対象画像ごとに、当該第2判定対象画像に含まれる画素の画素値のばらつきに基づいて、当該第2判定対象画像に写る芝の健康状態を判定する手順、
をコンピュータに実行させることを特徴とするプログラム。