Reducing false triggering of automatic emergency braking

By analyzing camera frames to track object distances relative to the vehicle's optical center, the system prevents unnecessary braking, addressing false triggers in autonomous emergency braking and improving driving experience and safety.

WO2025213439A1PCT designated stage Publication Date: 2025-10-16QUALCOMM INC +3

Patent Information

Application Number
PCT/CN2024/087402
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-12
Publication Date
2025-10-16

AI Technical Summary

Technical Problem

Autonomous emergency braking systems in vehicles frequently experience false triggering due to inaccurate estimation of the trajectory of moving objects, particularly when those objects are turning, leading to unnecessary braking and a compromised driving experience.

Method used

Analyze a stream of frames of image data from a vehicle-mounted camera to determine a region of interest for detected objects, extract key points, and track the distance between these key points and the camera's optical center across multiple frames, setting an AEB inhibitor indicator to prevent unnecessary braking when the distance increases, indicating a collision will be avoided.

Benefits of technology

Reduces false triggering of autonomous emergency braking by ensuring braking only occurs when a collision is imminent, thereby enhancing the vehicle's operational smoothness and safety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024087402_16102025_PF_FP_ABST
    Figure CN2024087402_16102025_PF_FP_ABST
Patent Text Reader

Abstract

A method, comprising: determining, by a computing system (200) in a vehicle (102), a region of interest (ROI) (314 / 316 / 318) for an object (304 / 306 / 308) in a frame of image data (216) from a camera (132); extracting a key point (324 / 326 / 328) of the object (304 / 306 / 308) in the ROI (314 / 316 / 318); determining a distance (342) between the key point (324 / 326 / 328) and an optical center (340) of the camera (132); repeating determining the ROI (314 / 316 / 318), extracting the key point (324 / 326 / 328), and determining distances (342) between the key point (324 / 326 / 328) and the optical center (340) for a plurality of frames (602 / 604); and in response to the distances getting larger over the plurality of frames (602 / 604), setting an autonomous emergency braking inhibitor indicator (405) to indicate inhibition of autonomous emergency braking (AEB) for the vehicle (102). An apparatus and a non-transitory computer-readable storage medium are also provided.
Need to check novelty before this filing date? Find Prior Art

Description

REDUCING FALSE TRIGGERING OF AUTOMATIC EMERGENCY BRAKINGTECHNICAL FIELD

[0001] This disclosure relates to Advanced Driver Assistance Systems (ADAS) for vehicles.BACKGROUND

[0002] Autonomous vehicles and semi-autonomous vehicles may use artificial intelligence (AI) and machine learning (ML) (e.g., deep neural networks (DNNs) ) for performing various operations for operating, piloting, and navigating the vehicles. For example, DNNs may 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-powered autonomous and semi-autonomous vehicles should be able to respond properly to an incredibly diverse set of situations, including interactions with emergency vehicles, pedestrians, animals, and a virtually infinite number of other obstacles.

[0003] For autonomous vehicles to achieve autonomous driving levels 3-5 (e.g., conditional automation (Level 3) , high automation (Level 4) , and full automation (Level 5) ) the autonomous vehicles should be capable of operating safely in all environments, and without the requirement for human intervention when potentially unsafe situations present themselves. ADAS uses sensors and software to help vehicles avoid hazardous situations to ensure safety and reliability. One common hazardous situation is an impending collision with another moving object (e.g., another vehicle, a motorcycle, a bicycle, a pedestrian, etc. ) . Some ADAS systems include autonomous emergency braking (AEB) capabilities to attempt to avoid collisions. However, correctly detecting, tracking, and avoiding another moving object is difficult. Errors may arise during such AEB processing that may negatively affect the driving experience.SUMMARY

[0004] In general, this disclosure describes techniques for reducing false triggering of autonomous emergency braking (AEB) in a vehicle by analyzing a stream of frames 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 frames. A  region of interest (ROI) may be determined for the at least one object in the frames. At least one key point from feature detection may be extracted for the object in the ROI and a distance between the key point and an optical center of the camera may be determined. This process may be repeated over a plurality of frames, and in response to the distances getting larger over the plurality of frames (indicating a collision will be avoided without needing to actuate AEB) , an AEB inhibitor indicator may be set to indicate inhibition of AEB for the vehicle. By avoiding false triggering, the vehicle will not apply emergency braking when it is not needed. This results in a smoother operation of the vehicle because the vehicle will only automatically brake when a collision will actually occur.

[0005] In an aspect, a method includes determining, by a computing system in a vehicle, a region of interest for an object in a frame of image data from a camera; extracting a key point from feature detection of the object in the region of interest; determining a distance between the key point and an optical center of the camera; repeating determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distance getting larger over the plurality of frames, setting an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.

[0006] In another aspect, an apparatus includes a memory that stores instructions; and processing circuitry that executes the instructions to determine a region of interest for an object in a frame of image data from a camera; extract a key point from feature detection of the object in the region of interest; determine a distance between the key point and an optical center of the camera; repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distances getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.

[0007] In a further aspect, 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 for an object in a frame of image data from a camera; extract a key point from feature detection of the object in the region of interest; determine a distance between the key point and an optical center of the camera; repeat determining the region of interest, extracting the key  point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distances getting larger over the plurality of frames, set an automatic emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.

[0008] The details of one or more examples are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description, drawings, and claims.BRIEF DESCRIPTION OF DRAWINGS

[0009] FIG. 1 is a diagram of an example autonomous vehicle, in accordance with the techniques of this disclosure.

[0010] FIG. 2 is a block diagram illustrating an example computing system that may perform the techniques of this disclosure.

[0011] FIGS. 3A-3E are diagrams illustrating examples of camera images processed by a computer vision processor and AEB false triggering reduction processing in accordance with the techniques of this disclosure.

[0012] FIG. 4 is a block diagram illustrating an example AEB inhibitor that may perform the techniques of this disclosure.

[0013] FIG. 5 is diagram illustrating points in a region of interest (ROI) in accordance with the techniques of this disclosure.

