3d
3D画像での異常検知システム(3DのAI・深層学習)
3DのAI・深層学習
3Dデータとは?
写真等の一般的な2Dデータは、ピクセル(画素)の縦×横の2次元の配列です。
では3Dデータはどの様に表現されるのでしょうか?実は、3Dデータには様々な表現方法があり、用途によって使い分けられています。
ボクセルデータ
ピクセルの配列で表される2Dデータの考え方を、そのまま3Dデータに拡張したのがボクセルデータです。ボクセルデータは、ボクセル(2Dデータにおけるピクセルに相当)の縦×横×高さの3次元の配列で表されます。
医療分野等、物体の内部の情報を細かく知る必要がある場合に用いられますが、解像度を上げるほどデータ量が膨大になります。
ポリゴンメッシュデータ
単にメッシュと呼ばれる事が多いです。立体を、頂点と辺で構成される多角形の集合で表します。多角形としては一般的に3角形が用いられます。
物体の表面だけのデータになるのでボクセルに比べてデータ量が少なく済むのが特徴です。
点群データ
全て点で表された3Dデータです。ボクセルデータも点の集合とみなせますが、ボクセルは縦×横×高さで格子状に並んでいるのに対し、点群データの場合、点の位置に制限はありません。
3次元測定器で撮影した3次元データは全て点群として得られる為、測定データとしては基本の形式になります。3Dデータ表現の中では特に研究が進んでいます。
これらの3Dデータを適切に扱う事で、2Dデータだけでは難しい問題にアプローチする事が可能になります。
3Dデータにおける深層学習
PointNet
それ以前では、画像分類の分野で成功したCNNをそのまま応用出来るボクセルデータに点群を変換して処理する研究が主流でした。しかし、PointNetではデータの処理を工夫することで、3D点群データをそのまま扱い、深層学習アプローチでの精度の高いモデル分類、セグメンテーションなどを可能にしました。論文はこちら。
PointNetの応用範囲としては、分類、部分セグメンテーション、セマンティックセグメンテーション等が挙げられます。
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/11/PointNet%E5%BF%9C%E7%94%A8%E4%BE%8B.png)
PointNet++
PointNetのネットワークに階層構造を加えることで、局所的な特徴を捉えられるように改良したネットワークです。論文はこちら。
PointNet#
弊社で開発した、PointNet++を更に改良したネットワークで、「色情報と時系列情報を付与した3次元点群の分類」という論文を人工知能学会で発表しました。
PointNet++に色情報を特徴量として追加し、PointNet++の特徴抽出入力の構造を変更したモデルです。PointNet#によって、色情報を加味した3Dデータの判定を行うことが可能になりました
MeshNet
点群データではなく、ポリゴンメッシュに間する深層学習の研究です。論文はこちら。
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/11/MeshNet%E4%B8%AD%E8%BA%AB.png)
弊社で実現したこと
3D異常検知
2D画像ではとらえきれない物体の凹凸等の異常を、3Dデータの解析をする事で検知する事を目的としています。
3D異常検知の流れは以下のようになります。
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/11/3d.png)
- 3D点群データの取得
3次元測定器で対象を撮影すると、点群データが得られます。撮影中は撮影状況のモニタリングも可能です。
- 3D点群データベース
取得した3D点群データをデータベースに保持します。また取得したデータの表示や、異常検知の学習に使用することができます。
- 3Dモデルの作成
取得した点群データから、処理に必要な3Dモデルを作成します。独自開発した手法により、高速に動作します。
- 学習・判定
取得した3Dデータを用いて、異常検知やパーツごとの分類を行います。2Dでは正確に把握することが難しい異常(シワ等)を3Dデータを用いたアプローチによって、2Dより高い精度で検出することができます。
一例としては、家具の3Dスキャンすることで3Dデータを構築し、GAN(敵対性ネットワーク)の活用でデータを増やした後、PointNet++で不良判別を行う、等が挙げられます。実施イメージを下に示します。
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/05/%E7%9B%B4%E6%96%B9%E4%BD%932-e1590487950924.png)
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/05/%E7%9B%B4%E6%96%B9%E4%BD%931-e1590487865782.png)
左図はシワのない立方体、右図はシワのある立方体を表しています。
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/05/%E8%AD%98%E5%88%A5.png)
上のグラフのように識別精度が変化します。弊社ではおおむね90%~95%の精度を達成しています。
為替情報の幾何学的特徴を用いた売買アルゴリズムの検討
PointNet++を用いて為替情報の分類を行いました。
本研究の目標は、為替取引(ドル円)に対して機械学習を用いたアプローチによってリターンを上げる事です。
・PCAおよびt-SNEを用いて、インプット情報を三次元データとする
・正解ラベルは5分後の価格変動に応じて行う(表1)
・連続する512時点分の三次元データを間隔256で移動させて順次入力
→パラメーター最適化
![](https://crystal-method.com/wp2020/wp/wp-content/uploads/2020/03/kwc05.png)
学習結果、以下のような表現を得ました。
Stay
Up
Down
詳しくは人工知能学会金融情報学会第21回での発表についての記事をご参照ください。
Service
サービスページ
![デジタルアバター](https://crystal-method.com/wp2020/wp/wp-content/themes/CrystalMethod/img/ai_woman.jpg)
Study about AI
AIについて学ぶ
-
「Diffusion Transformers(DiTs)」とは。わかりやすく解説
「Diffusion Transformers(DiTs)」とは Diffusion Transformers (DiTs) は、画像生成タスクにおける拡散モデ...
-
3D画像での異常検知システム(3DのAI・深層学習)
3DのAI・深層学習 3Dデータとは? 写真等の一般的な2Dデータは、ピクセル(画素)の縦×横の2次元の配列です。では3Dデータはどの様に表現されるのでしょうか...
-
AI問題点を分かりやすく解説!新たな技術の課題とは?
AI(人工知能)は革新的な技術である一方で、さまざまな問題点も浮かび上がってきました。本記事では、AIの問題点についてわかりやすく解説します。 AIの急速な発展...