Mech-Eye SDK 2.1.0 バージョンの更新説明
以下では、Mech-Eye SDK 2.1.0 バージョンの新機能や機能最適化、問題修復について説明します。
新バージョンのハイライト
- 
点群の品質の向上:点群後処理パラメータを全面的に最適化しました。外れ値とノイズを除去するとともに対象物のエッジのディテールを保持することができ、点群の品質の向上が実現します。 
- 
インターフェイスの機能の拡張: - 
GenlCam インターフェイスと Mech-Eye API にアイハンドキャリブレーションに関するパラメータを追加し、かつ関連サンプルプログラムも提供するので簡単にアイハンドキャリブレーションを実行することができます。 
- 
GenlCam インターフェイスに multi-part payload type の取得に関するパラメータを追加し、かつ関連サンプルプログラムも提供するので簡単にテスクチャ点群と Z 値深度画像を取得することができます。 
- 
ファームウェアアップグレードツールを追加し、Mech-Eye Viewer を使用せずにカメラファームウェアをアップグレードすることが可能です。 
 
- 
- 
撮影の速度の向上:メモリの使用を最適化し、かつカメラの撮影速度を改善するために解像度選択機能を追加するので、現場のタクトタイムを短くすることが可能です。 
新機能
GenICam
- 
アイハンドキャリブレーションのパラメータとサンプルプログラムの追加 GenICam インターフェイスにアイハンドキャリブレーションに必要なパラメータを追加し、かつ HALCON サンプルプログラムを提供します。このサンプルプログラムを使用することでアイハンドキャリブレーションを行い、外部パラメータを取得することができるほか、カメラから出力される点群の座標系を切り替えることも可能です。 
- 
multi-part payload type 関連パラメータとサンプルプログラムの追加 - 
GenICam パラメータを追加し、AreaScan3D モードで multi-part payload type データを取得することを可能にしました。Range と Intensity をサポートしています。 
- 
以上のパラメータを使用する HALCON サンプルプログラムを提供: - 
obtain_textured_point_cloud サンプルプログラム:Range・Intensity データによってテクスチャ点群を取得します。 
- 
obtain_depth_map サンプルプログラム:Range からZ 方向の値だけを取得し、HALCON の送信速度を改善します。 
 
- 
 
- 
- 
カメラ IP 設定関連パラメータとサンプルプログラムの追加 GenICam インターフェイスにカメラの IP 設定関連のパラメータを追加し、カメラの IP 設定を取得・変更する HALCON サンプルプログラムを提供し、GenICam 対応のソフトウェアでの IP 設定を取得・変更することができます。この HALCON サンプルプログラムを使用することでカメラの IP アドレスとサブネットマスク、ゲートウェイを読み取り、変更することができます。 
- 
カメラ内部パラメータと温度のパラメータ(変更できない)を追加 - 
GenICam 対応のソフトウェアで読み取れるカメラ内部パラメータを追加しました。 - 
Scan3dFocalLengthX 
- 
Scan3dFocalLengthY 
- 
Scan3dPrincipalPointU 
- 
Scan3dPrincipalPointV 
 
- 
- 
温度パラメータを追加し、GenICam 対応のソフトウェアで読み取れるカメラの CPU とプロジェクターの温度を読み取れます。 - 
DeviceTemperatureSelector:温度を読み取るカメラデバイス(MainBoard(CPU)とSensor(プロジェクター))を選択します。 
- 
DeviceTemperature:選択したカメラデバイスの温度を表示します。 
 
- 
 
- 
Mech-Eye API
- 
アイハンドキャリブレーション方法とサンプルプログラム(C++)の追加 アイハンドキャリブレーションを実行するための方法(C++)とサンプルプログラムを提供します。このサンプルプログラムを使用することでアイハンドキャリブレーションを行い、外部パラメータを取得することができます。 
- 
ファームウェアアップグレードツールの追加 ファームウェアアップグレードツールを追加しました。Ubuntu オペレーティングシステムでもカメラファームウェアをアップグレードすることができます。 
- 
温度の読み取り - 
C++: ErrorStatus MechEyeDevice::getDeviceTemperature(DeviceTemperature &) 
- 
C#: ErrorStatus MechEyeDevice.GetDeviceTemperature(ref mmind.apiSharp.DeviceTemperature temperature) 
- 
Python: Device.get_device_temperature(self) 
 