[0014] FIG. 6 is a diagram illustrating an example point queue in accordance with the techniques of this disclosure.

[0015] FIG. 7 is a diagram illustrating AEB control processing in accordance with the techniques of this disclosure.

[0016] FIG. 8 is a flowchart illustrating an example method for reducing false triggering of AEB in accordance with the techniques of this disclosure.DETAILED DESCRIPTION

[0017] An ADAS uses sensors and software to help vehicles avoid hazardous situations to ensure safety and reliability. One of the most common hazardous situations is an impending collision with another moving object. Some vehicles equipped with an ADAS include autonomous emergency braking (AEB) capabilities. AEB is triggered when the vehicle encounters an unexpected hazardous situation and the driver is unable to react in time to avoid a collision. When AEB is engaged, such as when the vehicle  encounters a crossing target object or a sharp braking target object, the vehicle will automatically brake. However, in some situations, the speed and trajectory of the target object may not be accurately estimated by the ADAS. For example, some target objects may be in the process of turning, making it difficult to predict the trajectory of the target object. This increases the false trigger rate for AEB for crossing or turning target objects and negatively affects the driving experience, since the vehicle may be sharply braking unnecessarily.

[0018] For example, consider the situation where a host vehicle and a target vehicle are both turning into an intersection. Due to a lack of accuracy of an inertial measurement unit (IMU) sensor in the host vehicle measuring vehicle steering, errors in sensing movement of the host vehicle in relation to the target vehicle may increase, resulting in poor target vehicle tracking and poor performance of prediction of collision between the vehicles. If the target vehicle is also turning, estimating the yaw rate of the target vehicle becomes even more difficult. With the current sensor configuration of self-driving cars, no sensor can directly measure the target vehicle’s yaw rate. Instead, in some examples, multiple frames of the target vehicle’s heading may be used to derive a yaw rate, which is typically delayed and inaccurate. As a result, if the yaw rate is not accurate, it is unlikely that the target vehicle’s trajectory will be accurately predicted. This may result in false triggering of AEB, wherein the host vehicle is automatically braked, even though the host vehicle will not collide with the target vehicle.

[0019] The techniques disclosed herein overcomes this disadvantage of current AEB capabilities in an ADAS, thereby providing improved AEB functionality and a better driving experience. In general, this disclosure describes techniques for reducing false triggering of AEB in a vehicle by analyzing a stream of frames 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 frames. A region of interest (ROI) may be determined for the at least one object in the frames. At least one key point from feature detection may be extracted for the object in the ROI and a distance between the key point and an optical center of the camera may be determined. This process may be repeated over a plurality of frames, and in response to the distances getting larger over the plurality of frames (indicating a collision will be avoided without needing to actuate AEB) , an AEB inhibitor indicator may be set to indicate inhibition of AEB for the vehicle.

[0020] FIG. 1 is a diagram of an example autonomous vehicle, in accordance with the techniques of this disclosure. Autonomous vehicle 102 in the example shown may comprise any vehicle (such as a car or truck) that can accommodate a human driver and / or human passengers. Autonomous vehicle 102 may include a vehicle body 104 suspended on a chassis, in this example comprised of four wheels and associated axles. A propulsion system 108, such as an internal combustion engine, hybrid electric power plant, or even all-electric engine, may be connected to drive some or all the wheels via a drive train, which may include a transmission (not shown) . A steering wheel 110 may be used to steer some or all the wheels to direct autonomous vehicle 102 along a desired path when the propulsion system 108 is operating and engaged to propel the autonomous vehicle 102. Steering wheel 110 or the like may be optional for Level 5 implementations. One or more controllers 114A-114C (acontroller 114) may provide autonomous capabilities in response to signals continuously provided in real-time from an array of sensors, as described more fully below.

