Skip to content

Commit 345b0c7

Browse files
initial integration of parking spot detection. Yet to be completed.
1 parent 667f9da commit 345b0c7

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

GEMstack/onboard/perception/cone_detection_parking.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import open3d as o3d
1111
from ..component import Component
1212
from ...state import VehicleState, AgentState
13+
from .parking_utils import *
1314

1415

1516
class ConeDetector3D(Component):
@@ -41,6 +42,21 @@ def __init__(self):
4142
self.sync = ApproximateTimeSynchronizer([self.rgb_sub, self.lidar_sub], queue_size=10, slop=0.1)
4243
self.sync.registerCallback(self.callback)
4344

45+
46+
def detect_parking_spot(self, cone_3d_centers):
47+
cone_ground_centers = np.array(cone_3d_centers)
48+
cone_ground_centers_2D = cone_ground_centers[:, :2]
49+
# print(f"-----cone_ground_centers_2D: {cone_ground_centers_2D}")
50+
candidates = findAllCandidateParkingLot(cone_ground_centers_2D)
51+
# print(f"-----candidates: {candidates}")
52+
if len(candidates) > 0:
53+
closest_spot = candidates[0]
54+
# print(f"-----closest_spot: {closest_spot}")
55+
# Create parking spot marker
56+
# ros_parking_spot_marker = create_parking_spot_marker(closest_spot, ref_frame="vehicle")
57+
# self.pub_parking_spot_marker.publish(ros_parking_spot_marker)
58+
return
59+
4460
def callback(self, img_msg, lidar_msg):
4561
# Convert data
4662
image = self.bridge.imgmsg_to_cv2(img_msg, "bgr8")
@@ -77,6 +93,10 @@ def callback(self, img_msg, lidar_msg):
7793
if centroids:
7894
self.pub_centroids.publish(self.create_pc2(centroids))
7995

96+
# Parking space detection logic here
97+
98+
99+
80100
def undistort_image(self, img):
81101
h, w = img.shape[:2]
82102
new_K, _ = cv2.getOptimalNewCameraMatrix(self.K, self.D, (w, h), 1)

0 commit comments

Comments
 (0)