メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

readField

(削除予定) フィールド名に基づいた点群データの読み取り

readField は将来のリリースで削除されます。代わりに rosReadField を使用してください。詳細については、ROS メッセージ構造体の関数を参照してください。

説明

fielddata = readField(pcloud,fieldname) は、PointCloud2 オブジェクト (pcloud) から fieldname によって指定された点フィールドを読み取り、それを fielddata で返します。fieldname が存在しない場合、この関数はエラーを表示します。点群データの構造を保持する方法については、点群の構造の保持を参照してください。

すべて折りたたむ

ROS 点群メッセージ ptcloud が含まれるサンプル ROS メッセージを読み込みます。

exampleHelperROSLoadMessages

点群メッセージで使用可能な 'x' フィールド名を読み取ります。

x = readField(ptcloud,'x');

入力引数

すべて折りたたむ

点群。sensor_msgs/PointCloud2 ROS メッセージの PointCloud2 オブジェクト ハンドルとして指定します。

点群データのフィールド名。string スカラーまたは文字ベクトルとして指定します。この string はフィールド名と厳密に一致しなければなりません。fieldname が存在しない場合、この関数はエラーを表示します。

出力引数

すべて折りたたむ

点群からのフィールド値のリスト。行列として返されます。行列の各行は点群の読み取り値です。ここで、n は点の数、c は各点の値の数です。読み取り中の点群オブジェクトで PreserveStructureOnRead プロパティが true に設定されている場合、点は h×w×c の行列として返されます。詳細については、点群の構造の保持を参照してください。

ヒント

点群データは、1 次元リストまたは 2 次元イメージの形式で整理できます。2 次元イメージ形式は、通常、深さセンサーまたはステレオ カメラから得られます。入力の PointCloud2 オブジェクトには、true または false (既定) のいずれかである PreserveStructureOnRead プロパティが含まれます。このプロパティを true に設定したとします。

pcloud.PreserveStructureOnRead = true;

ここで、任意の読み取り関数 (readXYZreadRGB、または readField) を呼び出すと、点群の組織的な構造が保持されます。構造を保持する場合、出力行列のサイズは m×n×d になります。ここで m は高さ、n は幅、d は各点の戻り値の数です。それ以外の場合、すべての点は xd 列のリストとして返されます。この構造は、点群がオーガナイズドの場合にのみ保持することができます。

バージョン履歴

R2019b で導入

すべて折りたたむ