Reducing false triggering of automatic emergency braking
Patent Information
- Application Number
- CN202480090334.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-12
- Publication Date
- 2026-10-30
Smart Images

Figure CN123022579A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to advanced driver assistance systems (ADAS) for vehicles. Background Technology
[0002] Automated and semi-automated vehicles can utilize artificial intelligence (AI) and machine learning (ML) technologies (e.g., deep neural networks (DNNs)) to perform various operations for maneuvering, driving, and navigating the vehicles. For example, DNNs can be used for object detection, lane and road boundary detection, safety analysis, drivable free space analysis, control generation during vehicle maneuvers, and / or other operations. DNN-driven automated and semi-automated vehicles should be able to respond appropriately to an extremely diverse range of situations, including interactions with emergency vehicles, pedestrians, animals, and virtually countless other obstacles.
[0003] To enable autonomous vehicles to reach Level 3 to 5 of autonomous driving (e.g., conditional automation (Level 3), high automation (Level 4), and full automation (Level 5)), autonomous vehicles should be able to operate safely in all environments and require no human intervention in the event of potentially unsafe situations. ADAS uses sensors and software to help vehicles avoid dangerous situations to ensure safety and reliability. A common dangerous situation is an impending collision with another moving object (e.g., another vehicle, motorcycle, bicycle, pedestrian, etc.). Some ADAS systems include Automated Emergency Braking (AEB) capabilities to attempt to avoid a collision. However, it is difficult to correctly detect, track, and avoid another moving object. Errors can occur during such AEB processing, which can negatively impact the driving experience. Summary of the Invention
[0004] Generally, this disclosure describes a technique for reducing false triggering of automatic emergency braking (AEB) in a vehicle by analyzing frame streams of image data from a camera mounted on the vehicle. The analysis may include receiving frames of image data from the camera and detecting at least one object within the frames. A region of interest (ROI) for the at least one object in the frame may be determined. At least one keypoint from feature detection may be extracted for the object in the ROI, and the distance between the keypoint and the optical center of the camera may be determined. This process may be repeated across multiple frames, and in response to the distance becoming larger across multiple frames (indicating that a collision will be avoided without actuating AEB), an AEB suppressor indicator may be set to indicate suppression of AEB on the vehicle. By avoiding false triggering, the vehicle will not apply emergency braking when unnecessary. This results in smoother operation of the vehicle, as the vehicle will only brake automatically when a collision is actually about to occur.
[0005] In one aspect, a method includes: determining a region of interest (ROI) for an object in a frame of image data from a camera using a computing system in the vehicle; extracting key points from feature detection of the object in the ROI; determining the distance between the key points and the optical center of the camera; repeatedly determining the ROI, extracting key points, and determining the distance between the key points and the optical center for multiple frames; and setting an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of the vehicle in response to the distance becoming larger across multiple frames.
[0006] In another aspect, an apparatus includes: a memory storing instructions; and processing circuitry executing the instructions to determine a region of interest (ROI) of an object in a frame of image data from a camera; extract key points from feature detection of the object in the ROI; determine the distance between the key points and the optical center of the camera; repeatedly determine the ROI, extract the key points, and determine the distance between the key points and the optical center for multiple frames; and, in response to the distance becoming larger across multiple frames, set an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of the vehicle.
[0007] On the other hand, a non-transitory computer-readable storage medium includes instructions that, when executed by processing circuitry of a computing system, cause the processing circuitry to: determine a region of interest (ROI) of an object in a frame of image data from a camera; extract key points from feature detection of the object in the ROI; determine the distance between the key points and the optical center of the camera; repeat the determination of the ROI, extraction of key points, and determination of the distance between the key points and the optical center for multiple frames; and, in response to the distance becoming larger across multiple frames, set an automatic emergency braking suppressor indicator to indicate suppression of automatic emergency braking of the vehicle.
[0008] Details of one or more examples are set forth in the accompanying drawings and the following description. Other features, objects, and advantages will be apparent from the description, drawings, and claims. Attached Figure Description
[0009] Figure 1 This is an illustration of an example of an autonomous vehicle based on the technology disclosed herein.
[0010] Figure 2 This is a block diagram illustrating an example computing system capable of implementing the techniques of this disclosure.
[0011] Figures 3A to 3E This is an illustration of an example of camera image processing by a computer vision processor and AEB false trigger reduction processing according to the technology of this disclosure.
[0012] Figure 4This is a block diagram illustrating an example AEB suppressor that can perform the techniques of this disclosure.
[0013] Figure 5 This is a diagram illustrating points in a region of interest (ROI) according to the technology of this disclosure.
[0014] Figure 6 This is a diagram illustrating an example point queue according to the technology of this disclosure.
[0015] Figure 7 This is a diagram illustrating the AEB control process according to the technology of this disclosure.
[0016] Figure 8 This is a flowchart illustrating an example method for reducing false triggering of AEB according to the technology of this disclosure. Detailed Implementation
[0017] ADAS uses sensors and software to help vehicles avoid dangerous situations to ensure safety and reliability. One of the most common dangerous situations is an impending collision with another moving object. Some vehicles equipped with ADAS include Automated Emergency Braking (AEB) capability. AEB is triggered when a vehicle encounters an unexpected dangerous situation and the driver is unable to react in time to avoid a collision. When AEB is engaged, such as when a vehicle encounters a cross-traffic object or a suddenly braking object, the vehicle will automatically brake. However, in some situations, ADAS may not be able to accurately estimate the speed and trajectory of the target object. For example, some targets may be turning, making their trajectory difficult to predict. This increases the false trigger rate of AEB due to cross-traffic or turning targets and negatively impacts the driving experience, as the vehicle may brake unnecessarily.
[0018] For example, consider a scenario where both the current vehicle and a target vehicle are turning into an intersection. Due to insufficient accuracy of the inertial measurement unit (IMU) sensors in the current vehicle that measure its steering, the error in sensing the current vehicle's movement relative to the target vehicle can increase, leading to poorer target vehicle tracking and poorer performance in predicting collisions between vehicles. If the target vehicle is also turning, estimating its yaw rate becomes even more difficult. In current sensor configurations for autonomous vehicles, no sensor can directly measure the target vehicle's yaw rate. Instead, in some examples, multiple frames of the target vehicle's heading are used to derive the yaw rate, which is typically delayed and inaccurate. Therefore, if the yaw rate is inaccurate, it will be unlikely to accurately predict the target vehicle's trajectory. This can lead to false triggering of AEB (Autonomous Emergency Braking), where the current vehicle automatically brakes even if it will not collide with the target vehicle.
[0019] The techniques disclosed herein overcome this shortcoming of current AEB capabilities in ADAS, thereby providing improved AEB functionality and a better driving experience. Generally, this disclosure describes techniques for reducing false triggering of AEB in a vehicle by analyzing frame streams of image data from a camera mounted on the vehicle. The analysis may include receiving frames of image data from the camera and detecting at least one object in the frame. A region of interest (ROI) for at least one object in the frame may be determined. At least one keypoint from feature detection may be extracted for the object in the ROI, and the distance between the keypoint and the optical center of the camera may be determined. This process may be repeated across multiple frames, and in response to the distance becoming larger across multiple frames (indicating that a collision will be avoided without actuating AEB), an AEB suppressor indicator may be set to indicate suppression of AEB on the vehicle.
[0020] Figure 1 This is an illustration of an example of an autonomous vehicle according to the technology of this disclosure. The autonomous vehicle 102 shown in the example may include any vehicle (such as a car or truck) capable of accommodating a human driver and / or human passengers. The autonomous vehicle 102 may include a body 104 suspended on a chassis, in this example including four wheels and associated axles. A propulsion system 108 (such as an internal combustion engine, a hybrid electric system, or even an all-electric motor) may be connected via a drivetrain (which may include a transmission (not shown)) to drive some or all of the wheels. A steering wheel 110 may be used to steer some or all of the wheels to guide the autonomous vehicle 102 along a desired path while the propulsion system 108 is operating and engaged to propel the autonomous vehicle 102. For a Level 5 implementation, the steering wheel 110, etc., may be optional. One or more controllers 114A to 114C (controller 114) may provide autonomous driving capabilities in response to signals continuously provided in real time from a sensor array, as described more fully below.
[0021] Each controller 114 can be one or more onboard computer systems configured to perform deep learning and AI functionality, and output autonomous driving operation commands to the self-driving vehicle 102 and / or assist a human driver. Each vehicle can have any number of unique controllers for functional safety and additional features. For example, controller 114A can serve as the main computer for autonomous driving functions, controller 114B can serve as an auxiliary computer for functional safety functions, controller 114C can provide AI functionality for in-camera sensors, and controller 114D ( Figure 1 (Not shown in the image) can provide infotainment functionality and additional redundancy for emergencies.
[0022] The controller 114 can transmit command signals to operate the vehicle's brakes (using brake sensor 116) via one or more brake actuators 118, operate the steering mechanism via a steering actuator, and operate the propulsion system 108, which also receives the throttle / accelerator actuator signal 122. Actuation can be performed by methods known to those skilled in the art, and signals are typically transmitted via a controller area network data interface (“CAN bus”), a network used within modern vehicles for controlling braking, acceleration, steering, windshield wipers, etc. A CAN bus can be configured with dozens of nodes, each with its own unique identifier (CAN ID). The bus can be read to obtain steering wheel angle, ground speed, engine revolutions per minute (RPM), button positions, and other vehicle status indicators. The functional safety level of the CAN bus interface is typically Automotive Safety Integrity Level (ASIL) B. Other protocols may also be used for communication within the vehicle, including FlexRay and Ethernet.
[0023] On one hand, a brake controller with dedicated hardware and software can be provided, allowing control of throttle, braking, steering, and gear shifting. The hardware can provide a bridge between the vehicle's CAN bus and controller 114, forwarding vehicle data to controller 114, including steering signals, wheel speeds, acceleration, pitch, roll, yaw, GPS data, tire pressure, fuel level, sonar, braking torque, etc. Similar actuation controllers can be configured for any brand and type of vehicle, including dedicated patrol and security vehicles, autonomous taxis, long-haul trucks including towing trailer configurations, ladder fire trucks, agricultural vehicles, industrial vehicles, and buses.
[0024] The controller 114 can provide autonomous driving outputs in response to a sensor input array, which includes, for example: one or more ultrasonic sensors 124, one or more radio detection and ranging (RADAR) sensors 126, one or more light detection and ranging (“LIDAR”) sensors 128, one or more surround-view cameras 130 (typically located at various positions on the vehicle body 104 to image all areas around the vehicle body), one or more stereo cameras 132 (in one aspect, at least one of these stereo cameras may be forward-facing to provide object recognition in the vehicle’s path), one or more infrared cameras 134, a GPS unit 136 providing position coordinates, a steering sensor 138 detecting steering angle, speed sensors 140 (one for each wheel), an inertial sensor or inertial measurement unit (IMU) 142 monitoring the movement of the vehicle body 104 (this sensor may be, for example, an accelerometer and / or gyroscope sensor and / or magnetic compass), tire vibration sensors 144, and microphones 146 placed around and inside the vehicle. Other sensors may also be used.
[0025] The controller 114 can also receive input from the dashboard 148 and can provide human-perceptible output to a human operator via a human-machine interface (HMI) display 150, auditory signalers, speakers, and / or other components. In addition to traditional information such as speed, time, and other well-known information, the HMI display can provide vehicle occupants with information about the map and the vehicle's location, the location of other vehicles (including occupancy grids), and even the controller's identification of objects and statuses. For example, when the controller identifies the presence of a puddle, a stop sign, a warning sign, or a traffic light change and is taking appropriate action, the HMI display 150 can alert passengers, reassuring them that the controller is operating as intended.
[0026] On one hand, the dashboard 148 may include a separate controller / processor configured to perform deep learning and AI functionality.
[0027] The autonomous vehicle 102 may collect data preferably used to help train and optimize a neural network for autonomous driving. The autonomous vehicle 102 may include a modem 152, preferably a system-on-a-chip (SoC) that provides modulation and demodulation functionality and allows the controller 114 to communicate via a wireless network 154. As known in the art, the modem 152 may include a radio frequency (RF) front end for up-converting from baseband to RF and down-converting from RF to baseband. Frequency conversion can be achieved through known direct conversion processes (directly from baseband to RF and vice versa) or through a superheterodyne process, as known in the art. Alternatively, such RF front end functionality may be provided by a separate chip. The modem 152 preferably includes wireless functionality substantially conforming to one or more wireless protocols, such as, but not limited to, Long Term Evolution (LTE), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), Global System for Mobile Communications (GSM), CDMA2000, or other known and widely used wireless protocols.
[0028] It should be noted that, compared to sonar and radar sensors 126, camera 130 is capable of generating a richer set of features at extremely low cost. Therefore, autonomous vehicle 102 may include multiple cameras 130 to 134 to capture images of the entire perimeter surrounding autonomous vehicle 102. The choice of camera type and lens depends on the nature and type of the function. Autonomous vehicle 102 may have a mix of camera types and lenses to provide complete coverage around autonomous vehicle 102; typically, narrow lenses have a narrow field of view but can see further. All camera locations on autonomous vehicle 102 can support interfaces such as Gigabit Multimedia Serial Link (GMSL) and Gigabit Ethernet.
[0029] In one aspect, controller 114 may receive one or more images acquired by a plurality of cameras 130 to 134. Controller 114 may include a portion of ADAS to perform reduction of false triggering of AEB according to the techniques of this disclosure. For example, controller 114 may be configured to determine a region of interest (ROI) for an object in a frame of image data from a camera (e.g., a camera in stereo camera 132). Controller 114 may extract keypoints from feature detection of the object in the ROI and determine the distance between the keypoints and the optical center of the camera (e.g., the projection of the optical center of the camera onto the image plane). Controller 114 may repeat determining the ROI, extracting keypoints, and determining the distance between the keypoints and the optical center for multiple frames. Then, controller 114 may set an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of a vehicle (e.g., autonomous vehicle 102) in response to the distance becoming larger across multiple frames.
[0030] Figure 2 This is a block diagram illustrating an example computing system capable of performing the techniques of this disclosure. As shown, the computing system 200 includes processing circuitry 243 and a memory 202 for performing ADAS 203, which may represent an example instance of any controller 114 described in this disclosure, such as... Figure 1 The controller 114. In one aspect, ADAS 203 may include AEB decision and control 204, AEB suppressor processor 214, computer vision processor 213, and AEB actuator 212. AEB decision and control 204 determines when to activate AEB based at least in part on data received from one or more of IMU sensor 142, GPS unit 136, surround view camera 130, infrared camera 134, stereo camera 132, LIDAR 128, and one or more ultrasonic sensors 124. When AEB is to be activated, AEB decision and control 204 invokes AEB actuator 212 to dock with one or more brake actuators 118. In one aspect, computer vision processor 213 may be disposed within stereo camera 132. In another aspect, stereo camera 132 is mounted behind the rearview mirror of vehicle 102.
[0031] Computer vision processor 213 can detect one or more objects in stereo camera output data 216 (generated by the imaging capabilities of stereo camera 132). Computer vision processor 213 may include various types of neural networks, such as, but not limited to, recurrent neural networks (RNNs), convolutional neural networks (CNNs), and deep neural networks (DNNs). AEB suppressor processor 214 analyzes stereo camera output data 216 and one or more objects detected by computer vision processor 213 to determine when a false triggering of AEB may occur. When AEB suppressor processor 214 determines that a collision will not occur between vehicle 102 and another object (such as a moving target vehicle), AEB suppressor processor 214 transmits an AEB suppressor indicator to AEB decision and control 204 to suppress actuation of AEB actuator 212 for autonomous driving emergency braking.
[0032] The computing system 200 may be implemented as any suitable external computing system accessible by the controller 114, such as one or more server computers, workstations, laptop computers, mainframes, special-purpose devices, embedded computing systems, cloud computing systems, high-performance computing (HPC) systems (i.e., supercomputing systems), and / or other computing systems capable of performing the operations and / or functions described in one or more aspects of this disclosure. In some examples, the computing system 200 may represent a cloud computing system, server farm, and / or server cluster (or a portion thereof) that provides services to client devices and other devices or systems. In other examples, the computing system 200 may represent or be implemented through one or more virtualized computing instances (e.g., virtual machines, containers, etc.) of a data center, cloud computing system, server farm, and / or server cluster. In one aspect, the computing system 200 is disposed within the vehicle 102.
[0033] The techniques described in this disclosure can be implemented, at least in part, in hardware, software, firmware, or any combination thereof. For example, various aspects of the described techniques can be implemented within processing circuitry 243 of computing system 200, which may include one or more microprocessors, controllers, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or equivalent discrete or integrated logic circuits, or other types of processing circuitry. The terms "processor" or "processing circuitry" can generally refer to any of the aforementioned logic circuitry, alone or in combination with other logic circuitry, or any other equivalent circuitry. A control unit, including hardware, may also perform one or more of the techniques of this disclosure.
[0034] In another example, computing system 200 includes any suitable computing system having one or more computing devices, such as desktop computers, laptops, game consoles, smart TVs, handheld devices, tablets, mobile phones, smartphones, etc. In some examples, at least a portion of computing system 200 is distributed within a cloud computing system, data center, or network (such as the Internet, other public or private communication networks, such as broadband, cellular, Wi-Fi, ZigBee, Bluetooth). ® (or other personal area networks—PANs, near field communications (NFC), ultra-wideband, satellite, enterprise, service provider, and / or other types of communication networks) for sending data between computing systems, servers, and computing devices.
[0035] Memory 202 may include one or more storage devices. One or more components of computing system 200 (e.g., processing circuitry 243, memory 202, etc.) may be interconnected to enable inter-component communication (physical, communicative, and / or operational). In some examples, such connectivity may be provided by a system bus, network connection, inter-process communication data structure, local area network, wide area network, or any other method of data transmission. Processing circuitry 243 of computing system 200 may implement functionality associated with computing system 200 and / or execute instructions associated with computing system 200. Examples of processing circuitry 243 include a microprocessor, application processor, display controller, auxiliary processor, one or more sensor hubs, and any other hardware configured to function as a processor, processing unit, or processing device. Computing system 200 may use processing circuitry 243 to perform operations according to one or more aspects of this disclosure by using software, hardware, firmware, or a mixture of hardware, software, and firmware residing in and / or executing on computing system 200. The one or more storage devices of memory 202 may be distributed among multiple devices.
[0036] Memory 202 can store information for processing during the operation of computing system 200. In some examples, memory 202 includes temporary memory, meaning that the primary purpose of one or more storage devices of memory 202 is not long-term storage. Memory 202 can be configured to store information short-term as volatile memory, so that the stored contents are not retained if it is deactivated. Examples of volatile memory include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), and other forms of volatile memory known in the art. In some examples, memory 202 may also include one or more computer-readable storage media. Memory 202 can be configured to store a larger amount of information than volatile memory. Memory 202 can also be configured to store information long-term as non-volatile storage space and retain information after an activation / deactivation cycle. Examples of non-volatile memory include magnetic hard disks, optical disks, flash memory, or electrically programmable read-only memory (EPROM) or electrically erasable programmable read-only memory (EEPROM).
[0037] The memory 202 may store program instructions and / or data associated with one or more modules described according to one or more aspects of this disclosure. For example, the memory 202 may store stereo camera output data 216 received from the stereo camera 132 and instructions for ADAS 203 including one or more of the AEB suppressor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212.
[0038] Processing circuitry 243 and memory 202 may provide an operating environment or platform for one or more modules or units (e.g., ADAS 203, which includes one or more of AEB suppressor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212, etc.), which may be implemented as software, but in some examples may include any combination of hardware, firmware, and software. Processing circuitry 243 may execute instructions, and one or more storage devices (e.g., memory 202) may store instructions and / or data of one or more modules. The combination of processing circuitry 243 and memory 202 may retrieve, store, and / or execute instructions and / or data of one or more applications, modules, or software. Processing circuitry 243 and / or memory 202 may also be operatively coupled to one or more other software and / or hardware components, including but not limited to... Figure 2 One or more components are illustrated in the document.
[0039] Processing circuitry 243 may use virtualization modules (such as virtual machines or containers running on the underlying hardware) to execute ADAS 203, including one or more of AEB suppressor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212. One or more such modules may be executed as one or more services of an operating system or computing platform. Aspects of ADAS 203, including one or more of AEB suppressor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212, may be executed as one or more executable programs at the application layer of the computing platform.
[0040] One or more input devices 244 of the computing system 200 can generate, receive, or process input. Such input may include input from a keyboard, pointing device, voice response system, camera, biometric detection / response system, button, sensor, mobile device, control panel, microphone, pressure-sensitive screen, network, or any other type of device used to detect human or machine input.
[0041] One or more output devices 246 may generate, send, or process output. Examples of output are haptic, audio, visual, and / or video output. Output device 246 may include a display, sound card, video graphics adapter card, speaker, pressure-sensitive screen, one or more universal serial bus (USB) interfaces, video and / or audio output interfaces, or any other device capable of generating haptic, audio, video, or other output. Output device 246 may include a display device that can operate as an output device using technologies including liquid crystal displays (LCDs), quantum dot displays, dot matrix displays, light-emitting diode (LED) displays, organic light-emitting diode (OLED) displays, cathode ray tube (CRT) displays, electronic ink, or monochrome, color, or any other display type capable of generating haptic, audio, and / or visual output. In some examples, computing system 200 may include a pressure-sensitive display that can be used as a user interface device that acts as both one or more input devices 244 and one or more output devices 246.
[0042] One or more communication units 245 of computing system 200 can communicate with devices outside computing system 200 (or between separate computing devices of computing system 200) by sending and / or receiving data, and in some respects can function as both an input device and an output device. In some examples, communication unit 245 can communicate with other devices via a network. In other examples, communication unit 245 can transmit and / or receive radio signals on a radio network such as a cellular radio network. Examples of communication unit 245 include network interface cards (e.g., such as Ethernet cards), optical transceivers, radio frequency transceivers, GPS receivers, or any other type of device capable of transmitting and / or receiving information. Other examples of communication unit 245 may include Bluetooth, found in mobile devices. ® GPS, 3G, 4G, 5G and Wi-Fi ® Radio and Universal Serial Bus (USB) controllers, etc.
[0043] exist Figure 2 In the example, when the AEB suppressor indicator set by the AEB suppressor processor 214 indicates suppression, the AEB decision and control 204 suppresses the actuation of the AEB of the vehicle 102. The computer vision processor 213 and the AEB suppressor processor 214 analyze multiple frames of image data to jointly determine the AEB suppression indicator, and these multiple frames of image data include images of a real-world scene in front of the vehicle 102 captured by the stereo camera 132. In one aspect, the AEB suppressor processor 214 uses the pixel coordinates of keypoints and the optical center to determine the distance between the keypoints of objects in the region of interest of the frame and the optical center of the camera.
[0044] On the other hand, the computer vision processor 213 detects objects in the frame, and the AEB suppressor processor 214 uses the three-dimensional world coordinates of keypoints and the optical center to determine the distance between the keypoints of the object in the region of interest of the frame and the optical center of the camera. The AEB suppressor processor 214 can process multiple frames, which include a subset of frames captured by the camera.
[0045] Figures 3A to 3E This is an illustration illustrating an example of camera images processed by a computer vision processor and AEB false trigger reduction processing according to the technology of this disclosure. Figure 3A A raw image 302 representing a frame of stereo camera output data 216 generated by stereo camera 132 is shown. Raw image 302 may be a single image from a series of images (e.g., video) captured by a camera imaging function of stereo camera 132. Therefore, each raw image 302 is a captured image of a real-world scene near vehicle 102 at a given moment. In some examples, the real-world scene may be in front of, to the side of, or to the side of vehicle 102. In other examples, raw image 302 may be formed from multiple images and may represent a bird's-eye view of the real-world scene surrounding vehicle 102.
[0046] In the example, each pixel of the raw image 302 comprises two bytes. The raw image 302 may be stored in memory 202 (as part of stereo camera output data 216) and accessed by ADAS 203 (including computer vision processor 213 and AEB suppressor processor 214). The raw image 302 may be processed by computer vision processor 213 to detect one or more objects in the raw image 302 according to one or more object detection techniques.
[0047] Figure 3B Three example objects detected by the computer vision processor 213 are shown, including object 304, object 306, and object 308. In a specific implementation, an object may be specified by a bounding box with four pixel coordinates (point 1, point 2, point 3, point 4), which represent the four corners of the bounding box, where the points include x and y pixels, and each bounding box may be assigned a unique identifier (ID). Therefore, the computer vision processor 213 outputs one or more bounding boxes of the original image 302 (the current frame). In one aspect, objects close to and in front of the vehicle 102 (i.e., those in the same lane as the vehicle) are omitted from further AEB suppression processing because AEB is most likely to be needed if ADAS 203 determines that a collision with an object in front of the vehicle is possible.
[0048] Figure 4This is a block diagram illustrating an example AEB suppressor processor 214 capable of performing the techniques of this disclosure. Figure 4 This is provided for illustrative purposes and should not be construed as a limitation on the techniques extensively illustrated and described in this disclosure. The AEB suppressor processor 214 reads one or more raw images 404 from stereo camera output data 216 (e.g., raw image 302) and receives one or more objects 402 detected in the one or more raw images by the computer vision processor 213. The region of interest (ROI) determiner 406 analyzes the raw images 404 and the one or more detected objects 402, and sets regions of the raw images 404 as ROIs corresponding to bounding boxes. Figure 3C It shows Figure 3B The example ROIs shown are ROI 314 for object 304, ROI 316 for object 306, and ROI 318 for object 308.
[0049] Figure 5 This is an illustration of points in a Region of Interest (ROI) according to the present disclosure. In one example, assume the ROI is represented by four points: point 1 = (index_x1, index_y1) 502, point 2 = (index_x2, index_y2) 504, point 3 = (index_x3, index_y3) 506, and point 4 = (index_x4, index_y4) 508. Pixel data from each column of the bounding box can be obtained from the raw image 302 and stored in a buffer in memory 202. For example, New_Pixel_data[x][y] = raw_image_buffer[index_x][image_width] [index_y]. This can be repeated for each column of the bounding box, thereby preserving the pixel data of the ROI for further processing by the AEB suppressor processor 214.
[0050] The AEB suppressor processor 214 includes a keypoint tracker 408 for tracking keypoints across a series of frames of stereo camera output data 216. Although in Figure 1A stereo camera 132 is shown, but other types of cameras (e.g., single-lens cameras, single-lens cameras, etc.) may also be used. Keypoint tracker 408 includes keypoint extractor 410 for extracting one or more keypoints from the ROI of the current original image in one or more original images 404. A feature is a piece of information about the content of an image, typically about whether a certain region of the image has certain attributes. Features can be specific structures in the image, such as points, edges, or objects (e.g., including cars, trucks, motorcycles, buses, types of cars and trucks, pedestrians, bicycles, road signs, obstacles, curbs, bridges, roadside, road signs, etc.).
[0051] Keypoint extraction processing can be performed on one or more Regions of Interest (ROIs) (e.g., ROI 314, ROI 316, ROI 318) of one or more original images 404. In a specific implementation, features can be extracted from the original images 404 using open-source computer vision (OpenCV) library functions known as Faster Segmented Test Orientation Features (FAST) and Rotated Binary Robust Independent Basic Features (BRIEF) (ORB). In other implementations, other feature extraction procedures can be used. In one aspect, the keypoint tracker 408 can extract features from all ROIs identified in at least one original image 404. Figure 3D Examples of keypoints 324, 326, and 328 extracted from example ROI 314 are shown.
[0052] The keypoint tracker 408 includes a proximity checker 412 for calculating the distance from the keypoint to the optical center of the camera (i.e., one or more original images 404). In one aspect, the camera's optical center can be adjusted by the AEB suppressor processor 214 to align with the horizontal center point of the vehicle 102 (e.g., in cases where the imaging mechanism of the stereo camera 132 is not located at the precise horizontal center of the vehicle). In another aspect, the camera's optical center can be represented using pixel coordinates or three-dimensional (3D) world coordinates.
[0053] On one hand, the keypoint tracker 408 can calculate the distances between one or more keypoints in one or more ROIs of a frame. For example, as Figure 3E As shown, proximity checker 412 calculates the distance 342 from example keypoints 324, 326, and 328 in example ROI 314 to the optical center 340 of the frame. In one aspect, proximity checker 412 can use the pixel coordinates of the keypoints and the pixel coordinates of the camera's optical center to calculate the distance.
[0054] For example, the distance between a keypoint and the camera's optical center can be calculated as the square root of (the difference in the x-index of the two pixels^2 + the difference in the y-index of the two pixels^2). On the other hand, the pixel location of each keypoint can be transformed into 3D world coordinates according to any transformation technique. For example, if the location of the camera's optical center is (x_c, y_c, z_c) and the keypoint is (x_a, y_a), then the distance can be calculated as the square root of ((x_a–x_c)^2 + (y_a–y_c)^2 + (z_a–z_c)^2).
[0055] In a specific implementation, the keypoint tracker 408 can compare the distances between keypoints in the ROI and the optical center of the camera across two or more frames. If the distance from the keypoint in the ROI to the optical center from the second frame is greater than the distance from the same keypoint in the ROI to the optical center from the first frame (the first frame was captured by the image sensor of the stereo camera 132 earlier than the second frame, but the first and second frames are not necessarily consecutive), then the keypoint is moving away from the optical center. If the keypoint is moving away from the optical center of the camera (and therefore away from the center of the front of the vehicle), then the trajectory of the object containing the keypoint is moving away from the vehicle 102. If the object is moving away from the vehicle, the AEB suppressor processor 214 can determine that a collision is not imminent and should instruct the AEB decision and control 204 to suppress the actuation of the automatic emergency braking by the AEB actuator 212 by setting the AEB suppression indicator to "yes", "true", or another value. It should be noted that the AEB suppressor processor 214 does not actively trigger AEB actuation, but only indicates when AEB should be disabled, because collisions will not occur based on the AEB suppressor's tracking of key points.
[0056] Figure 6 This is a diagram illustrating an example keypoint queue according to the technology of this disclosure. At block 606, the distances between keypoints in the first frame 602 (e.g., the current frame) and the optical center, and between keypoints in the second frame 604 (e.g., a previous frame) and the optical center, can be determined by keypoint tracker 408. At block 608, the latest keypoint (e.g., a keypoint from the first frame 602) can be stored in a queue along with other previously processed keypoints by keypoint tracker 408. For example, queue 622 can store keypoint A (e.g., the latest keypoint) at time T 610, keypoint A at time T-1 612, keypoint A at time T-2 614, keypoint A at time T-3 616, keypoint A at time T-4 618, and keypoint A at time T-5 620. In various respects, each keypoint can have its own queue, and the size of any queue can be any number of entries.
[0057] In a specific implementation, the AEB suppressor processor 214 may determine the AEB suppressor indicator 405 based at least in part on a sample set of frames, wherein the number of frames in the set is greater than two. For example, suppose the AEB suppressor processor 214 operates on a frame set size of six (although six frames are shown in this example, any suitable number of frames can be used). The pixel values (or alternatively, transformed 3D world coordinates) of at least one keypoint and optical center in each frame of the frame set may be stored in queue 622 or other data storage facility. When processing each frame in the frame stream, the pixel values (or alternatively, transformed 3D world coordinates) of at least one keypoint and optical center may overwrite the oldest value in queue 622, thereby providing data for at least one keypoint in a consecutive scrolling window of the last six frames.
[0058] For example, such as Figure 6 As shown, the first entry (e.g., the head) 610 in queue 622 may be stored at keypoint A at time T, the second entry 612 in queue may be stored at keypoint A at time T-1, the third entry 614 in queue may be stored at keypoint A at time T-2, the fourth entry 616 in queue may be stored at keypoint A at time T-3, the fifth entry 618 in queue may be stored at keypoint A at time T-4, and the sixth entry 620 in queue may store keypoint A at time T-5. In a specific implementation, the distance from the keypoint to the optical center may also be stored in the queue entries. The AEB suppression indicator 405 may then be determined at least in part based on a set of continuously scrolling window values (from a set of frames) rather than one or more keypoint values from a single frame. For example, the distance at time T minus the distance at time T-3 may be a first change (difference), the distance at time T-1 minus the distance at time T-4 may be a second change, and the distance at time T-2 minus the distance at time T-5 may be a third change. In this example, if the first change is greater than zero, the second change is greater than zero, and the third change is greater than zero, then the AEB suppression indicator 405 can be set to "yes" or "true".
[0059] Although this example shows a sample set of six frames and illustrates a specific comparison of distances in selected frames (e.g., change calculation and comparison), any sample size can be used, and any combination of distances can be used to perform distance comparisons between frames.
[0060] On one hand, while the vehicle 102 is in operation (or optionally, only while the vehicle 102 is moving), AEB suppressor processing can be performed continuously on all raw images in the raw image 404 stream from the stereo camera output data 216. On the other hand, AEB suppressor processing can be performed on a subset of all raw images 404 (e.g., every other raw image, every two raw images, every three raw images, etc.), and frames outside the subset are omitted from the AEB suppressor processing.
[0061] Figure 7 This is a diagram illustrating AEB control processing according to the technology of this disclosure. In a specific implementation, when AEB decision and control 204 detects that AEB should be actuated based at least in part on the detection of an AEB-triggered target object 702 that AEB decision and control 204 has determined to be a threat of an impending collision, AEB suppressor processor 214 may obtain the ID of the AEB-triggered target object. AEB suppressor processor 214 may then determine which object in the frame corresponds to the AEB-triggered target object 702, and perform ROI determiner 406 processing and key point tracker 408 processing for that object to determine AEB suppressor indicator 405. AEB suppressor indicator 405 may then be transmitted to AEB decision and control 204, which may suppress actuation of AEB actuator 212 based on the value of AEB suppressor indicator 405. If AEB suppression indicator 405 indicates suppression, AEB decision and control 204 does not actuate AEB via AEB actuator 212. If the AEB suppression indicator 405 does not indicate suppression, the AEB decision and control 204 actuates the AEB via the AEB actuator 212.
[0062] Figure 8 This is a flowchart illustrating an example method for reducing false triggering of AEB according to the technology of this disclosure. Although it is relative to computing system 200 ( Figure 2 This description is provided, but it should be understood that other computing devices can also be configured to perform similar tasks. Figure 8A similar method is used. At box 802, both the AEB suppressor processor 214 and the computer vision processor 213 receive frames of image data (e.g., at least one raw image 404) from a camera (e.g., stereo camera 132). At box 804, the computer vision processor 213 detects at least one object 402 in the frame. At box 806, based at least in part on the raw image 404 and at least one object 402, the ROI determiner 406 determines a region of interest (e.g., ROIs 314, 316, 318) for at least one object 402. At box 808, the keypoint extractor 410 extracts at least one keypoint from the region of interest. Box 504 may be repeated for multiple objects in the frame, box 806 may be repeated for multiple ROIs of multiple objects, and box 808 may be repeated for multiple keypoints in multiple ROIs.
[0063] At box 810, proximity inspector 412 determines the distance between at least one keypoint and the optical center of the camera (of the original image). Box 810 may be repeated for multiple keypoints. Keypoint tracker 408 may store keypoints, the camera's optical center, and distances in a queue. At box 812, keypoint tracker 408 may determine whether more frames should be used in the current sample set of frames. If so, processing returns to box 802 to obtain the next frame in the sample set of frames. Otherwise, if the current sample set of frames has already been processed by AEB suppressor processor 214, at box 814, AEB suppressor processor 214 compares the distances of the sample frames. In a specific implementation, this may include comparing distances stored in a queue. At box 816, if the distance of a keypoint becomes larger, this indicates that the object including the keypoint is moving away from vehicle 102. If so, at box 818, AEB suppression indicator 405 may be set to "yes," "true," or another value to indicate suppression of AEB actuation. Otherwise, at box 820, the AEB suppressor indicator can be set to (or remain) "No", "False", or another value to indicate that AEB actuation is not suppressed. The comparison performed at box 816 can be repeated for multiple key points in multiple ROIs.
[0064] In a specific implementation, at box 814, the distances from multiple frames can be used to perform a comparison of the distances in the sample (as described in the example above).
[0065] Therefore, ADAS 203, having an AEB suppressor processor 214 as disclosed herein, reduces the probability of false AEB triggering by detecting when key points of an object in a frame are moving away from the vehicle, and suppresses AEB actuation in these “false triggering” situations. This improves the driving experience for the occupants of vehicle 102, because AEB will not be actuated if a collision will not occur.
[0066] The following numbered clauses illustrate one or more aspects of the devices and technologies described in this disclosure.
[0067] Clause 1. A method comprising: determining a region of interest (ROI) of an object in a frame of image data from a camera by a computing system in a vehicle; extracting key points of the object in the ROI; determining a distance between the key points and an optical center of the camera; repeatedly determining the ROI, extracting the key points, and determining the distance between the key points and the optical center for a plurality of frames; and, in response to the distance becoming larger across the plurality of frames, setting an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of the vehicle.
[0068] Clause 2. The method according to Clause 1, the method further comprising: suppressing the actuation of the automatic emergency braking of the vehicle when the automatic emergency braking suppressor indicator indicates suppression.
[0069] Clause 3. The method according to Clause 1, wherein the plurality of frames of image data include images of real-world scenes approaching the vehicle captured by the camera.
[0070] Clause 4: The method according to Clause 1, wherein determining the distance between the keypoint and the optical center of the camera comprises: using the pixel coordinates of the keypoint and the optical center to determine the distance.
[0071] Clause 5. The method according to Clause 1, wherein determining the distance between the keypoint and the optical center of the camera comprises: determining the distance using three-dimensional world coordinates of the keypoint and the optical center.
[0072] Clause 6. The method according to Clause 1, the method further comprising detecting the object in the frame.
[0073] Clause 7. The method according to Clause 1, wherein determining the distance of the plurality of frames comprises: determining a plurality of variations between selected pairs of distances; and, in response to the variations being greater than zero, setting the automated driving emergency braking suppressor indicator to indicate suppression of automated driving emergency braking of the vehicle.
[0074] Clause 8. The method according to Clause 1, the method further comprising: in response to the movement of the vehicle, performing the determination of the region of interest, the extraction of the key points, the determination of the distance, and the setting of the autonomous driving emergency braking suppressor.
[0075] Clause 9. The method according to Clause 1, wherein the plurality of frames comprises a subset of frames captured by the camera.
[0076] Clause 10. An apparatus comprising: a memory storing instructions; and processing circuitry executing the instructions to determine a region of interest (ROI) of an object in a frame of image data from a camera; extracting key points of the object in the ROI; determining a distance between the key points and an optical center of the camera; repeatedly determining the ROI, extracting the key points, and determining the distance between the key points and the optical center for a plurality of frames; and, in response to the distance becoming larger across the plurality of frames, setting an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of a vehicle.
[0077] Clause 11. The apparatus according to Clause 10, the apparatus further comprising the processing circuitry for executing instructions to suppress actuation of automatic emergency braking of the vehicle when the automatic emergency braking suppressor indicator indicates suppression.
[0078] Clause 12. The apparatus according to Clause 10, wherein the plurality of frames of image data comprise images of a real-world scene captured by the camera in front of the vehicle.
[0079] Clause 13. The apparatus of Clause 10, further comprising processing circuitry for executing instructions to determine the distance between the keypoint and the optical center, including processing circuitry for executing instructions to determine the distance using pixel coordinates of the keypoint and the optical center.
[0080] Clause 14. The apparatus according to Clause 10, the apparatus further comprising processing circuitry for executing instructions to determine the distance between the keypoint and the optical center, including processing circuitry for executing instructions to determine the distance using three-dimensional world coordinates of the keypoint and the optical center.
[0081] Clause 15. The apparatus according to Clause 10, the apparatus further comprising the processing circuitry for executing instructions to detect the object in the frame.
[0082] Clause 16. The apparatus of Clause 10, wherein the processing circuitry for executing instructions to determine the distances of the plurality of frames includes processing circuitry for executing instructions to: determine a plurality of variations between selected pairs of the distances; and, in response to the variations being greater than zero, set the automated driving emergency braking suppressor indicator to indicate suppression of automated driving emergency braking of the vehicle.
[0083] Clause 17. The apparatus of Clause 10, further comprising processing circuitry for executing instructions to determine the region of interest, extract the key points, determine the distance, and set the automatic driving emergency braking suppressor in response to movement of the vehicle.
[0084] Clause 18. The apparatus according to Clause 10, wherein the plurality of frames comprises a subset of frames captured by the camera.
[0085] Clause 19. A non-transitory computer-readable storage medium comprising instructions that, when executed by processing circuitry of a computing system, cause the processing circuitry to: determine a region of interest (ROI) of an object in a frame of image data from a camera; extract key points of the object in the ROI; determine a distance between the key points and an optical center of the camera; repeatedly determine the ROI, extract the key points, and determine the distance between the key points and the optical center for a plurality of frames; and, in response to the distance becoming larger across the plurality of frames, set an autonomous driving emergency braking suppressor indicator to indicate suppression of autonomous driving emergency braking of a vehicle.
[0086] Clause 20. The non-transitory computer-readable storage medium according to Clause 19, the non-transitory computer-readable storage medium comprising instructions that, when executed by processing circuitry of a computing system, cause the processing circuitry to: suppress actuation of automatic emergency braking of the vehicle when the automatic emergency braking suppressor indicator indicates suppression.
[0087] Clause 21. A computing system comprising components for performing any of the methods described in accordance with Clauses 1 to 9.
[0088] It should be recognized that, based on the examples, certain actions or events of any technique described herein may be performed in a different sequence, and may be added, combined, or omitted entirely (e.g., not all actions or events described are necessary for implementing the technique). Furthermore, in some examples, actions or events may be performed concurrently (e.g., through multithreading, interrupt handling, or multiple processors) rather than sequentially.
[0089] In one or more examples, the described functionality may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functionality may be stored as one or more instructions or code on a computer-readable medium or transmitted via a computer-readable medium and executed by a hardware-based processing unit. A computer-readable medium may include a computer-readable storage medium (which corresponds to a tangible medium such as a data storage medium) or a communication medium, including, for example, any medium that facilitates the transfer of a computer program from one place to another according to a communication protocol. In this way, a computer-readable medium may generally correspond to (1) a non-transitory tangible computer-readable storage medium, or (2) a communication medium such as a signal or carrier wave. A data storage medium may be any available medium that can be accessed by one or more computers or one or more processors to retrieve instructions, code, and / or data structures for implementing the techniques described in this disclosure. Computer program products may include computer-readable media.
[0090] By way of example and not limitation, such computer-readable storage media may include one or more of the following: random access memory (RAM), read-only memory (ROM), electrically erasable ROM (EEPROM), compressed optical disc ROM (CD-ROM) or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Furthermore, any connection is appropriately referred to as a computer-readable medium. For example, if instructions are transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technology (such as infrared, radio, and microwave), then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technology (such as infrared, radio, and microwave) is included in the definition of medium. However, it should be understood that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transient media, but instead refer to non-transient tangible storage media. As used herein, disks and optical discs include compact optical discs (CDs), laser optical discs, optical discs, digital versatile optical discs (DVDs), floppy disks, and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs use lasers to reproduce data optically. Combinations of these should also be included within the scope of computer-readable media.
[0091] Instructions can be executed by one or more processors, such as one or more DSPs, general-purpose microprocessors, ASICs, FPGAs, or other equivalent integrated or discrete logic circuits. Therefore, the terms "processor" and "processing circuit" as used herein can refer to any of the foregoing structures or any other structure suitable for implementing the techniques described herein. Additionally, in some aspects, the functionality described herein can be provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated into combined codecs. Furthermore, these techniques can be fully implemented in one or more circuit or logic elements.
[0092] The techniques disclosed herein can be implemented in a wide variety of devices or apparatuses, including wireless mobile phones, integrated circuits (ICs), or IC sets (e.g., chipsets). Various components, modules, or units are described in this disclosure to emphasize functional aspects of a device configured to perform the disclosed techniques, but implementation by different hardware units is not necessarily required. Rather, as described above, various units may be combined in a codec hardware unit, or various units may be provided by a collection of interoperable hardware units (including one or more processors as described above) combined with appropriate software and / or firmware.
[0093] Various examples have been described. These and other examples are within the scope of the following claims.
Claims
1. A method, the method comprising: The computing system in the vehicle determines the region of interest for an object in a frame of image data from the camera. Extract the key points of the object in the region of interest; Determine the distance between the key point and the optical center of the camera; The region of interest is repeatedly determined for multiple frames, the key points are extracted, and the distance between the key points and the optical center is determined. as well as In response to the distance becoming larger across the multiple frames, the autonomous driving emergency braking suppressor indicator is set to indicate suppression of autonomous driving emergency braking of the vehicle.
2. The method according to claim 1, further comprising: When the automatic emergency braking suppressor indicator indicates suppression, the actuation of automatic emergency braking of the vehicle is suppressed.
3. The method of claim 1, wherein the plurality of frames of the image data comprises images of real-world scenes approaching the vehicle captured by the camera.
4. The method of claim 1, wherein determining the distance between the key point and the optical center of the camera comprises: The distance is determined using the pixel coordinates of the key points and the optical center.
5. The method of claim 1, wherein determining the distance between the key point and the optical center of the camera comprises: The distance is determined using the three-dimensional world coordinates of the key point and the optical center.
6. The method according to claim 1, further comprising: Detect the object in the frame.
7. The method of claim 1, wherein determining the distance between the plurality of frames comprises: Determine multiple variations between selected pairs of distances; And in response to the change being greater than zero, the automatic emergency braking suppressor indicator is set to indicate suppression of automatic emergency braking of the vehicle.
8. The method according to claim 1, further comprising: In response to the movement of the vehicle, the system performs tasks such as determining the region of interest, extracting the key points, determining the distance, and setting the autonomous driving emergency braking suppressor.
9. The method of claim 1, wherein the plurality of frames comprises a subset of frames captured by the camera.
10. An apparatus comprising: The memory stores instructions; and Processing circuit, the processing circuit executes the instructions to: Determine the region of interest for an object in a frame of image data from the camera; Extract the key points of the object in the region of interest; Determine the distance between the key point and the optical center of the camera; The region of interest is repeatedly determined for multiple frames, the key points are extracted, and the distance between the key points and the optical center is determined. as well as In response to the distance becoming larger across the multiple frames, the autonomous driving emergency braking suppressor indicator is set to indicate suppression of autonomous driving emergency braking of the vehicle.
11. The apparatus of claim 10, further comprising the processing circuitry for executing instructions to suppress actuation of automatic emergency braking of the vehicle when the automatic emergency braking suppressor indicator indicates suppression.
12. The apparatus of claim 10, wherein the plurality of frames of image data comprise images of a real-world scene captured by the camera in front of the vehicle.
13. The apparatus of claim 10, further comprising processing circuitry for executing instructions to determine the distance between the keypoint and the optical center, including processing circuitry for executing instructions to determine the distance using pixel coordinates of the keypoint and the optical center.
14. The apparatus of claim 10, further comprising processing circuitry for executing instructions to determine the distance between the keypoint and the optical center, including processing circuitry for executing instructions to determine the distance using three-dimensional world coordinates of the keypoint and the optical center.
15. The apparatus of claim 10, further comprising the processing circuitry for executing instructions to detect the object in the frame.
16. The apparatus of claim 10, wherein the processing circuitry for executing instructions to determine the distances of the plurality of frames comprises the processing circuitry for executing instructions to perform the following operations: determining a plurality of variations between selected pairs of the distances; and, in response to the variations being greater than zero, setting the automated driving emergency braking suppressor indicator to indicate suppression of automated driving emergency braking of the vehicle.
17. The apparatus of claim 10, further comprising the processing circuitry for executing instructions to determine the region of interest, extract the key points, determine the distance, and set the automatic driving emergency braking suppressor in response to movement of the vehicle.
18. The apparatus of claim 10, wherein the plurality of frames comprises a subset of frames captured by the camera.
19. A non-transitory computer-readable storage medium, the non-transitory computer-readable storage medium comprising instructions that, when executed by processing circuitry of a computing system, cause the processing circuitry to: Determine the region of interest for an object in a frame of image data from the camera; Extract the key points of the object in the region of interest; Determine the distance between the key point and the optical center of the camera; The region of interest is repeatedly determined for multiple frames, the key points are extracted, and the distance between the key points and the optical center is determined. as well as In response to the distance becoming larger across the multiple frames, the autonomous driving emergency braking suppressor indicator is set to indicate suppression of autonomous driving emergency braking of the vehicle.
20. The non-transitory computer-readable storage medium of claim 19, wherein the non-transitory computer-readable storage medium includes instructions that, when executed by processing circuitry of a computing system, cause the processing circuitry to: When the automatic emergency braking suppressor indicator indicates suppression, the actuation of automatic emergency braking of the vehicle is suppressed.
