Skip to content

Commit cfcf1e7

Browse files
authored
refactor(tracking_object_merger)!: fix namespace and directory structure (#7663)
* chore: refactor file paths in tracking_object_merger module Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> * chore: refactor file paths in tracking_object_merger module Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> * chore: refactor include statement in decorative_tracker_merger.hpp Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> * chore: refactor include statement in decorative_tracker_merger.hpp Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp * chore: refactor association file path in tracking_object_merger module Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> * refactor: update include statements in tracking_object_merger module Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> * refactor: move the node header to src Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> --------- Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp> Signed-off-by: Taekjin LEE <taekjin.lee@tier4.jp
1 parent 8537701 commit cfcf1e7

17 files changed

+126
-141
lines changed

perception/tracking_object_merger/CMakeLists.txt

+8-8
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,22 @@ include_directories(
2222
${EIGEN3_INCLUDE_DIR}
2323
)
2424

25-
ament_auto_add_library(decorative_tracker_merger_node SHARED
26-
src/data_association/data_association.cpp
27-
src/data_association/mu_successive_shortest_path/mu_successive_shortest_path_wrapper.cpp
28-
src/decorative_tracker_merger.cpp
25+
ament_auto_add_library(${PROJECT_NAME} SHARED
26+
src/association/data_association.cpp
27+
src/association/solver/mu_successive_shortest_path_wrapper.cpp
28+
src/decorative_tracker_merger_node.cpp
2929
src/utils/utils.cpp
3030
src/utils/tracker_state.cpp
3131
)
3232

33-
target_link_libraries(decorative_tracker_merger_node
33+
target_link_libraries(${PROJECT_NAME}
3434
Eigen3::Eigen
3535
glog::glog
3636
)
3737

38-
rclcpp_components_register_node(decorative_tracker_merger_node
39-
PLUGIN "tracking_object_merger::DecorativeTrackerMergerNode"
40-
EXECUTABLE decorative_tracker_merger
38+
rclcpp_components_register_node(${PROJECT_NAME}
39+
PLUGIN "autoware::tracking_object_merger::DecorativeTrackerMergerNode"
40+
EXECUTABLE decorative_tracker_merger_node
4141
)
4242

4343
ament_auto_package(INSTALL_TO_SHARE

perception/tracking_object_merger/include/tracking_object_merger/data_association/data_association.hpp perception/tracking_object_merger/include/autoware_tracking_object_merger/association/data_association.hpp

+16-12
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,28 @@
1616
// Author: v1.0 Yukihiro Saito
1717
//
1818

19-
#ifndef TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__DATA_ASSOCIATION_HPP_
20-
#define TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__DATA_ASSOCIATION_HPP_
21-
22-
#include <list>
23-
#include <memory>
24-
#include <unordered_map>
25-
#include <vector>
19+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__DATA_ASSOCIATION_HPP_
20+
#define AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__DATA_ASSOCIATION_HPP_
2621

2722
#define EIGEN_MPL2_ONLY
28-
#include "tracking_object_merger/data_association/solver/gnn_solver.hpp"
29-
#include "tracking_object_merger/utils/tracker_state.hpp"
23+
24+
#include "autoware_tracking_object_merger/association/solver/gnn_solver.hpp"
25+
#include "autoware_tracking_object_merger/utils/tracker_state.hpp"
3026

3127
#include <Eigen/Core>
3228
#include <Eigen/Geometry>
3329

34-
#include <autoware_perception_msgs/msg/detected_objects.hpp>
35-
#include <autoware_perception_msgs/msg/tracked_objects.hpp>
30+
#include "autoware_perception_msgs/msg/detected_objects.hpp"
31+
#include "autoware_perception_msgs/msg/tracked_objects.hpp"
3632

33+
#include <list>
34+
#include <memory>
3735
#include <string>
36+
#include <unordered_map>
37+
#include <vector>
3838

39+
namespace autoware::tracking_object_merger
40+
{
3941
class DataAssociation
4042
{
4143
private:
@@ -68,4 +70,6 @@ class DataAssociation
6870
virtual ~DataAssociation() {}
6971
};
7072

71-
#endif // TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__DATA_ASSOCIATION_HPP_
73+
} // namespace autoware::tracking_object_merger
74+
75+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__DATA_ASSOCIATION_HPP_

perception/tracking_object_merger/include/tracking_object_merger/data_association/solver/gnn_solver.hpp perception/tracking_object_merger/include/autoware_tracking_object_merger/association/solver/gnn_solver.hpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_HPP_
16-
#define TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_HPP_
15+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_HPP_
16+
#define AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_HPP_
1717

18-
#include "tracking_object_merger/data_association/solver/gnn_solver_interface.hpp"
19-
#include "tracking_object_merger/data_association/solver/mu_successive_shortest_path.hpp"
20-
#include "tracking_object_merger/data_association/solver/successive_shortest_path.hpp"
18+
#include "autoware_tracking_object_merger/association/solver/gnn_solver_interface.hpp"
19+
#include "autoware_tracking_object_merger/association/solver/mu_ssp.hpp"
20+
#include "autoware_tracking_object_merger/association/solver/ssp.hpp"
2121

22-
#endif // TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_HPP_
22+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_HPP_

perception/tracking_object_merger/include/tracking_object_merger/data_association/solver/gnn_solver_interface.hpp perception/tracking_object_merger/include/autoware_tracking_object_merger/association/solver/gnn_solver_interface.hpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
16-
#define TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
15+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
16+
#define AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
1717

1818
#include <unordered_map>
1919
#include <vector>
2020

21-
namespace gnn_solver
21+
namespace autoware::tracking_object_merger::gnn_solver
2222
{
2323
class GnnSolverInterface
2424
{
@@ -30,6 +30,6 @@ class GnnSolverInterface
3030
const std::vector<std::vector<double>> & cost, std::unordered_map<int, int> * direct_assignment,
3131
std::unordered_map<int, int> * reverse_assignment) = 0;
3232
};
33-
} // namespace gnn_solver
33+
} // namespace autoware::tracking_object_merger::gnn_solver
3434

35-
#endif // TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
35+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__GNN_SOLVER_INTERFACE_HPP_
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__MU_SUCCESSIVE_SHORTEST_PATH_HPP_
16-
#define TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__MU_SUCCESSIVE_SHORTEST_PATH_HPP_
15+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__MU_SSP_HPP_
16+
#define AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__MU_SSP_HPP_
1717

18-
#include "tracking_object_merger/data_association/solver/gnn_solver_interface.hpp"
18+
#include "autoware_tracking_object_merger/association/solver/gnn_solver_interface.hpp"
1919

2020
#include <unordered_map>
2121
#include <vector>
2222

23-
namespace gnn_solver
23+
namespace autoware::tracking_object_merger::gnn_solver
2424
{
2525
class MuSSP : public GnnSolverInterface
2626
{
@@ -32,6 +32,6 @@ class MuSSP : public GnnSolverInterface
3232
const std::vector<std::vector<double>> & cost, std::unordered_map<int, int> * direct_assignment,
3333
std::unordered_map<int, int> * reverse_assignment) override;
3434
};
35-
} // namespace gnn_solver
35+
} // namespace autoware::tracking_object_merger::gnn_solver
3636

37-
#endif // TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__MU_SUCCESSIVE_SHORTEST_PATH_HPP_
37+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__MU_SSP_HPP_
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__SUCCESSIVE_SHORTEST_PATH_HPP_
16-
#define TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__SUCCESSIVE_SHORTEST_PATH_HPP_
15+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__SSP_HPP_
16+
#define AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__SSP_HPP_
1717

18-
#include "tracking_object_merger/data_association/solver/gnn_solver_interface.hpp"
18+
#include "autoware_tracking_object_merger/association/solver/gnn_solver_interface.hpp"
1919

2020
#include <unordered_map>
2121
#include <vector>
2222

23-
namespace gnn_solver
23+
namespace autoware::tracking_object_merger::gnn_solver
2424
{
2525
class SSP : public GnnSolverInterface
2626
{
@@ -32,6 +32,6 @@ class SSP : public GnnSolverInterface
3232
const std::vector<std::vector<double>> & cost, std::unordered_map<int, int> * direct_assignment,
3333
std::unordered_map<int, int> * reverse_assignment) override;
3434
};
35-
} // namespace gnn_solver
35+
} // namespace autoware::tracking_object_merger::gnn_solver
3636