[0021] Each controller 114 may be one or more onboard computer systems that may be configured to perform deep learning and AI functionality and output autonomous operation commands to self-drive autonomous vehicle 102 and / or assist the human vehicle driver in driving. Each vehicle may have any number of distinct controllers for functional safety and additional features. For example, controller 114A may serve as the primary computer for autonomous driving functions, controller 114B may serve as a secondary computer for functional safety functions, controller 114C may provide AI functionality for in-camera sensors, and controller 114 (D (not shown in FIG. 1) may provide infotainment functionality and provide additional redundancy for emergency situations.

[0022] Controller 114 may send command signals to operate vehicle brakes (using brake sensor 116) via one or more braking actuators 118, operate steering mechanism via a steering actuator, and operate propulsion system 108 which also receives an accelerator / throttle actuation signal 122. Actuation may be performed by methods known to persons of ordinary skill in the art, with signals typically sent via the Controller Area Network data interface ( “CAN bus” ) , a network inside modern vehicles used to control brakes, acceleration, steering, windshield wipers, and the like. The CAN bus may be configured to have dozens of nodes, each with its own unique identifier (CAN ID) . The bus may be read to find steering wheel angle, ground speed, engine revolutions per minute (RPM) , button positions, and other vehicle status indicators. The  functional safety level for a CAN bus interface is typically Automotive Safety Integrity Level (ASIL) B. Other protocols may be used for communicating within a vehicle, including FlexRay and Ethernet.

[0023] In an aspect, an actuation controller may be provided with dedicated hardware and software, allowing control of throttle, brake, steering, and shifting. The hardware may provide a bridge between the vehicle’s CAN bus and the controller 114, forwarding vehicle data to controller 114 including the turn signals, wheel speed, acceleration, pitch, roll, yaw, Global Positioning System (GPS) data, tire pressure, fuel level, sonar, brake torque, and others. Similar actuation controllers may be configured for any make and type of vehicle, including special-purpose patrol and security cars, robo-taxis, long-haul trucks including tractor-trailer configurations, tiller trucks, agricultural vehicles, industrial vehicles, and buses.

[0024] Controller 114 may provide autonomous driving outputs in response to an array of sensor inputs including, 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 cameras 130 (typically such cameras are located at various places on vehicle body 104 to image areas all around the vehicle body) , one or more stereo cameras 132 (in an aspect, at least one such stereo camera may face forward to provide object recognition in the vehicle’s path) , one or more infrared cameras 134, GPS unit 136 that provides location coordinates, a steering sensor 138 that detects the steering angle, speed sensors 140 (one for each of the wheels) , an inertial sensor or inertial measurement unit (IMU) 142 that monitors movement of vehicle body 104 (this sensor may be, for example, an accelerometer (s) and / or a gyro-sensor (s) and / or a magnetic compass (es) ) , tire vibration sensors 144, and microphones 146 placed around and inside the vehicle. Other sensors may also be used.

[0025] Controller 114 may also receive inputs from an instrument cluster 148 and may provide human-perceptible outputs to a human operator via human-machine interface (HMI) display (s) 150, an audible annunciator, a loudspeaker and / or other means. In addition to traditional information such as velocity, time, and other well-known information, HMI display may provide the vehicle occupants with information regarding maps and vehicle’s location, the location of other vehicles (including an occupancy grid) and even the controller’s identification of objects and status. For example, HMI display 150 may alert the passenger when the controller has identified  the presence of a water puddle, stop sign, caution sign, or changing traffic light and is taking appropriate action, giving the vehicle occupants peace of mind that the controller is functioning as intended.

[0026] In an aspect, instrument cluster 148 may include a separate controller / processor configured to perform deep learning and AI functionality.

[0027] Autonomous vehicle 102 may collect data that is preferably used to help train and refine the neural networks used for autonomous driving. The autonomous vehicle 102 may include modem 152, preferably a system-on-a-chip (SoC) that provides modulation and demodulation functionality and allows the controller 114 to communicate over the wireless network 154. Modem 152 may include a radio frequency (RF) front-end for up-conversion from baseband to RF, and down-conversion from RF to baseband, as is known in the art. Frequency conversion may be achieved either through known direct-conversion processes (direct from baseband to RF and vice-versa) or through super-heterodyne processes, as is known in the art. Alternatively, such RF front-end functionality may be provided by a separate chip. Modem 152 preferably includes wireless functionality substantially compliant with one or more wireless protocols such as, without limitation: long term evolution (LTE) , wideband code division multiple access (WCDMA) , universal mobile telecommunications framework (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, cameras 130 may generate a richer set of features at a fraction of the cost. Thus, autonomous vehicle 102 may include a plurality of cameras 130-134, capturing images around the entire periphery of the autonomous vehicle 102. Camera type and lens selection depends on the nature and type of function. The autonomous vehicle 102 may have a mix of camera types and lenses to provide complete coverage around the autonomous vehicle 102; in general, narrow lenses do not have a wide field of view but can see farther. All camera locations on the autonomous vehicle 102 may support interfaces such as Gigabit Multimedia Serial link (GMSL) and Gigabit Ethernet.

[0029] In an aspect, a controller 114 may receive one or more images acquired by a plurality of cameras 130-134. Controller 114 may include a portion of an ADAS to perform reduction of false triggering of AEB in accordance with the techniques of this disclosure. For example, controller 114 may be configured to determine a region of interest for an object in a frame of image data from a camera (e.g., a camera of stereo  cameras 132) . Controller 114 may extract a key point from feature detection of the object in the region of interest, and determine a distance between the key point and an optical center of the camera (e.g., a projection of the optical center of the camera on an image plane) . Controller 114 may repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames. Controller 114 may then, in response to the distance getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle (e.g., autonomous vehicle 102) .

[0030] FIG. 2 is a block diagram illustrating an example computing system that may perform the techniques of this disclosure. As shown, computing system 200 comprises processing circuitry 243 and memory 202 for executing ADAS 203, which may represent an example instance of any controller 114 described in this disclosure, such as controller 114 of FIG. 1. In an aspect, ADAS 203 may include AEB decision and control 204, AEB inhibitor processor 214, computer vision processor 213, and AEB actuator 212. AEB decision and control 204 determines, based at least in part on data received from one or more of IMU sensors 142, GPS unit 136, surround camera (s) 130, infrared camera 134, stereo camera 132, LIDAR 128, and one or more ultrasonic sensors 124, when to activate AEB. When AEB is to be activated, AEB decision and control 204 calls AEB actuator 212 to interface with one or more braking actuators 118. In an aspect, computer vision processor 213 may be disposed within stereo camera 132. In another aspect, stereo camera 132 is mounted behind a rear-view mirror of vehicle 102.

[0031] Computer vision processor 213 may detect one or more objects in stereo camera output data 216 (generated by imaging capabilities of stereo camera 132) . Computer vision processor 213 may include various types of neural networks, such as, but not limited to, recursive neural networks (RNNs) , convolutional neural networks (CNNs) , and deep neural networks (DNNs) . AEB inhibitor processor 214 analyzes stereo camera output data 216 and the one or more objects detected by computer vision processor 213 to determine when a false triggering of AEB may be occurring. When AEB inhibitor processor 214 determines that a collision is not going to occur between vehicle 102 and another object (such as a moving target vehicle) , AEB inhibitor processor 214 sends an AEB inhibitor indicator to AEB decision and control 204 to inhibit the actuation of autonomous emergency braking by AEB actuator 212.

[0032] Computing system 200 may be implemented as any suitable external computing system accessible by controller 114, such as one or more server computers, workstations, laptops, mainframes, appliances, embedded computing systems, cloud computing systems, High-Performance Computing (HPC) systems (i.e., supercomputing systems) and / or other computing systems that may be capable of performing operations and / or functions described in accordance with one or more aspects of the present disclosure. In some examples, computing system 200 may represent a cloud computing system, server farm, and / or server cluster (or portion thereof) that provides services to client devices and other devices or systems. In other examples, computing system 200 may represent or be implemented through one or more virtualized compute instances (e.g., virtual machines, containers, etc. ) of a data center, cloud computing system, server farm, and / or server cluster. In an aspect, computing system 200 is disposed in vehicle 102.

[0033] The techniques described in this disclosure may be implemented, at least in part, in hardware, software, firmware or any combination thereof. For example, various aspects of the described techniques may be implemented within processing circuitry 243 of computing system 200, which may include one or more of a microprocessor, a controller, a digital signal processor (DSP) , an application specific integrated circuit (ASIC) , a field-programmable gate array (FPGA) , or equivalent discrete or integrated logic circuitry, or other types of processing circuitry. The term “processor” or “processing circuitry” may generally refer to any of the foregoing logic circuitry, alone or in combination with other logic circuitry, or any other equivalent circuitry. A control unit comprising hardware may also perform one or more of the techniques of this disclosure.

[0034] In another example, computing system 200 comprises any suitable computing system having one or more computing devices, such as desktop computers, laptop computers, gaming consoles, smart televisions, handheld devices, tablets, mobile telephones, smartphones, etc. In some examples, at least a portion of computing system 200 is distributed across a cloud computing system, a data center, or across a network, such as the Internet, another public or private communications network, for instance, broadband, cellular, Wi-Fi, ZigBee,   (or other personal area network –PAN) , Near-Field Communication (NFC) , ultrawideband, satellite, enterprise, service provider and / or other types of communication networks, for transmitting data between computing systems, servers, and computing devices.

[0035] Memory 202 may comprise 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 communications (physically, communicatively, and / or operatively) . In some examples, such connectivity may be provided by a system bus, a network connection, an inter-process communication data structure, local area network, wide area network, or any other method for communicating data. Processing circuitry 243 of computing system 200 may implement functionality and / or execute instructions associated with computing system 200. Examples of processing circuitry 243 include microprocessors, application processors, display controllers, auxiliary processors, one or more sensor hubs, and any other hardware configured to function as a processor, a processing unit, or a processing device. Computing system 200 may use processing circuitry 243 to perform operations in accordance with one or more aspects of the present disclosure using software, hardware, firmware, or a mixture of hardware, software, and firmware residing in and / or executing at computing system 200. The one or more storage devices of memory 202 may be distributed among multiple devices.

[0036] Memory 202 may store information for processing during operation of computing system 200. In some examples, memory 202 comprises temporary memories, meaning that a primary purpose of the one or more storage devices of memory 202 is not long-term storage. Memory 202 may be configured for short-term storage of information as volatile memory and therefore not retain stored contents if deactivated. Examples of volatile memories include random-access memories (RAM) , dynamic random-access memories (DRAM) , static random-access memories (SRAM) , and other forms of volatile memories known in the art. Memory 202, in some examples, may also include one or more computer-readable storage media. Memory 202 may be configured to store larger amounts of information than volatile memory. Memory 202 may further be configured for long-term storage of information as non-volatile memory space and retain information after activate / off cycles. Examples of non-volatile memories include magnetic hard disks, optical discs, Flash memories, or forms of electrically programmable read only memories (EPROM) or electrically erasable and programmable (EEPROM) read only memories.

[0037] Memory 202 may store program instructions and / or data associated with one or more of the modules described in accordance with one or more aspects of this disclosure. For example, memory 202 may store stereo camera output data 216 received  from stereo camera 132, as well as instructions of ADAS 203, including one or more of AEB inhibitor 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, including one or more of AEB inhibitor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212, etc. ) , which may be implemented as software, but may in some examples include any combination of hardware, firmware, and software. Processing circuitry 243 may execute instructions and the 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 the instructions and / or data of one or more applications, modules, or software. The processing circuitry 243 and / or memory 202 may also be operably coupled to one or more other software and / or hardware components, including, but not limited to, one or more of the components illustrated in FIG. 2.

[0039] Processing circuitry 243 may execute ADAS 203, including one or more of AEB inhibitor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212, using virtualization modules, such as a virtual machine or container executing on underlying hardware. One or more of such modules may execute as one or more services of an operating system or computing platform. Aspects of ADAS 203, including one or more of AEB inhibitor processor 214, computer vision processor 213, AEB decision and control 204, and AEB actuator 212, may execute as one or more executable programs at an application layer of a computing platform.

[0040] One or more input device (s) 244 of computing system 200 may generate, receive, or process input. Such input may include input from a keyboard, pointing device, voice responsive system, video camera, biometric detection / response system, button, sensor, mobile device, control pad, microphone, presence-sensitive screen, network, or any other type of device for detecting input from a human or machine.

[0041] One or more output device (s) 246 may generate, transmit, or process output. Examples of output are tactile, audio, visual, and / or video output. Output devices 246 may include a display, sound card, video graphics adapter card, speaker, presence-sensitive screen, one or more universal serial bus (USB) interfaces, video and / or audio output interfaces, or any other type of device capable of generating tactile, audio, video, or other output. Output devices 246 may include a display device, which may function  as an output device using technologies including liquid crystal displays (LCD) , quantum dot display, dot matrix displays, light emitting diode (LED) displays, organic light-emitting diode (OLED) displays, cathode ray tube (CRT) displays, e-ink, or monochrome, color, or any other type of display capable of generating tactile, audio, and / or visual output. In some examples, computing system 200 may include a presence-sensitive display that may serve as a user interface device that operates both as one or more input devices 244 and one or more output devices 246.

[0042] One or more communication units 245 of computing system 200 may communicate with devices external to computing system 200 (or among separate computing devices of computing system 200) by transmitting and / or receiving data, and may operate, in some respects, as both an input device and an output device. In some examples, communication units 245 may communicate with other devices over a network. In other examples, communication units 245 may send and / or receive radio signals on a radio network such as a cellular radio network. Examples of communication units 245 include a network interface card (e.g., such as an Ethernet card) , an optical transceiver, a radio frequency transceiver, a GPS receiver, or any other type of device that can send and / or receive information. Other examples of communication units 245 may include GPS, 3G, 4G, 5G and radios found in mobile devices as well as Universal Serial Bus (USB) controllers and the like.

[0043] In the example of FIG. 2, AEB decision and control 204 inhibits actuation of AEB for vehicle 102 when an AEB inhibitor indicator, set by AEB inhibitor processor 214, indicates inhibition. Computer vision processor 213 and AEB inhibitor processor 214 analyze a plurality of frames of image data to collectively determine the AEB inhibition indicator and the plurality of frames of image data includes images captured by stereo camera 132 of a real-world scene in front of vehicle 102. In an aspect, AEB inhibitor processor 214 determines distances between key points of an object in a region of interest of a frame and an optical center of the camera using pixel coordinates of the key points and the optical center.

[0044] In another aspect, Computer vision processor 213 detects objects in the frames, and AEB inhibitor processor 214 determines distances between key points of an object in a region of interest of a frame and an optical center of the camera using three-dimensional world coordinates of the key points and the optical center. AEB inhibitor  processor 214 may process the plurality of frames wherein the plurality of frames includes a subset of frames captured by the camera.

[0045] FIGS. 3A-3E are diagrams illustrating camera images processed by a computer vision processor and examples of AEB false triggering reduction processing in accordance with the techniques of this disclosure. FIG. 3A shows a raw image 302 representing a frame of stereo camera output data 216 generated by stereo camera 132. Raw image 302 may be a single image in a series of images (e.g., a video) captured by one camera imaging function of stereo camera 132. Thus, each raw image 302 is a captured image of a real-world scene at a moment in time in proximity of vehicle 102. In some examples, the real-world scene may be in the front of vehicle 102, to the side of vehicle 102, or to the side of vehicle 102. In other examples, raw image 302 may be formed from multiple images and may represent a birds-eye view of a real-world scene around vehicle 102.

[0046] In an example, each pixel of raw image 302 includes two bytes. Raw image 302 may be stored in memory 202 (as a portion of stereo camera output data 216) and accessed by ADAS 203 (including computer vision processor 213 and AEB inhibitor processor 214) . Raw image 302 may be processed by computer vision processor 213 to detect one or more objects in raw image 302 according to one or more object detection techniques.

[0047] FIG. 3B shows three example objects detected by computer vision processor 213, including object 304, object 306, and object 308. In an implementation, an object may be specified by a bounding box with four pixel coordinates of (point 1, point 2, point 3, point 4) denoting the four corners of the bounding box, where a point includes an x pixel and a y pixel, and each bounding box may be assigned a unique identifier (ID) . Thus, computer vision processor 213 outputs one or more bounding boxes for raw image 302 (the current frame) . In an aspect, objects close to and in front of the vehicle 102 (that is, they are in the same lane as the vehicle) are omitted from further AEB inhibitor processing, since AEB will most likely be needed if ADAS 203 determines a collision may occur with an object in front of the vehicle.

[0048] FIG. 4 is a block diagram illustrating an example AEB inhibitor processor 214 that may perform the techniques of this disclosure. FIG. 4 is provided for purposes of explanation and should not be considered limiting of the techniques as broadly exemplified and described in this disclosure. AEB inhibitor 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 by computer vision processor 213 in the one or more raw images. Region of Interest (ROI) determinator 406 analyzes the raw image 404 and the one or more detected objects 402 and sets areas of the raw image 404 as ROIs corresponding to bounding boxes, respectively. FIG. 3C shows the example ROIs for the example objects shown in FIG. 3B, including ROI 314 for object 304, ROI 316 for object 306, and ROI 318 for object 308.

[0049] FIG. 5 is diagram illustrating points in a ROI in accordance with the techniques of this disclosure. In an example, assume an ROI is denoted 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 in the bounding box may be obtained from raw image 302 and saved in a buffer in memory 202. For example, New_Pixel_data [x] [y] = raw_image_buffer [index_x] [image_width *index_y] . This may be repeated for each column of the bounding box, thereby saving the pixel data of the ROI for further processing by AEB inhibitor processor 214.

[0050] AEB inhibitor processor 214 includes key points tracker 408 to track key points over a series of frames of stereo camera output data 216. Although stereo camera 132 is shown in FIG. 1, other types of cameras may also be used (e.g., single cameras, mono-lens cameras, etc. ) . Key points tracker 408 includes key points extractor 410 to extract one or more key points from an ROI of a current raw image of the one or more raw 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 properties. Features may 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, barriers, road edges, bridges, curbs, lane markers, etc. ) .

