Mech-Visionの更新説明
Mech-Vision 2.2.0 バージョンの更新説明
以下では、Mech-Vision 2.2.0 バージョンの新機能や機能最適化、問題修復について説明します。
新機能
軌跡シーン業務への対応
Mech-Vision 2.2.0 バージョンでは、軌跡シーン作業に対応し、複数の軌跡関連機能を追加しました。詳細は以下のとおりです。
-
ワークライブラリに 軌跡型ワークの設定フロー を追加しました。STEPファイルのインポート、処理済み点群のインポート、カメラによる点群取得などを通じて、軌跡型ワークの設定を迅速に完了できます。
-
3D軌跡認識 ステップを追加しました。このステップには点群前処理、3Dマッチングなどのビジョン処理機能が統合されており、ワーク認識および軌跡生成を迅速に実現できます。
-
出力 ステップ機能を拡張し、軌跡型のビジョン結果の出力に対応しました。
-
複数の軌跡処理ステップを追加しました。詳細は以下のとおりです。
ステップ 概要 入力点群に基づいて軌跡点を生成し、後続の軌跡処理に使用します。
実際の点群に基づいて元の軌跡を最適化し、軌跡をワーク表面により適合させます。平滑化、並べ替え、簡略化などの操作に対応し、軌跡精度を向上させます。
軌跡点を平滑化処理し、ノイズの影響を低減して、より滑らかな軌跡を生成します。
軌跡点数を削減して軌跡形状を簡略化しつつ、全体形状をできるだけ保持します。
軌跡点の位置に基づいて並べ替えを行い、配置順序を最適化します。
距離が近すぎる重複点を除去し、不要点数を削減して軌跡点分布を最適化します。
軌跡点間に中間点を追加し、軌跡をより滑らかで連続的にします。
プロジェクト実行中に、前ステップで出力されたワーク中心点およびワーク名に基づき、ワークライブラリから軌跡型ワーク関連の軌跡情報を自動取得し、後続ステップで利用します。
把持シーンにおけるコンテナ認識への対応
Mech-Vision 2.2.0 バージョンでは、把持シーンでのコンテナ認識に対応しました。主な内容は以下のとおりです。
-
ワークライブラリに コンテナ型ワークの設定フロー を追加しました。STLファイルのインポート、カメラによる点群取得、点群モデル不要方式などを通じて、コンテナ型ワークの設定を迅速に完了できます。
-
3Dコンテナ認識 ステップを追加しました。このステップには点群前処理、3Dマッチング、ディープラーニングなどのビジョン処理機能が統合されており、コンテナ認識を迅速に実現できます。
組立シーンにおける姿勢変換への対応
-
位置姿勢を変換(拡張) ステップを追加しました。異なる座標系間の位置姿勢関係を計算できます。座標系変換、2台ロボット相対位置姿勢キャリブレーション、位置姿勢補正(組立)などに対応しています。
-
座標系変換計算器 ステップを追加しました。複数の既知の位置姿勢関係に基づき、最短変換経路を自動検索し、2つの目標座標系間の変換関係を計算できます。
2Dビジョン機能の拡張
Mech-Vision 2.2.0 バージョンでは、多数の2Dビジョン関連機能を追加しました。主な内容は以下のとおりです。
-
2Dスマートカメラ ステップを追加しました。2Dスマートカメラを使用して画像データを取得し、後続のビジョン処理タスクへの入力として利用できます。
-
2Dカメラキャリブレーション 機能を追加しました。歪み補正キャリブレーションおよびハンド・アイ・キャリブレーション(外部パラメータキャリブレーション)を含みます。これにより、カメラ画像と実空間との対応関係を構築し、画像測定および位置決め精度を向上させます。高精度な認識・位置決めを実現するための基礎機能です。
-
2Dカメラ管理 機能を追加しました。システム内の2Dカメラを一元管理し、画像取得前のデバイス設定およびデバッグを行うための入口となります。
-
2Dテンプレートエディタ 機能を追加しました。2Dマッチング用テンプレートの作成および管理を行います。
-
2Dワーク認識 ステップを追加しました。ピッキング位置決め、配置補正、エラー防止検査、情報読み取りなどのシーンにおいて、ワーク認識および検出を迅速に実行できます。
-
複数の2D関連ステップを追加しました。画像前処理、画像後処理、測定などのシーンをカバーし、さらにステップライブラリでは2D/3Dのカテゴリ別表示に対応しました。
カテゴリ ステップ 概要 前処理
1枚の3チャンネル画像を3枚の単一チャンネル画像に分割したり、3枚の単一チャンネル画像を1枚の3チャンネル画像に合成したりできます。
入力画像に対して画像強調、ノイズ低減、モルフォロジー変換、グレースケール反転、エッジ抽出などの前処理を実行できます。
複数の画像を指定位置に配置し、1枚の画像として合成できます。
入力画像に対して切り抜き、塗りつぶし、またはリサイズ処理を実行できます。
要求に応じて画像を反転および回転します。
設定した回転中心を基準に画像を一定の角度だけ回転させます。
指定した色空間において、3つのチャンネルの色範囲(しきい値の上限・下限)に基づいて目標領域を抽出し、二値画像を生成します(目標領域のピクセル値は255、それ以外のピクセル値は0)。
後処理
同サイズの2グループのマスクリストに対して論理演算を行い、マスクマージ・共通部分抽出・共通部分除去を実現します。
グレースケール画像内の指定領域において、グレースケールしきい値範囲を満たすピクセル数を統計します。
グレースケール画像の指定領域に対して、画像グレースケールヒストグラム、ピクセル数、最小グレースケール値、最大グレースケール値、グレースケール中央値、グレースケール最頻値(最も多く出現するグレースケール値)、グレースケール平均値、グレースケール標準偏差、コントラストなどの情報を出力できます。グレースケールヒストグラムは、グレースケール画像内のグレースケール分布を統計化したものであり、画像内で各グレースケールが出現する頻度を表します。
入力されたグレースケール画像に対して、ピクセルごとに算術演算(加算、減算、乗算、除算)または組み合わせ演算(最大値、最小値、反転)を実行できます。また、乗算係数と加算値により結果を調整できます。2画像は同一サイズである必要があります。
測定
画像から直線のエッジを検出し、直線をフィッティングします。
画像から円のエッジを検出し、円をフィッティングします。
画像から長方形のエッジを検出し、長方形をフィッティングします。
画像の指定領域における縦方向の中心線上で、条件を満たすエッジポイントを1つ検出できます。
画像から長穴のエッジを検出し、長穴をフィッティングします。
画像からエッジポイントペアを検出し、その間の距離をエッジ間幅として測定できます。
指定特徴間の幾何距離を測定します。点-点、点-線、点-円、線-線、線-円、円-円の組み合わせに対応します。
線分同士のなす角を測定します。
その他
2D画像内でテンプレートと一致する特徴を検索・位置決めし、対象物の位置姿勢を計算します。2D位置姿勢変換を同期して行う必要がある後続ステップにデータを提供します。複数対象の位置決めと認識に対応しています。
並進および回転によって、入力画像をテンプレートと位置合わせし、両者の状態を一致させます。
画像内のブロブを検出し、面積や円形度などの幾何学的特徴に基づいて選別します。
画像内のブロブを検出し、その幾何学的特徴に基づいて選別を行うとともに、ブロブの重心が元画像の中心点と一致するように画像の位置姿勢を調整します。
特徴、画像、テキスト、位置姿勢などの結果を2D画像上に重ね合わせ、カスタム可視化を実現します。
指定画像領域内でバーコード・QRコードを認識し、内容および画像内位置を出力します。
2Dテンプレートマッチングにより、画像内ワークを検出・カウントします。
2Dテンプレートマッチングにより、ワークの変形状態を判定します。
2Dテンプレートマッチングにより、ワーク位置姿勢の偏差を検出します。
マスクの特徴点を位置決めします。
点や直線などの幾何学的特徴に基づいて2D点を作成できます。
点や直線などの幾何学的特徴に基づいて2D直線を作成できます。
2Dカメラで認識した2D位置姿勢または2D形状を、カメラ外部パラメータおよびティーチング位置姿勢と組み合わせて、ロボット座標系下の3Dワーク位置姿勢へ変換します。
ディープラーニング関連機能の拡充
ディープラーニングモデルパッケージ推論機能の強化
Mech-Vision 2.2.0 バージョンでは、ディープラーニングモデルパッケージを推論 ステップを強化しました。主な内容は以下のとおりです。
-
すばやく位置決め、テキスト検出、テキスト認識、教師なしセグメンテーション モデルパッケージ、および 複数モデルパッケージ の推論に対応しました。
-
推論設定機能を最適化しました。推論設定ツール 内で後処理パラメータを設定できるようになり、推論結果の精度向上を実現します。
|
Mech-Vision 2.2.0 以降、このステップでは Mech-DLK 2.5.4 以降のバージョンでエクスポートされたモデルパッケージのみサポートします。 |
軽量AI関連ステップを追加
Mech-Vision 2.2.0 バージョンでは、以下の軽量AI関連ステップを追加しました。
| 「軽量AI」関連ステップを使用するには、Mech-Mindの営業担当へお問い合わせいただき、本機能に対応したソフトウェアライセンスを取得してください。ライセンス更新後にこのステップを利用可能になります。 |
| ステップ | 概要 |
|---|---|
画像内のワークに対して、多クラスの自動分類を行います。 |
|
画像内のワークに対して、表裏判定および有無判定を行います。 |
|
画像内の英字、数字などの文字を自動的に認識します。 |
その他のディープラーニング関連ステップを追加
| 「任意ワーク把持(V2)」ステップを使用するには、Mech-Mindの営業担当へお問い合わせいただき、本機能に対応したソフトウェアライセンスを取得してください。ライセンス更新後にこのステップを利用可能になります。 |
| ステップ | 概要 |
|---|---|
「任意ワーク把持(V2)」モデルパッケージに基づき、入力された深度画像およびカラー画像に対して表面セグメンテーションを行い、個々の把持可能表面および重なり合った表面を認識し、把持優先度順に並べたマスクリストを出力します。 |
|
ワーク・コンテナ分割モデルパッケージに基づき、入力された深度画像およびカラー画像に対してワークとコンテナを分割し、ワークマスクおよびコンテナマスクを出力するとともに、可視化結果を提供します。 |
グローバル変数に対応
Mech-Vision 2.2.0 バージョンでは、グローバル変数 ステップおよび グローバル変数管理ツール に対応しました。これにより、異なるプロジェクト間でデータを共有でき、データの一元管理および受け渡しを実現します。
その他のステップおよびステップグループを追加
Mech-Vision 2.2.0 バージョンでは、複数の新しいステップおよびステップの組合せを追加しました。詳細は以下のとおりです。
| タイプ | 名前 | 概要 |
|---|---|---|
ステップ |
ワーク上の複数のリアルタイム特徴点とテンプレート特徴点を最適フィッティングすることで、ワーク全体の最適位置姿勢を計算し、変形シーンへの適応性を向上させます。 |
|
照明コントローラーに接続して設定を行い、照明の稼働モードおよび出力輝度を制御します。 |
||
データをローカルパスに保存できます。 |
||
設定したルールに基づいて入力データの論理判定を行い、ブール結果(TrueまたはFalse)を出力できます。 |
||
ステップの組合せ |
元の点群に対して点のフィルタリング、点群マージ、画像フィルタリングなどの前処理を行い、干渉する点群を除去します。 |
|
多層ワークの点群から最上層ワークの点群を抽出します。指定方向の高さに基づいてフィルタリングを行い、下層ワークの干渉を除去します。 |
||
点群情報を用いて元画像をフィルタリングし、最上層ワークのみを含む2D画像を抽出します。背景や下層ワークの干渉を効果的に除去します。 |
||
ワークの平坦面から遠い点群を除去し、比較的平坦な平面点群を取得します。 |
||
ワークの高さおよび角度に基づき、多次元的に位置姿勢をソートすることで、把持順序を最適化し、把持安定性および成功率を向上させます。 |
||
基準姿勢を参照し、入力ワーク位置姿勢との角度および位置偏差が設定しきい値を満たすか検証し、許容範囲外の位置姿勢を除去します。 |
||
入力データ内の要素数(例:位置姿勢数)をカウントし、後続の論理判定に利用します。 |
||
3つの特徴点(主基準点、Y方向補助基準点、XY平面補助基準点)を用いてワーク基準座標系を構築し、空間内の位置と方向を決定します。 |
||
点群をカメラ座標系またはロボット座標系から、ユーザー指定の座標系へ変換します。 |
ソリューション切替をサポート
Mech-Visionは ソリューション切替管理 機能をサポートし、受信したソリューション番号(ID)または通信文字列に基づいてソリューションを自動切替できます。各ソリューション切替ルールでは、ソリューション番号とソリューションパスの対応関係を定義します。
ステップの組合せのロックに対応
Mech-Vision 2.2.0 バージョンでは、ステップの組合せのロック保護 機能に対応しました。ロックすると、管理者以外のユーザーは内部のステップロジックを閲覧・編集できなくなり、外部公開されたパラメータのみを利用・調整可能となります。
Mech-Vision の二次開発に対応
Mech-Vision 2.2.0 バージョンでは、Mech-Vision SDK 関連マニュアルおよびインターフェース機能を追加しました。これにより、ソリューション、プロジェクト、ステップなどのビジョン機能をクライアントアプリケーションへ統合できるようになり、C++、C#、Python インターフェースを提供します。
機能最適化
ソリューションライブラリについて
Mech-Vision 2.2.0 バージョンでは、以下のソリューションを追加しました。
| カテゴリ | ソリューション名 |
|---|---|
実践例 - 3D位置決め |
3D軌跡生成、コンテナからの衣類ピッキング、3Dコンテナ認識(標準コンテナ)、3Dコンテナ認識(その他コンテナ) |
実践例 - 2D位置決め |
2Dワーク認識(位置決め・把持)、2Dワーク認識(配置ずれ補正) |
実践例 - ディープラーニング |
2Dワーク認識(情報読取)、2Dワーク認識(エラー防止) |
代表的な導入事例 - バラ積みされたワークのピッキング |
自動車用板金部品の供給 |
代表的な導入事例 - 位置決め・組立て |
ダブルフックローディング、複合位置決め・組立、自動車フロントガラス組立 |
ワークライブラリの把持型ワーク設定フローについて
Mech-Vision 2.2.0 バージョンでは、ワークライブラリの把持型ワーク設定フローを改善しました。詳細は以下のとおりです。
| ワーク設定フロー | 最適化内容 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
複合ステップについて
Mech-Vision 2.2.0 バージョンでは、複合ステップを以下のように最適化しました。
| ステップ | 最適化内容 |
|---|---|
「点群前処理」フローで、最上層点群取得に対応しました。 |
|
|
その他のステップについて
| ステップ | 最適化内容 |
|---|---|
|
|
ステップパラメータ順序を調整し、使いやすさを向上しました。 |
|
非同期保存に対応しました。「非同期保存」パラメータにチェックを入れると、保存処理がバックグラウンドで実行されます。プロジェクトの実行完了状態は、このステップの終了を待たなくなります。 |
|
ワークの把持戦略を生成 |
|
ステップライブラリについて
Mech-Vision 2.2.0 バージョンでは、ステップライブラリを改善しました。一部ステップ名の最適化および一部ステップの削除を実施しています。
ステップ名について
Mech-Vision 2.2.0 バージョンでは、以下のステップ名を変更しました。
| 変更前 | 変更後 |
|---|---|
ワークの把持戦略を生成 |
ワークの情報を取得 |
フィルタリング |
ブール値に基づいてデータをフィルタリング |
しきい値によって数値を二項分類 |
数値がしきい値を超えているかどうかを判定 |
対象物の寸法を読み込む |
ワーク寸法をクイック作成 |
Cloud (XYZ-Normal)をCloud (XYZ-RGB)に変換 |
法線ベクトル付きの点群をカラー点群に変換 |
両3Dベクトル間の角度を計算 |
両3Dベクトル間の角度を計算 |
3Dベクトルの外積を計算 |
3Dベクトルの外積を計算 |
3Dベクトルの内積を計算 |
3Dベクトルの内積を計算 |
3Dベクトルの長さを計算 |
3Dベクトルの長さを計算 |
3Dベクトルの単位ベクトルを計算 |
3Dベクトルの長さを計算 |
数値から3Dベクトルを合成 |
数値から3Dベクトルを合成 |
3Dベクトルを数値に分解 |
3Dベクトルを数値に分解 |
一部ステップの削除
Mech-Vision 2.2.0 バージョンでは、以下のステップを削除しました。
| 削除されたステップ | 代替ステップ |
|---|---|
把持位置姿勢を予測 |
|
直線を検出して測定 |
|
直線のフィッティング |
|
円を検出して測定 |
|
円のフィッティング |
|
円の測定 |
|
長穴を検出して測定 |
|
円から円までの距離を測定 |
|
円から線分までの距離を測定 |
|
点から点までの距離を測定 |
|
点から線分までの距離を測定 |
|
点から円までの距離を測定 |
|
線分間の距離を測定 |
|
線分間の角度を測定 |
|
線分と円との交点を計算 |
|
2つの線分の交点を計算 |
|
2Dカメラ |
- |
点から点までの高さの差を測定 |
- |
点から基準線までの高さの差を測定 |
- |
最長の線分を測定 |
- |
キャリパスツール |
- |
頂点を検出 |
- |
円を2D位置姿勢に変換 |
- |
画像を切り抜く |
- |
画像で情報を可視化 |
- |
オペレーターインターフェイスの設定ツールについて
Mech-Vision 2.2.0 バージョンでは、オペレーターインターフェイスの設定ツール を以下のように最適化しました。
-
実行画面設定時に、「2D画像可視化」実行画面を選択可能になりました。これにより、オペレーターインターフェイス上で2D画像および測定結果を表示できます。
-
共通設定において、データの「保存モード」および「サブフォルダの作成方法」を設定可能になりました。
Adapterプロジェクトの生成ツールについて
Mech-Vision 2.2.0 バージョンでは、Adapterプロジェクトの生成ツール機能を最適化しました。Adapterプロジェクトの生成ツールを使用して Mech-Viz からロボット名を取得する際、Mech-Viz プロジェクトを自動読み込みに設定する必要はなくなりました。
3Dカメラのハンド・アイ・キャリブレーションについて
Mech-Vision 2.2.0 バージョンでは、3Dカメラのハンド・アイ・キャリブレーション機能を最適化しました。動作経路を設定 手順において、キャリブレーションボード/カメラのフランジに対するオフセット を使用可能になりました。これにより、回転時のカメラ視野内での移動量を低減し、キャリブレーションボードが常にカメラ視野内に収まるようにできます。
補助ツールについて
Mech-Vision 2.2.0 バージョンでは、一部補助ツールを以下のように最適化しました。
| ツール | 最適化内容 |
|---|---|
|
|
ツール画面およびツール入口を改善し、使用体験を向上しました。 |
|
|
|
ツール画面およびツール入口を改善し、使用体験を向上しました。 |
問題修正
Mech-Vision 2.2.0 バージョンでは、以下の問題を修正しました。
-
プロジェクトまたはソリューション名の末尾に半角スペースが2つ含まれている場合、正常に保存できないことがある問題を修正しました。
-
ソリューション保存時、一時ソリューションディレクトリの階層が深すぎる場合に、Windows の画面点滅が発生することがある問題を修正しました。
-
ソリューションを開く際、複数のプロジェクトで同一カメラの異なるパラメータグループを使用している場合、低確率でパラメータグループが誤って変更される問題を修正しました。
-
標準インターフェースを使用してプロジェクト実行をトリガーした際、低確率で実行開始まで数秒遅延する問題を修正しました。
-
ロボット通信設定でロボットモデルを切り替えて適用後、ソリューションを保存しない場合、切り替えたロボットモデルが保存されない問題を修正しました。
-
オペレーターインターフェイス実行中、低確率でソフトウェアがクラッシュする問題を修正しました。
-
ワークライブラリの「処理後の点群インポート - ロボットティーチング」フローにおいて、カメラに内部・外部パラメータがない場合、ワークライブラリがクラッシュする問題を修正しました。
-
ワークライブラリの「STLファイルをインポート」フローにおいて、モデル視点切替後に点群生成方式を切り替えると、STLファイルからワーク点群を生成できなくなる問題を修正しました。
-
連続運転中、「3Dマッチング」ステップがまれにクラッシュする問題を修正しました。
-
「3Dマッチング」ステップで「サーフェスマッチングに穴を考慮」機能を有効化した際、特定データで OpenCV エラーが発生する問題を修正しました。
-
「出力」ステップにおいて、点群モデル不要のワーク把持点情報を出力する際に異常が発生する問題を修正しました。
-
「出力」ステップでカスタムポート名を設定後、「事前定義済み(ビジョン結果)を有効化しても、対応する入力ポートが追加されない問題を修正しました。
-
「出力」ステップのポートタイプを「事前定義済み(ビジョン結果)」に設定し、「その他の入力」を有効化した状態で配列把持点を出力すると、Mech-Vizが誤って複数のワークモデルを生成する問題を修正しました。
-
複数の把持点に対応するワーク中心点が一致する場合、「出力」ステップで重複したワーク情報が出力される問題を修正しました。
-
「画像を読み取る」ステップにおいて初回実行前に「読み込みモード」を「1つ繰り返し」に設定すると、正常に画像を読み込めない問題を修正しました。
-
「画像保存」ステップで画像保存に長時間かかる問題を修正しました。
-
ディープラーニングモデルパッケージ管理ツールを開く際、ソフトウェアが応答しなくなる問題を修正しました。
-
カスタムアラート設定を含むステップグループを削除した後、カスタムアラートを有効化するとソフトウェアがクラッシュする可能性がある問題を修正しました。
-
カスタムアラート機能の有効/無効切り替え後、設定が反映されない問題を修正しました。