37-
#endif // TRACKING_OBJECT_MERGER__DATA_ASSOCIATION__SOLVER__SUCCESSIVE_SHORTEST_PATH_HPP_
37+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__ASSOCIATION__SOLVER__SSP_HPP_

perception/tracking_object_merger/include/tracking_object_merger/utils/tracker_state.hpp perception/tracking_object_merger/include/autoware_tracking_object_merger/utils/tracker_state.hpp

+11-7
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,17 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#ifndef TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_
16-
#define TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_
15+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_
16+
#define AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_
1717

1818
#include <Eigen/Core>
1919
#include <Eigen/Geometry>
2020
#include <rclcpp/rclcpp.hpp>
2121

22-
#include <autoware_perception_msgs/msg/object_classification.hpp>
23-
#include <autoware_perception_msgs/msg/tracked_object.hpp>
24-
#include <autoware_perception_msgs/msg/tracked_object_kinematics.hpp>
25-
#include <autoware_perception_msgs/msg/tracked_objects.hpp>
22+
#include "autoware_perception_msgs/msg/object_classification.hpp"
23+
#include "autoware_perception_msgs/msg/tracked_object.hpp"
24+
#include "autoware_perception_msgs/msg/tracked_object_kinematics.hpp"
25+
#include "autoware_perception_msgs/msg/tracked_objects.hpp"
2626
#include <std_msgs/msg/header.hpp>
2727
#include <unique_identifier_msgs/msg/uuid.hpp>
2828