- 
Mech-Eye Viewer
- 
DEEP (V4) と LSR (V4)シリーズカメラの 2 種類 2D 画像表示機能 DEEP (V4) と LSR (V4) カメラを Mech-Eye Viewer に接続すると、カメラビューア画面に 2D 画像(テクスチャ)と 2D 画像(深度ソース)を選択できます。2D 画像(テクスチャ)は点群にテクスチャを追加するために使用し、2D 画像(深度ソース)はアイハンドキャリブレーションや内部パラメータのチェック、ROI 設定のために使用されます。2D 画像のタイプを切り替えることで露出を簡単に調整できます。 また、関連する 2D パラメータ名を以下のように変更しました: 過去のバージョンのパラメータ名 新バージョンのパラメータ名 カラーカメラ露出モード 2D 画像(テクスチャ)露出モード モノクロカメラ露出モード 2D 画像(深度ソース)露出モード モノクロカメラ露出時間 2D 画像(深度ソース)露出時間 
- 
MTU 調整機能 カメラネットワークの設定ウィンドウに MTU 調整機能(管理者モードに切り替える必要がある)を追加しました。また、カメラファームウェアを 2.1.0 バージョンにアップグレードすると、カメラのデフォルト MTU 値は 1500 になります。 Mech-Eye Viewer の MTU 値を IPC のジャンボフレームの値と一致するようにしてください。 
- 
DEEP (V4) カメラの深度画像の解像度選択機能 DEEP (V4) カメラの深度画像の解像度を選択できます(2048 × 1536 あるいは 1024 × 768)。低解像を選択するとカメラの撮影速度を改善(約 35% アップ)し、現場のタクトタイムを短縮することが可能となります。 管理者モードに切り替え、をクリックして深度画像の値を選択します。 
- 
出荷時の内部パラメータにリセットする機能 内部パラメータツールに出荷時の内部パラメータにリセットボタンを追加しました。管理者モードに切り替えてから使用できます。 
機能の最適化
点群後処理パラメータの最適化
点群後処理パラメータを 4つに増やし、点群平滑化と不要な点群除去の効果を改善します。
新バージョンでは以下のようにパラメータを調整してください:
- 
過去のバージョンで点群平滑化を Normal に設定した場合、新バージョンで表面平滑化を Weak に設定してください。 
- 
過去のバージョンでノイズ除去を Normal に設定した場合、新バージョンで外れ値除去を Weak に設定してください。 
カメラの撮影速度の向上
カメラのハードウェアを 2.1.0 バージョンにアップグレードするとカメラの撮影速度が向上します。
- 
深度画像: - 
Mech-Eye API C++ を使用して深度画像を収集するとき、カメラの撮影速度は最小で約 2% 向上し、最大で 35% 以上向上します。 
- 
Mech-Vision を使用して深度画像を収集するとき、カメラの撮影速度は最小で約 5% 向上し、最大で 20% 以上向上します。 
 
- 
- 
2D 画像: - 
V4 カメラ(レーザー光を放射しない)で Mech-Eye API C++により 2D 画像を収集するとき、カメラの撮影速度は最小で約 59% 向上し、最大で 70% 以上向上します。 
- 
V4 カメラ(レーザー光を放射しない)で Mech-Vision C++により 2D 画像を収集するとき、カメラの撮影速度は最小で約 66% 向上し、最大で 70% 以上向上します。 
 
- 
| V4 レーザーカメラにカラー画像の歪み補正機能を追加するため、2D 画像収集の速度が遅くなります。 | 
Mech-Eye Viewer
- 
深度画像を保存する時のデフォルト形式の変更 ユーザビリティを向上させるために、深度画像を保存するとき、デフォルト形式を .tiff から .png に変更しました。 
- 
内部パラメータツールの最適化 - 
内部パラメータツールの画面を最適化しました。指示情報を補充してユーザビリティを向上させました。 
- 
「高精度モード」を追加しました。このモードではカメラの内部パラメータの精度が向上するので高い精度が求められるプロジェクトに適しています。管理者モードに切り替えてから使用できます。 
 
- 
- 
パラメータパレットの表示の最適化 パラメータ名が完全に見られるように、パラメータ説明パレットを閉じると他のパラメータを選択しても説明が表示されません。 メニューバーのビューのパラメータ説明をチェックするとパラメータ説明が表示されます。 
- 
視野計算機の最適化 - 
視野計算機ツールのウィンドウを最適化しました。 
- 
カメラ型番選択のドロップダウンリストを最適化し、カメラの検索を容易にしました。 
- 
カメラ型番 LSR S (V4) を追加しました。 
 
