|
コンプリート3DマシンビジョンプラットホームScorpion Vision ver.8は、マシンビジョン用コンプリート3Dフレームワークです。ver.8のリリースにより、ツールボックスの3Dツールは50を超えました。 |
![]() 駆動カバーのビン |
![]() 3Dによるカバー部品の位置情報 |
3D MaMa - Random Bin Picking (RBP)アルゴリズム
ファクトリーオートメーションにおいて、ロボットがランダムに設置されたビンのオブジェクト位置を自動的に確認し拾い上げる動作の確立は難しく、退屈なマニュアル作業へ置き換えられることが多々あります。
システムは事前にモデルとなる形状を定義し、対象物の位置を認識、ロボットがその物体を拾い上げるために必要な精度でデータを算出しなければなりません。
ノルウェー研究協議会が起ち上げたリサーチプロジェクトによる3年間の開発の結果、3DMaMaアルゴリズムがScorpion Vision Softwareに統合されました。
3Dモデルに基づいて部品の位置を認識します。モデルは実際の3Dモデルからインポートしたり、Scorpion GCPSが取得したポイントをもとに作成することができます。
|
|
![]() |
![]() |
| 無造作に置かれたビン | 3DMaMaによる3Dオブジェクトの 位置認識 |
3DMaMaによる3Dテンプレート |
|
3Dビジュアル化 |
Scorpion3Dモジュラーのポイントクラウドでシリンダーを適合 |
|||||||
| 3D幾何学ツール 3Dツールボックスは線、平面、交差、参照システムを作成するツールのコンプリートセットで構成されています。 |
線や平面を描き出した3D幾何学ツール |
|||||||
|
3D画像の処理 |
|
2D画像の3Dリサンプリング |
構築された3Dリファレンス |
|||||||
| レーザーグリッドを使ったリアルタイム3Dモデル CreatPointCloudは、ポーラー・ジオメトリーと光学相互相関を使ったレーザーグリッドからのドットと調和します。 右は、PCのマウスを指している19x19レーザーグリッドです。3つのカメラステレオビジョンを使って、Scorpionは250ms.で3Dを作成します。レーザーグリッドは3D・視野140x140x80mm・画素0.5mmをカバーしています。 |
![]() |
|||||||
| 3Dポントクラウド ScorpionVision8は3Dポイントクラウドをサポートしています。優れた特徴のひとつに、プロファイルをスタンダード・レーザー・トライアングレーション・システムから3D画像、またはポイントクラウドへ転換する機能があります。 |
| 右の画像には、プロファイルされたコンベヤーとピザ生地が表示されています。レーザーは100mm幅コンベヤーにかけられています。動的領域50mm内に画素0.1mmでピザの高さが計測されています。SingleLineFinderツールは200以上の3D座標を4msで計算します。 |
|
|||||||
| コンベヤー速度0.3m/sか300m/sにおいて、ProsilicaカメラGC1350は1秒間に60枚の画像をScorpionへ送り、12000の高精度3Dポイントを含む3x5mm空間分解能の3D画像作成を稼働させます。画像には一定の厚さ20mmのピザ2枚があります。 メモ:3Dイメージャーは専用のcpu-coreに単独で稼働します。Scorpionはリアルタイムで毎秒最大200~250のプロファイルを処理できます。 |
|
|||||||
| 3D画像を扱うとき、オブジェクトはConnetctedComponents3DかMaMa3Dツールに位置されます。右の画像はExtraMap3Dツールを使ってハイトマップへ転換された実際の画像です。 | ![]() |
|||||||
| Scorpion 3D tools | |
| ExternalReference3D | Accurate and easy to use 3D camera calibration. The basis for all 3D measurements. |
| Calibrator3D | A complete 3D calibrator. Can replace ExternalReference3D. |
| ExternalCoordinates3D | Optional component in 3D calibration. Can be used to e.g. calibrate a robot system, automatically compensating for any inaccuracies. |
| ChangeReference3D | Moves a 2D plane using the 3D camera calibration. In robot vision this removes the need for multiple plane calibrations. |
| Locate3D | Fast and accurate location of objects in space - x,y,z - using one, two, three or four cameras. Clever business logic to remove "bad" points increasing robustness and accuracy. Three and four cameras can be used to extend the volume where the object is located. |
| ObjectPosition3D | Easy location of unknown 3D objects by combining information from multiple cameras. The third dimension of an object measured by a pattern matching algorithm. |
| LineFromPoints3D | Creates 3D lines from points in space |
| ReferenceFromPoints3D | Creates a 2D reference plane from 3D points |
| Angle3D | Angle between 3D lines |
| NearestPointOnLine3D | Point-line distance |
| ExternalPoint3D | a 3D point |
| ExternalLine3D | a 3D line |
| Point2DFrom3D | Transforms a 3D point to a 2D coordinate system |
| Point3DFrom2D | Transforms a 2D point to a 3D coordinate system by specifying the unknown coordinate |
| PointFromLines3D | Finds nearest point to both lines |
| ReferenceFromLines3D | Finds nearest point to both lines and align reference with lines |
| NearestPointOnPlane3D | Projects a point onto a plane |
| ChangePointReference3D | Represents a point in another reference system |
| ChangeLineReference3D | Represents a line in another reference system |
| ReferenceDiff3D | Calculates difference (translation, rotation) between two reference systems |
| MoveReference3D | Moves a 3D reference in space. Can be used to create multiple 3D reference from one camera calibration. |
| GlobalPosition3D | Use to define a common global 3D reference system |
| CreatePointCloud3D | Creates a 3D Point Cloud using dynamic cross-correlation and polar geometry typically from a set of dots generated by a lasergrid. |
| GCPS | Creates 3D images using structured light |
| TemplateFinder3D | Locates 3D objects in 2D images |
| CylinderFit3D | Finds cylinders in 3D data sets - eg Point Cloud - Scorpion 3D image |
| PlaneFit3D | Finds planes in 3D data sets |
| HeightMap3D | Creates 2D intensity image from 3D point cloud |
| ExtractMap3D | Creates 2D intensity image from 3D point cloud within an ROI box using infinite perspective |
| MapTo3D | Converts from a height map created by ExtractMap3D to real 3D coordinates |
| PointOnLine3D | Extracts a point from a line |
| MoveLine3D | Moves a line in 3D |
| MovePoint3D | Moves a point in 3D |
| PlanePlaneIntersect3D | Intersection line between two planes |
| PlaneLineIntersect3D | Intersection point between a plane and a line |
| PCA3D | Principal Component Analysis - general shape/extent of an object |
| SphereFit3D | Finds spheres in 3D data sets |
| ReferenceOnPlane3D | Creates a reference on a plane by different means |
| ImagePicker3D | Extracts a 3D point cloud subset to another image |
| ConnectedComponents3D | Extracts objects by proximity filtering |
| CameraPose3D | calculated the position of a camera based on minimum 4 known 3D points |
| MonoPose3D | ocates an object in 3D with one camera |
| Difference3D | Measure the difference between an located object and its model |
| MaMa3D | MaMa3D - 152 - Locates multiple objects in a Point Cloud |