@@ -32,6 +32,9 @@
3232
#include <string>
3333
#include <unordered_map>
3434
#include <vector>
35+
36+
namespace autoware::tracking_object_merger
37+
{
3538
using autoware_perception_msgs::msg::TrackedObject;
3639
using autoware_perception_msgs::msg::TrackedObjects;
3740

@@ -144,5 +147,6 @@ class TrackerState
144147

145148
TrackedObjects getTrackedObjectsFromTrackerStates(
146149
std::vector<TrackerState> & tracker_states, const rclcpp::Time & time);
150+
} // namespace autoware::tracking_object_merger
147151

148-
#endif // TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_
152+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__TRACKER_STATE_HPP_

perception/tracking_object_merger/include/tracking_object_merger/utils/utils.hpp perception/tracking_object_merger/include/autoware_tracking_object_merger/utils/utils.hpp

+16-48
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,18 @@
1414
//
1515
//
1616

17-
#ifndef TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_
18-
#define TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_
17+
#ifndef AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_
18+
#define AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_
1919

20-
// #include <autoware/universe_utils/autoware_universe_utils.hpp>
2120
#include "autoware/universe_utils/geometry/geometry.hpp"
2221

2322
#include <rclcpp/rclcpp.hpp>
2423

25-
#include <autoware_perception_msgs/msg/object_classification.hpp>
26-
#include <autoware_perception_msgs/msg/shape.hpp>
27-
#include <autoware_perception_msgs/msg/tracked_object.hpp>
28-
#include <autoware_perception_msgs/msg/tracked_object_kinematics.hpp>
29-
#include <autoware_perception_msgs/msg/tracked_objects.hpp>
24+
#include "autoware_perception_msgs/msg/object_classification.hpp"
25+
#include "autoware_perception_msgs/msg/shape.hpp"
26+
#include "autoware_perception_msgs/msg/tracked_object.hpp"
27+
#include "autoware_perception_msgs/msg/tracked_object_kinematics.hpp"
28+
#include "autoware_perception_msgs/msg/tracked_objects.hpp"
3029
#include <geometry_msgs/msg/polygon.hpp>
3130
#include <geometry_msgs/msg/vector3.hpp>
3231
#include <tf2_geometry_msgs/tf2_geometry_msgs.hpp>
@@ -42,49 +41,13 @@
4241
#include <tuple>
4342
#include <vector>
4443

