#include <Fusion.h>
Public メソッド | |
CFusion () | |
コンストラクタ | |
virtual | ~CFusion () |
デストラクタ | |
int | init () |
初期化処理 | |
int | setMemoryPara (float period, float decrease) |
メモリパラメータ設定 | |
int | setGridMap (GridMap *sensor_data) |
統合用データにデータを追加する | |
int | setWorkMap (GridMap *grid_map) |
作業用マップを設定する | |
int | setSelfLocalization (Localization *self_loc) |
ロボット自己位置を登録する | |
int | getMergedGridMap (GridMap *result) |
統合されたデータを受け取る. | |
int | getDetectedObject (struct detect_object_T *detect_object) |
特定障害物を取得する? | |
int | close () |
終了処理を行う | |
Private メソッド | |
int | getEstimatedLocalization (Localization *self_loc, double time) |
自己位置を更新する | |
int | transform (GridMap *src, float dx, float dy, float dthe, GridMap *dst) |
存在確率マップを変形する | |
Private 変数 | |
float | period |
データの保持時間 | |
float | decrease |
時間経過によるデータの減衰率 | |
vector< GridMap > | stored_data |
保持しているセンサデータ履歴 | |
vector< Localization > | stored_self_loc |
自己位置履歴 | |
GridMap * | work_map |
作業用マップ |
CFusion::CFusion | ( | ) |
コンストラクタ
CFusion::~CFusion | ( | ) | [virtual] |
デストラクタ
int CFusion::init | ( | ) |
初期化処理
int CFusion::setMemoryPara | ( | float | period, | |
float | decrease | |||
) |
メモリパラメータ設定
[in] | period | データ保持時間設定 |
[in] | decrease | 時間経過によるデータ減衰率 |
int CFusion::setGridMap | ( | GridMap * | sensor_data | ) |
統合用データにデータを追加する
統合するデータに要素を一つ追加する. 追加すると同時に, データ保持時間を過ぎたデータを削除する.
[in] | sensor_data | 追加する存在確率マップ |
int CFusion::setWorkMap | ( | GridMap * | grid_map | ) |
作業用マップを設定する
[in] | grid_map | 作業用マップ |
int CFusion::setSelfLocalization | ( | Localization * | self_loc | ) |
ロボット自己位置を登録する
[in] | self_loc | ロボット自己位置情報 |
int CFusion::getMergedGridMap | ( | GridMap * | result | ) |
統合されたデータを受け取る.
[out] | result | 統合されたデータを取得するポインタ |
int CFusion::getDetectedObject | ( | struct detect_object_T * | detect_object | ) |
特定障害物を取得する?
未実装
[out] | detect_object | 特定障害物を受け取るポインタ? |
int CFusion::close | ( | ) |
終了処理を行う
int CFusion::getEstimatedLocalization | ( | Localization * | self_loc, | |
double | time | |||
) | [private] |
自己位置を更新する
保持しているセンサデータの中から最新のものを探し, その原点を自己位置に設定する
[out] | self_loc | 更新する自己位置 |
[in] | time | 自己位置の前回更新時刻 |
存在確率マップを変形する
存在確率マップの変形 (移動, 回転, 拡大縮小) を行う.
[in] | src | 変形元の存在確率マップ |
[in] | dx | 移動量 (X軸) |
[in] | dy | 移動量 (y軸) |
[in] | dthe | 回転角度 |
[in] | dst | 変形後の存在確率マップを受け取るポインタ(こちらの座標系に変換する) |
float CFusion::period [private] |
データの保持時間
float CFusion::decrease [private] |
時間経過によるデータの減衰率
vector<GridMap> CFusion::stored_data [private] |
保持しているセンサデータ履歴
vector<Localization> CFusion::stored_self_loc [private] |
自己位置履歴
GridMap* CFusion::work_map [private] |
作業用マップ