(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-16
(45)【発行日】2024-04-24
(54)【発明の名称】情報処理システム、情報処理方法、プログラム
(51)【国際特許分類】
G06N 5/04 20230101AFI20240417BHJP
G06T 17/10 20060101ALI20240417BHJP
【FI】
G06N5/04
G06T17/10
(21)【出願番号】P 2019237729
(22)【出願日】2019-12-27
【審査請求日】2022-12-22
(73)【特許権者】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(73)【特許権者】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】100189751
【氏名又は名称】木村 友輔
(72)【発明者】
【氏名】中山 正明
【審査官】北川 純次
(56)【参考文献】
【文献】特開2015-080720(JP,A)
【文献】特開2015-028725(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00 ー 99/00
G06T 17/10
A61B 5/00
(57)【特許請求の範囲】
【請求項1】
3次元デー
タの形状の評価に対する影響度を、
当該3次元データのボクセル毎に取得する影響度取得手段と、
前記3次元データの断面を示す断面図であって、前記影響度取得手段により取得されたボクセル毎の影響度を
示す情報を付加した断面図を表示するよう制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
【請求項2】
前記3次元データの断面であって、所定の条件を満たす平面による断面を特定する特定手段を備え、
前記表示制御手段は、前記特定手段により特定された断面
を示す断面図であって、前記影響度取得手段により取得されたボクセル毎の影響度を
示す情報を付加した断面図を表示するよう制御
することを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記特定手段は、所定の条件を満たす平面として、前記影響度に対する主成分分析に基づき決定される注目軸に直
交する平面を特定することを特徴とする請求項2に記載の情報処理システム。
【請求項4】
前記特定手段は、所定の条件を満たす平面として、前記影響度に対する主成分分析に基づき決定される注目軸に直
交する平面のうち、当該平面中に含まれる点群の影響度の絶対値の最大値が最大の平面を特定することを特徴とする請求項3に記載の情報処理システム。
【請求項5】
前記特定手段は、所定の条件を満たす平面として、前記影響度に対する主成分分析に基づき決定される注目軸に直
交する平面のうち、当該平面中に含まれる点群の影響度の絶対値の最大値と最小値の差が最大の平面を特定することを特徴とする請求項3に記載の情報処理システム。
【請求項6】
前記影響度取得手段は、深層学習により学習された学習済みモデルを用いた推論により、影響度を取得することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理システム。
【請求項7】
3次元データの形状を評価する情報処理システムにおける情報処理方法であって、
影響度取得手段が
、3次元デー
タの形状の評価に対する影響度を、
当該3次元データのボクセル毎に取得する影響度取得工程と、
表示制御手段が、
前記3次元データの断面を示す断面図であって、前記影響度取得工程において取得されたボクセル毎の影響度を
示す情報を付加した断面図を表示するよう制御する表示制御工程と、
を備えることを特徴とする情報処理方法。
【請求項8】
コンピュータを、請求項1乃至6のいずれか1項に記載の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法、プログラムに関する。
【背景技術】
【0002】
近年、画像解析や言語解析など様々な分野においてAI(深層学習による推論)が用いられている。深層学習による推論は、高精度であるものの、なぜそのような結論を導いたのか、その根拠・プロセスを把握することが難しく、実務への導入の障壁にもなっている。
【0003】
このような課題を解決すべく、近年では、推定結果に至るプロセスが人間によって理解できるようなAI(XAI(Explainable AI))に関する技術開発も進められている。
【0004】
例えば、特許文献1には、ニューラルネットワークを用いた画像認識処理について、推定結果の根拠となった特徴量を出力する技術について開示されている。
【先行技術文献】
【特許文献】
【0005】
【発明の開示】
【発明が解決しようとする課題】
【0006】
また、特許文献1の他にも、CAM(Class Activation Mapping)と呼ばれる注目領域の可視化技術についても研究が進められている。2次元データについては、CAMを用いることで、注目領域を可視化した画像を得られ、得られた画像は人間が見ても理解しやすいデータであるが、3次元データについてCAMを用いたとしても、得られる画像は3次元画像となることから、直感的にどこが注目領域であるのか理解し難い。
【0007】
そこで、本発明では、3次元データに対する推論処理において、注目領域をより把握しやすくする仕組みを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の情報処理システムは、3次元データの形状を評価する情報処理システムであって、前記3次元データをボクセル変換し、当該3次元データの形状の評価に対する影響度をボクセル毎に取得する影響度取得手段と、前記影響度取得手段により取得されたボクセル毎の影響度を表示する表示手段と、3次元データの断面であって、所定の条件を満たす平面による断面を特定する特定手段と、を備え、前記表示手段は、特定手段により特定された断面に、前記影響度取得手段により取得されたボクセル毎の影響度を付加した断面図を表示することを特徴とする。
【発明の効果】
【0009】
本発明によれば、3次元データに対する推論処理において、注目領域をより把握しやすくすることが可能となる。
【図面の簡単な説明】
【0010】
【
図2】クライアント端末101、サーバ装置102のハードウエア構成の一例を示す図
【
図3】本実施形態における処理内容を示すフローチャート
【
図4】ステップS305の注目軸の決定処理の詳細を示すフローチャート
【
図5】ステップS306の注目断面の決定処理の詳細を示すフローチャート
【
図6】ステップS501の断面の優先度を決める関数を決定する処理の詳細を示すフローチャート
【
図8】影響度点群と3D設計データとを重ね合わせて描画した図
【
図9】ステップS402で得られる画像の一例を示す図
【
図10】ステップS403の処理を行った場合のイメージを示す図
【
図11】ステップS307で表示される断面図を説明する図
【発明を実施するための形態】
【0011】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0012】
図1は、本発明における情報処理システムの構成の一例を示す図である。
【0013】
図1に示す通り、クライアント端末101とサーバ装置102がLAN103によって通信可能に接続されている。
【0014】
図2は、本発明のクライアント端末101、サーバ装置102に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。
【0015】
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声コントローラ206、ビデオコントローラ207、メモリコントローラ208、よび通信I/Fコントローラ209が接続される。
【0016】
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
【0017】
ROM202あるいは外部メモリ213は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
【0018】
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ213からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【0019】
入力コントローラ205は、キーボード210や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
【0020】
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
【0021】
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
【0022】
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
【0023】
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
【0024】
通信I/Fコントローラ209は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の4G回線、5G回線等を用いた通信が可能である。
【0025】
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0026】
次に
図3のフローチャートを用いて、3D設計データについて良形状か否かを判定する根拠となる評価結果を表示する処理について説明する。
【0027】
図3のフローチャートで示す処理は、クライアント端末101のCPU201が所定の制御プログラムを読み出して実行する処理である。なお、本実施例においては、クライアント端末101のCPU201が処理を実行するものとして説明するが、ステップS301~S306の処理については、サーバ装置102のCPU201が実行しても良い。
【0028】
ステップS301では、評価対象となる3D設計データを取得する。3D設計データについては、予め様々なパターンのものを生成しておき、サーバ装置102などの記憶領域に保存されているものとする。
【0029】
3D設計データの一例を
図7に示す。
図7に示す3D設計データは、円柱状の土台の上に、2本の円柱が乗っている構成となっている。例えば、土台の上に乗っている2本の円柱について、その配置や太さ、長さを様々に変化させたパターンのデータを生成しておき、それらのデータに対して良形状か否かの判定を行うのが、本発明の処理である。
【0030】
ステップS302では、3D設計データをボクセルデータに変換する。すなわち、三角形を張り合わせたメッシュ構造で表現される3D設計データを、空間を格子状に分割し、その格子内に部品が含まれるか否かを示すボクセルデータに変換している。例えば、1辺の格子の分割数を128とすると、3D設計データは128×128×128のボクセルデータとして表現されることになる。
【0031】
ステップS303では、ステップS302で取得した3Dボクセルデータに対して、当該設計データが優れた形状のデータであるか否かの評価(良形状判定)を行う。
【0032】
この良形状判定は、深層学習による推論によって実現することが可能である。具体的には、3D設計データを変換したボクセルデータとその3D設計データの良形状指標を学習データとして、3次元の畳み込みニューラルネットワークに対して学習を行う。良形状指標としては、例えば、3D設計データに流体シミュレーションによる流量値や、応力解析による最大応力値にマイナスをかけた値などが考えられる。生成された学習済みモデルを用いて、評価を行うことが可能である。
【0033】
ステップS304では、ステップS303で実行した評価結果、影響度を取得する。ここで取得される評価結果は、評価対象の3D設計データが良形状であるか否の情報である。また影響度は、良形状である方向に影響を与えた部分(3D設計データのうちどの部分の形状がどの程度良形状との判定に影響を与えたのか)、悪形状である方向に影響を与えた部分(3D設計データのうちどの部分の形状がどの程度悪形状との判定に影響を与えたのか)に関する情報である。影響度はニューラルネットワークに入力したボクセルデータと同じ次元のボクセルデータとして取得される。
【0034】
ステップS305では、ステップS304で取得した影響度に基づき、注目軸を決定する。ステップS305の処理の詳細は、
図4のフローチャートを用いて説明する。
【0035】
ステップS306では、注目断面を決定する。ステップS306の処理の詳細は、
図5、
図6のフローチャートを用いて説明する。
【0036】
ステップS307では、ステップS306(
図5のステップS505)で決定した注目断面に影響度を示す情報を付加した断面図を表示部に表示する。ステップS307で表示される断面図を
図11(C)に示す。
【0037】
次に
図4のフローチャートを用いて、ステップS305の注目軸の決定処理の詳細について説明する。
【0038】
ステップS401では、ステップS304で取得した影響度を(-1~1)の範囲に正規化する。
【0039】
ステップS402では、ステップS401で取得した影響度を点群化している。すなわち、点群の色を正規化した影響度の値-1~0~1に応じた青色~白色~赤色とし、点群位置をボクセル中心のxyz座標とする点群に変換する。
【0040】
ステップS402で得られる画像の一例を
図8に示す。
【0041】
図8は、影響度点群と3D設計データとを重ね合わせて描画した図である。
【0042】
図8に示す通り、影響度は部品が存在しないボクセルに対しても小さな値ではあるが出力されるため、単純に描画をするだけでは、非常に解釈しづらい可視化結果となる。
【0043】
ステップS403では、ステップS402で取得した影響度点群の影響度の絶対値を取り、閾値処理を行う。具体的には、閾値処理は、絶対値が0~0.5までの点群は削除し、0.5~1までの点群を残す処理である。
【0044】
ステップS403で得られる画像の一例を
図9に示す。
【0045】
図9に示す通り、土台の上に乗っていた太い円柱については、良形状との判定に影響を与える形状であることから、赤く表示され、細い円柱については、悪形状との判定に影響を与える形状であることから、青く表示されている。また、土台部分については、良形状にも悪形状にも影響を与えない形状であるから、表示されていない。
【0046】
ステップS404では、ステップS403で得られた点群の主成分分析を行い、第3主成分ベクトルを取得する。
【0047】
ステップS404の処理を行った場合のイメージを
図10に示す。
図10に示す通り、点群の広がりが大きい順に第1主成分、第2主成分、第3主成分として特定される。
【0048】
ステップS405では、ステップS404で得られた第3主成分ベクトルを注目軸として返却する。
【0049】
次に、
図5、
図6のフローチャートを用いて、ステップS306の注目断面の決定処理について説明する。
【0050】
ステップS501では、断面の優先度を決める関数を決定する。ステップS501の処理の詳細について、
図6のフローチャートを用いて説明する。
【0051】
ステップS601では、ステップS401で正規化した結果として、「正の値の点群のみ」または「負の値の点群のみ」で構成されているかを判定する。
【0052】
「正の値の点群のみ」または「負の値の点群のみ」で構成されている場合(ステップS601:YES)は、処理をステップS602に移行する。
【0053】
正の値と負の値の点群が存在する場合(ステップS601:NO)は、処理をステップS603に移行する。
【0054】
ステップS602では、断面の優先度の決定方法として、断面中(平面中)に含まれる点群の影響度の絶対値の最大値を当該断面の優先度と決定する方法を採用する。
【0055】
ステップS603では、断面の優先度の決定方法として、断面中(平面中)に含まれる点群の影響度の最大値と最小値の差を断面の優先度と決定する方法を採用する。
【0056】
本実施例における説明で使用している例(
図7に示す3D設計データ)においては、
図9に示す通り、正の値と負の値の両方を含む点群であるから、ステップS602においてNOと判定され、その結果、断面中(平面中)に含まれる点群の最大値と最小値の差を断面の優先度として決定する方法が採用される。
【0057】
【0058】
ステップS502では、
図4のフローチャートの処理により決定された注目軸に沿って、所定の間隔で平面(注目軸と直行する平面)を取得する。取得した平面のうち、部品(形状の良否判定の対象となる部品)と交点がある平面を特定する。所定の間隔としては、例えば、部品の最大長の1000分の1の長さなどが考えられる。
【0059】
図11(A)は、取得される平面の一例を示す図である。
図11(A)に示す通り、第3主成分(
図10)の軸と直行する平面であって、土台の上に乗る2本の円柱状の部品を含む平面が取得されている。
【0060】
図11(B)は、
図11(A)の位置における断面を示す画像である。
【0061】
ステップS503では、ステップS502で取得した平面の優先度を算出する。優先度の算出にあたっては、
図6のフローチャートで決定された算出方法を用いて算出するものとする。
【0062】
複数の平面が取得された場合には、取得したすべての平面について優先度を算出する(S504)。
【0063】
ステップS505では、ステップS503で算出された優先度が最も高い平面を注目断面として決定し、返却する。
【0064】
そして、上述の通り、ステップS306において、ステップS505で決定した注目断面に影響度を示す情報を付加した断面図を表示部に表示する。ステップS306で表示される断面図を
図11(C)に示す。
【0065】
図11(C)に示す通り、円柱状の土台の上に乗る2つの円柱状の部品のうち、影響度の高い(良形状との判定に影響を与える)太い円柱状の部品を赤色で表示し、影響度の低い(悪形状との判定に影響を与える)細い円柱状の部品を青色で表示することで、影響度を識別可能に表示している。
【0066】
以上説明した通り、本発明においては、深層学習による推論によって3次元のデータに対する評価を実行した場合の注目領域について、2次元の図面として表示することが可能となる。これにより、ユーザは、推論モデルが3次元データのどの部分にどれだけ注目して良形状であるか悪形状であるかの判定を行ったのかを認識することが可能となり、推論モデルによる判定処理の過程(根拠)を理解することが可能となる。
【0067】
以上、情報処理装置としての実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0068】
また、本発明におけるプログラムは、
図3~
図6に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は
図3~
図6の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは
図3~
図6の各装置の処理方法ごとのプログラムであってもよい。
【0069】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【0070】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【0071】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
【0072】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0073】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0074】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0075】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【0076】
101 クライアント端末
102 サーバ装置
103 LAN