From 323e71bdf4dbf7db219f97271985b04b4d289709 Mon Sep 17 00:00:00 2001 From: lishuai183 Date: Tue, 5 Mar 2024 10:14:10 +0800 Subject: [PATCH] fix nms3d op. --- ads/common/ops/kernels/op_kernel/nms3d.cpp | 46 +++++++++++----------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/ads/common/ops/kernels/op_kernel/nms3d.cpp b/ads/common/ops/kernels/op_kernel/nms3d.cpp index f52853a7..d56e3aee 100644 --- a/ads/common/ops/kernels/op_kernel/nms3d.cpp +++ b/ads/common/ops/kernels/op_kernel/nms3d.cpp @@ -328,17 +328,17 @@ private: Point center_a(boxATensor.GetValue(0), boxATensor.GetValue(1)); Point center_b(boxBTensor.GetValue(0), boxBTensor.GetValue(1)); - Point box_a_corners[5]; - box_a_corners[0].set(a_x1, a_y1); - box_a_corners[1].set(a_x2, a_y1); - box_a_corners[2].set(a_x2, a_y2); - box_a_corners[3].set(a_x1, a_y2); - - Point box_b_corners[5]; - box_b_corners[0].set(b_x1, b_y1); - box_b_corners[1].set(b_x2, b_y1); - box_b_corners[2].set(b_x2, b_y2); - box_b_corners[3].set(b_x1, b_y2); + Point box_first_corners[5]; + box_first_corners[0].set(a_x1, a_y1); + box_first_corners[1].set(a_x2, a_y1); + box_first_corners[2].set(a_x2, a_y2); + box_first_corners[3].set(a_x1, a_y2); + + Point box_second_corners[5]; + box_second_corners[0].set(b_x1, b_y1); + box_second_corners[1].set(b_x2, b_y1); + box_second_corners[2].set(b_x2, b_y2); + box_second_corners[3].set(b_x1, b_y2); // get oriented corners LocalTensor angleLocal = angleBuf.Get(); @@ -355,13 +355,13 @@ private: for (int k = 0; k < 4; k++) { rotate_around_center(center_a, a_angle_cos, a_angle_sin, - box_a_corners[k]); + box_first_corners[k]); rotate_around_center(center_b, b_angle_cos, b_angle_sin, - box_b_corners[k]); + box_second_corners[k]); } - box_a_corners[4] = box_a_corners[0]; - box_b_corners[4] = box_b_corners[0]; + box_first_corners[4] = box_first_corners[0]; + box_second_corners[4] = box_second_corners[0]; // get intersection of lines Point cross_points[16]; @@ -372,8 +372,8 @@ private: poly_center.set(0, 0); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { - flag = intersection(box_a_corners[i + 1], box_a_corners[i], - box_b_corners[j + 1], box_b_corners[j], + flag = intersection(box_first_corners[i + 1], box_first_corners[i], + box_second_corners[j + 1], box_second_corners[j], cross_points[cnt]); if (flag) { poly_center = poly_center + cross_points[cnt]; @@ -384,14 +384,14 @@ private: // check corners for (int k = 0; k < 4; k++) { - if (check_in_box2d(boxATensor, box_b_corners[k])) { - poly_center = poly_center + box_b_corners[k]; - cross_points[cnt] = box_b_corners[k]; + if (check_in_box2d(boxATensor, box_second_corners[k])) { + poly_center = poly_center + box_second_corners[k]; + cross_points[cnt] = box_second_corners[k]; cnt++; } - if (check_in_box2d(boxBTensor, box_a_corners[k])) { - poly_center = poly_center + box_a_corners[k]; - cross_points[cnt] = box_a_corners[k]; + if (check_in_box2d(boxBTensor, box_first_corners[k])) { + poly_center = poly_center + box_first_corners[k]; + cross_points[cnt] = box_first_corners[k]; cnt++; } } -- Gitee