[0051] Key point extraction processing may be performed for one or more ROIs (e.g., ROI 314, ROI 316, ROI 318) of the one or more raw images 404. In an implementation, an open source computer vision (OpenCV) library function called Oriented feature from accelerated segment test (FAST) and rotated binary robust independent elementary features (BRIEF) (ORB) may be used to extract features from the raw image 404. In other implementations, other feature extraction processes may be used. In an aspect, key points tracker 408 may extract features from all ROIs identified in at least one raw image 404. FIG. 3D shows example multiple key points 324, 326, and 328 extracted from example ROI 314.

[0052] Key points tracker 408 includes proximity checker 412 to calculate a distance from a key point to an optical center of the camera (that is, the one or more raw images 404) . In an aspect, the optical center of the camera may be adjusted by AEB inhibitor processor 214 to align with the horizontal center point of vehicle 102 (e.g., in case the imaging mechanism of stereo camera 132 is not situated in the exact horizontal center of the vehicle) . In an aspect, the optical center of the camera may be represented in pixel coordinates or three-dimensional (3D) world coordinates.

[0053] In an aspect, key points tracker 408 may calculate distances for one or more key points in one or more ROIs of the frame. For example, as shown in FIG. 3E, proximity checker 412 calculates distances 342 from the example key points 324, 326, 328 in example ROI 314 to optical center 340 of the frame. In an aspect, proximity checker 412 may calculate the distances using pixel coordinates of key points and pixel coordinates of the optical center of the camera.

