PRISM病虫害診断API(ノーザンシステムサービス:v3):strawberry/haomote

提供ベンダー:
農研機構:PRISM
システム名:
病害システム
利用条件:
提供ベンダーと有償契約が必要

概要

API名称
PRISM病虫害診断API(ノーザンシステムサービス:v3)
説明

農研機構AI病虫害画像診断APIは、農林水産省戦略的プロジェクト研究推進事業「AIを活用した病害虫診断技術の開発」及び内閣府官民研究開発投資拡大プログラム(PRISM)によって、法政大学(生命科学部応用植物科学科及び理工学部応用情報工学科)により開発された病害判定エンジン、および、株式会社ノーザンシステムサービスにより開発された虫害判定エンジンを呼ぶ一連のAPI群です。 2021年6月現在、以下の以下の判定エンジンを利用できます。

  • 法政大学が開発した4作目(キュウリ、イチゴ、ナス、トマト)の葉表の画像判定
  • ノーザンシステムサービスが開発した4作目(キュウリ、イチゴ、ナス、トマト)の葉表の画像判定

エンジンは順次追加される予定です。

ご利用いただくには、WAGRI会員である必要があります。また、別途申し込みが必要です。 その際には、AI病虫害画像診API利用規約(お申込時に提示いたします)に同意いただき、AI病虫害画像診API同意書兼利用申請書を提出いただくことになりますので、予めご了承ください。

データの更新頻度
カテゴリー
添付ファイル

リクエスト

URL

https://api.wagri.net/API/Individual/Naro/PRISM/plant_disease/nss/v3/strawberry/haomote

説明

病虫害判定メソッド [POST]

病虫害判定メソッド 概要

画像をPOSTすると、病害判定情報が返ってきます。

  • 本判定エンジンのAPIのurlは以下の通りです。
    • https://api.wagri.net/API/Individual/Naro/PRISM/plant_disease/<engine>
    • Example
      • https://api.wagri.net/API/Individual/Naro/PRISM/plant_disease/hosei/v4/strawberry/haomote
  • <engine>により、作目やエンジンを指定することが可能です。
  • 現在公開されている<engine>のリストは以下の通りです。

病害:

<engine> 説明 バージョン
hosei/v4/cucumber/haomote キュウリ(法政大、葉表) 4.0
hosei/v4/strawberry/haomote イチゴ(法政大、葉表) 4.0
hosei/v4/eggplant/haomote ナス(法政大、葉表) 4.0
hosei/v4/tomato/haomote トマト(法政大、葉表) 4.0

虫害:

<engine> 説明 バージョン
nss/v3/cucumber/haomote キュウリ(ノーザンシステムサービス、葉表) 3.0
nss/v3/strawberry/haomote イチゴ(ノーザンシステムサービス、葉表) 3.0
nss/v3/eggplant/haomote ナス(ノーザンシステムサービス、葉表) 3.0
nss/v3/tomato/haomote トマト(ノーザンシステムサービス、葉表) 3.0
  • 補足説明
    • <engine>のサブディレクトリは「開発組織」「バージョン」「作目名」「判定部位」の順に並んでいます。
      • <organization>/<version>/<crop>/<shooting_part>
      • Example
        • 「法政大」「バージョン4」「キュウリ」「葉表」の場合は以下の通りです。
        • hosei/v4/cucumber/haomote

病虫害判定メソッド リクエスト

病虫害判定メソッド リクエスト(Header)

key value comment
X-User-Id String ユーザーID
Authorization String トークンタイプ+アクセストークン
  • 補足説明
    • Authorization(必須)
      • ベンダー様に別途お知らせしております。
      • ベンダー様毎に異なる値を用いております。
      • 秘密の情報ですので、取り扱いには十分注意してください。
    • X-User-Id(必須)
      • エンドユーザのIDを入れてください。(※エンドユーザとは、ベンダー様が管理するユーザのことです。)
      • 値は任意ですが、なるべく個別のIDを入れるようにしてください。
    • Content-Type(必須)
      • Supported Media Types: application/json

病虫害判定メソッド リクエスト(Body)

