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

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

▶ パナソニックIPマネジメント株式会社の特許一覧

特許7458042データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム
<>
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図1
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図2
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図3
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図4
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図5
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図6
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図7
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図8
  • 特許-データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-21
(45)【発行日】2024-03-29
(54)【発明の名称】データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240322BHJP
   G06V 10/72 20220101ALI20240322BHJP
【FI】
G06T7/00 350C
G06V10/72
【請求項の数】 25
(21)【出願番号】P 2022561868
(86)(22)【出願日】2021-11-05
(86)【国際出願番号】 JP2021040715
(87)【国際公開番号】W WO2022102524
(87)【国際公開日】2022-05-19
【審査請求日】2023-04-26
(31)【優先権主張番号】P 2020187510
(32)【優先日】2020-11-10
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】110002527
【氏名又は名称】弁理士法人北斗特許事務所
(72)【発明者】
【氏名】佐藤 太一
(72)【発明者】
【氏名】後藤 良介
(72)【発明者】
【氏名】北川 勇斗
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2020-106461(JP,A)
【文献】野村 茂生 Shigeo NOMURA,デジタルトランスフォーメーションを加速する東芝IoTアーキテクチャーSPINEX,東芝レビュー VOL.72 NO.4 [online] TOSHIBA REVIEW,日本,2017年09月30日,第72巻
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G06V 10/72
(57)【特許請求の範囲】
【請求項1】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成システムであって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部を備え、
前記変形部は、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記変形部は、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形した前記第2画像データを生成する、
データ作成システム。
【請求項2】
前記変形部は、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形した前記第2画像データを生成する、
請求項1に記載のデータ作成システム。
【請求項3】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成システムであって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部を備え、
前記変形部は、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記変形部は、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形した前記第2画像データを生成する、
データ作成システム。
【請求項4】
前記線状の特徴は、直線状の特徴を含む、
請求項1~3のいずれか1項に記載のデータ作成システム。
【請求項5】
前記直線状の特徴とは、前記オブジェクトを撮像したラインセンサカメラに依存して前記第1画像データ上における複数のスキャンライン間の境界に関する、
請求項4に記載のデータ作成システム。
【請求項6】
前記線状の特徴は、曲線状の特徴を含む、
請求項1~5のいずれか1項に記載のデータ作成システム。
【請求項7】
前記曲線状の特徴は、円、又は楕円状の特徴を含む、
請求項6に記載のデータ作成システム。
【請求項8】
前記変形部は、前記仮想線上に複数の基準点を設定し、前記複数の基準点の少なくとも1つの基準点を移動させることにより、前記オブジェクトの形状の変形を行う、
請求項1~7のいずれか1項に記載のデータ作成システム。
【請求項9】
前記変形部は、前記仮想線上に設定された前記複数の基準点の並び順を維持しながら、前記少なくとも1つの基準点を移動させる、
請求項8に記載のデータ作成システム。
【請求項10】
前記所定の特徴に関する情報を取得する取得部を、更に備え、
前記変形部は、前記取得部で取得した前記情報に基づいて前記第2画像データを生成する、
請求項1~9のいずれか1項に記載のデータ作成システム。
【請求項11】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成システムであって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部と、
所定の特徴に関する情報を取得する取得部と、を備え、
前記変形部は、前記取得部で取得した前記情報に基づいて、前記オブジェクトの形状の変形前後で前記第1画像データにおける前記所定の特徴が維持されるように、前記第2画像データを生成し、
前記取得部は、表示部により画面表示される前記第1画像データに対して、ユーザが操作部を用いて特定した情報を、前記所定の特徴に関する前記情報として取得する、
データ作成システム。
【請求項12】
変形後の前記オブジェクトの輪郭形状を指定する情報を取得する取得部を更に備え、
前記変形部は、前記輪郭形状に前記オブジェクトの形状を変形した前記第2画像データを生成する、
請求項1~11のいずれか1項に記載のデータ作成システム。
【請求項13】
請求項1~12のいずれか1項に記載のデータ作成システムで作成された前記第2画像データとしての前記学習用データを含む学習用データセットを用いて、前記学習済みモデルを生成する、
学習システム。
【請求項14】
請求項13に記載の学習システムで生成された前記学習済みモデルを用いて、認識対象となる前記オブジェクトにおける特定状態に関する推定を行う、
推定システム。
【請求項15】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法であって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップを含み、
前記変形ステップでは、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記変形ステップでは、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形した前記第2画像データを生成する、
データ作成方法。
【請求項16】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法であって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップを含み、
前記変形ステップでは、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記変形ステップでは、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形した前記第2画像データを生成する、
データ作成方法。
【請求項17】
第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法であって、
前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップと、
所定の特徴に関する情報を取得する取得ステップと、を含み、
前記変形ステップでは、前記取得ステップで取得した前記情報に基づいて、前記オブジェクトの形状の変形前後で前記第1画像データにおける前記所定の特徴が維持されるように、前記第2画像データを生成し、
前記取得ステップでは、表示部により画面表示される前記第1画像データに対して、ユーザが操作部を用いて特定した情報を、前記所定の特徴に関する前記情報として取得する、
データ作成方法。
【請求項18】
1以上のプロセッサに、請求項15~17のいずれか1項に記載のデータ作成方法を実行させるためのプログラム。
【請求項19】
第1処理装置と、第2処理装置と、を備え、
前記第1処理装置は、前記取得部を有し、
前記第2処理装置は、前記変形部を有し、
前記第1処理装置は、前記所定の特徴に関する情報を、前記第2処理装置に送信する、
請求項10又は11に記載のデータ作成システム。
【請求項20】
請求項19に記載のデータ作成システムにおける前記第1処理装置としての、
処理装置。
【請求項21】
請求項19に記載のデータ作成システムにおける前記第2処理装置としての、
処理装置。
【請求項22】
第1画像データを学習用データとして含む学習用データセットを用いて、オブジェクトに関する学習済みモデルを生成する学習システムであって、前記第1画像データは、前記オブジェクトを示す画素領域を含み、
前記学習システムは、前記第1画像データから前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形して生成される、
学習システム。
【請求項23】
第1画像データを学習用データとして含む学習用データセットを用いて、オブジェクトに関する学習済みモデルを生成する学習システムであって、前記第1画像データは、前記オブジェクトを示す画素領域を含み、
前記学習システムは、前記第1画像データから前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形して生成される、
学習システム。
【請求項24】
認識対象となるオブジェクトにおける特定状態に関する推定を行う推定システムであって、
前記推定システムは、前記オブジェクトを示す画素領域を含む第1画像データから、前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した第2画像データに対して、前記オブジェクトの前記特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形して生成される、
推定システム。
【請求項25】
認識対象となるオブジェクトにおける特定状態に関する推定を行う推定システムであって、
前記推定システムは、前記オブジェクトを示す画素領域を含む第1画像データから、前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した第2画像データに対して、前記オブジェクトの前記特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力し、
前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含み、
前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形して生成される、
推定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラムに関する。より詳細には本開示は、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる画像データを作成するデータ作成システム、当該学習済みモデルを生成する学習システム、当該学習済みモデルを用いる推定システムに関する。また本開示は、当該データ作成システムに用いられる処理装置に関する。また本開示は、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる画像データを作成するデータ作成方法、及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、X線画像物体認識システムが開示されている。このX線画像物体認識システムでは、学習ネットワークが物体のX線画像と正解ラベルとを含む学習セットを用いて機械学習を行う。また特許文献1には、学習データが少ない場合、学習データを増やす処理として、元画像に対して移動、回転、拡大・縮小、反転等を加えることによって画像数を擬似的に増やすデータ拡張(Data augmentation)を行うことが開示されている。
【0003】
さらに特許文献1には、元画像に対して移動、回転、拡大・縮小、反転等のデータ拡張を行うと、実際にはあり得ないシーンの画像が作成され、意図しない学習が行われて、推論時には、物体の認識性能が低下することについて開示されている。そこで、このX線画像物体認識システムでは、データ拡張を行う際のパラメータ(X線画像の縮小・拡大率、シフト量、回転角のうちの少なくとも1つ)を適切に設定することにより、意図しないデータ拡張が行われるのを回避する。
【0004】
特許文献1のX線画像物体認識システムでは、単にX線画像の縮小・拡大率、シフト量、及び回転角のパラメータを設定するだけである。そのため、物体(オブジェクト)によっては依然として実際にはあり得ない画像が作成される可能性があり、結果的に、推論フェーズにおいてオブジェクトに関する認識性能が低下し得る。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2020-14799号公報
【発明の概要】
【0006】
本開示は上記事由に鑑みてなされ、オブジェクトに関する認識性能の低下の抑制を図ることができる、データ作成システム、学習システム、推定システム、処理装置、データ作成方法、及びプログラムを提供することを目的とする。
【0007】
本開示の一態様のデータ作成システムは、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成する。前記データ作成システムは、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部を備える。前記変形部は、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成する。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記変形部は、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形した前記第2画像データを生成する。
本開示の一態様のデータ作成システムは、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成する。前記データ作成システムは、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部を備える。前記変形部は、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成する。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記変形部は、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形した前記第2画像データを生成する。
本開示の一態様のデータ作成システムは、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成する。前記データ作成システムは、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形部と、所定の特徴に関する情報を取得する取得部と、を備える。前記変形部は、前記取得部で取得した前記情報に基づいて、前記オブジェクトの形状の変形前後で前記第1画像データにおける前記所定の特徴が維持されるように、前記第2画像データを生成する。前記取得部は、表示部により画面表示される前記第1画像データに対して、ユーザが操作部を用いて特定した情報を、前記所定の特徴に関する前記情報として取得する。
【0008】
本開示の一態様の学習システムは、上記のデータ作成システムで作成された前記第2画像データとしての前記学習用データを含む学習用データセットを用いて、前記学習済みモデルを生成する。
【0009】
本開示の一態様の推定システムは、上記の学習システムで生成された前記学習済みモデルを用いて、認識対象となる前記オブジェクトにおける特定状態に関する推定を行う。
【0010】
本開示の一態様の処理装置は、前記データ作成システムにおいて前記所定の特徴に関する情報を取得する取得部を有する第1処理装置と前記変形部を有する第2処理装置とのうちの、前記第1処理装置である。
【0011】
本開示の一態様の処理装置は、前記データ作成システムにおいて前記所定の特徴に関する情報を取得する取得部を有する第1処理装置と前記変形部を有する第2処理装置とのうちの、前記第2処理装置である。
【0012】
本開示の一態様の学習システムは、第1画像データを学習用データとして含む学習用データセットを用いて、オブジェクトに関する学習済みモデルを生成する学習システムである。前記第1画像データは、前記オブジェクトを示す画素領域を含む。前記学習システムは、第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果同じ推定結果を出力する。前記第2画像データは、前記第1画像データから前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した画像データである。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形して生成される。
本開示の一態様の学習システムは、第1画像データを学習用データとして含む学習用データセットを用いて、オブジェクトに関する学習済みモデルを生成する学習システムである。前記第1画像データは、前記オブジェクトを示す画素領域を含む。前記学習システムは、第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力する。前記第2画像データは、前記第1画像データから前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した画像データである。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形して生成される。
【0013】
本開示の一態様の推定システムは、認識対象となるオブジェクトにおける特定状態に関する推定を行う推定システムである。前記推定システムは、第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果同じ推定結果を出力する。前記第2画像データは、前記オブジェクトを示す画素領域を含む第1画像データから、前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した画像データである。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形して生成される。
本開示の一態様の推定システムは、認識対象となるオブジェクトにおける特定状態に関する推定を行う推定システムである。前記推定システムは、第2画像データに対して、前記オブジェクトの特定状態に関する推定について前記第1画像データに対する推定結果と同じ推定結果を出力する。前記第2画像データは、前記オブジェクトを示す画素領域を含む第1画像データから、前記第1画像データにおける所定の特徴が維持されるように前記オブジェクトの形状を変形した画像データである。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記第2画像データは、前記第1画像データから、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形して生成される。
【0014】
本開示の一態様のデータ作成方法は、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法である。前記データ作成方法は、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップを含む。前記変形ステップでは、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成する。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記変形ステップでは、前記オブジェクトの形状を、前記線状の特徴に沿った1つ以上の仮想線に沿って変形した前記第2画像データを生成する。
本開示の一態様のデータ作成方法は、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法である。前記データ作成方法は、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップを含む。前記変形ステップでは、前記オブジェクトの形状の変形前後で前記第1画像データにおける所定の特徴が維持されるように、前記第2画像データを生成する。前記所定の特徴は、前記第1画像データに含まれる少なくとも1つの線状の特徴を含む。前記変形ステップでは、前記オブジェクトの形状を、前記線状の特徴に沿った2つ以上の仮想線が並ぶ並び方向に沿って変形した前記第2画像データを生成する。
本開示の一態様のデータ作成方法は、第1画像データから、オブジェクトに関する学習済みモデルを生成するための学習用データとして用いられる第2画像データを作成するデータ作成方法である。前記データ作成方法は、前記オブジェクトを示す画素領域を含む前記第1画像データから、前記オブジェクトの形状を変形した前記第2画像データを生成する変形ステップと、所定の特徴に関する情報を取得する取得ステップと、を含む。前記変形ステップでは、前記取得ステップで取得した前記情報に基づいて、前記オブジェクトの形状の変形前後で前記第1画像データにおける前記所定の特徴が維持されるように、前記第2画像データを生成する。前記取得ステップでは、表示部により画面表示される前記第1画像データに対して、ユーザが操作部を用いて特定した情報を、前記所定の特徴に関する前記情報として取得する。
【0015】
本開示の一態様のプログラムは、1以上のプロセッサに、上記のデータ作成方法を実行させるためのプログラムである。
【図面の簡単な説明】
【0016】
図1図1は、一実施形態に係るデータ作成システムを備える評価システム全体の概略ブロック構成図である。
図2図2A及び図2Bは、同上のデータ作成システムに入力される第1画像データの平面図である。
図3図3A及び図3Bは、同上のデータ作成システムにおける変形部による変形処理を説明するための概念図である。
図4図4は、同上のデータ作成システムにおける変形部により生成された第2画像データの平面図である。
図5図5は、同上のデータ作成システムの動作を説明するためのフローチャート図である。
図6図6は、同上のデータ作成システムにおける変形例1に入力される第1画像データの平面図である。
図7図7A図7Cは、同上の変形例1における変形部による変形処理を説明するための概念図である。
図8図8Aは、同上のデータ作成システムにおける変形例2に入力される第1画像データの平面図である。図8Bは、外部から指定される入力データの模式図である。図8Cは、同上の変形例2における変形部により生成された第2画像データの平面図である。
図9図9は、同上のデータ作成システムにおける変形例3の概略ブロック構成図である。
【発明を実施するための形態】
【0017】
(1)概要
以下の実施形態において説明する各図は、模式的な図であり、各図中の各構成要素の大きさ及び厚さそれぞれの比が、必ずしも実際の寸法比を反映しているとは限らない。
【0018】
本実施形態に係るデータ作成システム1は、図1に示すように、第1画像データD11から、オブジェクト4(図2A及び図2B参照)に関する学習済みモデルM1を生成するための学習用データとして用いられる第2画像データD12を作成する。つまり、第2画像データD12は、モデルを機械学習するために用いられる学習用データである。本開示でいう「モデル」は、認識対象(オブジェクト4)に関するデータが入力されると、認識対象がどのような状態にあるかを推定し、推定結果(認識結果)を出力するプログラムである。「学習済みモデル」は、学習用データを用いた機械学習が完了したモデルをいう。また「学習用データ(セット)」は、モデルに入力される入力情報(画像データD1)と、入力情報に付与されたラベルと、を組み合わせたデータセットであり、いわゆる教師データである。つまり、本実施形態では、学習済みモデルM1は、教師あり学習による機械学習が完了したモデルである。
【0019】
本実施形態では一例として、認識対象であるオブジェクト4は、図2A及び図2Bに示すように、ビードB10である。ビードB10は、金属の溶接材B13を用いて2以上の母材(ここでは第1金属板B11及び第2金属板B12)を溶接した際に、第1金属板B11及び第2金属板B12の境目B14(溶接箇所)に形成される。ビードB10の大きさ及び形状は、主に溶接材B13に依存する。したがって、学習済みモデルM1は、ビードB10を含む認識対象画像データD3が入力されると、ビードB10の状態(特定状態)を推定し、推定結果を出力する。具体的には、学習済みモデルM1は、推定結果として、ビードB10が良品であるか不良品であるか、不良品である場合は不良の種類を出力する。つまり、学習済みモデルM1は、ビードB10が良品であるか否か、言い換えれば、溶接が正しく行われたか否かを検査する溶接外観検査のために用いられる。
【0020】
ビードB10が良品であるか否かは、一例として、ビードB10の長さ、ビードB10の高さ、ビードB10の立ち上がりの角度、ビードB10ののど厚、ビードB10の余盛、及びビードB10の溶接箇所の位置ずれ(ビードB10の始端のずれを含む)が許容範囲に収まっているか否かにより判定される。例えば、上記に列挙した条件のうち1つでも許容範囲に収まっていなければ、ビードB10が不良品であると判定される。また、ビードB10が良品であるか否かは、一例として、ビードB10のアンダーカットの有無、ビードB10のピットの有無、ビードB10のスパッタの有無、及びビードB10の突起の有無等に基づいて判定される。例えば、上記に列挙した不良部分のうち1つでも発生した場合、ビードB10が不良品であると判定される。
【0021】
ところで、モデルの機械学習を行うためには、認識対象の不良品を含む多数の画像データを学習用データとして用意する必要がある。しかしながら、認識対象の不良品が発生する頻度が少ない場合、認識率の高い学習済みモデルM1を生成するために必要な学習用データが不足しがちである。そこで、実際にビードB10を撮像装置(ラインセンサカメラ6)により撮像することで得られる学習用データ(以下、「第1画像データD11」又は「オリジナル学習用データ」と呼ぶ)についてデータ拡張(Data Augmentation)処理を実行することにより、学習用データの数を増やしてモデルの機械学習を行うことが考えられる。データ拡張処理は、学習用データに対して平行移動、拡大・縮小、回転、反転、又はノイズの付与等の処理(変換処理)を加えることで、学習用データを水増しする処理をいう。
【0022】
第1画像データD11は、例えば、距離画像データである。ここで、オリジナルの第1画像データD11には、距離画像センサを含む撮像装置(ラインセンサカメラ6)のスキャニング動作時における性能に応じて、多数の薄い直線状のスジ7(図2A及び図2B等)が入り得る。図2A及び図2B等の図面では、説明の便宜上、スジ7の方向性が分かりやすいように、多数存在するスジ7のうち、いくつかのスジ7だけ実線で模式的に示しているが、厳密にスジ7の位置や本数を規定する趣旨ではない。
【0023】
このような「スジ」は、例えば、ラインセンサカメラ6を保持する多軸ロボットの手先のブレにより生じ得る。ラインセンサカメラ6が、撮像対象物に対してある一ラインのスキャニングを実行し、次のラインのスキャニングに移った際に、上記ブレにより、撮像対象物までの距離に若干の差が生じる。その結果、これらのスキャニングのライン(スキャンライン)間の境界において、「スジ」が、画像データ内で(距離画像センサからオブジェクト4までの距離に応じた)画素値の差として浮かび出る。各スキャンラインの幅は、ロボットの送り方向の分解能等に依存するが、例えばコンマ数mmである。
【0024】
そして、データ拡張処理で、多数の薄い直線状のスジ7が存在する第1画像データD11について、オブジェクト4の形状の変形を行うと、直線状のスジ7も意図しない歪な形に変わり得る。結果的に、歪な形のスジ7を反映した学習済みモデルが作成される可能性がある。しかし、実際に入力され得る認識対象画像データD3には、歪な形のスジ7は存在せず、推論時に、オブジェクト4に関する認識性能が低下してしまう可能性がある。
【0025】
本実施形態のデータ作成システム1は、図1に示すように、オブジェクト4を示す画素領域R1(図2A参照)を含む第1画像データD11から、オブジェクト4の形状を変形した第2画像データD12を生成する変形部12を備える。変形部12は、オブジェクト4の形状の変形前後で第1画像データD11における所定の特徴が維持されるように、第2画像データD12を生成する。
【0026】
ここでは一例として、所定の特徴は、第1画像データD11に含まれる少なくとも1つの線状の特徴5を含む。特にここでは、線状の特徴5は、直線状の特徴51を含み、隣り合う2つのスキャンライン間の境界に関する直線状のスジ7が、上記の直線状の特徴51に相当する。
【0027】
要するに、第1画像データD11は、例えばオブジェクト4の輪郭等の変形後でも実際に存在し得る領域と、変形してしまうと実際には存在し得ない領域とを含んでおり、上記の直線状のスジ7は、後者に該当する一例である。
【0028】
本実施形態では、オブジェクト4の形状の変形前後で所定の特徴が維持されるので、実際に存在し得る画像データにより近い形で、疑似的にデータ作成(例えばデータ拡張)を行うことができる。結果的に、オブジェクト4に関する認識性能の低下の抑制を図ることができる。
【0029】
また本実施形態に係る学習システム2(図1参照)は、データ作成システム1で作成された第2画像データD12としての学習用データを含む学習用データセットを用いて、学習済みモデルM1を生成する。したがって、オブジェクト4に関する認識性能の低下の抑制を図ることが可能な学習システム2を提供できる。学習済みモデルM1を生成するための学習用データは、第2画像データD12(拡張データ)だけでなく、オリジナルの第1画像データD11も含み得る。言い換えると、本実施形態における画像データD1は、少なくとも第2画像データD12を含み、第1画像データD11及び第2画像データD12の両方を含み得る。
【0030】
また本実施形態に係る推定システム3(図1参照)は、学習システム2で生成された学習済みモデルM1を用いて、認識対象となるオブジェクト4(ここでは一例としてビードB10)における特定状態に関する推定を行う。したがって、オブジェクト4に関する認識性能の低下の抑制を図ることが可能な推定システム3を提供できる。
【0031】
また本実施形態に係るデータ作成方法は、第1画像データD11から、オブジェクト4に関する学習済みモデルM1を生成するための学習用データとして用いられる第2画像データD12を作成するデータ作成方法である。データ作成方法は、オブジェクト4を示す画素領域R1を含む第1画像データD11から、オブジェクト4の形状を変形した第2画像データD12を生成する変形ステップを含む。変形ステップでは、オブジェクト4の形状の変形前後で第1画像データD11における所定の特徴が維持されるように、第2画像データD12を生成する。この構成によれば、オブジェクト4に関する認識性能の低下の抑制を図ることが可能なデータ作成方法を提供できる。データ作成方法は、コンピュータシステム(データ作成システム1)上で用いられる。つまり、データ作成方法は、プログラムでも具現化可能である。本実施形態に係るプログラムは、本実施形態に係るデータ作成方法を、1以上のプロセッサに実行させるためのプログラムである。
【0032】
(2)詳細
以下、本実施形態に係るデータ作成システム1を備える全体のシステム(以下、「評価システム100」と呼ぶ)について、図1図5を参照しながら詳しく説明する。
【0033】
(2.1)全体構成
評価システム100は、図1に示すように、データ作成システム1と、学習システム2と、推定システム3と、1又は複数台のラインセンサカメラ6(図1では1台のみ図示)とを備える。
【0034】
データ作成システム1、学習システム2、及び推定システム3は、サーバ等から構築されることを想定する。ここでいう「サーバ」は、1台のサーバ装置から構成されることを想定する。つまり、データ作成システム1、学習システム2、及び推定システム3の主な機能が、1台のサーバ装置に設けられていることを想定する。
【0035】
ただし、「サーバ」は、複数台のサーバ装置から構成されてもよい。具体的には、データ作成システム1、学習システム2、及び推定システム3の機能が、それぞれ個別のサーバ装置に設けられてもよいし、これらのうちの2つのシステムが1台のサーバ装置に設けられてもよい。またそのようなサーバ装置が、例えばクラウド(クラウドコンピューティング)を構築してもよい。
【0036】
またサーバ装置は、溶接現場となる工場内に設置されてもよいし、工場の外部(例えば事業本部)に設置されてもよい。データ作成システム1、学習システム2、及び推定システム3の機能がそれぞれ個別のサーバ装置に設けられている場合、各サーバ装置は、他のサーバ装置と通信可能に接続されていることが望ましい。
【0037】
データ作成システム1は、オブジェクト4に関する学習済みモデルM1を生成するための学習用データとして用いられる画像データD1を作成するように構成される。本開示でいう「学習用データの作成」は、オリジナル学習用データとは別に新しい学習用データを生成することの他に、オリジナル学習用データを更新することにより新しい学習用データを生成することを含み得る。
【0038】
ここでいう学習済みモデルM1は、例えばニューラルネットワークを用いたモデル、又は多層ニューラルネットワークを用いた深層学習(ディープラーニング)により生成されるモデルを含み得る。ニューラルネットワークは、例えばCNN(Convolutional Neural Network:畳み込みニューラルネットワーク)、又はBNN(Bayesian Neural Network:ベイズニューラルネットワーク)等を含み得る。学習済みモデルM1は、ASIC(Application Specific Integrated Circuit)又はFPGA(Field-Programmable Gate Array)等の集積回路に、学習済みのニューラルネットワークを実装することで実現されている。学習済みモデルM1は、ディープラーニングにより生成されるモデルに限定されない。学習済みモデルM1は、サポートベクターマシン、又は決定木等により生成されるモデルでもよい。
【0039】
ここでは、データ作成システム1は、上述の通り、オリジナル学習用データ(第1画像データD11)に対してデータ拡張処理を実行して、学習用データを水増しする機能を有している。以下では、データ作成システム1を備える評価システム100を利用する者を、単に「ユーザ」と呼ぶことがある。ユーザは、例えば、工場内で溶接工程等の製造工程を監視するオペレータ、又は管理責任者等に相当し得る。
【0040】
データ作成システム1は、図1に示すように、処理部10と、通信部13と、表示部14と、操作部15とを備える。
【0041】
図1の例では、学習用データ(画像データD1)を格納(記憶)するための格納部がデータ作成システム1の外部に設けられている。ただし、データ作成システム1が格納部を更に備えてもよく、その場合、格納部は処理部10が内蔵するメモリでもよい。画像データD1を格納する格納部は、EEPROM(Electrically Erasable Programmable Read-Only Memory)のような書き換え可能な不揮発性メモリを含む。
【0042】
データ作成システム1の一部の機能は、サーバと通信可能な情報端末に分散的に設けられてもよい。本開示でいう「情報端末」は、パーソナルコンピュータ(ノートパソコン又は据置型のパソコン)、スマートフォンやタブレット端末等の携帯型の端末等を含み得る。ここでは、表示部14及び操作部15の機能が、ユーザが使用する情報端末に設けられている。情報端末には、サーバと通信するための専用のアプリケーションソフトが予めインストールされる。
【0043】
処理部10は、1以上のプロセッサ(マイクロプロセッサ)と1以上のメモリとを含むコンピュータシステムにより実現され得る。つまり、1以上のプロセッサが1以上のメモリに記憶された1以上のプログラム(アプリケーション)を実行することで、処理部10として機能する。プログラムは、ここでは処理部10のメモリに予め記録されているが、インターネット等の電気通信回線を通じて、又はメモリカード等の非一時的な記録媒体に記録されて提供されてもよい。
【0044】
処理部10は、通信部13、表示部14、及び操作部15に関する制御処理を実行する。処理部10の機能は、サーバにあることを想定する。また処理部10は、画像処理を実行する機能を有しており、図1に示すように、取得部11と、変形部12とを有している。取得部11及び変形部12の詳細については、次の欄で説明する。
【0045】
表示部14は、液晶ディスプレイ又は有機EL(Electro-Luminescence)ディスプレイを構成する。表示部14は、上述の通り、情報端末に設けられている。表示部14は、タッチパネル式のディスプレイでもよい。表示部14は、第1画像データD11及び第2画像データD12に関する情報を表示(出力)する。表示部14は、第1画像データD11及び第2画像データD12以外にも、学習用データの生成に関連する種々の情報を表示する。
【0046】
通信部13は、1又は複数台のラインセンサカメラ6と直接的に、或いは生産管理システムの機能を有した別サーバ等を介して間接的に通信するための通信インタフェースである。通信部13の機能は、処理部10と同じサーバにあることを想定するが、例えば情報端末に設けられてもよい。通信部13は、ラインセンサカメラ6から、オリジナル学習用データである第1画像データD11を受信する。
【0047】
第1画像データD11は、上述の通り、一例として距離画像データであり、オブジェクト4を示す画素領域R1を含む。ただし、第1画像データD11は、輝度画像データでもよい。上述の通り、オブジェクト4は、溶接材B13を用いて第1金属板B11及び第2金属板B12を溶接した際に、第1金属板B11及び第2金属板B12の境目B14に形成されるビードB10である。すなわち、第1画像データD11は、ラインセンサカメラ6の距離画像センサで撮像された、ビードB10を示す画素領域R1を含むデータである。
【0048】
ラインセンサカメラ6で撮像されたオブジェクト4に関する大量の画像データの中からの、データ拡張処理を適用する対象となる第1画像データD11の選別は、例えば、ユーザからの指示に応じて行われる。評価システム100は、選別に関する指示を受け付けるユーザインタフェース(操作部15でもよい)を備えることが好ましい。
【0049】
操作部15は、マウス、キーボード、及びポインティングデバイス等を含む。操作部15は、上述の通り、例えばユーザが使用する情報端末に設けられている。表示部14が、情報端末のタッチパネル式のディスプレイである場合、操作部15の機能を兼ねてもよい。
【0050】
学習システム2は、データ作成システム1で作成された複数の画像データD1(第2画像データD12を複数含む)を含む学習用データセットを用いて、学習済みモデルM1を生成する。学習用データセットは、複数の画像データD1に対して「良品」又は「不良品」、さらに不良品の場合には不良の種類及び不良の位置を示すラベルを付与することで生成される。不良の種類は、アンダーカット、ピット、又はスパッタ等である。ラベルの付与に関する作業は、ユーザによって操作部15等のユーザインタフェースを介して評価システム100に対して行われる。一変形例において、ラベルの付与に関する作業は、画像データD1に対してラベルを付与するための機能を有する学習済みモデルによって、行われてもよい。学習システム2は、学習用データセットを用いて、オブジェクト4(ビードB10)の状態(良状態、不良状態、不良の種類、及び不良の位置等)を機械学習することにより、学習済みモデルM1を生成する。
【0051】
学習システム2は、新たに取得した学習用データを含む学習用データセットを用いて再学習を行うことで、学習済みモデルM1の性能の向上を図ってよい。例えばオブジェクト4(ビードB10)に新しい種類の不良が見つかれば、学習システム2に、新しい不良に関する再学習を行わせることも可能である。
【0052】
推定システム3は、学習システム2で生成された学習済みモデルM1を用いて、認識対象となるオブジェクト4における特定状態(良状態、不良状態、不良の種類、不良の位置)に関する推定を行う。推定システム3は、1又は複数台のラインセンサカメラ6と直接的に、或いは生産管理システムの機能を有した別サーバ等を介して間接的に通信可能に構成される。推定システム3は、実際に溶接工程を終えて形成されたビードB10がラインセンサカメラ6で撮像された認識対象画像データD3を受信する。
【0053】
推定システム3は、学習済みモデルM1を用いて、認識対象画像データD3に写るオブジェクト4が「良品」又は「不良品」のどちらであるか、さらに不良品の場合、どの種類の不良であるか、不良がどの位置にあるかを推定する。推定システム3は、認識対象画像データD3に対する認識結果(推定結果)を、ユーザが利用する情報端末、又は生産管理システム等に出力する。ユーザは、情報端末を通じて、推定結果を確認できる。また生産管理システムが、推定結果を取得して「不良品」と推定された溶接部品については、次の工程に搬送される前に、破棄するように生産設備を制御してもよい。
【0054】
(2.2)データ拡張処理
処理部10は、データ拡張処理として「変形処理」を実行する機能を有している。具体的には、処理部10は、図1に示すように、取得部11と、変形部12とを有している。
【0055】
取得部11は、所定の特徴に関する情報(以下では、「維持情報」と呼ぶ)を取得するように構成される。ここでは一例として、所定の特徴は、第1画像データD11(図2A参照)に含まれる少なくとも1つの線状の特徴5を含み、さらに線状の特徴5は、直線状の特徴51を含む。上述の通り、隣り合う2つのスキャンライン間の境界に関する直線状のスジ7が、直線状の特徴51に相当する。つまり、直線状の特徴51とは、オブジェクト4を撮像したラインセンサカメラ6に依存して第1画像データD11上における複数のスキャンライン間の境界に関する特徴である。
【0056】
図2Aでは、第1金属板B11及び第2金属板B12は、X軸(横方向)に沿って並んでいて、ビードB10は、Y軸(縦方向)に沿って長尺に形成されている。図2Aでは、多数の直線状のスジ7が、X軸に沿って延びている。つまり、本実施形態では一例として、所定の特徴は、複数の線状の特徴5を含み、特に複数の直線状の特徴51を含む。複数の線状の特徴5は、互いに線形性について相関がある。ここでは、複数の直線状の特徴51は、互いに略平行な線形性を有する。
【0057】
取得部11は、ユーザにより操作部15を介して実行された操作入力に応じて、維持情報を取得する。ユーザは、例えば、表示部14により画面表示される第1画像データD11を目視で確認し、スキャンラインに起因して発生している多数の直線状のスジ7の方向及び位置等を特定する。ユーザは、操作部15を用いて、スジ7の方向(例えばX軸に対する傾き等)を指定するための操作入力を実行する。すなわち、維持情報は、スジ7の方向(この場合、X軸に沿った方向)を指定する情報を含む。維持情報は、スジ7の線形を表す関数データを含んでもよい。或いは維持情報は、維持すべき1又は複数のスジ7の画素領域の位置座標を直接指定する情報を含んでもよい。スジ7の直接指定を行う場合の一具体例では、まず、スジ7に含まれる2点を、ユーザがマウスポインタで特定してマウスをクリックすることで、指定する。取得部11は、指定された2点を通る直線を算出し、算出した直線を第1画像データD11に重畳させる。表示部14は、直線が重畳された第1画像データD11と、終了ボタンとを、表示する。ユーザは、表示された直線を確認し、問題がなければ、マウスポインタで終了ボタンを選択してマウスをクリックする。取得部11は、算出した直線を、維持情報として取得する。これにより、ユーザは、維持すべきスジ7を直接指定することができる。
【0058】
処理部10は、第1画像データD11から、スジ7の画素領域(スジ7に関する特徴量)を自動的に抽出する抽出部の機能を有してもよい。抽出部は、例えば、スジ7を特定するための情報を処理部10のメモリ等に記憶し、その情報を用いて、第1画像データD11から維持情報を自動的に抽出する。その場合、取得部11は、抽出部から維持情報を取得する。この構成の場合、ユーザがスジ7の方向等を指定する手間が省ける。
【0059】
変形部12は、第1画像データD11から、オブジェクト4(ビードB10)の形状を変形した第2画像データD12を生成するように構成される。つまり、第1画像データD11のビードB10の形状を画像加工(射影変換又はアフィン変換等の画像処理)により変形して、第2画像データD12が生成される。変形部12は、オブジェクト4の形状の変形前後で第1画像データD11における所定の特徴が維持されるように、第2画像データD12を生成する。変形部12は、取得部11で取得した維持情報に基づいて第2画像データD12を生成する。
【0060】
ここでは変形部12は、取得部11で取得した維持情報に基づき、直線状の特徴51が維持されるように、ビードB10の形状を変形する(変形処理)。
【0061】
次に変形処理についてより具体的に説明する。変形部12は、図2Bに示すように、第1画像データD11上に複数の仮想線L1(直線)と複数の基準点P1とを設定し、その設定後に、以下の2種類の変形(第1変形及び第2変形)を実行するように構成される。つまり、変形部12は、仮想線(後述する第2線L12)上に複数の基準点P1を設定し、複数の基準点P1の少なくとも1つの基準点P1を移動させることにより、オブジェクト4の形状の変形を行う。
【0062】
複数の仮想線L1は、各々がY軸に平行な一対の第1線L11と、各々がX軸に平行な8本の第2線L12と、を含む。変形部12は、8本の第2線L12を、Y軸に沿って等間隔に並ぶように設定する。ただし、仮想線L1の本数は、特に限定されない。Y軸の方向に隣り合う2本の第2線L12の間隔は、記憶部(例えば処理部10のメモリ)に予め設定されてもよいし、ユーザからの操作部15による指定に応じて設定変更されてもよい。間隔の設定変更に応じて、第2線L12の本数も変更されてよい。以下では、説明の便宜上、8本の第2線L12を、それぞれ、図2Bの上から順に第2線L121~128と呼ぶことがある。
【0063】
本実施形態の変形部12は、維持情報(直線状の特徴51)に基づき、スジ7の方向(この場合、X軸に沿った方向)に沿うように8本の第2線L12の向きを設定する。
【0064】
ここでは、一対の第1線L11と、8本の第2線L12のうちY軸の方向の両端にある2本の第2線L121、L128とで、ビードB10の周囲を囲むように設定する。以下、一対の第1線L11と上記2本の第2線L121、L128とからなる矩形枠をバウンディングボックスBX1(図2B参照)と呼ぶことがある。変形部12は、画素値の差に基づき、ビードB10の輪郭形状を特定する。変形部12は、例えばエッジ検出処理等の画像処理によってビードB10の輪郭形状を特定する。そして、変形部12は、第2線L12がスジ7の方向に沿うように、かつビードB10の全体を囲むようにバウンディングボックスBX1を規定する(図2B参照)。
【0065】
複数の基準点P1は、一対の第1線L11と、8本の第2線L12とがそれぞれ交わる交点に設定される合計16つの第1点P11と、8本の第2線L12と、ビードB10の輪郭とが交わる交点に設定される合計16つの第2点P12とを含む。ただし、第2線L121は、ビードB10の輪郭との交点が存在しないため、第2線L121の第2点P12は、第2線L122の第2点P12と、X軸の方向において同じ位置に設定される。同様に、第2線L128は、ビードB10の輪郭との交点が存在しないため、第2線L128の第2点P12は、第2線L127の第2点P12と、X軸の方向において同じ位置に設定される。
【0066】
本実施形態では一例として、変形部12は、規定したバウンディングボックスBX1からビードB10の輪郭がはみ出ないように変形処理を実行する。
【0067】
第1変形は、図3Aに示すように、隣り合う2つの第2線L12間の距離が長く、或いは短くなるような、拡大/縮小変形である。図3Aの例では、変形部12は、第2線L121、L122間の距離を、図2Bよりも長くする、つまり第2線L121、L122間の範囲内のオブジェクト4の領域がY軸に沿って拡大するように変形する。変形部12は、オブジェクト4の領域の拡大(引き延ばし)の際に線形補間等で適宜に画素の補間を行う。この場合、第2線L122は、当該線上の4つの基準点P1と共にY軸の正の側(下方)へ移動する。また図3Aの例では、変形部12は、第2線L122、L123間の距離を、図2Bよりも短くする、つまり第2線L122、L123間の範囲内のオブジェクト4の領域がY軸に沿って縮小するように変形する。この場合、第2線L123は、当該線上の4つの基準点P1と共にY軸の負の側(上方)へ移動する。
【0068】
他の第2線L12について、図3Aの例では、第2線L124は、当該線上の4つの基準点P1と共にY軸の負の側(上方)へ移動する。第2線L125、L126、及びL127は、各線上の4つの基準点P1と共にY軸の正の側(下方)へ移動する。
【0069】
言い換えると、変形部12は、オブジェクト4の形状を、線状の特徴5に沿った2つ以上の仮想線(第2線L12)が並ぶ並び方向A1(Y軸)に沿って変形した第2画像データD12を生成する。そのため、線状の特徴5の線形性が維持される。
【0070】
どの程度の拡大/縮小を実行するかを指定するパラメータについては、記憶部(例えば処理部10のメモリ)に予め設定されてもよいし、処理部10が自動的にランダムで設定してもよいし、ユーザからの操作部15による指定に応じて設定されてもよい。
【0071】
第2変形は、図3Bに示すように、各第2線L12上にある4つの基準点P1のうち、少なくとも1つの基準点P1(ここでは一例としてビードB10の輪郭との交点に設定される2つの第2点P12)を当該第2線L12上で移動させるような変形である。つまり、変形部12は、オブジェクト4の形状を、線状の特徴5(ここでは直線状の特徴51)に沿った1つ以上の仮想線(第2線L12)に沿って変形した第2画像データD12を生成する。したがって、第2変形は、線状の特徴5に沿った線形性が維持される変形である。第2変形は、例えば、一対の第1線L11と8つの第2線L12とで構成される7つの矩形領域に対して二次元射影変換を行って台形状に変形することで、線状の特徴5の線形性が維持される。
【0072】
図3Bの例では、変形部12は、第2線L121、L122の各々の2つの第2点P12が互いに近づく方向に移動する、つまり当該2つの第2点P12間の範囲内のオブジェクト4の領域がX軸に沿って縮小するように変形する。
【0073】
また図3Bの例では、変形部12は、第2線L123の2つの第2点P12がいずれもX軸の負の側に移動する、つまり当該2つの第2点P12間の範囲内のオブジェクト4の領域がX軸の負の側に移動するように変形する。
【0074】
また図3Bの例では、変形部12は、第2線L124、L125の各々の2つの第2点P12が互いに離れる方向に移動する、つまり当該2つの第2点P12間の範囲内のオブジェクト4の領域がX軸に沿って拡大するように変形する。
【0075】
さらに図3Bの例では、変形部12は、第2線L126~L128の各々の2つの第2点P12がいずれもX軸の正の側に移動する、つまり当該2つの第2点P12間の範囲内のオブジェクト4の領域がX軸の正の側に移動するように変形する。
【0076】
各基準点P1(第2点P12)の、第2線L12上における移動量は、記憶部(例えば処理部10のメモリ)に予め設定されてもよいし、処理部10が自動的にランダムで設定してもよいし、ユーザからの操作部15による指定に応じて設定されてもよい。移動量には、上限値(例えば第2線L12の長さの50%等)が設定されていることが望ましい。
【0077】
図4は、第1変形、及び第2変形を経て作成された第2画像データD12の平面図の一例を示す。
【0078】
本実施形態では、変形部12は、仮想線(第2線L12)上に設定された複数の基準点P1の並び順を維持しながら、少なくとも1つの基準点P1を移動させる。つまり、変形部12は、例えば、ある第2線L12上の2つの第2点P12の一方が、他方を超えて反対側に移動したり、或いは第1点P11を超えて反対側に移動したりすることがないように基準点P1を移動させる。複数の基準点P1の並び順を維持して変形を行うことで、第2画像データD12が、実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0079】
ここでは変形部12は、第1変形及び第2変形の両方を行って第2画像データD12を作成することを想定する。ただし、変形部12は、第1変形及び第2変形の何れか一方のみを行ってもよい。また、変形部12は、第1変形及び第2変形をこの順番に行うことを想定するが、処理の順番は特に限定されず、先に第2変形を行ってから第1変形を行ってもよい。データ作成システム1は、操作部15等を通じて、第1変形及び第2変形のいずれを実行させるか、及び、第1変形及び第2変形の両方を実行させる場合、その処理の順番を設定できることが好ましい。
【0080】
変形部12は、第1変形及び第2変形の少なくとも一方に加えて、回転又は反転等を行って第2画像データD12を作成してもよい。
【0081】
第2画像データD12に付与されるラベル(認識対象となるオブジェクト4における特定状態)としては、予め第1画像データD11に付与されているラベル(オブジェクト4における特定状態)と同じものが用いられ得る。例えば、第1画像データD11のラベル(オブジェクト4における特定状態)が「良品」である場合には、第2画像データD12のラベル(オブジェクト4における特定状態)も良品となり得る。また、第1画像データD11の特定の領域(オブジェクト4を示す画素領域)に対して特定状態が割り当てられている場合には、第2画像データD12における変形後の特定の領域に対しても同じ特定状態が割り当てられ得る。例えば、第1画像データ11の特定の領域の特定状態(不良の種類)がスパッタである場合には、第2画像データ12における変形後の特定の領域の特定状態もスパッタとして扱い得る。
【0082】
(2.3)動作
以下、データ作成システム1の動作の一例について図5を参照しながら説明する。ただし、以下の動作の順序は単なる一例であり、特に限定されない。
【0083】
データ作成システム1の処理部10は、データ拡張処理を実行するためにオリジナル学習用データである第1画像データD11を取得する(S1)。第1画像データD11は、例えば、「不良(状態)」に該当するビードB10が撮像されたデータである。
【0084】
処理部10は、第1画像データD11内においてビードB10を示す画素領域R1を特定して、バウンディングボックスBX1を規定する(ビード領域の特定:S2)。そして、処理部10は、バウンディングボックスBX1に基づき複数の仮想線L1(第1線L11、第2線L12)を設定し、さらに各第2線L12上に複数の基準点P1を設定する(S3)。
【0085】
処理部10は、ビードB10を示す画素領域R1に対して、複数の第2線L12の並び方向A1に沿って拡大/縮小変形する第1変形(処理)を実行する(S4)。
【0086】
さらに処理部10は、第1変形を経た画素領域R1に対して、複数の第2線L12上に設定された複数の基準点P1(第2点P12)を第2線L12に沿って移動させて変形する第2変形(処理)を実行する(S5)。
【0087】
第1変形及び第2変形を経て、第2画像データD12(図4参照)が生成される。処理部10は、生成した第2画像データD12を出力する(S6)。第2画像データD12は、学習用データ(画像データD1)として、オリジナルの第1画像データD11と同じ「不良」のラベルが付与されて格納部に格納される。
【0088】
[利点]
上述した通り、本実施形態に係るデータ作成システム1では、オブジェクト4の形状の変形前後で、所定の特徴である直線状の特徴51(スキャンラインによるスジ7)が維持される。そのため、変形後の第2画像データD12は、あたかも実際にラインセンサカメラ6で撮像したような、直線状の特徴51(スジ7)が維持された上で、オブジェクト4(ビードB10)に関するデータ作成(例えばデータ拡張)が行える。
【0089】
もし仮に直線状の特徴51(スジ7)を維持せずにオブジェクト4の形状の変形を行えば、直線状の特徴51の線形性が崩れた状態となって画像データ内に残り、そのような画像は、実際にラインセンサカメラ6で撮像した認識対象画像データD3には存在し得ない。
【0090】
これに対して、本実施形態に係るデータ作成システム1では、実際に存在し得る画像データにより近い形で疑似的にデータ作成を行うことができる。このような第2画像データD12を学習用データに用いて生成された学習済みモデルM1で、認識対象画像データD3におけるオブジェクト4の状態を推定すれば、直線状の特徴51の線形性の崩れに起因したオブジェクト4の状態の誤認識が発生しにくくなる。結果的に、オブジェクト4に関する認識性能の低下の抑制を図ることができる。
【0091】
また直線状の特徴51の線形性を維持しながらも、多様な学習用データを用意できる。具体的には、直線状の特徴51の線形性を維持しながらも、良品の形状を変えたり、不良品の形状を変えたりした学習用データを用意できる。
【0092】
またデータ作成システム1は、所定の特徴に関する情報を取得する取得部11を備えるので、例えば外部から指定された所定の特徴に基づき、第2画像データD12の生成が行える。そのため、ユーザの利便性が向上される。特に、所定の特徴が、直線状の特徴51(スジ7)である場合、スジ7が、各溶接現場に設置されるラインセンサカメラ6及びこれを支持する多軸ロボットの送り方向の分解能によって異なり得る。そのため、実際にデータ作成システム1を利用するユーザが、操作部15等を通じて所定の特徴を指定できるように構成されることが好ましい。
【0093】
また本実施形態では、変形部12は、オブジェクト4の形状を、線状の特徴5に沿った1つ以上の第2線L12に沿って変形する。そのため、実際に存在し得る画像データに更に近い形で、多様なデータ作成を行うことができる。
【0094】
また本実施形態では、変形部12は、オブジェクト4の形状を、線状の特徴5に沿った2つ以上の第2線L12が並ぶ並び方向A1に沿って変形する。そのため、実際に存在し得る画像データに更に近い形で、多様なデータ作成を行うことができる。
【0095】
特に本実施形態では、直線状の特徴51とは、ラインセンサカメラ6に依存して第1画像データD11上における複数のスキャンライン間の境界に関する特徴(薄いスジ7)である。そのため、複数のスキャンライン間の境界の変形が原因で実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0096】
(3)変形例
上記実施形態は、本開示の様々な実施形態の一つに過ぎない。上記実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、上記実施形態に係るデータ作成システム1と同様の機能は、データ作成方法、コンピュータプログラム、又はコンピュータプログラムを記録した非一時的記録媒体等で具現化されてもよい。
【0097】
以下、上記実施形態の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。以下では、上記実施形態を「基本例」と呼ぶこともある。
【0098】
本開示におけるデータ作成システム1は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示におけるデータ作成システム1としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
【0099】
また、データ作成システム1における複数の機能が、1つのハウジング内に集約されていることは必須の構成ではない。例えば、データ作成システム1の構成要素は、複数のハウジングに分散して設けられていてもよい。
【0100】
反対に、データ作成システム1における複数の機能が、1つのハウジング内に集約されてもよい。さらに、データ作成システム1の少なくとも一部の機能、例えば、データ作成システム1の一部の機能がクラウド(クラウドコンピューティング)等によって実現されてもよい。
【0101】
(3.1)変形例1
以下、本開示における変形例1について、図6及び図7A~7Cを参照しながら説明する。以下では基本例のデータ作成システム1と実質的に同じ構成要素については、同じ符号を付与して適宜にその説明を省略する場合がある。
【0102】
基本例では、認識対象となるオブジェクト4が溶接のビードB10であった。しかし、オブジェクト4は、ビードB10に限定されない。学習済みモデルM1は、溶接が正しく行われたか否かを検査する溶接外観検査のために用いられることに限定されない。
【0103】
本変形例では、認識対象となるオブジェクト4が、図6に示すように、繊維製品C1の一部分(特定部位C11)である。本変形例では、学習用データ(画像データD1)を用いて生成された学習済みモデルM1は、例えば、縫製工場等における裁縫ロボットによる裁縫が正しく行われたか否かを検査する外観検査のために用いられる。図6は、繊維製品C1の一部分を示す画素領域R1を含む第1画像データD11を示す。第1画像データD11は、織り目による複数の曲線状の模様C10を含む。
【0104】
本変形例では、所定の特徴は、基本例と同様に線状の特徴5を含み、ただし、線状の特徴5は、基本例とは異なり、曲線状の特徴52(模様C10)を含むことを想定する。
【0105】
本変形例の取得部11は、ユーザにより操作部15を介して実行された操作入力に応じて、維持情報を取得する。ユーザは、例えば、表示部14により画面表示される第1画像データD11を目視で確認し、織り目による複数の曲線状の模様C10の方向及び位置等を特定する。ユーザは、曲線状の模様C10の方向を特定し、操作部15を用いて、当該方向を指定するための操作入力を実行する。すなわち、維持情報は、曲線状の模様C10の方向を指定する情報を含む。維持情報は、曲線状の模様C10を表す関数データでもよい。或いは維持情報は、曲線状の模様C10の画素領域の位置座標を直接指定する情報を含んでもよい。曲線状の模様C10の直接指定を行う場合の一具体例では、まず、ユーザが模様C10に含まれる2点を、マウスポインタで特定してマウスをクリックすることで、指定する。取得部11は、指定された2点を通る直線を算出し、算出した直線を第1画像データD11に重畳させる。表示部14は、直線が重畳された第1画像データD11と、終了ボタンとを、表示する。ユーザは、表示された直線を確認し、問題がなければ、マウスポインタで終了ボタンを選択してマウスをクリックする。取得部11は、算出した直線を、維持情報として取得する。一方、表示された直線と、模様C10との間に差異がある場合、ユーザは、模様C10に含まれる3点目を更に指定する。取得部11は、指定された3点を通る曲線を算出し、算出した曲線を第1画像データD11に重畳させる。表示部14は、曲線が重畳された第1画像データD11と、終了ボタンとを、表示する。ユーザは、表示された曲線を確認し、問題がなければ終了ボタンを選択してマウスをクリックする。取得部11は、算出した曲線を、維持情報として取得する。算出した曲線と模様C10との間に差異がある場合には、以下、同様にして、ユーザは模様C10に含まれる4点目、5点目・・・N点目の指定を行い、取得部11は曲線をそれぞれ算出する。なお、指定したN点を通る曲線の算出には、N次方程式、ベジエ曲線、又はスプライン曲線等を用いてもよい。また、ユーザが模様C10に含まれる1点のみを指定した段階で、表示部14がその1点を通る直線あるいは曲線を表示する構成としてもよい。
【0106】
処理部10は、第1画像データD11から、曲線状の模様C10の画素領域(模様C10に関する特徴量)を自動的に抽出する抽出部の機能を有してもよい。その場合、取得部11は、抽出部から維持情報を取得する。この構成の場合、ユーザが曲線状の模様C10の方向を指定する手間が省ける。
【0107】
変形部12は、第1画像データD11から、オブジェクト4(特定部位C11)の形状を変形した第2画像データD12を生成するように構成される。変形部12は、取得部11で取得した維持情報に基づき、曲線状の特徴52が維持されるように、特定部位C11の形状を変形する(変形処理)。
【0108】
次に本変形例における変形処理についてより具体的に説明する。変形部12は、第1画像データD11上に複数の仮想線L1(曲線)と複数の基準点P1とを設定し、その設定後に、第3変形、第4変形、及び第5変形のうちの少なくとも1つを実行するように構成される。
【0109】
複数の仮想線L1は、複数の曲線状の模様C10に沿う複数(ここでは4本)の曲線L13を含む。ここでは、4本の曲線L13は、曲線状の模様C10と同じ位置に設定されているが、模様C10と平行曲線であれば模様C10からずれた位置に設定されてもよい。例えば、4本の曲線L13は、等間隔で設定され、その間隔は、記憶部(例えば処理部10のメモリ)に予め設定されてもよいし、ユーザからの操作部15による指定に応じて設定変更されてもよい。間隔の設定変更に応じて、曲線L13の本数も変更されてよい。以下では、説明の便宜上、4本の曲線L13を上から順に曲線L131,L132,L133,L134とそれぞれ呼ぶことがある。
【0110】
変形部12は、維持情報に基づき、模様C10に沿うように4本の曲線L13の向きを設定する。また変形部12は、例えばユーザから指定された特定部位C11を囲むようにバウンディングボックスBX1を規定する。変形部12は、各曲線L13上に等間隔で複数(ここでは3つ)の基準点P1を設定する。
【0111】
第3変形は、図7Aに示すように、一例として一番下の曲線L134を、Y軸(4本の曲線L13が並ぶ並び方向A1)に沿って曲線L133から離れるように平行移動させた拡大変形である。つまり曲線L133,L134で挟まれたオブジェクト4の領域が拡大変形する。言い換えると、変形部12は、オブジェクト4の形状を、曲線状の特徴52に沿った2つ以上の曲線L13が並ぶ並び方向A1(Y軸に沿った方向)に沿って変形する。そのため、曲線状の特徴52の線形性が維持される。第3変形は、オブジェクト4の形状の多様性を増やす場合に用いられる。
【0112】
第4変形は、図7Bに示すように、一例として一番下の曲線L134のうち2つの基準点P1間の線分L1340を、Y軸に沿って曲線L133に近づくように平行移動させた縮小変形である。つまり曲線L133と線分L1340で挟まれたオブジェクト4の領域が縮小変形する。そのため、曲線状の特徴52の線形性が維持される。第4変形は、欠陥(不良)を生成する場合に用いられる。
【0113】
第5変形は、図7Cに示すように、一例として各曲線L13の3つの基準点P1がいずれも曲線L13に沿ってX軸の負の側に移動する、つまり複数の曲線L13で挟まれたオブジェクト4の領域が曲線L13に沿ってX軸の負の側に移動するように変形する。そのため、曲線状の特徴52の線形性が維持される。第5変形は、オブジェクト4の形状の多様性を増やす場合に用いられる。
【0114】
変形部12は、第3変形~第5変形の少なくとも一つを行って第2画像データD12を作成する。第3変形~第5変形のうちどの変形を実行させるかについて、ユーザからの操作部15による指定に応じて変更可能であることが好ましい。第3変形~第5変形の何れか二つ以上を行う場合、処理の順番は特に限定されない。
【0115】
変形部12は、第3変形~第5変形の少なくとも一つに加えて、回転又は反転等を行って第2画像データD12を作成してもよい。
【0116】
本変形例のように、オブジェクト4自身に含まれる曲線状の模様C10についてもその特徴を維持することで、実際に存在し得る画像データにより近い形で疑似的にデータ作成を行うことができる。結果的に、オブジェクト4に関する認識性能の低下の抑制を図ることができる。
【0117】
(3.2)変形例2
以下、本開示における変形例2について、図8A~8Cを参照しながら説明する。以下では基本例のデータ作成システム1と実質的に同じ構成要素については、同じ符号を付与して適宜にその説明を省略する場合がある。
【0118】
本変形例のデータ作成システム1は、外部から入力される付加データD4に基づき、オブジェクト4の形状を変形できる機能を有する点で基本例と相違する。具体的には、本変形例の取得部11は、変形後のオブジェクト4の輪郭形状を指定する情報を取得する。変形部12は、その輪郭形状へとオブジェクト4の形状を変形した第2画像データD12を生成する。
【0119】
図8Aでは、基本例と同様に、第1画像データD11は、オブジェクト4としてビードB10を示す画素領域R1を含む。
【0120】
図8Bは、ユーザが任意に作成した付加データD4(例えばCG画像等の画像データ)を示す。ここでは一例として、付加データD4が、輪郭形状を指定する情報に相当する。処理部10の取得部11は、外部から操作部15等を介して、付加データD4を取得する。付加データD4は、実際にラインセンサカメラ6等で撮像された画像データに基づき作成されたデータでもよい。図8Bの例では、付加データD4は、略C字形状に描画された画像データである。付加データD4は、画像データに限定されず、例えばある線形を表す関数データでもよい。
【0121】
本変形例の変形部12は、取得部11で取得した付加データD4に基づき、オブジェクト4(ビードB10)の輪郭を変形する。ここでは、変形部12は、ビードB10の輪郭が、付加データD4に示す略C字形と相似形となるように変形する(図8C参照)。ただし、変形部12は、基本例の第1変形及び第2変形と同様に、所定の特徴(スキャンラインによるスジ7)を維持しつつ、付加データD4に基づきオブジェクト4(ビードB10)の輪郭を変形する。
【0122】
本変形例のように、オブジェクト4を付加データD4に基づき変形することで、更に多様な学習用データを作成することができる。
【0123】
(3.3)変形例3
データ作成システム1において、取得部11を備える処理装置と、変形部12を備える処理装置とは、異なる装置であってもよい。例えば、データ作成システム1において、取得部11を備える処理装置(以下、「第1処理装置」)110と、それ以外の処理を行う処理装置(以下、「第2処理装置」)120とが、異なる装置であってもよい。
【0124】
例えば、図9に示すように、第1処理装置110は、処理部(以下、「第1処理部」)101と、通信部(以下、「第1通信部」)131と、表示部14と、操作部15と、を備える。第1処理装置110の第1処理部101は、取得部11を備えている。
【0125】
第1通信部131は、ラインセンサカメラ6から、オリジナル学習用データである第1画像データD11を受信する。
【0126】
取得部11は、第1画像データD11から、所定の特徴に関する情報(維持情報)を取得する。
【0127】
第1通信部131(送信部)は、取得部11で抽出された所定の特徴に関する情報D20を、第2処理装置120へ出力(送信)する。
【0128】
第2処理装置120は、処理部(以下、「第2処理部」)102と、通信部(以下、「第2通信部」)132と、を備える。第2処理装置120の第2処理部102は、変形部12を備えている。
【0129】
第2通信部132は、ラインセンサカメラ6から、第1画像データD11を受信する。
【0130】
第2通信部132(受信部)は、所定の特徴に関する情報D20を、受信する。
【0131】
変形部12は、第1画像データD11から、オブジェクト4の形状を変形した第2画像データD12を生成する。変形部12は、オブジェクト4の形状の変形前後で第1画像データD11における所定の特徴が維持されるように、第2画像データD12を生成する。
【0132】
第2処理装置120は、例えば第2通信部132によって、生成した第2画像データD12を第1処理装置110へ送信してもよい。その場合、ユーザは、受け取った第2画像データD12を用いて、学習システム2により学習済みモデルM1を生成してもよい。この学習済みモデルM1は、第1画像データD11から第1画像データD11における所定の特徴が維持されるようにオブジェクト4の形状を変形した第2画像データD12に対して、オブジェクト4の特定状態に関する推定について第1画像データD11と同等の推定結果を出力することとなる。
【0133】
第2処理装置120は、生成した画像データを、学習システムを備える外部のサーバへ送信してもよい。外部のサーバの学習システムは、第2画像データD12としての学習用データを含む学習用データセットを用いて、学習済みモデルM1を生成する。この学習済みモデルM1は、第1画像データD11から第1画像データD11における所定の特徴が維持されるようにオブジェクト4の形状を変形した第2画像データD12に対して、オブジェクト4の特定状態に関する推定について第1画像データD11と同等の推定結果を出力することとなる。ユーザは、外部のサーバから、生成された学習済みモデルM1を受け取ってもよい。
【0134】
第2画像データD12には、第1画像データD11と同じラベルが付与される。そのため、十分に学習を行うことで、学習済みモデルM1は、第2画像データD12に第2特徴を付与した画像データに対して、オブジェクト4の特定状態に関する推定について第1画像データD11と同等の推定結果を出力するモデルとすることができる。
【0135】
(3.4)その他の変形例
以下、その他の変形例について列記する。
【0136】
本開示でいう「画像データ」は、イメージセンサで取得する画像データに限らず、例えばCG画像等の二次元データであってもよいし、或いは基本例で説明したように距離画像センサで取得した一次元データを並べて構築した二次元データであってもよい。また「画像データ」は、三次元以上のデータであってもよい。また本開示における「画素」は、実際にイメージセンサで取得した画像の画素に限らず、二次元データの各要素であってもよい。
【0137】
基本例では、第1画像データD11は、オブジェクト4(ビードB10)を、多軸ロボットの送り制御によってラインセンサカメラ6にスキャニングを行わせて撮像された画像データである。しかし、第1画像データD11は、例えば、オブジェクト4をステージ(検査台)上に載せ、ステージ側を移動させて撮像装置でスキャニングを行わせて撮像された画像データでもよい。
【0138】
基本例では、第1画像データD11は、実際に撮像装置(ラインセンサカメラ6)により撮像された画像データである。しかし、第1画像データD11は、スキャンラインによるスジ7を模式的に描画したCG画像データでもよい。
【0139】
基本例では、直線状の特徴51は、スキャンライン間の境界に関する特徴(スジ7)であった。直線状の特徴51は、例えば、金属板の表面についている線状の傷であってもよい。
【0140】
基本例では、複数の第2点P12は、各第2線L12とビードB10の輪郭との交点に設定されている。しかし、複数の第2点P12は、各第2線L12上において所定の間隔で設定されてもよい。所定の間隔は、ユーザ側で指定できてもよい。
【0141】
基本例では、直線状の特徴51は、1本1本の直線(スジ7)であった。しかし、線状の特徴5は、複数の直線から構成された多角形(三角形、四角形等)、又は多数の多角形からなる模様でもよい。
【0142】
変形例1では、曲線状の特徴52は、1本の曲線(模様C10)であった。しかし、曲線状の特徴52は、円、又は楕円状の特徴を含んでもよい。例えば、曲線状の特徴52は、円形、楕円形、又は多数の円形や楕円形からなる模様でもよい。その場合には、取得部11は、同心円の中心位置等の情報を取得する。同心円の中心位置等は、操作部15等によるユーザからの入力によって設定されてもよいし、或いは処理部10が、撮影した画像データに対してハフ変換によって円を自動的に抽出してもよい。
【0143】
また線状の特徴5は、直線状の特徴と曲線状の特徴とが混在した模様でもよい。また線状の特徴5は、所定の幅以上のある帯状の特徴であってもよい。
【0144】
評価システム100は、データ作成システム1の一部の構成のみを備えていてもよい。評価システム100は、例えば、データ作成システム1が備える第1処理装置110及び第2処理装置120(図9参照)のうちの第1処理装置110と、推定システム3(図1参照)と、のみを備えていてもよい。第1処理装置110の機能と、推定システム3の機能とは、1つの装置に備えられていてもよい。評価システム100は、学習済みモデルM1を生成する学習システム2(図1参照)を更に備えていてもよい。第1処理装置110の機能と学習システム2の機能と推定システム3の機能とは、1つの装置に備えられていてもよい。
【0145】
(4)まとめ
以上説明したように、第1の態様に係るデータ作成システム(1)は、第1画像データ(D11)から、オブジェクト(4)に関する学習済みモデル(M1)を生成するための学習用データとして用いられる第2画像データ(D12)を作成する。データ作成システム(1)は、オブジェクト(4)を示す画素領域(R1)を含む第1画像データ(D11)から、オブジェクト(4)の形状を変形した第2画像データ(D12)を生成する変形部(12)を備える。変形部(12)は、オブジェクト(4)の形状の変形前後で第1画像データ(D11)における所定の特徴が維持されるように、第2画像データ(D12)を生成する。
【0146】
この態様によれば、オブジェクト(4)の形状の変形前後で所定の特徴が維持されるので、実際に存在し得る画像データにより近い形で、疑似的にデータ作成(例えばデータ拡張)を行うことができる。結果的に、オブジェクト(4)に関する認識性能の低下の抑制を図ることができる。
【0147】
第2の態様に係るデータ作成システム(1)は、第1の態様において、所定の特徴に関する情報を取得する取得部(11)を、更に備える。変形部(12)は、取得部(11)で取得した上記情報に基づいて第2画像データ(D12)を生成する。
【0148】
この態様によれば、例えば外部から指定された所定の特徴に基づき、第2画像データ(D12)が生成されるため、利便性が向上される。
【0149】
第3の態様に係るデータ作成システム(1)に関して、第1又は第2の態様において、所定の特徴は、第1画像データ(D11)に含まれる少なくとも1つの線状の特徴(5)を含む。変形部(12)は、オブジェクト(4)の形状を、線状の特徴(5)に沿った1つ以上の仮想線(第2線L12)に沿って変形した第2画像データ(D12)を生成する。
【0150】
この態様によれば、実際に存在し得る画像データに更に近い形で、多様なデータ作成(例えばデータ拡張)を行うことができる。
【0151】
第4の態様に係るデータ作成システム(1)に関して、第1~第3の態様のいずれか1つにおいて、所定の特徴は、第1画像データ(D11)に含まれる少なくとも1つの線状の特徴(5)を含む。変形部(12)は、オブジェクト(4)の形状を、線状の特徴(5)に沿った2つ以上の仮想線(第2線L12)が並ぶ並び方向(A1)に沿って変形した第2画像データ(D12)を生成する。
【0152】
この態様によれば、実際に存在し得る画像データに更に近い形で、多様なデータ作成(例えばデータ拡張)を行うことができる。
【0153】
第5の態様に係るデータ作成システム(1)に関して、第3又は第4の態様において、線状の特徴(5)は、直線状の特徴(51)を含む。
【0154】
この態様によれば、直線状の特徴(51)の変形が原因で実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0155】
第6の態様に係るデータ作成システム(1)に関して、第5の態様において、直線状の特徴(51)とは、オブジェクト(4)を撮像したラインセンサカメラ(6)に依存して第1画像データ(D11)上における複数のスキャンライン間の境界に関する。
【0156】
この態様によれば、複数のスキャンライン間の境界の変形が原因で実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0157】
第7の態様に係るデータ作成システム(1)に関して、第3~第6の態様のいずれか1つにおいて、線状の特徴(5)は、曲線状の特徴(52)を含む。
【0158】
この態様によれば、曲線状の特徴(52)の変形が原因で実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0159】
第8の態様に係るデータ作成システム(1)に関して、第7の態様において、曲線状の特徴(52)は、円、又は楕円状の特徴を含む。
【0160】
この態様によれば、円又は楕円状の変形が原因で実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0161】
第9の態様に係るデータ作成システム(1)に関して、第3~第8の態様のいずれか1つにおいて、変形部(12)は、仮想線(第2線L12)上に複数の基準点(P1)を設定し、複数の基準点(P1)の少なくとも1つの基準点(P1)を移動させることにより、オブジェクト(4)の形状の変形を行う。
【0162】
この態様によれば、実際に存在し得る画像データに更に近い形で、多様なデータ作成(例えばデータ拡張)を行うことができる。
【0163】
第10の態様に係るデータ作成システム(1)に関して、第9の態様において、変形部(12)は、仮想線(第2線L12)上に設定された複数の基準点(P1)の並び順を維持しながら、少なくとも1つの基準点(P1)を移動させる。
【0164】
この態様によれば、実際に存在し得る画像データからかけ離れてしまうことを抑制できる。
【0165】
第11の態様に係るデータ作成システム(1)に関して、第1~第10の態様のいずれか1つにおいて、変形後のオブジェクト(4)の輪郭形状を指定する情報を取得する取得部(11)を、更に備える。変形部(12)は、輪郭形状にオブジェクト(4)の形状を変形した第2画像データ(D12)を生成する。
【0166】
この態様によれば、オブジェクト(4)が指定された輪郭形状に変形された第2画像データ(D12)を容易に生成できるため、画像データの多様性が向上する。
【0167】
第12の態様に係る学習システム(2)は、第1~第11の態様のいずれか1つにおけるデータ作成システム(1)で作成された第2画像データ(D12)としての学習用データを含む学習用データセットを用いて、学習済みモデル(M1)を生成する。
【0168】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることが可能な学習システム(2)を提供できる。
【0169】
第13の態様に係る推定システム(3)は、第12の態様における学習システム(2)で生成された学習済みモデル(M1)を用いて、認識対象となるオブジェクト(4)における特定状態に関する推定を行う。
【0170】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることが可能な推定システム(3)を提供できる。
【0171】
第14の態様に係るデータ作成方法は、第1画像データ(D11)から、オブジェクト(4)に関する学習済みモデル(M1)を生成するための学習用データとして用いられる第2画像データ(D12)を作成するデータ作成方法である。データ作成方法は、オブジェクト(4)を示す画素領域(R1)を含む第1画像データ(D11)から、オブジェクト(4)の形状を変形した第2画像データ(D12)を生成する変形ステップを含む。変形ステップでは、オブジェクト(4)の形状の変形前後で第1画像データ(D11)における所定の特徴が維持されるように、第2画像データ(D12)を生成する。
【0172】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることが可能なデータ作成方法を提供できる。
【0173】
第15の態様に係るプログラムは、1以上のプロセッサに、第14の態様におけるデータ作成方法を実行させるためのプログラムである。
【0174】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることが可能な機能を提供できる。
【0175】
第16の態様のデータ作成システム(1)は、第2の態様において、第1処理装置(110)と、第2処理装置(120)と、を備える。第1処理装置(110)は、取得部(11)を有する。第2処理装置(120)は、変形部(12)を有する。第1処理装置(110)は、所定の特徴に関する情報(D20)を、第2処理装置(120)に送信する。
【0176】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることができる。
【0177】
第17の態様の処理装置は、第16の態様のデータ作成システム(1)における、第1処理装置(110)である。
【0178】
第18の態様の処理装置は、第16の態様のデータ作成システム(1)における、第2処理装置(120)である。
【0179】
第19の態様の学習システム(2)は、第1画像データ(D11)を学習用データとして含む学習用データセットを用いて、オブジェクト(4)に関する学習済みモデル(M1)を生成する学習システムである。第1画像データ(D11)は、オブジェクト(4)を示す画素領域(R1)を含む。学習システム(2)は、第2画像データ(D12)に対して、オブジェクト(4)の特定状態に関する推定について第1画像データ(D11)と同等の推定結果を出力する。第2画像データ(D12)は、第1画像データ(D11)から、第1画像データ(D11)における所定の特徴が維持されるようにオブジェクト(4)の形状を変形した画像データである。
【0180】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることができる。
【0181】
第20の態様の推定システム(3)は、認識対象となるオブジェクト(4)における特定状態に関する推定を行う推定システムである。推定システム(3)は、第2画像データ(D12)に対して、オブジェクト(4)の特定状態に関する推定について第1画像データ(D11)と同等の推定結果を出力する。第2画像データ(D12)は、オブジェクト(4)を示す画素領域(R1)を含む第1画像データ(D11)から、第1画像データ(D11)における所定の特徴が維持されるようにオブジェクト(4)の形状を変形した画像データである。
【0182】
この態様によれば、オブジェクト(4)に関する認識性能の低下の抑制を図ることができる。
【0183】
第2~11,16の態様に係る構成については、データ作成システム(1)に必須の構成ではなく、適宜省略可能である。
【符号の説明】
【0184】
1 データ作成システム
11 取得部
12 変形部
2 学習システム
3 推定システム
4 オブジェクト
5 線状の特徴
51 直線状の特徴
52 曲線状の特徴
6 ラインセンサカメラ
110 第1処理装置
120 第2処理装置
A1 並び方向
D11 第1画像データ
D12 第2画像データ
L12 第2線(仮想線)
M1 学習済みモデル
P1 基準点
R1 画素領域
図1
図2
図3
図4
図5
図6
図7
図8
図9