[0054] For example, a distance between a key point and the optical center of the camera may be calculated as the square root of (adifference in x indices of the two pixels ^ 2 +a difference in y indices of the two pixels ^ 2) . In another aspect, each key point’s pixel position may be transformed to 3D world coordinates according to any transformation technique. For example, if a position of the optical center of the camera is (x_c, y_c, z_c) and a key point is (x_a, y_a) then the distance may be calculated as the square root of ( (x_a–x_c) ^ 2 + (y_a–y_c) ^ 2 + (z_a–z_c) ^ 2) .

[0055] In an implementation, key points tracker 408 may compare the distance between a key point in an ROI to the optical center of the camera over two or more frames. If the distance of the key point in an ROI to the optical center from a second frame is larger than the distance of the same key point in the ROI to the optical center from a first frame (the first frame being captured by an image sensor of stereo camera 132 earlier in time than the second frame, but the first and second frames are not necessarily consecutive) , then the key point is moving away from the optical center. If the key point is moving away from the optical center of the camera (and thus the center of the front of the vehicle) , then the trajectory of the object containing the key point is moving away from the vehicle 102. If the object is moving away from the vehicle, then AEB inhibitor processor 214 may determine that a collision is not imminent and actuation of the AEB should be inhibited by setting AEB inhibitor indicator to “yes” , “true” , or another value to indicate that AEB decision and control 204 should inhibit actuation of autonomous emergency braking by AEB actuator 212. Note that AEB inhibitor processor 214 does  not actively trigger AEB actuation but only indicates when suppression of AEB should be done since a collision is not going to occur based on the tracking of the key points by the AEB inhibitor.