Root
key value comment
assets Dictionary[] リクエスト情報
assets
key value comment
id String データID
X-User-Id String ユーザーID
options Dictionary 開発者向け設定
images Dictionary[] 画像情報
assets/options
key value comment
YOLOv3 String 病害判定に判定枠を使用するかどうか(True: 枠を使う, False: 枠を使わない)
diagnosis Boolean 病害判定するかどうか(True: 判定する, False: 判定しない)
assets/images
key value comment
filename String 写真ファイル名
data String 画像情報(base64エンコード)
date String 判定日時
filedate String 撮影日時
annotations Dictionary[] 付加情報
assets/images/annotations
key value comment
damage String 病害名
plant String 作目名
place String 撮影場所
boundingBoxes Dictionary[] 判定枠情報
  • 補足説明
    • boundingBoxesは判定枠の情報が含まれます。
      • ‘bbox’: 判定枠の始点並びに終点の座標。順に始点のx、y座標、終点のx、y座標と記述します。
      • ‘ratio’: 枠の拡大縮小倍率。アプリ上では画像は縮小表示されるので、後に復元できるよう拡大縮小倍率を記録します。
assets/images/boundingBoxes
key value comment
bbox Int[] 枠座標情報
byhand Boolean 自身で囲った枠かどうか(True: 手動, False: 自動)
comment String 備考
conf Int 未使用プロパティ
ratio Double 枠の拡大倍率

病害判定メソッド レスポンス

病害判定メソッド レスポンス(Body)

リクエストが正常に送信できた場合、ステータスコード200とともに判定結果が返ってきます。

Root
key value comment
assets Dictionary[] レスポンス情報
assets
key value comment
id String データID
predictionID String 予測結果ID
images Dictionary[] 画像情報
assets/images
key value comment
results Dictionary[] 判定結果
assets/images/results
key value comment
classfier_id String 判定エンジンID
ranking Dictionary[] 判定結果(降順)
assets/images/results/ranking
key value comment
probability Number 確度(0-1)
estimated String 判定結果

病害判定メソッド エラーハンドリング

statusCode: 400
key value comment
user_name String ユーザー名
message String エラーメッセージ
result Int エラーコード
statusCode: 401
key value comment
message String エラーメッセージ
result Int エラーコード
statusCode: 403
key value comment
message String エラーメッセージ
result Int エラーコード
HTTPメソッド
POST
パラメータ

呼出例

レスポンス

レイアウト

レスポンス例

ステータスコード
コード 名称 値の説明
400 Bad Request リクエストが不正です。
403 Forbidden リソースのアクセスが禁止されています。
500 Internal Server Error サーバー内部でエラーが発生しました。
401 Unauthorized 認証情報が不正です。

 

サンプルソースコード

ソースコード

病害判定リクエスト例
病害判定リクエスト例(header)

{
    'X-User-Id': "testuser"
    'Authorization': "AbCDEfg0414",
    'Content-Type': 'application/json',
}

 

病害判定リクエスト例(body)

{
    "assets": [
        {
            "id": "data_for_test",
            "X-User-Id": "testuser",
            "options": {
                "YOLOv3": "False"
            },
            "images": [
                {
                    "filename": "test.png",
                    "data": "data:image/jpeg;base64,AbCDEfg",
                    "date": "2021/3/10",
                    "filedate": "2020/3/24",
                    "annotations": [
                        {
                            "damage": "健全",
                            "plant": "strawberry",
                            "place": "house",
                            "boundingBoxes": [
                                {
                                    "bbox": [120, 58.75, 262.5, 222.5],
                                    "byhand": true,
                                    "comment": "",
                                    "conf": 9999,
                                    "ratio": [0.8, 0.8]
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}

 

病害判定メソッド レスポンス例
病害判定メソッド レスポンス例(Body)

{
    "assets": [
        { 
            "id" : "data_for_test",
            "predictionID": "AAAq2FGMiRi0414A",
            "images" : [
                {
                    "results" : [
                        {
                            "classfier_id" : "strawberry v1.0",
                            "ranking": [
                                {probability: 1, estimated: "健全"},
                                {probability: 0, estimated: "うどんこ病"}
                            ],
                        }
                    ]
                }
            ]
        }
    ]
}

 

 

前に戻る
Scroll to Top