PointCloud2型の点群データを必要なときにその都度ファイルなどから読み込むのではなく、一度読み込んだらunordered_mapに保持しておきまた必要になったらそこから使うといった感じにしたいです。
また、もう使わないとなったらunordered_mapから削除し、そのPointCloud2の点群データが使っていたメモリも開放したいなと考えています。
cpp
1sensor_msgs::PointCloud2 part1, part2; 2pcl::io::loadPCDFile(files[0], part1); 3pcl::io::loadPCDFile(files[1], part2); 4std::unordered_map<std::string, sensor_msgs::PointCloud2> loaded_areas; 5loaded_areas[files[0]] = part1; 6loaded_areas[files[1]] = part2;
ここで、この点群データは大きめデータなんですが
このようにvalueに実体をもたせるのは少し抵抗があるのですが、やはりここはポインタなどを格納したほうがいいのでしょうか。
処理が遅くなったりしてしまう場合、気になってしまします。
実体を渡しても内部的にはポインタで処理してるなどであんまり気にしなくていい感じなんでしょうか
cpp
1loaded_areas.erase(files[0]);
また、このように要素を消した場合メモリもしっかりと開放されるでしょうか
> 処理が遅くなったりしてしまう場合、気になってしまします。
実際、処理が遅くなりましたか? どこで遅くなりましたか?
あなたの回答
tips
プレビュー