[0056] FIG. 6 is a diagram illustrating an example point queue in accordance with the techniques of this disclosure. Distances may be determined at block 606 by key points tracker 408 between a key point of a first frame 602 (e.g., a current frame) and the optical center and between a key point of a second frame 604 (e.g., a previous frame) and the optical center. The latest key point (e.g., the key point from the first frame 602) may be stored at block 608 by key points tracker 408 in a queue along with other, previously processed key points. For example, queue 622 may store key point_A (e.g., the latest key point) at time T 610, key point_A at time T-1 612, key point_A at time T-2 614, key point_A at time T-3 616, key point_A at time T-4 618, and key point_A at time T-5 620. In various aspects, there may be a queue for each key point and the size of any queue may be any number of entries.

[0057] In an implementation, AEB inhibitor processor 214 may determine AEB inhibitor indicator 405 based at least in part on a sample set of frames, wherein the number of frames in the set is more than two. For example, assume AEB inhibitor processor 214 works on a frame set size of six (although six frames are shown in this example, any suitable number of frames may be used) . Pixel values (or, alternatively, transformed 3D world coordinate values) of at least one key point and of the optical center in each frame of the set of frames may be stored in queue 622 or other data storage mechanism. As each frame of a stream of frames is processed, the pixel values (or, alternatively, transformed 3D world coordinate values) of the at least one key point and of the optical center may overwrite the oldest values of the queue 622, thereby providing data for the at least one key point in a continuous rolling window of the last six frames.

[0058] For example, as shown in FIG. 6, a first entry (e.g., the head) 610 in the queue 622 may store key point A at time T, a second entry 612 in the queue may store key point A at time T-1, a third entry 614 in the queue may store key point A at time T-2, a fourth entry 616 in the queue may store key point A at time T-3, a fifth entry 618 in the queue may store key point A and at time T-4, and a sixth entry 620 in the queue may store key point A at time T-5. In an implementation, the distances from a key point to the optical center may also be stored in the queue entry. Determination of AEB inhibitor indicator 405 may then be made based at least in part on the set of continuous rolling  window values (from the set of frames) instead of one or more key point values from a single frame. For example, a distance at time T minus a distance at time T-3 may be a first delta (difference value) , a distance at time T-1 minus a distance at time T-4 may be a second delta, and a distance at time T-2 minus a distance at time T-5 may be a third delta. In this example, AEB inhibitor indicator 405 may then be set to “yes” or “true” if the first delta is greater than zero and the second delta is greater than zero and the third delta is greater than zero.

[0059] Although this example shows a sample set of frames to include six frames and shows a particular comparison of distances in selected frames (e.g., the delta calculations and comparisons) , any sample size may be used and the comparisons of distances between frames may be performed in any combination.

[0060] In an aspect, AEB inhibitor processing may be performed continuously on all raw images in a stream of raw images 404 from stereo camera output data 216 while vehicle 102 is in operation (or optionally, only when vehicle 102 is moving) . In another aspect, AEB inhibitor processing may be performed on a subset of all raw images 404 (e.g., every other raw image, every third raw image, every fourth raw image, etc. ) and frames outside of the subset are omitted from AEB inhibitor processing.

[0061] FIG. 7 is a diagram illustrating AEB control processing in accordance with the techniques of this disclosure. In an implementation, when AEB decision and control 204 detects that AEB should be actuated based at least in part on detecting an AEB triggered target object 702 that AEB decision and control 204 has determined to be a threat for imminent collision, AEB inhibitor processor 214 may obtain an ID of the AEB triggered target object. AEB inhibitor processor 214 may then determine which object of a frame corresponds to the AEB triggered target object 702 and perform ROI determinator 406 processing and key points tracker 408 processing for this object to determine AEB inhibitor indicator 405. AEB inhibitor indicator 405 may then be sent to AEB decision and control 204, which may inhibit actuation of AEB actuator 212, depending on the value of AEB inhibitor indicator 405. If AEB inhibitor indicator 405 indicates inhibition, AEB decision and control 204 does not actuate AEB via AEB actuator 212. If AEB inhibitor indicator 405 does not indicate inhibition, AEB decision and control 204 actuates AEB via AEB actuator 212.