44+
namespace autoware::tracking_object_merger
45+
{
4546
using autoware_perception_msgs::msg::TrackedObject;
4647
using autoware_perception_msgs::msg::TrackedObjects;
48+
4749
namespace utils
4850
{
49-
enum MSG_COV_IDX {
50-
X_X = 0,
51-
X_Y = 1,
52-
X_Z = 2,
53-
X_ROLL = 3,
54-
X_PITCH = 4,
55-
X_YAW = 5,
56-
Y_X = 6,
57-
Y_Y = 7,
58-
Y_Z = 8,
59-
Y_ROLL = 9,
60-
Y_PITCH = 10,
61-
Y_YAW = 11,
62-
Z_X = 12,
63-
Z_Y = 13,
64-
Z_Z = 14,
65-
Z_ROLL = 15,
66-
Z_PITCH = 16,
67-
Z_YAW = 17,
68-
ROLL_X = 18,
69-
ROLL_Y = 19,
70-
ROLL_Z = 20,
71-
ROLL_ROLL = 21,
72-
ROLL_PITCH = 22,
73-
ROLL_YAW = 23,
74-
PITCH_X = 24,
75-
PITCH_Y = 25,
76-
PITCH_Z = 26,
77-
PITCH_ROLL = 27,
78-
PITCH_PITCH = 28,
79-
PITCH_YAW = 29,
80-
YAW_X = 30,
81-
YAW_Y = 31,
82-
YAW_Z = 32,
83-
YAW_ROLL = 33,
84-
YAW_PITCH = 34,
85-
YAW_YAW = 35
86-
};
87-
8851
// linear interpolation for tracked objects
8952
TrackedObject linearInterpolationForTrackedObject(
9053
const TrackedObject & obj1, const TrackedObject & obj2);
@@ -103,6 +66,9 @@ TrackedObjects interpolateTrackedObjects(
10366

10467
namespace merger_utils
10568
{
69+
using autoware_perception_msgs::msg::TrackedObject;
70+
using autoware_perception_msgs::msg::TrackedObjects;
71+
10672
// merge policy
10773
enum MergePolicy : int { SKIP = 0, OVERWRITE = 1, FUSION = 2 };
10874

@@ -132,4 +98,6 @@ void updateWholeTrackedObject(TrackedObject & main_obj, const TrackedObject & su
13298

13399
} // namespace merger_utils
134100

135-
#endif // TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_
101+
} // namespace autoware::tracking_object_merger
102+
103+
#endif // AUTOWARE_TRACKING_OBJECT_MERGER__UTILS__UTILS_HPP_

perception/tracking_object_merger/launch/decorative_tracker_merger.launch.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<arg name="merge_options_path" default="$(find-pkg-share tracking_object_merger)/config/decorative_tracker_merger_policy.param.yaml"/>
88
<arg name="node_param_file_path" default="$(find-pkg-share tracking_object_merger)/config/decorative_tracker_merger.param.yaml"/>
99

10-
<node pkg="tracking_object_merger" exec="decorative_tracker_merger" name="$(anon decorative_tracker_merger)" output="screen">
10+
<node pkg="tracking_object_merger" exec="decorative_tracker_merger_node" name="$(anon decorative_tracker_merger)" output="screen">
1111
<remap from="input/main_object" to="$(var input/main_object)"/>
1212
<remap from="input/sub_object" to="$(var input/sub_object)"/>
1313
<remap from="output/object" to="$(var output)"/>

perception/tracking_object_merger/package.xml

-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
<depend>rclcpp_components</depend>
2424
<depend>tf2</depend>
2525
<depend>tf2_ros</depend>
26-
<depend>tier4_perception_msgs</depend>
2726

2827
<test_depend>ament_lint_auto</test_depend>
2928
<test_depend>autoware_lint_common</test_depend>

perception/tracking_object_merger/src/data_association/data_association.cpp perception/tracking_object_merger/src/association/data_association.cpp

+7-3
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#include "tracking_object_merger/data_association/data_association.hpp"
15+
#include "autoware_tracking_object_merger/association/data_association.hpp"
1616

1717
#include "autoware/universe_utils/geometry/geometry.hpp"
18+
#include "autoware_tracking_object_merger/association/solver/gnn_solver.hpp"
19+
#include "autoware_tracking_object_merger/utils/utils.hpp"
1820
#include "object_recognition_utils/object_recognition_utils.hpp"
19-
#include "tracking_object_merger/data_association/solver/gnn_solver.hpp"
20-
#include "tracking_object_merger/utils/utils.hpp"
2121

2222
#include <algorithm>
2323
#include <fstream>
@@ -47,6 +47,8 @@ double getFormedYawAngle(
4747
}
4848
} // namespace
4949

50+
namespace autoware::tracking_object_merger
51+
{
5052
DataAssociation::DataAssociation(
5153
std::vector<int> can_assign_vector, std::vector<double> max_dist_vector,
5254
std::vector<double> max_rad_vector, std::vector<double> min_iou_vector,
@@ -229,3 +231,5 @@ double DataAssociation::calcScoreBetweenObjects(
229231
}
230232
return score;
231233
}
234+
235+
} // namespace autoware::tracking_object_merger
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
#include "tracking_object_merger/data_association/solver/mu_successive_shortest_path.hpp"
15+
#include "autoware_tracking_object_merger/association/solver/mu_ssp.hpp"
1616

1717
#include <mussp/mussp.h>
1818

@@ -24,7 +24,7 @@
2424
#include <unordered_map>
2525
#include <vector>
2626

27-
namespace gnn_solver
27+
namespace autoware::tracking_object_merger::gnn_solver
2828
{
2929
void MuSSP::maximizeLinearAssignment(
3030
const std::vector<std::vector<double>> & cost, std::unordered_map<int, int> * direct_assignment,
@@ -38,4 +38,4 @@ void MuSSP::maximizeLinearAssignment(
3838
// Solve DA by muSSP
3939
solve_muSSP(cost, direct_assignment, reverse_assignment);
4040
}
41-
} // namespace gnn_solver
41+
} // namespace autoware::tracking_object_merger::gnn_solver

0 commit comments

Comments
 (0)