(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024122709
(43)【公開日】2024-09-09
(54)【発明の名称】歪み領域推定装置、歪み領域推定方法、機械学習装置、及び機械学習方法
(51)【国際特許分類】
G06F 30/27 20200101AFI20240902BHJP
【FI】
G06F30/27
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2023030394
(22)【出願日】2023-02-28
(71)【出願人】
【識別番号】000001052
【氏名又は名称】株式会社クボタ
(71)【出願人】
【識別番号】000005348
【氏名又は名称】株式会社SUBARU
(71)【出願人】
【識別番号】507049533
【氏名又は名称】創屋株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】藤岡 央浩
(72)【発明者】
【氏名】長 雄吉
(72)【発明者】
【氏名】榎 甲士郎
(72)【発明者】
【氏名】植松 治郎
(72)【発明者】
【氏名】松村 幸村
(72)【発明者】
【氏名】島口 嵩史
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146DC03
5B146EA13
5B146EA15
5B146EC08
(57)【要約】
【課題】3次元のサーフェスモデルにおいて生じ得る、錯視に起因する視覚的な歪みを検出する技術を提供すること。
【解決手段】歪み領域推定装置(1)は、3次元のサーフェスモデルに含まれ得る、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを実行する制御部(プロセッサ12)を備えている。
【選択図】
図1
【特許請求の範囲】
【請求項1】
3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを実行する制御部を備えている、
ことを特徴とする歪み領域推定装置。
【請求項2】
前記制御部は、前記推定ステップの前に前処理ステップを更に実行し、
前記推定ステップは、教師あり学習により構築された学習済モデルを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定し、
前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、
前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、
前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、
ことを特徴とする請求項1に記載の歪み領域推定装置。
【請求項3】
前記サーフェスモデルに含まれる前記線は、前記サーフェスモデルの断面プロファイルであり、
前記前処理ステップは、前記断面プロファイルにおいて前記複数の単位区間を設定し、各単位区間の前記特徴量を導出する、
ことを特徴とする請求項2に記載の歪み領域推定装置。
【請求項4】
前記前処理ステップは、前記サーフェスモデルの表面プロファイルから複数の前記断面プロファイルを生成する断面プロファイル生成ステップを更に含む、
ことを特徴とする請求項3に記載の歪み領域推定装置。
【請求項5】
前記断面プロファイル生成ステップが生成する前記複数の前記断面プロファイルは、互いに交わる3軸により構成される斜交座標系で表される複数の断面であって、前記3軸のうち2軸により規定される平面と平行な複数の断面における断面プロファイルである、
ことを特徴とする請求項4に記載の歪み領域推定装置。
【請求項6】
前記3軸の各々をx軸、y軸、及びz軸として、
前記断面プロファイルは、(1)xy平面と平行であり、且つ、等間隔な複数の断面、(2)yz平面と平行であり、且つ、等間隔な複数の断面、及び(3)zx平面と平行であり、且つ、等間隔な複数の断面、における断面プロファイルである、
ことを特徴とする請求項5に記載の歪み領域推定装置。
【請求項7】
前記断面プロファイルの各々は、N個(Nは、3以上の整数)の曲線を直列に接続することにより構成されており、
前記曲線の各々は、単一のスプライン曲線により構成されており、
前記特徴量導出ステップは、i番目(iは、2以上N-1以下の整数)のスプライン曲線からなる第1区間と、i-1番目のスプライン曲線からなる第2区間と、i+1番目のスプライン曲線からなる第3区間と、により構成される区間を前記単位区間として、各単位区間の前記特徴量を導出する、
ことを特徴とする請求項3~6の何れか1項に記載の歪み領域推定装置。
【請求項8】
前記第1区間、前記第2区間、及び前記第3区間の各々をM等分(Mは、2以上の整数)することにより得られるM個の擬似的な線分を、それぞれ、線分L1j、線分L2j、及び線分L3j(jは、1以上M以下の整数)として、
前記特徴量導出ステップは、各単位区間の特徴量として、少なくとも、前記第1区間における隣接する線分L1jと線分L1j+1とのなす角の変化量の最大値と、前記第2区間における隣接する線分L2jと線分L2j+1とのなす角の変化量の最大値と、前記第3区間における隣接する線分L3jと線分L3j+1とのなす角の変化量の最大値と、を導出する、
ことを特徴とする請求項7に記載の歪み領域推定装置。
【請求項9】
3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを含んでいる、
ことを特徴とする歪み領域推定方法。
【請求項10】
前記推定ステップの前に実行される前処理ステップを更に含み、
前記推定ステップは、教師あり学習により構築された学習済モデルを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定し、
前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、
前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、
前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、
ことを特徴とする請求項9に記載の歪み領域推定方法。
【請求項11】
前記サーフェスモデルに含まれる前記線は、前記サーフェスモデルの断面プロファイルであり、
前記前処理ステップは、前記断面プロファイルにおいて前記複数の単位区間を設定し、各単位区間の前記特徴量を導出する、
ことを特徴とする請求項10に記載の歪み領域推定方法。
【請求項12】
前記前処理ステップは、前記サーフェスモデルの表面プロファイルから複数の前記断面プロファイルを生成する断面プロファイル生成ステップを更に含む、
ことを特徴とする請求項11に記載の歪み領域推定方法。
【請求項13】
前処理ステップと、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を実行する制御部を備えており、
前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、
前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、
前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、
ことを特徴とする機械学習装置。
【請求項14】
前処理ステップと、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を含んでおり、
前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、
前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、
前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、
ことを特徴とする機械学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元のサーフェスモデルにおける歪み領域を推定する歪み領域推定装置及び歪み領域推定方法に関する。また、本発明は、このような歪み領域を推定する学習済モデルを構築する機械学習装置及び機械学習方法に関する。
【背景技術】
【0002】
乗用車及び作業車に代表される車両の部品(内装部品及び外装部品を含む)の設計には、3次元CAD(Computer Aided Design)が広く用いられている(例えば、特許文献1参照)。各部品は、3次元CADを用いて外観である意匠と、外からは目視できない内部の構造と、を設計される。3次元CADは、設計された各部品の3次元モデルを表すデータを生成するとともに、その3次元モデルを可視化する。また、各部品の製造工程では、3次元モデルのデータに基づいて各部品を製造することができる。
【0003】
なお、以下においては、3次元モデルのうち、外観を構成する面を表すモデルのことをサーフェスモデルと呼ぶ。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述したように、3次元CADを用いて設計した部品の3次元モデルに基づき当該部品を設計した場合に、設計時の意図とは異なり、外観を構成する面の一部が不自然に歪んで見える場合がある。このような歪みは、その一部が錯視に起因して視覚的に歪んで見えることが原因であると考えられる。
【0006】
部品におけるこのような歪みを解消するためには、3次元CAD上におけるサーフェスモデルの目視による確認が欠かせない。部品の製造後に確認される歪みは、サーフェスモデルにおいても程度の大小はあるものの生じているためである。
【0007】
サーフェスモデルの目視による確認は、人手に頼らざるを得ないため手間がかかる。また、目視により発見できる歪みの程度は、目視により確認する作業者の熟練度に依存してばらつきやすい。このように、サーフェスモデルの目視による確認は、部品延いては製品のコストアップ及び美観低下の原因になりやすい。
【0008】
本発明の一態様は、上述した課題に鑑みなされたものであり、その目的は、3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みを検出する技術を提供することである。
【課題を解決するための手段】
【0009】
上記の課題を解決するために、本発明の第1の態様に係る歪み領域推定装置は、3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを実行する制御部を備えている。
【0010】
上記の課題を解決するために、本発明の第9の態様に係る歪み領域推定方法は、3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを含んでいる。
【0011】
上記の課題を解決するために、本発明の第13の態様に係る機械学習装置は、前処理ステップと、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を実行する制御部を備えており、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である。
【0012】
上記の課題を解決するために、本発明の第14の態様に係る機械学習方法は、前処理ステップと、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を含んでおり、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である。
【0013】
本発明の各態様に係る歪み領域推定装置は、コンピュータによって実現してもよい。この場合には、コンピュータを前記歪み領域推定装置が備える各部(ソフトウェア要素)として動作させることにより前記歪み領域推定装置をコンピュータにて実現させる歪み領域推定装置の歪み領域推定プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【0014】
また、本発明の各態様に係る機械学習装置は、コンピュータによって実現してもよい。この場合には、コンピュータを前記機械学習装置が備える各部(ソフトウェア要素)として動作させることにより前記機械学習装置をコンピュータにて実現させる機械学習装置の歪み機械学習プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【0015】
本発明の一態様によれば、3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みを検出する技術を提供することができる。
【図面の簡単な説明】
【0016】
【
図1】本発明の一実施形態に係る歪み領域推定システムの構成を示すブロック図である。
【
図2】
図1に示す歪み領域推定システムに含まれる歪み領域推定装置により実行される歪み領域推定方法の流れを示すフローチャートである。
【
図3】
図2に示す歪み領域推定方法に含まれる前処理ステップの流れを示すフローチャートである。
【
図4】
図1に示す歪み領域推定装置により歪みの有無を推定される部品のサーフェスモデルの斜視図である。
【
図5】
図4に示すサーフェスモデルの一部を拡大した斜視図である。
【
図6】
図4に示すサーフェスモデルの断面プロファイルの一例である。
【
図7】
図4に示すサーフェスモデルの一部を拡大した斜視図であり、
図2に示す歪み領域推定方法に含まれる特徴量導出ステップの過程において定められる点を図示する斜視図である。
【
図8】
図2に示す歪み領域推定方法に含まれる特徴量導出ステップにおいて導出される特徴量の一例を説明するための模式図である。
【
図9】
図1に示す歪み領域推定システムに含まれる機械学習装置が実行する機械学習方法の流れを示すフローチャートである。
【
図10】上段は、推定ステップの一変形例において得られたPCA特徴量を2次元平面上にプロットした散布図である。下段は、上段の散布図の一部を拡大した散布図である。
【発明を実施するための形態】
【0017】
〔歪み領域推定システム〕
本発明の一実施形態に係る歪み領域推定装置1を含む歪み領域推定システムSについて、
図1を参照して説明する。
図1は、歪み領域推定システムSの構成を示す図である。
【0018】
歪み領域推定システムSは、3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みの有無を推定するためのシステムである。歪み領域推定システムSは、
図1に示すように、歪み領域推定装置1と、3次元CAD(Computer Aided Design)2と、機械学習装置3(
図9参照)を備えている。
【0019】
歪み領域推定装置1を含む歪み領域推定システムSは、乗用車及び作業車に代表される車両の部品(内装部品及び外装部品を含む)の設計段階において、部品の3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みを検出することを目的としている。車両の例としては、乗用車及び作業車以外に、建設機械や農業機械なども挙げられる。また、車両は、ユーザが運転することによって運行される車両であってもよいし、自動運転によって運行される車両であってもよい。本実施形態では、部品の一例として乗用車の外装部品を用いて歪み領域推定システムS及び歪み領域推定装置1について説明する。
【0020】
部品は、3次元CAD2を用いて設計される。すなわち、3次元CAD2は、部品の3次元のサーフェスモデルを生成し、このサーフェスモデルを表すデータを3次元CAD2が備えているストレージ、又は、3次元CAD2の外部に設けられているストレージに格納する。本実施形態では、3次元CAD2のストレージにサーフェスモデルを表すデータが格納されているものとして説明する。なお、サーフェスモデルは、3次元モデルの一態様であり、厚みが定義されない面を用いて部品の外観(意匠)を表現するモデルである。
【0021】
歪み領域推定装置1は、3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを実行する制御部(後述するプロセッサ12)を備えている。この推定ステップは、教師あり学習により構築された学習済モデルを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定するように構成されていてもよいし、教師なし学習により構築された学習済モデルを用いて、歪み領域を推定するように構成されていてもよいし、プログラムに沿って実行される所定のアルゴリズム(例えば主成分分析(PCA)のアルゴリズム)を用いて歪み領域を推定するように構成されていてもよい。
【0022】
<歪み領域推定装置の概要>
本実施形態の歪み領域推定装置1は、歪み領域推定方法M1を実行するための装置である。歪み領域推定方法M1は、3次元CAD2から提供されたサーフェスモデルを表すデータに基づき、機械学習により構築された学習済モデルLMを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域を推定する方法である。ここで、歪み領域とは、錯視に起因して視覚的に歪んで見える領域を意味する。また、本実施形態では、サーフェスモデルに含まれる線として、サーフェスモデルの断面プロファイルを用いる。ただし、サーフェスモデルに含まれる線は、断面プロファイルに限定されるものではなく、例えば、サーフェスモデルを構成する面における構成線であってもよい。この構成線は、サーフェスモデルを構成する面における境界線又は稜線と言い替えることもできる。
【0023】
学習済モデルLMのアルゴリズム、歪み領域推定装置1の構成、及び、歪み領域推定方法M1の流れの詳細については、後述する。
【0024】
学習済モデルLMの入力は、サーフェスモデルの断面プロファイルにおいて設定された複数の単位区間の各々について導出された特徴量である。この特徴量は、各単位区間の形状の特徴を示すように適宜選択することができる。
【0025】
学習済モデルLMの出力は、上述した断面プロファイルの各単位区間について歪み領域を含んでいるか否かの推定結果である。例えば、ある単位区間について、歪み領域を含んでいると判断した場合、学習済モデルLMは、「1」を出力し、歪み領域を含んでいないと判断した場合、学習済モデルLMは、「0」を出力する。
【0026】
学習済モデルLMの入力である特徴量と、学習済モデルLMの出力である歪み領域を含んでいるか否かの推定結果との間には、関係式として明示的に特定することは困難であるものの、一定の関係があることを本願の発明者らは見出した。したがって、特徴量を入力とする学習済モデルLMを用いれば、断面プロファイルの各単位区間が歪み領域を含んでいるか否かを精度良く推定することができる。
【0027】
<機械学習装置の概要>
機械学習装置3は、機械学習方法M3を実行するための装置である。機械学習方法M3は、3次元CAD2から提供されたサーフェスモデルを表すデータを用いて学習用データセットDSを作成すると共に、学習用データデータセットDSを用いた機械学習によって学習済モデルLMを構築するための方法である。機械学習装置3の構成及び機械学習方法M3の流れの詳細については、後述する。
【0028】
歪み領域推定システムSは、準備フェーズと試用フェーズとを経て実用フェーズに至る。準備フェーズ、試用フェーズ、及び実用フェーズについて、その内容を簡単に説明すれば、以下のとおりである。
【0029】
(1)準備フェーズ
準備フェーズにおいては、サーフェスモデルに歪み領域が含まれているか否かの判定を作業者が行う。作業者によるサーフェスモデルに歪み領域が含まれているか否かの判定が行われる度に、機械学習装置3は、3次元CAD2から提供されたサーフェスモデルを表すデータから学習用データ(教師データ)を作成し、作成した学習用データを学習用データセットDSに追加する。準備フェーズは、準備フェーズの開始から所定の期間(例えば、1週間、1ヶ月、又は1年など)が経過した時点で終了してもよいし、準備フェーズにおける歪み領域の推定回数が所定の回数(例えば、100回、1000回、又は10000回など)に達した時点で終了してもよい。準備フェーズが終了すると、機械学習装置3は、学習用データDSを用いた機械学習によって学習済モデルLMを構築する。構築された学習済モデルLMは、機械学習装置3から歪み領域推定装置1に転送される。
【0030】
(2)試用フェーズ
試用フェーズにおいては、サーフェスモデルに歪み領域が含まれているか否かの判定を作業者が行うと共に、サーフェスモデルに含まれる線に歪み領域が含まれているか否かを歪み領域推定装置1が推定する。作業者によるサーフェスモデルに歪み領域が含まれているか否かの判定の測定が行われる度に、歪み領域推定装置1は、3次元CAD2から提供されたサーフェスモデルを表すデータに基づき、学習済モデルLMを用いてサーフェスモデルに歪み領域が含まれているか否かを推定する。試用フェーズは、試用フェーズの開始から所定の期間(例えば、1週間、1ヶ月、又は1年など)が経過した時点で終了してもよいし、試用フェーズにおけるサーフェスモデルに歪み領域が含まれているか否かの推定回数が所定の回数(例えば、100回、1000回、又は10000回など)に達した時点で終了してもよい。試用フェーズが終了すると、作業者は、自身が行った判定結果と、歪み領域推定装置1が推定した歪み領域が含まれているか否かの推定結果とを比較し、歪み領域推定装置1の推定精度を評価する。推定精度が不十分である場合には、準備フェーズに戻る。推定精度が十分である場合には、実用フェーズに進む。なお、推定精度の確認は、準備フェーズが終了した段階で、学習用データセットDSの一部を利用して行ってもよい。この場合、試用フェーズを省略することができる。
【0031】
(3)実用フェーズ
実用フェーズにおいては、歪み領域推定装置1がサーフェスモデルに歪み領域が含まれているか否かの推定を行う。実用フェーズにおいて歪み領域推定装置1が用いる学習済モデルLMは、試用フェーズにおいて十分な推定精度を有することを確かめられたものである。実用フェーズにおいては、作業者によるサーフェスモデルに歪み領域が含まれているか否かの判定を省略することができる。このため、サーフェスモデルに歪み領域が含まれているか否かの判定の手間から作業者を解放すると共に、精度良くサーフェスモデルに歪み領域が含まれているか否かの推定を行うことが可能になる。
【0032】
<歪み領域推定装置の構成>
歪み領域推定装置1の構成について、
図1を参照して説明する。
図1の上段は、歪み領域推定装置1の構成を示すブロック図である。
【0033】
歪み領域推定装置1は、
図1に示すように、メモリ11と、プロセッサ12と、ストレージ13と、を備えている。メモリ11、プロセッサ12、及びストレージ13は、不図示のバスを介して互いに接続されている。このバスには、更に、不図示の入出力インタフェース、及び、不図示の通信インタフェースが接続されていてもよい。この入出力インタフェースは、例えば、3次元CAD2から歪み領域推定装置1にサーフェスモデルを表すデータを入力するため、或いは、歪み領域推定装置1から外部装置(例えば、3次元CAD2)に判定結果を出力するために利用される。また、この通信インタフェースは、例えば、外部装置(例えば、機械学習装置3)から学習済モデルLMを取得するために利用される。
【0034】
メモリ11は、機械学習により構築された学習済モデルLMを記憶するための構成である。学習済モデルLMは、後述する前処理ステップにより導出される特徴量であって、サーフェスモデルに含まれる線(本実施形態では、サーフェスモデルの断面プロファイル)の各単位区間の特徴量を入力とし、各単位区間について歪み領域を含んでいるか否かの推定結果を出力とするアルゴリズムである。なお、メモリ11としては、例えば、半導体RAM(Random Access Memory)等を用いることができる。また、学習済モデルLMの機械学習アルゴリズムとしては、勾配ブースティングを好適に用いることができる。また、ベイジアンガウス混合モデルや、サポートベクターマシンなどのアルゴリズムを学習済モデルLMの機械学習アルゴリズムとして用いることができる。以下においては、機械学習アルゴリズムのことを単にアルゴリズムとも称する。
【0035】
プロセッサ12は、メモリ11に記憶された学習済モデルLMを用いて、後述する歪み領域推定方法M1を実行するための構成である。プロセッサ12としては、例えば、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)、マイクロプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、TPU(Tensor Processing Unit)等のASIC(Application Specific Integrated Circuit)又は、これらの組み合わせ等を用いることができる。プロセッサ12は、本願発明の一態様における制御部として機能し、「演算装置」と呼ばれることもある。
【0036】
ストレージ13は、学習済モデルLMを格納(不揮発保存)するための構成である。プロセッサ12は、各単位区間について歪み領域を含んでいるか否かの推定を行う際にストレージ13に格納された学習済モデルLMをメモリ11上に展開して利用する。なお、ストレージ13としては、例えば、フラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又は、これらの組み合わせ等を用いることができる。
【0037】
なお、本実施形態においては、単一のプロセッサ(プロセッサ12)を用いて歪み領域推定方法M1を実行する構成を採用しているが、本発明は、これに限定されない。すなわち、複数のプロセッサを用いて歪み領域推定方法M1を実行する構成を採用してもよい。例えば、前処理ステップS11(後述)を第1のプロセッサにおいて実行し、推定ステップS12(後述)を第2のプロセッサにおいて実行してもよい。この場合、連携して歪み領域推定方法M1を実行する複数のプロセッサは、単一のコンピュータに設けられ、バスを介して相互に通信可能に構成されていてもよいし、複数のコンピュータに分散して設けられ、ネットワークを介して相互に通信可能に構成されていてもよい。一例として、クラウドサーバを構成するコンピュータに内蔵されたプロセッサと、そのクラウドサーバの利用者が所有するコンピュータに内蔵されたプロセッサとが、連携して歪み領域推定方法M1を実行する態様などが考えられる。
【0038】
また、本実施形態においては、歪み領域推定方法M1を実行するプロセッサ(プロセッサ12)と同じコンピュータに内蔵されたメモリ11に学習済モデルLMを格納する構成を採用しているが、本発明は、これに限定されない。すなわち、歪み領域推定方法M1を実行するプロセッサと異なるコンピュータに内蔵されたメモリに学習済モデルLMを格納する構成を採用してもよい。この場合、学習済モデルLMを格納するメモリが内蔵されたコンピュータは、歪み領域推定方法M1を実行するプロセッサが内蔵されたコンピュータとネットワークを介して相互に通信可能に構成される。一例として、クラウドサーバを構成するコンピュータに内蔵されたメモリに学習済モデルLMを格納し、そのクラウドサーバの利用者が所有するコンピュータに内蔵されたプロセッサが歪み領域推定方法M1を実行する態様などが考えられる。
【0039】
また、本実施形態においては、単一のメモリ11に学習済モデルLMを格納する構成を採用しているが、本発明は、これに限定されない。すなわち、複数のメモリに学習済モデルLMを分散して格納する構成を採用してもよい。この場合、学習済モデルLMを格納する複数のメモリは、単一のコンピュータ(歪み領域推定方法M1を実行するプロセッサが内蔵されたコンピュータであってもよいし、そうでなくてもよい)に設けられていてもよいし、複数のコンピュータ(歪み領域推定方法M1を実行するプロセッサが内蔵されたコンピュータを含んでいてもよいし、そうでなくてもよい)に分散して設けられていてもよい。一例として、クラウドサーバを構成する複数のコンピュータの各々に内蔵されたメモリに学習済モデルLMを分散して格納する構成などが考えられる。
【0040】
<歪み領域推定方法の流れ>
歪み領域推定方法M1の流れについて、
図2~
図8を参照して説明する。
図2は、歪み領域推定方法M1の流れを示すフローチャートである。
図3は、歪み領域推定方法M1に含まれる前処理ステップS11の流れを示すフローチャートである。
図4は、歪み領域推定装置1により歪みの有無を推定される部品のサーフェスモデルSMの斜視図である。
図5は、サーフェスモデルSMの一部を拡大した斜視図である。
図6は、サーフェスモデルSMの断面プロファイルの一例である。
図7は、サーフェスモデルSMの一部を拡大した斜視図であり、歪み領域推定方法M1に含まれる特徴量導出ステップS112の過程において定められる点を図示する斜視図である。
図8は、特徴量導出ステップS112において導出される特徴量の一例を説明するための模式図である。なお、
図4、
図5、及び
図7に図示されているように、本実施形態では、サーフェスモデルSMを取り扱う空間においてx軸、y軸、及びz軸により規定される直交座標系を用いている。ただし、歪み領域推定方法M1及び後述する機械学習方法M3において用いる座標系は、直交座標系に限定されない。機械学習方法M3において用いる座標系は、例えば、斜交座標系であってもよいし、極座標系であってもよいし、一般座標系であってもよい。なお、一般座標系の例としては、円筒座標系が挙げられる。
【0041】
歪み領域推定方法M1は、前処理ステップS11と、推定ステップS12と、を含んでいる。
【0042】
(前処理ステップ)
前処理ステップS11は、プロセッサ12が、学習済モデルLMに入力するサーフェスモデルの断面プロファイルの各単位区間における特徴量を導出するステップである。前処理ステップS11は、
図3に示すように、断面プロファイル生成ステップS111と、特徴量導出ステップS112と、を含んでいる。
【0043】
断面プロファイル生成ステップS111は、サーフェスモデルSMの表面プロファイルから複数の断面プロファイルを生成するステップである。
断面プロファイル生成ステップS111が生成する複数の断面プロファイルは、互いに交わる3軸により構成される斜交座標系で表される複数の断面であって、前記3軸のうち2軸により規定される平面と平行な複数の断面における断面プロファイルである、ことが好ましい。また、隣接する断面プロファイル同士の間隔は、等間隔であることがより好ましい。
【0044】
上述したように、本実施形態では、互いに直交するx軸、y軸、及びz軸を3軸とする直交座標系を用いている。そのうえで、複数の断面プロファイルとして、(1)xy平面と平行であり、且つ、等間隔な複数の断面C
xy、(2)yz平面と平行であり、且つ、等間隔な複数の断面C
yz、及び(3)zx平面と平行であり、且つ、等間隔な複数の断面C
zx、における断面プロファイルを用いている(
図4及び
図5参照)。また、隣接する断面C
yz同士の間隔d
yzを20mmに設定している(
図5参照)。隣接する断面C
xy同士の間隔、及び、隣接する断面C
zx同士の間隔も、断面C
yzと同様に20mmに設定している。ただし、これらの間隔は、想定される歪み領域のサイズなどに応じて、適宜定めることができる。
【0045】
なお、部品の形状から、断面Cxy,Cyz,Czxのうち歪み領域を推定しやすい断面がどの断面であるかが既知である場合などは、断面Cxy,Cyz,Czxのうち何れかの断面を選択し、その断面における断面プロファイルのみを用いることもできる。ただし、断面Cxy,Cyz,Czxの全ての断面プロファイルを用いることによって、各部品における座標軸の向きを気にする必要がなくなるし、歪み領域の見逃しを削減することができる。
【0046】
特徴量導出ステップS112は、サーフェスモデルSMに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出するステップである。本実施形態では、サーフェスモデルSMに含まれる線として、
図4及び
図5に示す断面C
xy,C
yz,C
zxの各々における断面プロファイルを採用している。
図6には、断面C
yzにおける断面プロファイルの一例を示している。
図6に示す断面プロファイルを例にすれば、特徴量導出ステップS112は、断面C
yzにおける断面プロファイルにおいて、複数の単位区間Se
i(iは、3≦i≦Nの整数、ここでNは、正の整数)を設定し、各単位区間Se
iの特徴量を導出する。
より具体的には、サーフェスモデルSMの断面プロファイルは、各々が単一のスプライン曲線により構成されたN本の曲線を直列に接続することによって構成されている。特徴量導出ステップS112は、i番目(iは、2以上N-1以下の整数)のスプライン曲線からなる第1区間と、i-1番目のスプライン曲線からなる第2区間と、i+1番目のスプライン曲線からなる第3区間と、により構成される区間を前記単位区間として、各単位区間の前記特徴量を導出する。例えば、
図6及び
図7に示す単位区間Se
i+1を第1区間とする場合、第2区間は単位区間Se
iであり、第3区間は単位区間Se
i+2である。
なお、本実施形態においては、第1区間を中央として、その前後に位置する第2区間及び第3区間を両端として、後述する20個の特徴量を導出する。以下においては、第1区間を中央として、その前後に位置する第2区間及び第3区間を両端とする3区間を用いて導出された20個の特徴量を、第1区間の特徴量と称する。
【0047】
次に、特徴量導出ステップS112は、第1区間(例えば単位区間Se
i+1)、前記第2区間(例えば単位区間Se
i)、及び前記第3区間(例えば単位区間Se
i+2)の各々をM等分(Mは、2以上の整数)することにより得られるM個の擬似的な線分を、それぞれ、線分L1j、線分L2j、及び線分L3j(jは、1以上M以下の整数)とする。
図6に示す断面プロファイルでは、各単位区間Se
i+1の始点及び終点の各々を点P
i及び点P
i+1としている。そのうえで、線分P
iP
i+1を6等分することにより得られる5つの点を点P
ijとしている(
図7参照)。したがって、第1区間である単位区間Se
i+1の線分P
iP
ijが線分L1jに対応する。同様に、第2区間である単位区間Se
iの線分P
iP
ijが線分L2jに対応し、第3区間である単位区間Se
i+2の線分P
iP
ijが線分L3jに対応する。なお、
図7に示す断面プロファイルでは、上述したようにM=6を採用している。ただし、Mは、M=6に限定されず、サーフェスモデルSMの大きさやデザインなどに応じて適宜選択することができる。Mの定型的な例としては、M=50が挙げられるが、Mは、10程度であってもよいし、100程度であってもよい。
【0048】
なお、本実施形態では、yz平面に平行な断面Cyzにおける断面プロファイルにおいて、iを用いて一般化した単位区間Sei+1を第1区間とする場合を例にして20個の特徴量の導出の仕方について説明する。ただし、実際の特徴量導出ステップS112では、当該断面プロファイルにおいて各単位区間Sei(iは2以上N-1以下の整数)を第1区間とする場合について20個の特徴量を繰り返し導出する。また、断面Cyzにおける断面プロファイルの場合と同様に、断面Cxy,Czxの各々における断面プロファイルの各単位区間についても20個の特徴量を繰り返し導出する。
【0049】
特徴量導出ステップS112は、各単位区間の特徴量として、少なくとも、第1区間における隣接する線分L1jと線分L1j+1とのなす角の変化量の最大値と、第2区間における隣接する線分L2jと線分L2j+1とのなす角の変化量の最大値と、第3区間における隣接する線分L3jと線分L3j+1とのなす角の変化量の最大値と、を導出する。
そのうえで、特徴量導出ステップS112では、第1区間における隣接する線分L1jと線分L1j+1とのなす角の変化量の最大値を第1の特徴量とする。また、特徴量導出ステップS112では、第2区間における隣接する線分L2jと線分L2j+1とのなす角の変化量の最大値と、第3区間における隣接する線分L3jと線分L3j+1とのなす角の変化量の最大値とを比較し、小さい方を第2の特徴量とし、大きい方を第3の特徴量とする。
【0050】
ここで、第2区間である単位区間Se
iにおける線分Lij(線分P
iP
ij)と線分Lij+1(線分P
iP
ij+1)とのなす角θ
ijとしては、鋭角と鈍角とが考えられるが、本実施形態では、鋭角の角度を角θ
ijとして採用する。
図8では、角θ
i1~角θ
i4を図示している。角θ
ijの変化量とは、単位区間Se
iの長さを6等分することで得られる長さL
iで角θ
ijを割ることによって得られる。
【0051】
また、第1区間における角度の変化量の最大値、第2区間における角度の変化量の最大値、及び、第3区間における角度の変化量の最大値の大小関係を、0,-1,1の何れかの値で表現したものを第4の特徴量とする。第1区間における角度の変化量の最大値の絶対値が小さく、第2区間及び第3区間における角度の変化量の最大値の絶対値が大きい場合、0を採用する。また、上述した0を採用する場合に該当しない場合のうち、角度の変化量の最大値が正である場合、-1を採用する。この場合の例としては、(1)第1区間~第3区間における角度の変化量の最大値が何れも正であり、且つ、第2区間、第1区間、及び、第3区間の順番で角度の変化量の最大値が小さくなる場合や、(2)第2区間及び第3区間の各々の角度の変化量の最大値が同程度であり、且つ、第1区間の角度の変化量の最大値が第2区間及び第3区間の各々の角度の変化量の最大値よりも大きい場合や、(3)第2区間の角度の変化量の最大値が第1区間及び第3区間の各々の角度の変化量の最大値よりも大きく、且つ、第1区間及び第3区間の各々の角度の変化量の最大値が同程度である場合など、が挙げられる。なお、角度の変化量の最大値同士を比較して、同程度と認定する範囲は、適宜定めることができる。また、角度の変化量の最大値同士を比較して、同程度であるか否かを判定する場合、比較する角度の変化量の最大値同士における大小関係は、問わない。また、上述した0を採用する場合に該当しない場合のうち、角度の変化量の最小値が負である場合、1を採用する。この場合の例としては、(4)第1区間~第3区間における角度の変化量の最小値が何れも負であり、且つ、第2区間、第1区間、及び、第3区間の順番で角度の変化量の最小値が小さくなる場合や、(5)第2区間及び第3区間の各々の角度の変化量の最小値が同程度であり、且つ、第1区間の角度の変化量の最小値が第2区間及び第3区間の各々の角度の変化量の最小値よりも小さい場合や、(6)第2区間の角度の変化量の最小値が第1区間及び第3区間の各々の角度の変化量の最小値よりも小さく、且つ、第1区間及び第3区間の各々の角度の変化量の最小値が同程度である場合など、が挙げられる。また、0を採用する場合、-1を採用する場合、及び、1を採用する場合の各々について、更なる判定基準を設けてもよい。
【0052】
また、特徴量導出ステップS112は、第1区間における角度(D1)を第5の特徴量とし、第2区間における角度と第3区間における角度のうち、小さい方(Ds)及び大きい方(Db)の各々を第6の特徴量及び第7の特徴量とする。
【0053】
また、Dsに対するD1の差分を第8の特徴量とし、Dbに対するD1の差分を第9の特徴量とする。
【0054】
また、DbとDsとの差の絶対値を第10の特徴量とする。
【0055】
また、第2区間における角度の和と、第3区間における角度の和との和を第11の特徴量とする。
【0056】
また、第1区間における角度の和と、第2区間における角度の和と、第3区間における角度の和との和を第12の特徴量とする。
【0057】
また、第1区間における角度の最大値、第2区間における角度の最大値、及び、第3区間における角度の最大値の大小関係を、0,-1,1の何れかの値で表現したものを第13の特徴量とする。第1区間における角度の最大値の絶対値が小さく、第2区間及び第3区間における角度の最大値の絶対値が大きい場合、0を採用する。また、上述した0を採用する場合に該当しない場合のうち、角度の最大値が正である場合、-1を採用する。この場合の例としては、第1区間~第3区間における角度の最大値が何れも正であり、且つ、第2区間、第1区間、及び、第3区間の順番で角度の最大値が小さくなる場合が挙げられる。また、上述した0を採用する場合に該当しない場合のうち、角度の最小値が負である場合、1を採用する。この場合の例としては、第1区間~第3区間における角度の最小値が何れも負であり、且つ、第2区間、第1区間、及び、第3区間の順番で角度の最小値が小さくなる場合が挙げられる。なお、第4の特徴量の場合と同様に、0を採用する場合、-1を採用する場合、及び、1を採用する場合の各々について、更なる判定基準を設けてもよい。
【0058】
また、第1区間における長さLi(以下において、長さL1と称する)を第14の特徴量とする。
【0059】
また、第2区間における長さLi(以下において、長さL2と称する)と第3区間における長さLi(以下において、長さL3と称する)とを比較し、小さい方(Ls)及び大きい方(Lb)の各々を第15の特徴量及び第16の特徴量とする。
【0060】
また、L1に対するLsの比率(ln(Ls/L1))を第17の特徴量とする。
【0061】
また、L1に対するLbの比率(ln(Lb/L1))を第18の特徴量とする。
【0062】
また、Lsに対するLbの比率(ln(Lb/Ls))を第19の特徴量とする。
【0063】
また、L1、L2、及びL3の大小関係を、0,-1,1の何れかの値で表現したものを第20の特徴量とする。L1が小さく、L2及びL3が大きい場合、及び、L1が大きく、L2及びL3が小さい場合、0を採用する。また、L2、L1、及びL3の順番で単調に小さくなっていく場合、-1を採用する。また、L2、L1、及びL3の順番で単調に大きくなっていく場合、1を採用する。なお、0を採用する場合、-1を採用する場合、及び、1を採用する場合の各々について、更なる判定基準を設けてもよい。
【0064】
以上のように、本実施形態では、特徴量導出ステップS112は、20個の特徴量を導出する。ただし、特徴量導出ステップS112が導出する特徴量は、上記の20個に限定されるわけではない。上述した特徴量の一部を省略することもできるし、上述した特徴量に対して別の特徴量を追加することもできる。特徴量導出ステップS112が導出する特徴量は、部品の形状や生じ得る歪みの対応などに応じて適宜定めることができる。
【0065】
(推定ステップ)
推定ステップS12は、プロセッサ12が、学習済モデルLMを用いて、サーフェスモデルSMに含まれる線(本実施形態では断面プロファイル)に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域の有無を推定するステップである。推定ステップS12において、プロセッサ12は、前処理ステップS11において導出された特徴量を表すデータをメモリ11から読み出し、読み出した特徴量を表すデータを学習済モデルLMに入力する。そして、学習済モデルLMから出力された推定結果、すなわち、各単位区間について前記歪み領域を含んでいるか否かの推定結果を表すデータをストレージ13に書き込む。推定結果を表すデータの態様は適宜定めることができるが、本実施形態では、単位区間に歪み領域が含まれている場合に「1」とし、単位区間に歪み領域が含まれていない場合に「0」とする。
【0066】
実際の推定ステップS12では、断面Cxy,Cyz,Czxの全ての断面プロファイルにおいて、各単位区間Sei(iは2以上N-1以下の整数)を第1区間とする場合について20個の特徴量を入力として、各単位区間について前記歪み領域を含んでいるか否かの推定結果を出力する。
【0067】
なお、歪み領域推定方法M1は、推定ステップS12にて推定した推定結果を表すデータ出力する出力ステップを更に含んでいてもよい。この出力ステップにおいて、プロセッサ12は、推定結果を表すデータをストレージ13から読み出し、読み出した推定結果を表すデータを3次元CAD2に提供するように構成されていてもよい。これにより、3次元CAD2は、サーフェスモデルSMの各断面プロファイルを構成する各単位区間に含まれている歪み領域を、他の領域とは差別化することができる。また、この出力ステップにおいて、プロセッサ12は、ストレージ13から読み出した推定結果をディスプレイに出力することによって、ユーザに提示するように構成されていてもよい。これにより、ユーザは、サーフェスモデルSMの各断面プロファイルを構成する各単位区間に歪み領域が含まれているか否かを知ることができる。
【0068】
<機械学習装置及び機械学習方法>
機械学習装置3の構成について、
図1及び
図9を参照して説明する。
図1の下段は、機械学習装置3の構成を示すブロック図である。
図9は、機械学習装置3が実行する機械学習方法M3の流れを示すフローチャートである。
【0069】
機械学習装置3は、学習済モデルLMを構築するための機械学習方法M3を実行する装置である。機械学習装置3は、
図5に示すように、ストレージ31と、プロセッサ32と、メモリ33と、を備えている。ストレージ31、プロセッサ32、及びメモリ33は、不図示のバスを介して互いに接続されている。このバスには、更に、不図示の入出力インタフェース及び不図示の通信インタフェースが接続されていてもよい。この入出力インタフェースは、例えば、外部装置(例えば、センサ及びキーボード)から機械学習装置3に教師データを入力するために利用される。また、この通信インタフェースは、例えば、外部装置(例えば、前述した歪み領域推定装置1)に学習済モデルLMを提供するために利用される。
【0070】
ストレージ31は、学習用データセットDSを格納するための構成である。学習用データセットDSは、サーフェスモデルSMの各断面プロファイルを構成する各単位区間における複数の特徴量を表すデータに対して、その単位区間について歪み領域を含んでいるか否かの推定結果を表すラベルを付した教師データの集合である。
【0071】
ここで、複数の特徴量を表すデータに対して推定結果を表すラベルを付すとは、複数の特徴量を表すデータと推定結果とを任意の方法で関連付けることを指す。複数の特徴量を表すデータと推定結果とを関連付ける方法としては、例えば、複数の特徴量を表すデータと推定結果とを1対1で対応付けるテーブルを作成する方法や、推定結果に対応するディレクトリに複数の特徴量を表すデータを格納する方法などが挙げられる。なお、ストレージ31としては、例えば、フラッシュメモリ、HDD、SSD、又は、これらの組み合わせ等を用いることができる。
【0072】
図9に示すように、機械学習方法M3は、前処理ステップS31と、構築ステップS32と、を含んでいる。
前処理ステップS31は、
図2に示す前処理ステップS11と同様ステップである。すなわち、前処理ステップS31は、プロセッサ32が、学習済モデルLMに入力するサーフェスモデルSMの断面プロファイルの各単位区間における複数の特徴量を導出するステップである。前処理ステップS31は、プロセッサ32が、各単位区間における複数の特徴量を表すデータの集合を学習用データセットDSとする。
【0073】
各学習用データセットDSには、各単位区間における複数の特徴量を表すデータが含まれている。各学習用データセットDSに含まれる各単位区間における複数の特徴量を表すデータは、学習済モデルLMに入力する各単位区間における複数の特徴量を表すデータと同様、サーフェスモデルの断面プロファイルにおいて設定された複数の単位区間の各々について導出された複数の特徴量を表すデータである。
【0074】
前処理ステップS31においては、更に、各単位区間について導出された複数の特徴量に対して上述する推定結果を表すラベルを付す。
【0075】
構築ステップS32において、プロセッサ32は、ストレージ31に格納された学習用データセットDSをメモリ33上に展開し、この学習用データセットDSを用いた教師あり機械学習によって、学習済モデルLMを構築する構築処理を実行するための構成である。学習済モデルLMは、上述したとおり、サーフェスモデルの断面プロファイルにおいて設定された複数の単位区間の各々について導出された複数の特徴量を入力とし、断面プロファイルの各単位区間について歪み領域を含んでいるか否かの推定結果を出力とするアルゴリズムである。プロセッサ32としては、例えば、CPU、GPU、マイクロプロセッサ、デジタルシグナルプロセッサ、マイクロコントローラ、TPU等のASIC、又は、これらの組み合わせ等を用いることができる。プロセッサ32は、本願発明の一態様における制御部として機能し、「演算装置」と呼ばれることもある。
メモリ33は、プロセッサ32が構築処理を実行することにより得られた学習済モデルLMを記憶するための構成である。メモリ33としては、例えば、半導体RAMを用いることができる。メモリ33に記憶された学習済モデルLMは、上述したストレージ31に格納(不揮発保存)されてもよい。
【0076】
なお、ここでは、学習済モデルLMを構築する構築処理を含む機械学習方法M3を単一のコンピュータに設けられた単一のプロセッサ32が実行する構成について説明したが、これに限定されない。すなわち、この機械学習方法M3を単一のコンピュータに設けられた、或いは、複数のコンピュータに分散して設けられた複数のプロセッサが共同して実行する構成を採用することも可能である。
【0077】
また、ここでは、学習用データセットDSを単一のコンピュータに設けられた単一のストレージ31に格納する構成について説明したが、これに限定されない。すなわち、学習用データセットDSを、単一のコンピュータに設けられた、或いは、複数のコンピュータに分散して設けられた複数のストレージに分散して格納する構成を採用することも可能である。また、学習用データセットDSは、プロセッサ32及びメモリ33と共にコンピュータに内蔵されたストレージ31に格納されている必要はなく、そのコンピュータとネットワークを介して通信可能に構成されたクラウドサーバに格納されていてもよい。
【0078】
また、ここでは、学習済モデルLMを単一のコンピュータに設けられた単一のメモリ33に記憶させる構成について説明したが、これに限定されない。すなわち、学習済モデルLMを単一のコンピュータに設けられた、或いは、複数のコンピュータに分散して設けられた複数のメモリに分散して記憶させる構成を採用することも可能である。
【0079】
なお、プロセッサ32に機械学習方法M3を実行させるためのプログラムは、例えば、コンピュータ読み取り可能な一時的でない有形の記録媒体に記録されている。プロセッサ32は、このプログラムに含まれる命令を実行することによって、判定方法S1を実行する。この記録媒体は、ストレージ31であってもよいし、メモリ33であってもよいし、その他の記録媒体であってもよい。例えば、テープ、ディスク、カード、半導体メモリ、プログラマブル論理回路が、その他の記録媒体として利用可能である。
【0080】
機械学習装置3によれば、上述した歪み領域推定装置1が利用する学習済モデルLMを構築することができる。しかも、機械学習に用いる教師用データは、サーフェスモデルSMの各断面プロファイルを構成する各単位区間における複数の特徴量を表すデータに対して、その単位区間について歪み領域を含んでいるか否かの推定結果を表すラベルを付したものである。サーフェスモデルSMに歪み領域が含まれているか否かの判断は、従来、ディスプレイ上にサーフェスモデルSMを表示させたうえで、作業員がサーフェスモデルSMを目視により確認することによって行っていたものである。したがって、教師データの作成に際し、作業員が容易に歪み領域の有無の判定を行うことができる。或いは、既に蓄積されている目視確認の結果を、教師用データとして利用することができる。したがって、機械学習装置3によれば、精度の高い教師用データを容易に作成することができる。機械学習装置3を用いて実施される機械学習方法M3、及び、コンピュータを機械学習装置3として動作させるプログラムについても、同様のことが言える。
【0081】
なお、本実施形態においては、学習済モデルLMを構築する機械学習方法M3と学習済モデルLMを用いて歪み領域の有無を推定する推定方法とを、2つの装置においてそれぞれ実行する態様について説明したが、本発明はこれに限定されない。すなわち、学習済モデルLMを構築する機械学習方法M3と、学習済モデルLMを用いて歪み領域の有無を推定する推定方法とを、1つの装置において実行する態様も本発明の範疇に含まれる。
【0082】
〔推定ステップの変形例〕
図2に示す歪み領域推定方法M1の推定ステップS12は、プロセッサ12が、学習済モデルLMを用いて、サーフェスモデルSMに含まれる線(本実施形態では断面プロファイル)に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域の有無を推定するように構成されていた。
【0083】
ただし、推定ステップS12の変形例は、学習済モデルLMを用いずに、サーフェスモデルSMに含まれ得る歪み領域を推定するように構成されていてもよい。この場合、プロセッサ12は、前処理ステップS11により導出された複数の特徴量(本実施形態では、20個の特徴量)に対して主成分分析(PCA)を実施し、2次元の特徴量(以下においてPCA特徴量と称する)に変換する。
【0084】
図10の上段は、PCA特徴量を2次元平面上にプロットした散布図である。
図10の下段は、
図10の上段の一部を拡大した散布図である。
【0085】
推定ステップS12の変形例においては、PCA特徴量がプロットされる2次元平面上において、サーフェスモデルSMの断面プロファイルの各単位区間について歪み領域を含んでいるとプロセッサ12が推定する領域R(
図10の下段参照)をあらかじめ定めておく。推定ステップS12の変形例は、歪み領域を含む単位区間の特徴量をPCA特徴量に変換した場合に、2次元平面上の特定の領域に集まりやすいという傾向を利用している。このように、PCA特徴量を用いて推定ステップS12を構成することにより、学習済モデルLMを用いずに、サーフェスモデルSMに含まれ得る歪み領域を推定することができる。
【0086】
なお、本変形例では、前処理ステップS11において導出した複数の特徴量に対してPCAを実施している。ただし、本変形例において用いる複数の特徴量は、適宜変更することができる。また、歪み領域を含む単位区間の特徴量を規定する領域Rも、適宜変更することができる。
【実施例0087】
図1に示す歪み領域推定システムSに含まれる機械学習装置3と歪み領域推定装置1とを用いて、サーフェスモデルSMの断面プロファイルに含まれ得る歪み領域の推定を行った。本実施例では、学習済モデルLMのアルゴリズムとして、ベイジアンガウス混合モデル(BayesianGaussianMixture)、サポートベクターマシン(SupportVectorMachine)、及び、勾配ブースティング(LightGBM)を用いた。以下では、ベイジアンガウス混合モデル、サポートベクターマシン、及び、勾配ブースティングの各々を、第1実施例、第2実施例、及び第3実施例と称する。
【0088】
第1実施例~第3実施例では、学習フェーズ、試用フェーズ(検証フェーズ)、及び実用フェーズ(推定フェーズ)の各フェーズにおいて同じデータセットを用いた。これらのデータセットは、13部品のサーフェスモデルSMの複数の断面プロファイルから得られた12214件の単位区間に対応する。本実施例では、第1実施例~第3実施例の各々において、12214件の単位区間のうち、7816件(全体の64%)を学習フェーズに用い、1955件(全体の16%)を試用フェーズに用い、2443件(全体の20%)を実用フェーズに用いた。なお、学習フェーズには機械学習装置3を用い、機械学習装置3が機械学習方法M3を実行することにより得られた学習済モデルLMを歪み領域推定装置1に提供した。試用フェーズ及び実用フェーズは、歪み領域推定装置1を用いた。
【0089】
学習済モデルLMを用いた推定ステップS12では、上述したように、各単位区間に対応する20個の特徴量を入力とし、その単位区間に歪み領域が含まれているか否かの推定結果を出力とした。出力である推定結果は、単位区間に歪み領域が含まれている場合に「1」とし、単位区間に歪み領域が含まれていない場合に「0」とした。
【0090】
また、学習済モデルLMを用いた推定結果の評価は、以下の3通りとした。
・正解:作業者が歪みと判断した箇所を、学習済モデルLMも歪みと推定した。
・未検出:作業者が歪みと判断した箇所を、学習済モデルLMは歪みと推定しなかった。
・過検出:作業者が歪みと判断しなかった箇所を、学習済モデルLMは歪みと推定した。
【0091】
正解は、その割合(正解率)が高いほど高評価となる。未検出は、その割合(未検出率)が低いほど高評価となる。過検出は、その割合(過検出率)が0%にならないことを良しとする。
【0092】
なお、部品における歪み領域の有無の判断は、作業者が見ても迷う場合があるし、作業者の熟練度にも依存する。したがって、過検出率が極短に低い場合は、歪みといえるかもしれない疑わしい場合を見過ごしていると考えられるので、学習済モデルLMとしては好ましくない。
【0093】
第1実施例であるベイジアンガウス混合モデルを採用した学習済モデルLMは、実用フェーズの2443件において、正解が32件、未検出が11件、過検出が161件であった。第2実施例であるサポートベクターマシンを採用した学習済モデルLMは、正解が34件、未検出が9件、過検出が10件であった。第3実施例である勾配ブースティングを採用した学習済モデルLMは、正解が38件、未検出が5件、過検出が98件であった。
【0094】
第1実施例は、未検出及び過検出が一番多かった。また、正解が0件の部品が存在した。また、過検出と推定された単位区間についても作業員が確認したところ、歪みのようには見えない箇所が多く存在していた。
【0095】
第2実施例は、正解及び未検出の件数は悪くないが、過検出が少なかった。そのため、作業員によっては見逃される可能性がある歪みのように見える箇所を抽出できない可能性が高い。
【0096】
第3実施例は、未検出の件数が少なく、且つ、過検出の件数が第1実施例と第2実施例との中間くらいで適切と感じられた。過検出と推定された単位区間についても作業員が確認したところ、見ようによっては歪みのように見える単位区間を抽出していた。
【0097】
以上の結果から、歪み領域推定システムSにおいて用いる学習済モデルLMのアルゴリズムとしては、勾配ブースティングが好ましいことが分かった。
【0098】
〔まとめ〕
本発明の第1の態様に係る歪み領域推定装置は、3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを実行する制御部を備えている。
【0099】
上記の構成によれば、3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みを検出することができる。
【0100】
また、本発明の第2の態様に係る歪み領域推定装置においては、上述した第1の態様に係る歪み領域推定装置の構成に加えて、前記制御部は、前記推定ステップの前に前処理ステップを更に実行し、前記推定ステップは、教師あり学習により構築された学習済モデルを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定し、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、構成が採用されている。
【0101】
上記の構成によれば、各単位区間について導出された特徴量を入力された学習済モデルが各単位区間について前記歪み領域を含んでいるか否かの推定結果を出力することができる。したがって、本歪み領域推定装置を用いることにより、3次元のサーフェスモデルにおいて生じ得る歪みであって、錯視に起因する視覚的な歪みを検出することができる。
【0102】
また、本発明の第3の態様に係る歪み領域推定装置においては、上述した第2の態様に係る歪み領域推定装置の構成に加えて、前記サーフェスモデルに含まれる前記線は、前記サーフェスモデルの断面プロファイルであり、前記前処理ステップは、前記断面プロファイルにおいて前記複数の単位区間を設定し、各単位区間の前記特徴量を導出する、構成が採用されている。
【0103】
特徴量を導出するために用いる線としては、サーフェスモデルの断面プロファイルが好適である。
【0104】
また、本発明の第4の態様に係る歪み領域推定装置においては、上述した第3の態様に係る歪み領域推定装置の構成に加えて、前記前処理ステップは、前記サーフェスモデルの表面プロファイルから複数の前記断面プロファイルを生成する断面プロファイル生成ステップを更に含む、構成が採用されている。
【0105】
上記の構成によれば、複数の断面プロファイルを用いて、サーフェスモデルにおいて生じ得る歪み領域を検出することができる。そのため、ユーザは、サーフェスモデルにおいて歪みが生じている領域を2次元的に把握することができる。
【0106】
また、本発明の第5の態様に係る歪み領域推定装置においては、上述した第4の態様に係る歪み領域推定装置の構成に加えて、前記断面プロファイル生成ステップが生成する前記複数の前記断面プロファイルは、互いに交わる3軸により構成される斜交座標系で表される複数の断面であって、前記3軸のうち2軸により規定される平面と平行な複数の断面における断面プロファイルである、構成が採用されている。
【0107】
複数の断面プロファイルは、隣接する断面プロファイル同士が平行であることが好ましい。なお、隣接する断面プロファイル同士が平行であり、且つ、等間隔であることがより好ましい。隣接する断面プロファイル同士が等間隔であることによって、この間隔よりもサイズが大きな歪み領域を見逃す確率を低減することができる。
【0108】
また、本発明の第6の態様に係る歪み領域推定装置においては、上述した第5の態様に係る歪み領域推定装置の構成に加えて、前記3軸の各々をx軸、y軸、及びz軸として、前記断面プロファイルは、(1)xy平面と平行であり、且つ、等間隔な複数の断面、(2)yz平面と平行であり、且つ、等間隔な複数の断面、及び(3)zx平面と平行であり、且つ、等間隔な複数の断面、における断面プロファイルである、構成が採用されている。
【0109】
上記の構成によれば、断面プロファイル生成ステップが断面プロファイルを生成するときに、サーフェスモデルの向きを考慮することなく、機械的に前処理ステップを実行することができる。したがって、歪み領域を推定するときの効率を高めることができる。
【0110】
また、本発明の第7の態様に係る歪み領域推定装置においては、上述した第3の態様~第6の態様の何れか一態様に係る歪み領域推定装置の構成に加えて、前記断面プロファイルの各々は、N個(Nは、3以上の整数)の曲線を直列に接続することにより構成されており、前記曲線の各々は、単一のスプライン曲線により構成されており、前記特徴量導出ステップは、i番目(iは、2以上N-1以下の整数)のスプライン曲線からなる第1区間と、i-1番目のスプライン曲線からなる第2区間と、i+1番目のスプライン曲線からなる第3区間と、により構成される区間を前記単位区間として、各単位区間の前記特徴量を導出する、構成が採用されている。
【0111】
サーフェスモデルが3次元CADで取り扱われるCADデータである場合、表面プロファイルは、複数の構成面からなる。このような場合に、断面プロファイルは複数のスプライン曲線を接続することにより構成されるため、上記の構成を好適に用いることができる。
【0112】
また、本発明の第8の態様に係る歪み領域推定装置においては、上述した第7の態様に係る歪み領域推定装置の構成に加えて、前記第1区間、前記第2区間、及び前記第3区間の各々をM等分(Mは、2以上の整数)することにより得られるM個の擬似的な線分を、それぞれ、線分L1j、線分L2j、及び線分L3j(jは、1以上M以下の整数)として、前記特徴量導出ステップは、各単位区間の特徴量として、少なくとも、前記第1区間における隣接する線分L1jと線分L1j+1とのなす角の変化量の最大値と、前記第2区間における隣接する線分L2jと線分L2j+1とのなす角の変化量の最大値と、前記第3区間における隣接する線分L3jと線分L3j+1とのなす角の変化量の最大値と、を導出する、構成が採用されている。
【0113】
特徴量の例としては、上述のような特徴量が上げられる。少なくともこれらの特徴量を用いることによって、曲率が相対的に小さな第1区間を曲率が相対的に大きな第2区間及び第3区間で挟み込んだ単位区間において生じる歪みを精度よく推定することができる。
【0114】
本発明の第9の態様に係る歪み領域推定方法は、3次元のサーフェスモデルに含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する推定ステップを含んでいる。
また、本発明の第10の態様に係る歪み領域推定方法においては、上述した第9の態様に係る歪み領域推定方法の構成に加えて、前記推定ステップの前に実行される前処理ステップを更に含み、前記推定ステップは、教師あり学習により構築された学習済モデルを用いて、前記サーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定し、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である、構成が採用されている。
【0115】
また、本発明の第11の態様に係る歪み領域推定方法においては、上述した第10の態様に係る歪み領域推定方法の構成に加えて、前記サーフェスモデルに含まれる前記線は、前記サーフェスモデルの断面プロファイルであり、前記前処理ステップは、前記断面プロファイルにおいて前記複数の単位区間を設定し、各単位区間の前記特徴量を導出する、構成が採用されている。
【0116】
また、本発明の第12の態様に係る歪み領域推定方法においては、上述した第11の態様に係る歪み領域推定方法の構成に加えて、前記前処理ステップは、前記サーフェスモデルの表面プロファイルから複数の前記断面プロファイルを生成する断面プロファイル生成ステップを更に含む、構成が採用されている。
【0117】
本発明の第9~第12の態様に係る歪み領域推定方法は、それぞれ、本発明の第1~第4の態様に係る歪み領域の推定装置と同じ効果を奏する。
【0118】
本発明の第13の態様に係る機械学習装置は、前処理ステップと、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を実行する制御部を備えており、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である。
【0119】
本発明の第14の態様に係る機械学習方法は、前処理ステップと、制御部が、学習用データセットを用いた教師あり学習によって、3次元のサーフェスモデルに含まれる線に含まれ得る歪み領域であって、錯視に起因して視覚的に歪んで見える歪み領域を推定する学習済モデルを構築する構築ステップと、を含んでおり、前記前処理ステップは、前記サーフェスモデルに含まれる前記線において複数の単位区間を設定し、各単位区間の形状の特徴を示す特徴量を導出する特徴量導出ステップを含み、前記学習済モデルの入力は、各単位区間について導出された前記特徴量であり、前記学習済モデルの出力は、各単位区間について前記歪み領域を含んでいるか否かの推定結果である。
【0120】
本発明の第13の態様に係る機械学習装置、及び、本発明の第14の態様に係る機械学習方法は、それぞれ、本発明の第2の態様に係る歪み領域の推定装置と同じ効果を奏する。
【0121】
〔付記事項〕
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、上述した実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる他の実施形態についても本発明の技術的範囲に含まれる。