[0062] FIG. 8 is a flowchart illustrating an example method for reducing false triggering of AEB in accordance with the techniques of this disclosure. Although described with respect to computing system 200 (FIG. 2) , it should be understood that  other computing devices may be configured to perform a method similar to that of FIG. 8. At block 802, both AEB inhibitor processor 214 and computer vision processor 213 receive a frame of image data (e.g., at least one raw image 404) from a camera (e.g., stereo camera 132) . At block 804, computer vision processor 213 detects at least one object 402 in the frame. At block 806, based at least in part on the raw image 404 and the at least one object 402, ROI determinator 406 determines a region of interest (for example, ROIs 314, 316, 318) for the at least one object 402. At block 808, key points extractor 410 extracts at least one key point in the region of interest. Block 504 may be repeated for a plurality of objects in the frame, block 806 may be repeated for a plurality of ROIs for the plurality of objects, and block 808 may be repeated for a plurality of key points in the plurality of ROIs.

[0063] At block 810, proximity checker 412 determines a distance between the at least one key point and the optical center of the camera (of the raw image) . Block 810 may be repeated for a plurality of key points. Key points tracker 408 may store the key points, optical center of the camera, and the distances in a queue. At block 812, key points tracker 408 may determine if more frames are to be used in the current sample set of frames. If so, processing returns to block 802 to get the next frame of the sample set of frames. Otherwise, if the current sample set of frames has been processed by AEB inhibitor processor 214, then at block 814 AEB inhibitor processor 214 compares the distances of the sample frames. In an implementation, this may include comparing the distances stored in the queue. At block 816, if the distances for a key point are getting larger, then this indicates the object including the key point is moving away from the vehicle 102. If so, at block 818 then AEB inhibitor indicator 405 may be set to “yes” , “true” or another value to indicate inhibition of AEB actuation. Otherwise, at block 820, AEB inhibitor indicator may be set to (or remain) “no” , “false” or another value to indicate no inhibition of AEB actuation. The comparison performed at block 816 may be repeated for a plurality of key points in the plurality of ROIs.