- 
- 
LSR L (V4) カラーカメラのダウンサンプリング機能をカメラコントローラーに移動し、「2D 画像解像度設定」と改名しました。 
- 
DEEP (V4) カメラのカメラのゲインの初期値を 0 から 5 に変更しました。 
- 
レーザーカメラのレーザーパワーの調整範囲を20100%から50100%に変更しました。 
Mech-Eye API
点群後処理のパラメータを最適化し、4つに増やしました。対応する Mech-Eye API メソッドを以下のように更新しました:
- 
C++: - 
表面平滑化 ErrorStatus MechEyeDevice::setCloudSurfaceSmoothingMode(PointCloudProcessingSettings::PointCloudSurfaceSmoothing) ErrorStatus MechEyeDevice::getCloudSurfaceSmoothingMode(PointCloudProcessingSettings::PointCloudSurfaceSmoothing &)
- 
ノイズ除去 ErrorStatus MechEyeDevice::setCloudNoiseRemovalMode(PointCloudProcessingSettings::PointCloudNoiseRemoval) ErrorStatus MechEyeDevice::getCloudNoiseRemovalMode(PointCloudProcessingSettings::PointCloudNoiseRemoval &)
- 
外れ値除去 ErrorStatus MechEyeDevice::setCloudOutlierRemovalMode(PointCloudProcessingSettings::PointCloudOutlierRemoval) ErrorStatus MechEyeDevice::getCloudOutlierRemovalMode(PointCloudProcessingSettings::PointCloudOutlierRemoval &)
- 
エッジ保護 ErrorStatus MechEyeDevice::setCloudEdgePreservationMode(PointCloudProcessingSettings::PointCloudEdgePreservation) ErrorStatus MechEyeDevice::getCloudEdgePreservationMode(PointCloudProcessingSettings::PointCloudEdgePreservation &)
 
- 
- 
C#: - 
表面平滑化 ErrorStatus MechEyeDevice.SetCloudSurfaceSmoothingMode(mmind.apiSharp.PointCloudSurfaceSmoothing mode) ErrorStatus MechEyeDevice.GetCloudSurfaceSmoothingMode(ref mmind.apiSharp.PointCloudSurfaceSmoothing mode)
- 
ノイズ除去 ErrorStatus MechEyeDevice.SetCloudNoiseRemovalMode(mmind.apiSharp.PointCloudNoiseRemoval mode) ErrorStatus MechEyeDevice.GetCloudNoiseRemovalMode(ref mmind.apiSharp.PointCloudNoiseRemoval mode)
- 
外れ値除去 ErrorStatus MechEyeDevice.SetCloudOutlierRemovalMode(mmind.apiSharp.PointCloudOutlierRemoval mode) ErrorStatus MechEyeDevice.GetCloudOutlierRemovalMode(ref mmind.apiSharp.PointCloudOutlierRemoval mode)
- 
エッジ保護 ErrorStatus MechEyeDevice.SetCloudEdgePreservationMode(mmind.apiSharp.PointCloudEdgePreservation mode) ErrorStatus MechEyeDevice.GetCloudEdgePreservationMode(ref mmind.apiSharp.PointCloudEdgePreservation mode)
 
- 
- 
Python: - 
表面平滑化 Device.set_cloud_surface_smoothing_mode(self, info) Device.set_cloud_surface_smoothing_mode(self, info)
- 
ノイズ除去 Device.set_cloud_noise_removal_mode(self, info) Device.get_cloud_noise_removal_mode(self)
- 
外れ値除去 Device.set_cloud_outlier_removal_mode(self, info) Device.get_cloud_outlier_removal_mode(self)
- 
エッジ保護 Device.set_cloud_edge_preservation_mode(self, info) Device,get_cloud_edge_preservation_mode(self)
 
- 
問題の修復
Mech-Eye SDK 2.1.0 では、以下の問題を修復しました。
- 
レーザーカメラを 3 回露出させ、かつレーザー投影のパーティション数を 3 または 4 に設定した場合にカメラメモリー不足でカメラ接続が切れる問題を修復しました。 
- 
Laser L (V3) と Laser L Enhanced (V3) カメラにレーザー投影のパーティション数を設定し、かつ露出時間を 20ms 以下に調整した時データに異常が発生した問題を修復しました。 
- 
パラメータグループを切り替えた時 ROI が設定できなくなる問題を修復しました。 
- 
DEEP (V4) と LSR (V4) カメラの露出モードを Auto または HDR に設定し場合にモノクロカメラの露出モードの Flash オプションが機能しない問題を修復しました。 
- 
ルーター経由でカメラを接続した場合、カメラの MTU 値が大きいためにカメラが正常に稼働できなくなる問題を修復しました。 
- 
カメラのメモリー不足でドロップフレームが発生する問題を修復しました。 
- 
PRO (V4)、DEEP (V4) 、LSR (V4) カメラはデフォルトでは低電力モードを使用するためドロップフレームが発生する問題を修復しました。 
- 
複数のカメラに同じ IP アドレスを使用するとき、1つのカメラの IP アドレスを変更すると残りのカメラの IP アドレスも変更される問題を修復しました。 
- 
単眼カメラの 2D 画像の歪み補正機能により撮影速度が遅くなる問題を修復しました。