1. Introduction
In today’s road traffic, intersections and their associated traffic systems are very complex. As intersections are a complex environment with many factors, vehicles and pedestrians in the intersection need to be more careful about their safety. However, as is often reported in the media, right-turning pedestrian accidents are one of the most common types of accidents in Korea. In response, the Korea Road Traffic Authority (KRTA) investigated right-turn accidents at all intersections over the past three years, and the results are shown in
Figure 1 below.
In
Figure 1, we can see the percentage of total accidents and right-turn accidents by vehicle type. As a result, we can note that the ratio of right-turn accidents to total pedestrian accidents is overwhelmingly higher for larger vehicles than for smaller passenger cars. Recognizing the seriousness of right-turn accidents, South Korea implemented the ‘Right Turn Pause’ law in January 2023. This law requires all vehicles to pause once when turning right to protect pedestrians. Since the law came into effect, all police forces in the country have been enforcing right-turn pauses, and local governments have been promoting the law, but even today, South Korea still suffers from right-turn accidents involving large vehicles, and the cause has been found to be the driver’s limited field of vision.
On the other hand, today’s autonomous vehicle technology has come a long way from the past [
1,
2,
3]. It has been variously suggested that high-precision sensors and recognition systems can replace human object recognition intelligence [
4,
5,
6], but it is still difficult to solve this problem technologically if the vehicle’s field of view is insufficient. For example,
Figure 2 below is one of the common road environments in Korea. A vehicle planning to make a right turn is very likely to have insufficient obstacle information recognition due to the presence of equipment on the curbstone or street trees.
To solve this problem of insufficient perception information, many researchers have investigated various strategies. Cooperative perception is a method in which the sensor information of multiple agents is shared and complemented by each other to improve the cognitive performance of a single agent[
7,
8,
9]. Agents can be not only vehicles, but also mobile robots and urban infrastructure systems, suggesting that sensors and systems designed for each environment can compensate for the limited field of view of a robot or vehicle. In particular, [
10,
11,
12] propose various sensor fusion methods and 3D point cloud-based generation methods for collaborative perception among connected autonomous vehicles. These papers mainly propose solutions to the data occlusion phenomenon by fusing the features of point cloud data between different frames. However, these methods need further technical implementation and safety verification to be applied safely in real world, and it is not reliable that they can prevent right turn accidents when the vehicle is in a dynamic state. In [
13,
14], a cooperative recognition system is proposed using the infrastructure in urban areas. The implementation of the recognition system by attaching additional sensors to the infrastructure is one of the key components of the cooperative recognition system. This approach overcomes the limitations of existing recognition functions performed by individual vehicles or devices alone and enables more accurate and reliable recognition by cooperating with the infrastructure. However, most of the infrastructure facilities proposed in the literature are designed to target only a specific area, which limits their ability to cover the entire area within an intersection.
There are also studies related to right-turning pedestrian accidents in South Korea, such as [
15]. In [
15], the authors present criteria that can be legally reviewed to ensure that autonomous vehicles can safely make right turns. This study redesigned the right-turning process based on several case studies and presented an algorithm in the form of a flowchart. In [
16], an algorithm is proposed to detect pedestrians by installing a LiDAR sensor in the middle of an intersection. This paper proposes a 128-channel LiDAR sensor for pedestrian detection, but 128-channel LiDAR is generally classified as a high-cost sensor, which is very uneconomical in terms of equipment. Therefore, this paper proposes a more practical right turn prevention system by compensating for these shortcomings, and verifies it in a virtual environment.
The primary contributions of this paper are as follows:
Optimization of a right-turning pedestrian detection system: The use of 64-channel LiDAR is sufficient to satisfy the requirements of the proposed system and demonstrates that the use of 64-channel LiDAR is reasonable in terms of system efficiency and cost. These results show that the system can maximize the efficiency of the sensor configuration while maintaining high performance recognition capability.
Cost Effectiveness: The study shows that pedestrian detection systems in intersection can complement the perceptual capabilities of existing autonomous vehicles and reduce the cost of additional sensors on the vehicle.
Right turn scenario configuration and dedicated dataset: As there are not enough datasets for right turn scenarios compared to the existing studies, we constructed a dedicated dataset based on various right turn scenarios in the simulator separately.
Robustness in Various Weather Conditions: For pedestrian detection, the robustness of the pedestrian detection system was enhanced by using only LiDAR sensors that are less sensitive to weather changes, as opposed to other sensors that are sensitive to weather changes.
2. System Architecture
The overall system proposed in this study is shown in
Figure 3. A LiDAR sensor is placed near the middle of the intersection to observe pedestrians on the crosswalk. A bus is chosen as the experimental vehicle for this purpose because, unlike a regular passenger car, a vehicle with a high height has a limited field of view. It is assumed that this vehicle is capable of autonomous driving, so we will install a LiDAR on top of the bus vehicle to obtain vehicle-centric perception data at the same time. In order to solve the problem presented in this study, it is necessary to recognize pedestrian information from sensors at the intersection and transmit pedestrian information to the bus vehicle before an accident occurs. Therefore, we propose that a control tower is required to apply this system in the real world. However, in this experiment, we replace the control tower with the ROS platform server in a virtual simulator environment.
The pedestrian detection algorithm used in this paper is shown in
Figure 4. First, we chose Complex-YOLO as the pedestrian detection deep learning model because unlike other deep learning algorithms, it is appropriate to use a one-stage detection model with fewer constraints on the inference speed [
17]. Despite the primary classification of pedestrian classes from the deep learning model, further work needs to be done, and the reasons are as follows. Unlike vehicles and structures, pedestrians generate data from LiDAR that is regularly hard to identify (
Figure 5), which can sometimes reduce the accuracy of Complex-YOLO. Therefore, filtering and clustering of regions of interest designated as dangerous areas are performed to determine the presence or absence of objects. Afterwards, the existing results are combined to increase the stability of pedestrian detection. To compare the performance of pedestrian detection using this approach, we used PV-RCNN as the pedestrian detection algorithm for onboard LiDAR [
18]. It is important to note that PV-RCNN outperforms Complex-YOLO in terms of accuracy, although it is weaker in inference real-time, so it is used in this experiment in terms of accuracy comparison with Complex-YOLO.
Figure 1.
Comparing the right-turn accident rate with the overall accident rate 2018~2020.
Figure 1.
Comparing the right-turn accident rate with the overall accident rate 2018~2020.
Figure 2.
Road equipment that obstructs visibility.
Figure 2.
Road equipment that obstructs visibility.
Figure 3.
Proposed system in real world.
Figure 3.
Proposed system in real world.
Figure 4.
Intersection LiDAR process.
Figure 4.
Intersection LiDAR process.
Figure 5.
Comparison between vehicle(green box) and pedestrian data(white box). (a) Screenshot of LiDAR sensor frame data in ROS-rviz tool. (b) Screenshot of frame of CARLA simulator.
Figure 5.
Comparison between vehicle(green box) and pedestrian data(white box). (a) Screenshot of LiDAR sensor frame data in ROS-rviz tool. (b) Screenshot of frame of CARLA simulator.
Figure 6.
Screenshots of CARLA simulator with ROS platform.
Figure 6.
Screenshots of CARLA simulator with ROS platform.
Figure 7.
ROS and CARLA integration architecture.
Figure 7.
ROS and CARLA integration architecture.
Figure 8.
Used map in our experiment. (a) Location of intersection named Mainstreet in town 10. (b) Screenshot of Mainstreet.
Figure 8.
Used map in our experiment. (a) Location of intersection named Mainstreet in town 10. (b) Screenshot of Mainstreet.
Figure 9.
Onboard agent named Mitsubishi-Fusorosa.
Figure 9.
Onboard agent named Mitsubishi-Fusorosa.
Figure 10.
Example of blindspot situation. (a) Simulator screen (b) ROS-rviz screen.
Figure 10.
Example of blindspot situation. (a) Simulator screen (b) ROS-rviz screen.
Figure 11.
An example of LiDAR data sparsity, where the data points are significantly sparse at a distance of 23.1 meters from the person’s location (green box).
Figure 11.
An example of LiDAR data sparsity, where the data points are significantly sparse at a distance of 23.1 meters from the person’s location (green box).
Figure 12.
Sensor data display in dense fog condition. (a) Camera. (b) Radar. (c) LiDAR.
Figure 12.
Sensor data display in dense fog condition. (a) Camera. (b) Radar. (c) LiDAR.
Figure 13.
Screenshots of pedestrian pointcloud in ROS-rviz tool. (a) 128 channel. (b) 64 channel.
Figure 13.
Screenshots of pedestrian pointcloud in ROS-rviz tool. (a) 128 channel. (b) 64 channel.
Figure 14.
Screenshots of a various of weather conditions. (a)Sunny day (b)Fog day (c)Rain day (d)Clear night (e)Fog night (f)Rain night.
Figure 14.
Screenshots of a various of weather conditions. (a)Sunny day (b)Fog day (c)Rain day (d)Clear night (e)Fog night (f)Rain night.
Figure 15.
Three types of pedestrians in CARLA simulator. (a) Normal adult. (b) Overweight adult. (c) children.
Figure 15.
Three types of pedestrians in CARLA simulator. (a) Normal adult. (b) Overweight adult. (c) children.
Figure 16.
Screenshot of a part of scenario. (a) Control bus by manual (b) Scenario plan diagram.
Figure 16.
Screenshot of a part of scenario. (a) Control bus by manual (b) Scenario plan diagram.
Figure 17.
Comparison of synchronization status. (a) Synchronous ros messages (b) Asynchronous ros messages.
Figure 17.
Comparison of synchronization status. (a) Synchronous ros messages (b) Asynchronous ros messages.
Figure 18.
Clustering process. (a) Raw data.(pedestrian in green circle) (b) Filtered data by roi.(region of interest) (c) Clustered data. (d) Bounding box of object(magenta color).
Figure 18.
Clustering process. (a) Raw data.(pedestrian in green circle) (b) Filtered data by roi.(region of interest) (c) Clustered data. (d) Bounding box of object(magenta color).
Figure 19.
PV-RCNN result images. (a) True positive. (b) Undetected pedestrian due to blind spot. (c) Undetected pedestrian due to data sparsity by range limit.
Figure 19.
PV-RCNN result images. (a) True positive. (b) Undetected pedestrian due to blind spot. (c) Undetected pedestrian due to data sparsity by range limit.
Figure 20.
Pedestrian data captured by a 32 channel LiDAR(onboard).
Figure 20.
Pedestrian data captured by a 32 channel LiDAR(onboard).
Figure 21.
Pedestrian data captured by a 64 channel LiDAR (intersection).
Figure 21.
Pedestrian data captured by a 64 channel LiDAR (intersection).
Figure 22.
Complex-YOLO result images. (a) Ground Truth of case 1. (b) Complex-YOLO output of case 1. (c) Ground Truth of case 2. (d) Complex-YOLO output of case 2. (e) Ground Truth of case 3. (f) Complex-YOLO output of case 3.
Figure 22.
Complex-YOLO result images. (a) Ground Truth of case 1. (b) Complex-YOLO output of case 1. (c) Ground Truth of case 2. (d) Complex-YOLO output of case 2. (e) Ground Truth of case 3. (f) Complex-YOLO output of case 3.
Figure 23.
Clustering result images. (a) Clustering output of case 1. (b) Clustering output of case 2. (c) Clustering output of case 3.
Figure 23.
Clustering result images. (a) Clustering output of case 1. (b) Clustering output of case 2. (c) Clustering output of case 3.
Figure 24.
Output of bounding boxes’ fusion. (a) Output of case 1. (b) Output of case 2. (c) Output of case 3.
Figure 24.
Output of bounding boxes’ fusion. (a) Output of case 1. (b) Output of case 2. (c) Output of case 3.
Figure 25.
C-track test bed. (a) Aerial filming of C-track test bed (b) Urban area in C-track test bed.
Figure 25.
C-track test bed. (a) Aerial filming of C-track test bed (b) Urban area in C-track test bed.
Table 1.
Attributes of onboard agent sensor set json file.
Table 1.
Attributes of onboard agent sensor set json file.
Sensor List |
Type |
ID |
Camera |
sensor.camera.rgb |
rgb_view |
LiDAR |
sensor.LiDAR.ray_cast |
LiDAR |
GNSS |
sensor.other.gnss |
gnss |
Objects |
sensor.pseudo.objects |
objects |
Odom |
sensor.pseudo.tf |
tf |
Tf |
sensor.pseudo.odom |
odometry |
Speedometer |
sensor.pseudo.speedometer |
speedometer |
Control |
sensor.pseudo.control |
control |
Table 2.
Attributes of intersection agent sensor set json file.
Table 2.
Attributes of intersection agent sensor set json file.
Sensor List |
Type |
ID |
Camera |
sensor.camera.rgb |
rgb_view |
LiDAR |
sensor.LiDAR.ray_cast |
LiDAR |
GNSS |
sensor.other.gnss |
gnss |
Objects |
sensor.pseudo.objects |
objects |
Tf |
sensor.pseudo.odom |
odometry |
Table 3.
Comparison between 64 channel LiDAR and 128 channel LiDAR.
Table 3.
Comparison between 64 channel LiDAR and 128 channel LiDAR.
LiDAR Channel |
Range(m) |
Points per second |
Upper FoV(deg) |
Lower FoV(deg) |
Rotation frequency(hz) |
64 |
80 |
2,621,440 |
22.5 |
-22.5 |
100 |
128 |
80 |
5,242,880 |
22.5 |
-22.5 |
100 |
Table 4.
Parameters for adjusting weather conditions.
Table 4.
Parameters for adjusting weather conditions.
|
Cloudiness |
Sun altitude angle |
Precipitation |
Fog density |
Fog fallout |
Precipitation deposits |
Sunny day |
0.0 |
70.0 |
0.0 |
- |
- |
- |
Clear night |
0.0 |
-70.0 |
0.0 |
- |
- |
- |
Fog day |
60.0 |
70.0 |
0.0 |
35.0 |
7.0 |
- |
Fog night |
60.0 |
-70.0 |
0.0 |
25.0 |
7.0 |
- |
Rain day |
85.0 |
70.0 |
80.0 |
10.0 |
- |
100.0 |
Rain night |
85.0 |
-70.0 |
80.0 |
10.0 |
- |
100.0 |
Table 5.
Blueprint ID lists for different pedestrian types.
Table 5.
Blueprint ID lists for different pedestrian types.
Type |
blueprint ID |
Normal Adult |
0001/0005/0006/0007/0008/0004/0003/0002/0015 0019/0016/0017/0026/0018/0021/0020/0023/0022 0024/0025/0027/0029/0028/0041/0040/0033/0031 |
Overweight Adult |
0034/0038/0035/0036/0037/0039/0042/0043/0044 0047/0046 |
Children |
0009/0010/0011/0012/0013/0014/0048/0049 |
Table 6.
Scenario cases for dataset.
Table 6.
Scenario cases for dataset.
|
Weather |
Type of pedestrians |
Direction of pedestrian |
Speed of pedestrian |
Vehicle speed |
#1 |
Sunny day |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#2 |
Sunny day |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#3 |
Sunny day |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#4 |
Clear night |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#5 |
Clear night |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#6 |
Clear night |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#7 |
Fog day |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#8 |
Fog day |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#9 |
Fog day |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#10 |
Fog night |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#11 |
Fog night |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#12 |
Fog night |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#13 |
Rain day |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#14 |
Rain day |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#15 |
Rain day |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#16 |
Rain night |
Adult : 2 (normal) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#17 |
Rain night |
Adult : 2 (normal, overweight) |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
#18 |
Rain night |
Adult : 1, Children :1 |
Ped1: 0°/Ped2: 180° |
Ped1: 1.0(m/s)/Ped2: 1.5(m/s) |
15-25(km/h) |
Table 7.
Number of datasets.
Table 7.
Number of datasets.
|
Sunny day |
Clear night |
Fog day |
Fog night |
Rain day |
Rain night |
Total |
Onboard |
5,299 |
4,066 |
5,143 |
4,876 |
5,420 |
5,555 |
30,359 |
Intersection |
5,299 |
4,066 |
5,143 |
4,876 |
5,420 |
5,555 |
30,359 |
|
|
|
|
|
|
|
60,718 |
Table 8.
Training parameters.
Table 8.
Training parameters.
|
Class list |
Anchors |
Filtering[m] |
Feature type |
Feature size |
Complex-YOLO [Intersection] |
Pedestrian |
[1.08, 1.19] |
Min/Max x : 0, 40 Min/Max y : 0, 40 Min/Max z : -4.5, 0 |
BEV |
[512,1024,3] |
PV-RCNN [Onboard] |
Pedestrian |
[0.96, 0.88, 2.13] |
Min/Max x : 75.2 Min/Max y : 75.2 Min/Max z : 4.0 |
Voxel |
[0.1,0.1,0.15] |
Table 9.
Classification of pedestrian for evaluation.
Table 9.
Classification of pedestrian for evaluation.
|
Attributes of cases |
Case 1(#1) |
Normal adult: 2 |
Case 2(#2) |
Normal adult: 1 , Overweight adult: 1 |
Case 3(#3) |
Normal adult: 1, Children: 1 |
Table 10.
Evaluation dataset.
Table 10.
Evaluation dataset.
Weather Type |
Num. |
Total |
Sunny Day |
#1: 609 / #2: 499 / #3: 483 |
1,591 |
Clear Night |
#1: 390 / #2: 389 / #3: 442 |
1,221 |
Fog Day |
#1: 494 / #2: 519 / #3: 531 |
1,544 |
Fog Night |
#1: 456 / #2: 437 / #3: 571 |
1,464 |
Rain Day |
#1: 566 / #2: 555 / #3: 507 |
1,628 |
Rain Night |
#1: 561 / #2: 585 / #3: 523 |
1,669 |
Total |
|
9,117 |
Table 11.
Quantitative evaluation of onboard LiDAR process.
Table 11.
Quantitative evaluation of onboard LiDAR process.
|
Sunny Day |
Clear Night |
Fog Day |
Fog Night |
Rain Day |
Rain Night |
|
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
PV-RCNN |
0.53 |
0.60 |
0.53 |
0.52 |
0.44 |
0.35 |
0.36 |
0.43 |
0.39 |
0.51 |
0.51 |
0.45 |
0.46 |
0.61 |
0.37 |
0.43 |
0.52 |
0.34 |
Table 12.
Quantitative evaluation of intersection LiDAR process (64 channels).
Table 12.
Quantitative evaluation of intersection LiDAR process (64 channels).
|
Sunny Day |
Clear Night |
Fog Day |
Fog Night |
Rain Day |
Rain Night |
|
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
ComplexYOLO |
0.81 |
0.68 |
0.90 |
0.88 |
0.86 |
0.86 |
0.85 |
0.92 |
0.90 |
0.80 |
0.83 |
0.70 |
0.66 |
0.79 |
0.92 |
0.72 |
0.71 |
0.81 |
Ours |
0.98 |
0.91 |
0.88 |
0.98 |
0.95 |
0.94 |
0.93 |
0.98 |
0.97 |
0.97 |
0.98 |
0.94 |
0.93 |
0.94 |
0.96 |
0.97 |
0.95 |
0.91 |
Table 13.
Quantitative evaluation of intersection LiDAR process (128 channels).
Table 13.
Quantitative evaluation of intersection LiDAR process (128 channels).
|
Sunny Day |
Clear Night |
Fog Day |
Fog Night |
Rain Day |
Rain Night |
|
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
#1 |
#2 |
#3 |
ComplexYOLO |
0.73 |
0.85 |
0.81 |
0.90 |
0.78 |
0.83 |
0.78 |
0.82 |
0.80 |
0.88 |
0.79 |
0.66 |
0.86 |
0.54 |
0.66 |
0.76 |
0.86 |
0.56 |
Ours |
0.96 |
0.98 |
0.98 |
0.93 |
0.85 |
0.94 |
0.98 |
0.99 |
0.88 |
0.98 |
0.98 |
0.75 |
0.98 |
0.97 |
0.88 |
0.98 |
0.95 |
0.98 |