[0064] In an implementation, at block 814, comparison processing of distances in the sample may be performed collectively on distances from a plurality of frames (as described in the example shown above.

[0065] Thus, ADAS 203, with AEB inhibitor processor 214 as disclosed herein, reduces the probability of false triggering of AEB by detecting when key points of objects in frames are moving away from the vehicle and inhibits AEB actuation in these “false  positive” cases. This improves the driving experience for the occupants of vehicle 102, since AEB will not be actuated if no collision will occur.

[0066] The following numbered clauses illustrate one or more aspects of the devices and techniques described in this disclosure.

[0067] Clause 1. A method including determining, by a computing system in a vehicle, a region of interest for an object in a frame of image data from a camera; extracting a key point of the object in the region of interest; determining a distance between the key point and an optical center of the camera; repeating determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distance getting larger over the plurality of frames, setting an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.

[0068] Clause 2. The method of Clause 1, further including inhibiting actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.

[0069] Clause 3. The method of Clause 1, wherein the plurality of frames of image data comprise images captured by the camera of a real-world scene in proximity to the vehicle.

[0070] Clause 4: The method of Clause 1, wherein determining the distance between the key point and the optical center of the camera includes determining the distance using pixel coordinates of the key point and the optical center.

[0071] Clause 5. The method of Clause 1, wherein determining the distance between the key point and the optical center of the camera includes determining the distance using three-dimensional world coordinates of the key point and the optical center.

[0072] Clause 6. The method of Clause 1, further including detecting the object in the frame.

[0073] Clause 7. The method of Clause 1, wherein determining the distance for the plurality of frames includes determining a plurality of deltas between selected pairs of distances; and in response to the deltas being greater than zero, setting the autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.

[0074] Clause 8. The method of Clause 1, further comprising: performing determining of the region of interest, extracting the key point, determining the distance, and setting the autonomous emergency braking inhibitor in response to motion of the vehicle.

[0075] Clause 9. The method of Clause 1, wherein the plurality of frames comprises a subset of frames captured by the camera.

[0076] Clause 10. An apparatus including a memory that stores instructions; and processing circuitry that executes the instructions to determine a region of interest for an object in a frame of image data from a camera; extract a key point of the object in the region of interest; determine a distance between the key point and an optical center of the camera; repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distances getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.

[0077] Clause 11. The apparatus of Clause 10, further including the processing circuitry to execute instructions to inhibit actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.

[0078] Clause 12. The apparatus of Clause 10, wherein the plurality of frames of image data includes images captured by the camera of a real-world scene in front of the vehicle.

[0079] Clause 13. The apparatus of Clause 10, further including the processing circuitry to execute instructions to determine the distance between the key point and the optical center comprises the processing circuitry to execute instructions to determine the distances using pixel coordinates of the key point and the optical center.

[0080] Clause 14. The apparatus of Clause 10, further including the processing circuitry to execute instructions to determine the distance between the key point and the optical center comprises the processing circuitry to execute instructions to determine the distances using three-dimensional world coordinates of the key point and the optical center.

[0081] Clause 15. The apparatus of Clause 10, further including the processing circuitry to execute instructions to detect the object in the frame.

[0082] Clause 16. The apparatus of Clause 10, wherein the processing circuitry to execute instructions to determine the distances for the plurality of frames includes the processing circuitry to executing instructions to determine a plurality of deltas between selected pairs of the distances and, in response to the deltas being greater than zero, set  the autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.

[0083] Clause 17. The apparatus of Clause 10, further including the processing circuitry to execute instructions to determine of the region of interest, extract the key point, determine the distance and set the autonomous emergency braking inhibitor in response to motion of the vehicle.

[0084] Clause 18. The apparatus of 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 including instructions, that when executed by processing circuitry of a computing system, cause the processing circuitry to determine a region of interest for an object in a frame of image data from a camera; extract a key point of the object in the region of interest; determine a distance between the key point and an optical center of the camera; repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; and in response to the distances getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.

[0086] Clause 20. The non-transitory computer-readable storage medium of Clause 19, including instructions, that when executed by processing circuitry of a computing system, cause the processing circuitry to inhibit actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.

[0087] Clause 21. A computing system including means for performing any of the methods of Clauses 1 through 9.

[0088] It is to be recognized that depending on the example, certain acts or events of any of the techniques described herein can be performed in a different sequence, may be added, merged, or left out altogether (e.g., not all described acts or events are necessary for the practice of the techniques) . Moreover, in certain examples, acts or events may be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors, rather than sequentially.

[0089] In one or more examples, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code  on a computer-readable medium and executed by a hardware-based processing unit. Computer-readable media may include computer-readable storage media, which corresponds to a tangible medium such as data storage media, or communication media including any medium that facilitates transfer of a computer program from one place to another, e.g., according to a communication protocol. In this manner, computer-readable media generally may correspond to (1) tangible computer-readable storage media which is non-transitory or (2) a communication medium such as a signal or carrier wave. Data storage media may be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and / or data structures for implementation of the techniques described in this disclosure. A computer program product may include a computer-readable medium.

[0090] By way of example, and not limitation, such computer-readable storage media may include one or more of random-access memory (RAM) , read-only memory (ROM) , electrically erasable ROM (EEPROM) , compact disc ROM (CD-ROM) or other optical disk storage, magnetic disk storage, 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. Also, any connection is properly termed a computer-readable medium. For example, if instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. It should be understood, however, that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transitory media, but are instead directed to non-transitory, tangible storage media. Disk and disc, as used herein, includes compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc, where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.

[0091] Instructions may 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 circuitry. Accordingly, the terms “processor” and “processing circuitry, ” as used herein may refer to any of the foregoing structures or any other  structure suitable for implementation of the techniques described herein. In addition, in some aspects, the functionality described herein may be provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated in a combined codec. Also, the techniques could be fully implemented in one or more circuits or logic elements.

[0092] The techniques of this disclosure may be implemented in a wide variety of devices or apparatuses, including a wireless handset, an integrated circuit (IC) or a set of ICs (e.g., a chip set) . Various components, modules, or units are described in this disclosure to emphasize functional aspects of devices configured to perform the disclosed techniques, but do not necessarily require realization by different hardware units. Rather, as described above, various units may be combined in a codec hardware unit or provided by a collection of interoperative hardware units, including one or more processors as described above, in conjunction with suitable 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 comprising:determining, by a computing system in a vehicle, a region of interest for an object in a frame of image data from a camera;extracting a key point of the object in the region of interest;determining a distance between the key point and an optical center of the camera;repeating determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; andin response to the distance getting larger over the plurality of frames, setting an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.2.The method of claim 1, further comprising: inhibiting actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.3.The method of claim 1, wherein the plurality of frames of image data comprise images captured by the camera of a real-world scene in proximity to the vehicle.4.The method of claim 1, wherein determining the distance between the key point and the optical center of the camera comprises: determining the distance using pixel coordinates of the key point 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: determining the distance using three-dimensional world coordinates of the key point and the optical center.6.The method of claim 1, further comprising: detecting the object in the frame.7.The method of claim 1, wherein determining the distance for the plurality of frames comprises determining a plurality of deltas between selected pairs of distances; and in response to the deltas being greater than zero, setting the autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.8.The method of claim 1, further comprising: performing determining of the region of interest, extracting the key point, determining the distance, and setting the autonomous emergency braking inhibitor in response to motion of the vehicle.9.The method of claim 1, wherein the plurality of frames comprises a subset of frames captured by the camera.10.An apparatus comprising:a memory that stores instructions; andprocessing circuitry that executes the instructions to:determine a region of interest for an object in a frame of image data from a camera;extract a key point of the object in the region of interest;determine a distance between the key point and an optical center of the camera;repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; andin response to the distances getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.11.The apparatus of claim 10, further comprising the processing circuitry to execute instructions to inhibit actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.12.The apparatus of claim 10, wherein the plurality of frames of image data comprise images captured by the camera of a real-world scene in front of the vehicle.13.The apparatus of claim 10, further comprising the processing circuitry to execute instructions to determine the distance between the key point and the optical center comprises the processing circuitry to execute instructions to determine the distances using pixel coordinates of the key point and the optical center.14.The apparatus of claim 10, further comprising the processing circuitry to execute instructions to determine the distance between the key point and the optical center comprises the processing circuitry to execute instructions to determine the distances using three-dimensional world coordinates of the key point and the optical center.15.The apparatus of claim 10, further comprising the processing circuitry to execute instructions to detect the object in the frame.16.The apparatus of claim 10, wherein the processing circuitry to execute instructions to determine the distances for the plurality of frames comprises the processing circuitry to executing instructions to determine a plurality of deltas between selected pairs of the distances and, in response to the deltas being greater than zero, set the autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for the vehicle.17.The apparatus of claim 10, further comprising the processing circuitry to execute instructions to determine of the region of interest, extract the key point, determine the distance and set the autonomous emergency braking inhibitor in response to motion 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 comprising instructions, that when executed by processing circuitry of a computing system, cause the processing circuitry to:determine a region of interest for an object in a frame of image data from a camera;extract a key point of the object in the region of interest;determine a distance between the key point and an optical center of the camera;repeat determining the region of interest, extracting the key point, and determining the distance between the key point and the optical center for a plurality of frames; andin response to the distances getting larger over the plurality of frames, set an autonomous emergency braking inhibitor indicator to indicate inhibition of autonomous emergency braking for a vehicle.20.The non-transitory computer-readable storage medium of claim 19, comprising instructions, that when executed by processing circuitry of a computing system, cause the processing circuitry to:inhibit actuation of autonomous emergency braking for the vehicle when the autonomous emergency braking inhibitor indicator indicates inhibition.

Citation Information

Patent Citations

  • Vision-based vehicle front collision prediction method

    CN111950483A

  • Automatic emergency braking function development method, device and system and storage medium

    CN116305545A

  • EFEM SYSTEM, Equipment Front End Module SYSTEM

    KR102124372B1

  • Delay Autonomous Braking Activation Due to Potential Forward Turning Vehicle

    US20200324743A1

Cited By

  • AEB triggering method for reducing false triggering in curve scene

    CN121912925A