Electronic device and method for estimating trailer length by using camera, and storage medium
By installing a camera behind the tractor, identifying the blocked and unblocked parts of the trailer, combining processor calculations and neural network analysis, the accuracy of trailer length measurement is solved, and the safety and efficiency of the autonomous driving system is improved.
Patent Information
- Application Number
- CN202510257242.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-05
- Filing Date
- 2025-03-05
- Publication Date
- 2025-09-05
AI Technical Summary
In the prior art, it is difficult to accurately estimate the length of a trailer effectively using a camera, especially when the tow truck is connected to the trailer, the viewing angle and position of the camera limit the accurate measurement of the trailer length.
By installing a camera behind the tractor, the image facing the lower part of the trailer is obtained, the parts blocked and unobstructed by the trailer are identified, the processor is used to calculate the length of the trailer, and combined with the neural network to analyze the image and video data, the precise measurement of the trailer length is achieved.
Accurate estimation of the length of the trailer is achieved, and accurate judgment of the distance between the trailer and other vehicles in the autonomous driving system is supported, improving driving safety and operation efficiency.
Smart Images

Figure CN120599563A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to an electronic device, method, and non-transitory computer-readable storage medium for estimating trailer length using a camera. Background Art
[0002] Vehicles such as tractors used to tow trailers may include electronic components for assisting the driver in driving activities, such as an ECU (electronic control unit), which may include a camera for capturing images and / or videos of the vehicle's external environment.
[0003] The above information is provided as background art to assist in understanding the present disclosure, and no assertion is made or determination is made as to whether any portion of the above information is applicable as prior art related to the present disclosure. Summary of the Invention
[0004] In one embodiment, an electronic device of a vehicle including a tractor for towing a trailer includes a communication interface and a processor, wherein the processor is configured to: obtain, through the communication interface, an image captured by a camera when viewing from below the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identify in the image a first portion obscured by the trailer and a second portion not obscured; and determine the length of the trailer based on a size of the second portion.
[0005] According to one embodiment, a method for an electronic device of a vehicle including a tractor for towing a trailer may include the following operations: obtaining an image captured by a camera when viewed from below the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identifying a first portion obscured by the trailer and a second portion not obscured in the image; and determining a length of the trailer based on a size of the second portion.
[0006] According to one embodiment, a non-transitory computer-readable storage medium may store one or more programs. When executed by a processor of an electronic device of a vehicle including a tractor for towing a trailer, the one or more programs may enable the electronic device to: acquire an image captured by a camera viewed from below the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identify a first portion obscured by the trailer and a second portion not obscured in the image; and determine the length of the trailer based on a size of the second portion. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Figure 1a 、 Figure 1b and Figure 1c An example of a vehicle including an electronic device 201 according to an embodiment is shown.
[0008] Figure 2 A block diagram of an electronic device 201 according to an embodiment is shown.
[0009] Figure 3a and Figure 3b FIG. 1 is a schematic diagram for explaining an operation of determining the length of the trailer 120 by an electronic device according to an embodiment.
[0010] Figure 4a and Figure 4b is a schematic diagram for illustrating a method for determining the size of a second portion in an image according to an embodiment.
[0011] Figure 5a and Figure 5b is a schematic diagram for explaining a method for determining a distance to another vehicle located behind a vehicle according to an embodiment.
[0012] Figure 6 A flow chart of an electronic device according to an embodiment is shown.
[0013] Figure 7 An example block diagram of an autonomous driving system for a vehicle according to an embodiment is shown.
[0014] Figure 8 and Figure 9 An example block diagram of an autonomous driving mobile body according to an embodiment is shown.
[0015] Figure 10 An example of a gateway associated with a user device according to various implementation examples is shown.
[0016] Figure 11 is a diagram for explaining operation of an electronic device for training a neural network based on a training data set according to an embodiment.
[0017] Figure 12 is a block diagram of an electronic device according to an embodiment. DETAILED DESCRIPTION
[0018] The description of specific structures or functions in the embodiments of the present invention disclosed in this specification is only used to illustrate the embodiments of the present invention in an exemplary manner. These embodiments can be implemented in various forms and are not limited to the embodiments described in this specification.
[0019] The embodiments of the present invention are susceptible to various modifications and may have various forms, and thus are illustrated by way of example in the accompanying drawings and described in detail in this specification. However, this is not intended to limit the embodiments of the present invention to the specific disclosed forms, but rather to encompass modifications, equivalents, or alternatives that fall within the spirit and technical scope of the invention.
[0020] Terms such as "first" or "second" may be used to describe various components, but these components should not be limited by these terms. The above terms are only used to distinguish one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.
[0021] When a component is referred to as being "connected to" or "accessed to" another component, it should be understood that the component can be directly connected to or accessed to the other component, or can be connected or accessed through other intervening components. Conversely, when a component is referred to as being "directly connected to" or "directly accessed to" another component, it should be understood that there are no intervening components. Expressions describing the relationship between components, such as "between," "immediately between," or "directly adjacent to," should be interpreted similarly.
[0022] The terms used in this specification are intended only to describe specific embodiments and are not intended to limit the present invention. Unless the context clearly indicates otherwise, expressions in the singular shall include the plural. In this specification, terms such as "including" or "having" are intended to indicate the presence of a described feature, quantity, step, operation, constituent element, component, or combination thereof, and do not exclude the presence or possibility of adding one or more other features, quantities, steps, operations, constituent elements, components, or combinations thereof.
[0023] Unless otherwise defined, all terms (including technical or scientific terms) used in this specification shall have the same meaning as commonly understood by those skilled in the art in the art to which this invention belongs. Terms defined in commonly used dictionaries shall be interpreted as consistent with their contextual meaning in the relevant art and shall not be interpreted in an idealized or overly formal sense unless otherwise explicitly defined in this specification.
[0024] The following embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or restricted by these embodiments. The same reference numerals shown in the various drawings may represent the same structure, and repeated descriptions thereof may be omitted.
[0025] Over the years, the trucking industry has experienced sustained growth and expanded its service offerings to address more complex supply chains. These services include last-mile deliveries, drop-trailer programs, and intermodal transportation through ports (a form of transportation in which freight is delivered to its destination using two or more different modes of transportation, such as ship and rail, or ship and aircraft).
[0026] It can be seen that due to the great variety of cargo transportation methods, manufacturers of cargo transportation-related equipment have designed different forms of equipment for cargo transportation according to various transportation needs.
[0027] In this specification, a truck that tows a trailer whose main purpose is to transport (carry or cater) freight will be generally referred to as a tractor.
[0028] The tractors described in this specification can be divided into conventional trucks (or bonneted trucks), cab-over trucks (or cab-over engine trucks), and semi-conventional trucks, which are between conventional trucks and cab-over trucks, based on the position and shape of their cabs.
[0029] In a conventional truck, the engine and hood are located above the front axle in front of the tractor cab, with the driver sitting behind the front axle. This type of tractor, with the engine located in front of the driver, is primarily used in North America.
[0030] In contrast, a cabover truck has the cab at the front of the tractor, with the driver sitting in front of the front axle. The front of the tractor is flat, often called a "flat face" or "flat nose," with the engine located below the driver. This type of tractor is primarily used in Europe and most of Asia.
[0031] Just as tractors come in many forms depending on their purpose and needs, the trailers towed by tractors also come in a variety of styles. The most representative trailer types include full-trailers and semi-trailers. The difference between full-trailers and semi-trailers lies in whether the trailer has both a front axle and a rear axle. These trailers can be connected to a box truck or tractor using a coupling device.
[0032] Specifically, a full-trailer is a commercial freight trailer equipped with a front axle and a rear axle. Designed to carry its total weight independently of a towing vehicle, a full-trailer is equipped with a drawbar for connecting to a hauling unit or towing unit, such as a tractor. This type of trailer is widely used in the United States, Canada, and other regions.
[0033] In contrast, a semi-trailer is a cargo trailer equipped with only a rear axle and no front axle. A large portion of its weight is supported by a tractor vehicle connected to it by a hitch called a fifth wheel. When the semi-trailer is detached from the tractor vehicle and stationary, the weight of the trailer can be supported by the landing gear mounted on the bottom of the semi-trailer, which is vertically extended to the ground. The combination of a semi-trailer and a tractor vehicle is called a semi-trailer truck, and in the United States it is often referred to as a "semi-trailer", "tractor-trailer", "semi-truck", "big rig" or "semi". The "fifth wheel" mentioned above refers to a horizontal wheel mounted on the axle of a tractor truck to facilitate steering of the trailer. It is also called the fifth wheel. A "fifth wheel" is a device used to achieve a movable connection (movable connection) between the tractor and the semi-trailer. It typically consists of a kingpin mounted on the semi-trailer, securely fastened to a trunnion plate on the tractor, and a locking device.
[0034] In this specification, the following terms will be used based on the above-mentioned tractor / trailer. For convenience of explanation, a "trailer" refers to a cargo transport vehicle connected to a tractor for a trailer, and a "tractor" refers to the towing vehicle used to move the trailer. Furthermore, to minimize limitations on the scope of the present invention due to the embodiments described in the detailed description, a tractor hauling / towing a "trailer" may be described as a "towing vehicle," and a trailer towed by the tractor may be described as a "towed vehicle." These terms may be used interchangeably in the description.
[0035] In addition, for the convenience of explanation, it is preferred that the “trailer” mentioned in this specification be understood to refer to a “semi-trailer”, but not limited thereto.
[0036] Figure 1a 、 Figure 1b and Figure 1c An example of a vehicle including an electronic device 201 according to an embodiment is shown. Figure 1a 、 Figure 1b and Figure 1c , a vehicle 100 is exemplarily shown, including a tractor or tractor unit 110 and a semi-trailer 120 . Figure 1a The tractor 110 and the semi-trailer 120 are not connected. Figure 1b The diagram shows a state where a tractor 110 is connected to a semi-trailer 120. In one embodiment, the semi-trailer 120 can be selectively connected via a fifth wheel hitch 160 on the tractor 110. The fifth wheel hitch 160 can be connected to a kingpin 180 fixed to the semi-trailer 120 in a known manner. The vehicle 100 including the tractor 110 and the semi-trailer 120 can be referred to as a truck. The vehicle 100 can also include only the tractor 110.
[0037] Figure 1a 、 Figure 1b and Figure 1c The semi-trailer 120 shown in the figure is shown in the form of a “semi-trailer”, but this is only for the convenience of explanation, and it should not be understood that the embodiments of the present disclosure are only applicable to the form of a “semi-trailer”. Figure 1a 、 Figure 1b and Figure 1c The tractor 110 shown in the figure is in the form of a "flat-top truck", but this is also only for the convenience of explanation, and it should not be understood that the embodiments of the present disclosure are only applicable to the form of a "flat-top truck".
[0038] In one embodiment, the tractor 110 may include a front portion 111 and a rear portion 112. The front portion 111 may include a cab (or passenger compartment) for the driver. The rear portion 112 may be provided with a steering wheel hook 160 for connecting to the semi-trailer 120. In one embodiment, the semi-trailer 120 may include a kingpin 180 connected to the steering wheel hook 160 of the tractor 110, and a landing gear 190 for supporting the semi-trailer 120 on the ground when the semi-trailer 120 is not connected to the tractor 110. The kingpin 180 and the landing gear 190 may be mounted on the bottom of the semi-trailer 120.
[0039] In one embodiment, the tractor 110 may include an internal combustion engine, an electric motor, or a combination thereof, which is referred to as an engine. The tractor 110 may include a battery and / or a fuel tank (e.g., a fuel tank for storing gasoline, diesel, liquefied natural gas (LNG), liquefied petroleum gas (LPG), and / or hydrogen). For example, the tractor 110 may include a rechargeable battery and an electric motor driven by the electrical energy stored in the battery. Such a tractor may be referred to as an electric vehicle (EV) and / or an electric truck. For example, the tractor 110 may include not only a battery and a motor but also a fuel tank and an engine. Such a tractor may be referred to as a hybrid vehicle (e.g., a plug-in hybrid electric vehicle (PHEV)).
[0040] In one embodiment, the semi-trailer 120 can be coupled to or detached from the tractor 110. For example, the semi-trailer 120 can be connected to the rear portion 112 of the tractor 110. The semi-trailer 120 coupled to the tractor 110 can be towed by the tractor 110. To facilitate travel on curved roads, the semi-trailer 120 can be rotatably connected to the tractor 110. For example, the tractor 110 and the semi-trailer 120 can be rotatably connected via a coupling device including a fifth wheel hitch 160 and a kingpin 180. However, the connection mechanism between the tractor 110 and the semi-trailer 120 is not limited thereto.
[0041] In one embodiment, the semi-trailer 120 may have a structure for accommodating people and / or cargo. For example, the semi-trailer 120 may include a trailer for transporting people, such as a trailer bus, an RV, or a caravan. For example, the semi-trailer 120 may include a trailer for transporting various types of cargo, such as a flatbed trailer, a container trailer, a dump trailer, a refrigerated trailer, a tank trailer, and a car transport trailer. However, the above examples are not intended to be limiting.
[0042] In one embodiment, a vehicle may include multiple electronic components. These electronic components included in the vehicle may be referred to as an electronic control unit (ECU). The electronic components may include sensing devices for acquiring and / or detecting information related to the vehicle and / or its external environment, and / or driving devices for controlling the vehicle.
[0043] The driving device may include a steering motor that changes the driving direction according to the vehicle's steering angle, a transmission, an electronic brake that provides braking power according to pedal movement, an anti-lock brake system (ABS) that controls the output of the braking force, and / or an electronic throttle control valve (ETC) that controls the engine output according to pedal movement.
[0044] The sensing device may include a seat sensor for detecting a person sitting on a seat, one or more temperature sensors for detecting the temperature of the air inside the vehicle and / or the outside air, a GPS (global positioning system) sensor for detecting the geographic location of the vehicle, and an inertial measurement unit (IMU) (e.g., an acceleration sensor, a gyroscope sensor, a geomagnetic sensor, or a combination thereof) for detecting the physical movement of the vehicle (e.g., translation movement and / or rotational movement). The embodiment is not limited thereto, and the sensing device may also be used as a means of detecting external objects, including a camera, a depth camera, a time of flight (ToF) sensor, a laser radar (LiDAR, light detection and ranging), a radar, a proximity sensor, and / or an ultrawideband (UWB, ultrawideband) sensor.
[0045] In one embodiment, the tractor 110 may include a camera 130 disposed to face rearward of the tractor 110. The camera 130 may continuously output images corresponding to a view angle f in a time domain. The vehicle's electronic device may generate a composite image (e.g., a video) based on the images acquired from the camera in the time domain.
[0046] In one embodiment, the camera 130 may be disposed at the rear portion 112 of the tractor 110. For example, the camera 130 may be disposed at an end of the rear portion 112 in a direction behind the tractor 110. For example, the camera 130 may be located below the rear portion 112. When the semi-trailer 120 is coupled to the tractor 110, the camera 130 may be located below the semi-trailer 120. The camera 130 may obtain an image viewed from the rear of the tractor 110 below the semi-trailer 120. In one embodiment, the vehicle's electronic device may determine the actual length d (e.g., the length of the rear of the semi-trailer 120) of the semi-trailer 120 using the image obtained by the camera 130. Figure 3a The actual length d of the second portion 302 in the vehicle can be used by the vehicle's electronic device to determine the total length of the semi-trailer 120. In this regard, reference will be made to Figures 3a to 6 Provide explanation.
[0047] Figure 2 FIG. 2 is a block diagram of an electronic device 201 according to an embodiment. According to an embodiment, the electronic device 201 may be included in a vehicle including the tractor 110 as described in FIG. 1 .
[0048] Reference Figure 2 According to one embodiment, the electronic device 201 may include at least one of a processor 210, a memory 215, a sensor 220, and a communication interface 225. The processor 210, the memory 215, the sensor 220, and the communication interface 225 may be electrically and / or operatively connected to each other via a circuit such as a communication bus 202. In the following description, the operative connection of a circuit may represent a direct or indirect connection established by the circuit in a wired or wireless manner so that the first circuit can control the second circuit. Although shown by different modules, the embodiment is not limited thereto. For example, Figure 2 Part of the circuits in the electronic device 201 (such as at least a portion of the processor 210 and the memory 215) may be included in a single integrated circuit such as a SoC (system on a chip). The type and / or number of circuits included in the electronic device 201 are not limited to Figure 2 For example, the electronic device 201 may only include Figure 2 A portion of the circuit shown.
[0049] According to one embodiment, the processor 210 of the electronic device 201 may include a circuit for processing data based on multiple instructions. The circuit for processing data may include, for example, an arithmetic logic unit (ALU), a floating point unit (FPU), a field programmable gate array (FPGA), a central processing unit (CPU) and / or an application processor (AP). The number of processors 210 may be more than one. The processor 210 may have a multi-core processor architecture, such as a dual core, a quad core, a hexa core, or an octa core. In a processor 210 having a multi-core architecture, the functions described in the present disclosure may be collectively performed by different cores.
[0050] In one embodiment, the processor 210 may obtain parameters of the camera 130. For example, the processor 210 may obtain these parameters by calibrating the camera 130. For example, these parameters may include internal parameters such as focal length, viewing angle f, sensor size, and sensor resolution, as well as external parameters indicating the position and orientation of the camera 130.
[0051] According to one embodiment, the memory 215 of the electronic device 201 may include a hardware component for storing data and / or instructions input to and / or output by the processor 210. The memory 215 may include, for example, a volatile memory such as a random-access memory (RAM) and / or a non-volatile memory such as a read-only memory (ROM). The volatile memory may include, for example, at least one of a dynamic random access memory (DRAM), a static random access memory (SRAM), a cache RAM, and a pseudo-static random access memory (PSRAM). The non-volatile memory may include, for example, at least one of a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a hard disk, an optical disk, a solid state drive (SSD), and an embedded multimedia card (eMMC).
[0052] According to one embodiment, the sensor 220 of the electronic device 201 can generate electrical signal information that can be processed by the processor 210 and / or the memory 215 based on non-electronic information related to the electronic device 201 and / or the vehicle containing the electronic device 201. For example, the sensor 220 can include a GPS (global positioning system) sensor for detecting the geographic location of the electronic device 201. In addition to the GPS method, the sensor 220 can also generate information representing the geographic location of the electronic device 201 based on a global navigation satellite system (GNSS), such as Galileo, Beidou (Compass), etc. The above information can be stored in the memory 215, processed by the processor 210, and / or transmitted to another electronic device other than the electronic device 201 via the communication interface 225. The sensor 220 is not limited to the above, and may also include an image sensor for detecting electromagnetic waves including light, a light sensor, an inertial measurement unit (IMU) (for example, an acceleration sensor, a gyroscope sensor and / or a geomagnetic sensor) and / or a time-of-flight sensor (ToF).
[0053] According to one embodiment, the communication interface 225 of the electronic device 201 may include circuits, ports, and / or connectors for supporting communication with an external electronic device different from the electronic device 201. For example, the communication interface 225 may include ports and / or connectors for supporting wired communication, such as a CAN (Controller Area Network), a USB (Universal Serial Bus), and / or a COM (Communication) port. For example, the communication interface 225 may include ports and / or connectors based on the OBD (On Board Diagnosis) standard. The embodiment is not limited thereto, and the communication interface 225 may further include circuits and / or antennas for supporting wireless communications, such as cellular mobile communication systems, WiFi (Wireless Fidelity), Bluetooth, BLE (Bluetooth Low Energy), and / or NFC (Near Field Communication), as well as satellite communications with satellites in Earth orbits (such as LEO (Low Earth Orbit), GEO (Geostationary Orbit), and MEO (Medium Earth Orbit). In addition, the communication interface 225 may include a modem for generating electrical signals according to a communication protocol.
[0054] Reference Figure 2 The electronic device 201 can be electrically and / or operatively connected to electronic components included in the vehicle via the communication interface 225. For example, the electronic device 201 can communicate with the vehicle's camera 130 via the communication interface 225. Although an embodiment in which the electronic device 201 is directly connected to the camera 130 has been described, the embodiment is not limited thereto, and the camera 130 can also be indirectly connected to the electronic device 201 via the vehicle's electronic control unit (ECU).
[0055] According to one embodiment, one or more instructions (or commands) may be stored in the memory 215 of the electronic device 201. These instructions are used to represent the calculations and / or operations that the processor 210 will perform on the data. The set of one or more instructions may be referred to as firmware, operating system, process, routine, subroutine, program and / or software application (hereinafter referred to as application). For example, when a plurality of sets of instructions distributed in the form of operating system, firmware, driver and / or application are executed, the electronic device 201 and / or processor 210 may execute the instructions referred to as firmware, operating system, process, routine, subroutine, program and / or software application (hereinafter referred to as application). Figures 3a to 6 In the following description, “the application is installed in the electronic device 201” can be understood as one or more instructions provided in the form of an application being stored in the memory 215 of the electronic device 201, and these one or more instructions are stored in an executable format (for example, a file with an extension specified by the operating system of the electronic device 201) of the processor 210 of the electronic device 201.
[0056] The following describes a method of estimating the length of the trailer 120 and a method of estimating the distance to another vehicle located in a rearward direction of the trailer 120. The operations described with reference to the following figures may be performed by the electronic device 201 and / or the processor 210.
[0057] Figure 3a and Figure 3b FIG. 1 is a schematic diagram for explaining an operation of determining the length of the semi-trailer 120 by an electronic device according to an embodiment.
[0058] Reference Figure 3a and Figure 3b , the processor 210 can obtain the image 300 captured by the camera 130. For example, the processor 210 can obtain the image 300 captured by the camera 130 through the communication interface 225. The image 300 can be an image captured from below the semi-trailer 120 toward the rear of the tractor 110.
[0059] In one embodiment, the processor 210 may identify a first portion 301 blocked by the semi-trailer 120 and a second portion 302 not blocked by the semi-trailer 120 in the image 300. The second portion 302 may be included in a region of interest (ROI) (e.g., Figure 4aThe second portion 302 may include the area between the rearmost wheels of the semi-trailer 120 in the image 300. In one embodiment, the processor 210 may identify the actual size (e.g., actual length d) of the second portion 302. The processor 210's operation of identifying the first portion 301 and the second portion 302 in the image 300 and determining the actual size of the second portion 302 may be combined with the Figure 4a and Figure 4b Provide detailed explanation.
[0060] In one embodiment, the processor 210 may determine the actual length L of the semi-trailer 120 based on the actual size of the second portion 302. For example, the actual length L may be calculated using the following mathematical formula 1:
[0061]
Mathematical formula 1
[0062] L=d / tan(a)
[0063] In the above-mentioned Mathematical Formula 1, the viewing angle a may be a viewing angle related to the second portion 302. For example, the viewing angle a may be a viewing angle corresponding to the length dp of the second portion 302 in one direction. The length dp of the second portion 302 is not the length of an actual object but may be a length in the image 300.
[0064] In one embodiment, the processor 210 may calculate the viewing angle a using the viewing angle f of the camera 130 , the length dp, and the total length of the image 300 in a direction parallel to the length dp (eg, viewing angle f: viewing angle a = total length of the image 300 : length dp).
[0065] The semi-trailer 120 connected to the tractor 110 usually varies in size and shape depending on the requirements of the transportation task. In one embodiment, the length of the semi-trailer 120 of various sizes can be easily determined by a camera 130 installed on the tractor 110 (not the semi-trailer 120).
[0066] Reference Figure 3a and Figure 3b , illustrates an example of using the length dp in one direction of the second portion 302 to determine the actual length L of the semi-trailer 120, but the present invention is not limited thereto. For example, to determine the actual length L, multiple lengths in multiple directions of the second portion 302 may be used.
[0067] Figure 4a and Figure 4b is a schematic diagram for illustrating a method for determining the size of a second portion in an image according to an embodiment. Figure 4a The image 400 shown may correspond to Figure 3a Image 300 in.
[0068] Reference Figure 4a , the processor 210 may identify a region of interest (ROI) R in the image 400. The region of interest R may be, for example, a region having the same center as the image 400 and having a size of 15% of the entire size of the image 400, but is not limited thereto.
[0069] Reference Figure 4a and Figure 4b In one embodiment, the processor 210 may acquire an image 410. For example, the processor 210 may perform a binarization process (e.g., adaptive binarization) and a morphological operation on the region of interest R of the image 400, thereby acquiring the image 410 divided into a first portion 411 and a second portion 412. In one embodiment, the first portion 411 in the image 410 may correspond to Figure 3a The first portion 301 of the image 300 and the second portion 412 of the image 410 may correspond to Figure 3a The second portion 302 of the image 300 is shown.
[0070] In one embodiment, the processor 210 may determine the size of the second portion 412 in the image 410. For example, the processor 210 may assign a median pixel width to each pixel in the second portion 412 based on the horizontal direction of the image 410, and determine the size of the second portion 412 based on this (e.g., Figure 3a The length in dp).
[0071] As an alternative or in addition, the processor 210 can use a trained neural network to analyze images and / or videos to obtain the size of the second part 412 and / or the actual length L of the semi-trailer 120. For example, the neural network can be trained by images (or videos) related to distance. For example, the neural network may include a DNN (Deep Neural Network) having multiple layers of neurons. For example, a target recognition algorithm based on deep learning, such as YOLO (You Only Look Once), can be used. But it is not limited to the above examples. For example, neural network structures such as SSD (Single Shot MultiBox Detector), Faster R-CNN (Region-Based Convolutional Neural Network) and Mask R-CNN can also be used for the operation of the neural network.
[0072] Figure 5a and Figure 5bis a schematic diagram for explaining a method for determining a distance to another vehicle located in a rear direction of a vehicle according to an embodiment. Figure 5a It may be a lateral view of the vehicle and other vehicles 505 traveling on the road as viewed from the side. Figure 5b The image 500 may correspond to at least a portion of the image 300 acquired by the camera 130 .
[0073] Reference Figure 5a and Figure 5b , the processor 210 can identify the object 507 corresponding to the other vehicle 505 in the image 500 and determine the width c of the object 507 in the horizontal direction of the image 500. For example, the processor 210 can use the neural network trained to analyze images to identify the object 507 in the image 500 and determine the width c of the object 507. The object 507 can be included in Figure 3a In the second portion 302 of the image 300 .
[0074] In one embodiment, processor 210 may identify lane lines 550 in image 500 and determine a width w between lane lines 550. For example, processor 210 may utilize the neural network trained to analyze images to identify lane lines 550 and determine the width w between lane lines 550. Width w may be a length in a direction parallel to the horizontal direction of image 500 and contacting the bottommost outer edge of object 507. The units of width w and width c may be the same (e.g., pixels).
[0075] In one embodiment, the processor 210 can obtain information about the actual width between lane lines 550. For example, the processor 210 can use the sensor 220 (e.g., a GPS sensor) to detect the vehicle's geographic location. The processor 210 can use the detected geographic location to obtain information about the actual width between lane lines 550. For example, the memory 215 of the electronic device 201 can store map data including lane line actual width information to provide navigation services. The processor 210 can use this map data and the detected geographic location of the vehicle to obtain information about the actual width between lane lines 550. For example, the processor 210 can obtain the coordinates (e.g., camera coordinates) of points P1 and P2 corresponding to the end points of the width w between lane lines 550. The processor 210 can use the intrinsic and extrinsic parameters of the camera 130 obtained through camera calibration to convert the coordinates of points P1 and P2 into points in a camera-referenced 3D coordinate system (or a world coordinate system) and determine the distance between these points. Using this method, the actual width between lane lines 550 can be determined. To improve the accuracy of the actual width value between lane lines 550 , a method based on the vehicle's geographic location and a method based on the coordinates of points P1 and P2 may be used in combination (eg, when the vehicle is determined to be on flat ground), but the present invention is not limited thereto.
[0076] In one embodiment, the processor 210 can determine the front width of the other vehicle 505 corresponding to the width c based on the width c of the object 507, the width w between the lane lines 550, and the actual width between the lane lines 550 (for example, the actual width between the lane lines 550: the front width of the other vehicle 505 = the width w between the lane lines 550: the width c of the object 507).
[0077] In one embodiment, the processor 210 may determine the actual distance between the tractor 110 and the other vehicle 505 based on the front width of the other vehicle 505. For example, the processor 210 may determine the actual distance between the tractor 110 and the other vehicle 505 based on the front width of the other vehicle 505 and the viewing angle f of the camera 130. In this regard, a corresponding method may be applied: Figure 3a and Figure 3b As described above, the actual length L of the semi-trailer 120 is calculated using the viewing angle f and the actual length d of the second portion 302 .
[0078] In one embodiment, the ratio of the width c of the object 507 of the other vehicle 505 to the width w of the lane line 550 can remain unchanged even when the distance between the vehicle and the other vehicle changes.
[0079] In one embodiment, the processor 210 can determine the actual distance between the semi-trailer 120 and the other vehicle 505 based on the actual length L of the semi-trailer 120 and the actual distance between the tractor 110 and the other vehicle 505 (for example, the actual distance between the tractor 110 and the other vehicle 505 - the actual length L of the semi-trailer 120 = the actual distance between the semi-trailer 120 and the other vehicle 505).
[0080] In one embodiment, the processor 210 may determine the category of the other vehicle 505 based on the front width of the other vehicle 505 and / or the width c of the object 507. For example, the category may be a category classified according to vehicle size, such as a large vehicle, a medium vehicle, or a small vehicle.
[0081] When the distance is the same, the width w between lane lines 550 may be the same, but the width c of object 507 of other vehicle 505 may be different depending on the vehicle category. Therefore, in order to determine the actual distance between other vehicles 505, information about the category of vehicle 505 can be used in combination.
[0082] Figure 6 A flow chart of an electronic device according to an embodiment is shown. Figure 2 The electronic device 201 and / or the processor 210 may execute the reference Figure 6 For example, the processor 210 can execute the instructions stored in the memory 215 to enable the electronic device 201 to perform Figure 6 At least one operation in . Figure 6 The operations in the embodiment of the present invention may be performed sequentially, but need not be performed in order. For example, the order of the operations may be changed, and at least two operations may be performed in parallel.
[0083] Reference Figure 6 In operation 610, the processor 210 may acquire an image 300 of the camera 130 located at the lower portion of the semi-trailer 120 and viewing the rear direction of the tractor 110. The rear direction may correspond to a direction in which the tractor 110 is reversing.
[0084] In operation 620 , the processor 210 may identify, in the image 300 , a first portion 301 that is blocked by the semi-trailer 120 and a second portion 302 that is not blocked.
[0085] In operation 630, the processor 210 may determine the length of the semi-trailer 120 based on the size of the second portion 302. Alternatively, the processor 210 may obtain information about the length of the semi-trailer 120 from the neural network to which the image 300 is input.
[0086] In operation 640, the processor 210 may identify another vehicle 505 located in a rearward direction of the semi-trailer 120 in the second portion 302 of the image 300. Operation 640 may be performed after, in parallel with, or before operation 630.
[0087] In operation 650, the processor 210 may determine the distance from the tractor 110 to the other vehicle 505 based on the front width of the other vehicle 505. Alternatively, the processor 210 may obtain information about the distance from the tractor 110 to the other vehicle 505 from a neural network input with the image 300 as an input.
[0088] In operation 660, the processor 210 may determine the distance from the semi-trailer 120 to the other vehicle 505. For example, the processor 210 may determine the distance from the semi-trailer 120 to the other vehicle 505 based on the length of the semi-trailer 120 and the distance between the tractor 110 and the other vehicle 505. Alternatively, the processor 210 may obtain information about the distance from the semi-trailer 120 to the other vehicle 505 from the neural network to which the image 300 is input.
[0089] Figure 7 An example block diagram of an autonomous driving system for a vehicle according to an embodiment is shown.
[0090] according to Figure 7 , the vehicle automatic driving system 700 can be a deep learning network including a sensor 703, an image preprocessor 705, a deep learning network 707, an artificial intelligence (AI) processor 709, a vehicle control module 711, a network interface 713 and a communication unit 715. In various embodiments, the various components can be connected through different interfaces. For example, the sensor data sensed and output by the sensor 703 can be fed to the image preprocessor 705. The sensor data processed by the image preprocessor 705 can be fed to the deep learning network 707 run by the AI processor 709. The output of the deep learning network 707 run by the AI processor 709 can be fed to the vehicle control module 711. The intermediate results of the deep learning network 707 running on the AI processor 709 can be fed to the AI processor 709. In various embodiments, the network interface 713 can be connected to the in-vehicle electronic devices (for example: Figure 2The electronic device 201 in the autonomous driving system communicates with the autonomous driving path information and / or autonomous driving control instructions for the autonomous driving of the vehicle to the internal module. In one embodiment, the network interface 713 can be used to transmit the sensor data obtained by the sensor 703 to an external server. In some embodiments, the autonomous driving control system 700 may include additional or fewer components as appropriate. For example, in some embodiments, the image preprocessor 705 may be an optional component. For another example, a post-processing module (not shown) may be included in the autonomous driving control system 700 to perform post-processing on the output of the deep learning network 707 before providing the output to the vehicle control module 711.
[0091] In some embodiments, sensor 703 may include more than one sensor. In various embodiments, sensor 703 may be mounted at different locations on the vehicle. Sensor 703 may face one or more different directions. For example, sensor 703 may be mounted on the front, sides, rear, and / or roof of the vehicle, facing forward, rear, or sideways, among other directions. In some embodiments, sensor 703 may be an image sensor, such as a high dynamic range camera. In some embodiments, sensor 703 may include non-visual sensors. In some embodiments, sensor 703 may include radar, lidar, and / or ultrasonic sensors in addition to image sensors. In some embodiments, sensor 703 is not mounted on the vehicle with vehicle control module 711. For example, sensor 703 may be used as part of a deep learning system to capture sensor data and may be mounted in the environment or on the road and / or on surrounding vehicles.
[0092] In some embodiments, the image pre-processor 705 can be used to pre-process the sensor data of the sensor 703. For example, the image pre-processor 705 can be used to pre-process the sensor data to split the sensor data into one or more constituent elements and / or to post-process one or more constituent elements. In some embodiments, the image pre-processor 705 can be a graphics processing unit (GPU), a central processing unit (CPU), an image signal processor, or a specialized image processor. In various embodiments, the image pre-processor 705 can be a tone-mapper processor for processing high dynamic range data. In some embodiments, the image pre-processor 705 can be a component of the AI processor 709.
[0093] In some embodiments, the deep learning network 707 may be a deep learning network for implementing control commands for controlling the autonomous vehicle. For example, the deep learning network 707 may be an artificial neural network, such as a convolutional neural network (CNN), trained using sensor data, and the output of the deep learning network 707 is provided to the vehicle control module 711.
[0094] In some embodiments, the artificial intelligence (AI) processor 709 may be a hardware processor for running the deep learning network 707. In some embodiments, the AI processor 709 may be a specialized AI processor for performing inference on sensor data using a convolutional neural network (CNN). In some embodiments, the AI processor 709 may be optimized for the bit depth of the sensor data. In some embodiments, the AI processor 709 may be optimized for deep learning operations (such as operations in a neural network including convolution, inner product, vector and / or matrix operations). In some embodiments, the AI processor 709 may be implemented by multiple graphics processing units (GPUs) that can effectively perform parallel processing.
[0095] In various embodiments, the AI processor 709 can be coupled via an input / output interface to a memory storing instructions. When executed by the AI processor 709, these instructions can perform deep learning analysis on sensor data from the sensors 703 and generate machine learning results that enable at least partially autonomous operation of the vehicle. In certain embodiments, the vehicle control module 711 can process vehicle control instructions output by the artificial intelligence (AI) processor 709 and translate the output of the AI processor 709 into instructions for controlling various modules of the vehicle. In certain embodiments, the vehicle control module 711 can be used to control the vehicle to achieve autonomous driving. In certain embodiments, the vehicle control module 711 can adjust the vehicle's steering and / or speed. For example, the vehicle control module 711 can be used to control the vehicle's movement, including deceleration, acceleration, steering, lane changes, and lane keeping. In certain embodiments, the vehicle control module 711 can generate control signals for controlling vehicle lighting, such as brake lights, turn signals, and headlights. In some embodiments, the vehicle control module 711 can be used to control systems related to vehicle audio, such as the vehicle's sound system, the vehicle's audio warnings, the vehicle's microphone system, and the vehicle's horn system.
[0096] In some embodiments, the vehicle control module 711 can be used to control notification systems, including warning systems for alerting passengers and / or drivers to driving events, such as approaching a predetermined destination or a potential collision. In some embodiments, the vehicle control module 711 can be used to adjust vehicle sensors, such as sensor 703. For example, the vehicle control module 711 can modify the orientation of sensor 703, change the output resolution and / or format type of sensor 703, increase or decrease the capture rate, adjust the dynamic range, and adjust the focal length of the camera. In addition, the vehicle control module 711 can turn the operation of sensors on or off individually or collectively.
[0097] In certain embodiments, the vehicle control module 711 can be used to modify parameters of the image preprocessor 705, such as adjusting the frequency range of the filter, adjusting edge detection parameters for feature and / or object detection, or adjusting channels and bit depth. In various embodiments, the vehicle control module 711 can be used to control autonomous driving functions and / or driver assistance functions of the vehicle.
[0098] In certain embodiments, the network interface 713 may serve as an internal interface between the modules of the autonomous driving control system 700 and the communication unit 715. Specifically, the network interface 713 may serve as a communication interface for receiving and / or transmitting data, including voice data. In various embodiments, the network interface 713 may connect to an external server via the communication unit 715 to facilitate voice call connections, receive and / or transmit text messages, transmit sensor data, and update the vehicle's software to the autonomous driving system or the vehicle's autonomous driving system software.
[0099] In various embodiments, the communication unit 715 may include a variety of wireless interfaces in the form of cellular or WiFi. For example, the network interface 713 may be connected to an external server via the communication unit 715 to receive updates on operating parameters and / or instructions for the sensor 703, the image preprocessor 705, the deep learning network 707, the AI processor 709, and the vehicle control module 711. For example, the machine learning model of the deep learning network 707 may be updated via the communication unit 715. In another example, the communication unit 715 may be used to update operating parameters (such as image processing parameters) of the image preprocessor 705 and / or the firmware of the sensor 703.
[0100] In other embodiments, the communication unit 715 can be used to activate communications with emergency services and emergency contacts in the event of an accident or near-accident. For example, in the event of a collision, the communication unit 715 can be used to call emergency services for assistance and to notify emergency services of details of the collision and the location of the vehicle. In various embodiments, the communication unit 715 can also be used to update or obtain an estimated time of arrival and / or destination location.
[0101] According to one embodiment, Figure 7The illustrated autonomous driving system 700 may be comprised of the vehicle's electronic device 201. According to one embodiment, when a user triggers an autonomous driving release event during the vehicle's autonomous driving process, the AI processor 709 of the autonomous driving system 700 may control the vehicle's autonomous driving software to learn by inputting information related to the autonomous driving release event into the training set data of a deep learning network.
[0102] Figure 8 and Figure 9 An example block diagram of an autonomous driving mobile body according to an embodiment is shown. Figure 10 An example of a gateway is shown in relation to a user device in various embodiments.
[0103] Reference Figure 8 According to this embodiment, the autonomous driving mobile body 800 may include a control device 900, perception modules 804a, 804b, 804c, 804d, an engine 806 and a user interface 808.
[0104] The autonomous vehicle 800 may have an autonomous driving mode or a manual mode. For example, the autonomous driving mode may be switched from the manual mode to the autonomous driving mode, or vice versa, based on user input received through the user interface 808.
[0105] When the moving object 800 operates in the automatic driving mode, the automatic driving moving object 800 may operate under the control of the control device 900 .
[0106] In this embodiment, the control device 900 may include a controller 920 having a memory 922 and a processor 924 , a sensor 910 , a communication device 930 , and an object detection device 940 .
[0107] The object detection device 940 may perform all or part of the functions of the distance measurement device.
[0108] That is, in this embodiment, the object detection device 940 is a device for detecting an object located outside the moving body 800. The object detection device 940 can detect an object located outside the moving body 800 and generate object information based on the detection result.
[0109] The object information may include information on the presence or absence of the object, position information of the object, distance information between the moving body and the object, and relative speed information between the moving body and the object.
[0110] Objects may include lane markings, other vehicles, pedestrians, traffic signals, light, roads, structures, speed bumps, terrain features, animals, and other objects external to the mobile object 800. Traffic signals may include traffic lights, traffic signs, and patterns or text painted on the road surface. Furthermore, light may be generated by lights equipped by other vehicles, streetlights, or sunlight.
[0111] Furthermore, structures can be objects located around the road and fixed to the ground. For example, structures can include streetlights, roadside trees, buildings, utility poles, traffic lights, and bridges. Terrain objects can include mountains and hills.
[0112] The object detection device 940 may include a camera module. The controller 920 may extract object information from an external image captured by the camera module and process the information related thereto.
[0113] Furthermore, object detection device 940 may also include an imaging device for sensing the external environment. In addition to LIDAR, RADAR, GPS devices, odometry and other computer vision devices, ultrasonic sensors, and infrared sensors may also be used. These devices may be operated selectively or simultaneously as needed to achieve more accurate detection.
[0114] On the other hand, according to an embodiment of the present invention, the distance measuring device can calculate the distance between the autonomous driving mobile body 800 and the object, and in conjunction with the control device 900 of the autonomous driving mobile body 800, control the movement of the mobile body based on the calculated distance.
[0115] For example, when the distance between the autonomous vehicle 800 and an object is likely to conflict, the autonomous vehicle 800 can control the brakes to reduce speed or stop. Another example is when the object is moving, the autonomous vehicle 800 can control its speed to maintain a predetermined distance from the object.
[0116] According to an embodiment of the present invention, such a distance measurement device may be configured as a module in the control device 900 of the autonomous driving mobile body 800. In other words, the memory 922 and processor 924 of the control device 900 may implement the anti-collision method of the present invention in software.
[0117] In addition, the sensor 910 can be connected to the perception modules 804a, 804b, 804c, and 804d to obtain various perception information of the internal / external environment of the mobile object. The sensor 910 may include a posture sensor (e.g., a yaw sensor, a roll sensor, a pitch sensor), a collision sensor, a wheel sensor, a speed sensor, a tilt sensor, a weight detection sensor, a heading sensor, a gyro sensor, a position module, a mobile forward / backward sensor, a battery sensor, a fuel sensor, a tire sensor, a steering sensor detected by steering wheel rotation, a mobile internal temperature sensor, a mobile internal humidity sensor, an ultrasonic sensor, a light sensor, an accelerator pedal position sensor, a brake pedal position sensor, and the like.
[0118] Therefore, the sensor 910 can obtain perception signals about the following: mobile body posture information, mobile body collision information, mobile body direction information, mobile body position information (GPS information), mobile body angle information, mobile body speed information, mobile body acceleration information, mobile body tilt information, mobile body forward / backward information, battery information, fuel information, tire information, mobile body light information, mobile body internal temperature information, mobile body internal humidity information, steering wheel rotation angle, mobile body external lighting, accelerator pedal pressure, and brake pedal pressure, etc.
[0119] In addition, sensor 910 may also include other sensors, such as an accelerator pedal sensor, a pressure sensor, an engine speed sensor, an air flow sensor (AFS), an intake air temperature sensor (ATS), a water temperature sensor (WTS), a throttle position sensor (TPS), a TDC sensor, and a crankshaft angle sensor (CAS).
[0120] As described above, the sensor 910 may generate mobile object state information based on the sensing data.
[0121] The wireless communication device 930 is configured to implement wireless communication between the autonomous driving mobile bodies 900. For example, the autonomous driving mobile body 900 can communicate with a user's mobile phone, other wireless communication devices 930, other mobile bodies, a central device (such as a traffic control device), a server, etc. The wireless communication device 930 can send and receive wireless signals according to the access wireless protocol. The wireless communication protocol may include Wi-Fi, Bluetooth, Long-Term Evolution (LTE), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Global Systems for Mobile Communications (GSM), but is not limited to these protocols.
[0122] In addition, according to this embodiment, the autonomous driving mobile body 800 can also achieve communication between mobile bodies through the wireless communication device 930. That is, the wireless communication device 930 can communicate with other mobile bodies and other vehicles on the road through vehicle-to-vehicle (V2V) communication. The autonomous driving mobile body 800 can send and receive data such as driving warnings and traffic information through inter-vehicle communication, and can also request information from other mobile bodies or receive requests from other mobile bodies. For example, the wireless communication device 930 can achieve V2V communication through a dedicated short-range communication (DSRC) device or a C-V2V (Cellular-V2V) device. In addition to inter-vehicle communication, communication between the vehicle and other things (such as electronic devices carried by pedestrians, etc.) (V2X, Vehicle-to-Everything communication) can also be achieved through the wireless communication device 930.
[0123] In addition, the wireless communication device 930 can also obtain information from various mobile bodies (Mobility) such as infrastructure located on the road (such as traffic lights, CCTV, RSU, eNode B, etc.) or other autonomous driving (Autonomous Driving) / non-autonomous driving (Non-AutonomousDriving) vehicles through a non-terrestrial network (Non-Terrestrial Network), and use it as the information required for the autonomous driving mobile body 800 to perform autonomous driving.
[0124] For example, the wireless communication device 930 can wirelessly communicate with the low Earth orbit (LEO) satellite system, medium Earth orbit (MEO) satellite system, geostationary orbit (GEO) satellite system, high altitude platform (HAP) system, etc. that constitute the non-terrestrial network through a non-terrestrial network dedicated antenna mounted on the autonomous driving mobile body 800.
[0125] For example, the wireless communication device 930 can conduct wireless communications with various platforms constituting the NTN based on the wireless access specifications of the 5G NR NTN (5th Generation New Radio Non-Terrestrial Network) standard specifications currently under discussion by organizations such as 3GPP, but is not limited thereto.
[0126] In this embodiment, the controller 920 can consider various information such as the location, current time, and available power of the autonomous driving mobile body 800, select a platform that can appropriately perform NTN communication, and control the wireless communication device 930 to perform wireless communication with the selected platform.
[0127] In this embodiment, controller 920, which controls the overall operation of various units within mobile object 800, can be configured by the mobile object's manufacturer during manufacturing or further configured after manufacturing to implement autonomous driving functions. Alternatively, it can include a configuration that continuously executes additional functions by upgrading the controller 920 configured at manufacturing time. This type of controller 920 may also be referred to as an ECU (Electronic Control Unit).
[0128] The controller 920 can collect various data from connected sensors 910, object detection device 940, communication device 930, etc., and based on the collected data, transmit control signals to other components of the mobile body, including the sensors 910, engine 806, user interface 808, communication device 930, and object detection device 940. In addition, although not specifically described, control signals can also be transmitted to the acceleration device, braking system, steering device, or navigation device related to the driving of the mobile body.
[0129] In this embodiment, the controller 920 can control the engine 806. For example, when the autonomous vehicle 800 detects a speed limit on the road, the controller 920 can control the engine 806 to ensure that the driving speed does not exceed the speed limit, or to accelerate the driving speed of the autonomous vehicle 800 within a range that does not exceed the speed limit.
[0130] Furthermore, when the autonomous vehicle 800 approaches or deviates from a lane line during its travel, the controller 920 can determine whether such approach or deviation constitutes a normal driving situation or another driving situation, and control the engine 806 based on the determination to adjust the vehicle's travel. Specifically, the autonomous vehicle 800 can detect lane lines formed on both sides of the lane in which the vehicle is traveling. In this case, the controller 920 can determine whether the autonomous vehicle 800 is approaching or deviating from a lane line. If it is determined that the autonomous vehicle 800 is approaching or deviating from a lane line, it can further determine whether such movement is due to a normal driving situation or another driving situation. Here, as an example of a normal driving situation, the vehicle may need to change lanes. Alternatively, as an example of another driving situation, the vehicle may not need to change lanes. If the controller 920 determines that the autonomous vehicle 800 is approaching or deviating from a lane line when a lane change is not necessary, the autonomous vehicle 800 can be controlled to travel normally in the relevant lane without deviating from the lane line.
[0131] When there are other moving objects or obstacles ahead of the moving object, the engine 806 or the braking system can be controlled to decelerate the moving object. In addition to speed, the trajectory, driving path, and steering angle can also be controlled. Alternatively, the controller 920 can generate the necessary control signals to control the moving object based on information about the moving object's lane markings, driving signals, and other external environments.
[0132] In addition to generating its own control signals, the controller 920 can also communicate with surrounding mobile objects or a central server, and send commands to control surrounding devices through the received information, thereby controlling the travel of the mobile object.
[0133] Furthermore, if the position or viewing angle of the camera module changes, the controller 920 may have difficulty accurately identifying the moving object or lane marking as in the present embodiment. Therefore, to prevent this, the controller 920 may also generate a control signal to perform camera module calibration. Therefore, in this embodiment, the controller 920 issues a calibration control signal to the camera module to maintain the normal installation position, orientation, and viewing angle of the camera module, even if the installation position of the camera module changes due to vibration or impact generated by the movement of the autonomous driving moving object 800. The controller 920 may generate a control signal to perform camera module calibration when a change exceeds a critical value between the pre-stored initial installation position, orientation, and viewing angle information of the camera module and the initial installation position, orientation, and viewing angle information of the camera module measured during driving of the autonomous driving moving object 800.
[0134] In this embodiment, the controller 920 may include a memory 922 and a processor 924. The processor 924 may execute software stored in the memory 922 in response to control signals from the controller 920. Specifically, the controller 920 stores data and commands required to execute the lane detection method described herein in the memory 922. These commands may be executed by the processor 924 to implement one or more methods disclosed herein.
[0135] In this case, the memory 922 may be stored on a recording medium executable by the non-volatile processor 924. The memory 922 may store software and data via appropriate internal or external devices. The memory 922 may be composed of RAM (random access memory), ROM (read only memory), a hard disk, or a memory device connected to a dongle.
[0136] The memory 922 can store at least an operating system (OS), user applications, and executable commands. The memory 922 can also store application data and array data structures.
[0137] Processor 924 may be a microprocessor or suitable electronic processor, and may be a controller, microcontroller, or state machine.
[0138] The processor 924 may be implemented by a combination of computing devices, which may be constituted by a digital signal processor, a microprocessor, or a suitable combination thereof.
[0139] Furthermore, the autonomous mobile object 800 may further include a user interface 808 for receiving user input to the control device 900. The user interface 808 allows the user to input information through an appropriate interactive method. For example, this may be implemented through a touch screen, keyboard, or operation buttons. The user interface 808 transmits the input or command to the controller 920, which then executes control actions for the mobile object in response to the input or command.
[0140] In addition, the user interface 808 can also communicate with devices outside the autonomous driving vehicle 800 through the wireless communication device 930. For example, the user interface 808 can be linked with a mobile phone, tablet computer, or other computer device.
[0141] Furthermore, while the autonomously driven vehicle 800 described in this embodiment includes an engine 806, it may also include other types of propulsion systems. For example, the vehicle may be operated by electricity, hydrogen, or a hybrid system comprising a combination thereof. Therefore, the controller 920 includes a propulsion mechanism specific to the propulsion system of the autonomously driven vehicle 800 and may provide corresponding control signals to the components of each propulsion mechanism.
[0142] Below, refer to Figure 9 , further describing in detail the detailed structure of the control device 900 according to this embodiment.
[0143] The control device 900 includes a processor 924. The processor 924 can be a general-purpose single-chip or multi-chip microprocessor, a dedicated microprocessor, a microcontroller, a programmable gate array, etc. The processor can also be referred to as a central processing unit (CPU). In addition, in this embodiment, the processor 924 can also be used as a combination of multiple processors.
[0144] The control device 900 further includes a memory 922. The memory 922 may be any electronic component capable of storing electronic information. In addition to being a single memory, the memory 922 may also include a combination of multiple memories 922.
[0145] The data and command 922a required for the distance measurement device according to the present invention to execute the distance measurement method may be stored in the memory 922. When the processor 924 executes the command 922a, all or part of the command 922a and the data 922b required to execute the command may be loaded onto the processor 924 (924a, 924b).
[0146] The control device 900 may include a transmitter 930a, a receiver 930b, or a transceiver 930c for allowing signal transmission and reception. One or more antennas 932a, 932b may be electrically connected to the transmitter 930a, the receiver 930b, or each transceiver 930c, and may further include an antenna.
[0147] The control device 900 may further include a digital signal processor (DSP) 970. The DSP 970 allows the mobile device to quickly process digital signals.
[0148] The control device 900 may further include a communication interface 980. The communication interface 980 may include one or more ports and / or communication modules for connecting other devices to the control device 900. The communication interface 980 allows a user to interact with the control device 900.
[0149] The various components of the control device 900 can be connected via one or more buses 990 , and the bus 990 can include a power bus, a control signal bus, a status signal bus, a data bus, etc. Under the control of the processor 924 , the components can communicate information with each other via the bus 990 and perform predetermined functions.
[0150] On the other hand, in various embodiments, the control device 900 can be associated with a gateway to communicate with the secure cloud. Figure 10 , the control device 900 may be associated with a gateway 1005 for providing information acquired from at least one of the components (1001 to 1004) of the vehicle 1000 to the security cloud 1006. For example, the gateway 1005 may be included in the control device 900. As another example, the gateway 1005 may be configured as an independent device within the vehicle 1000, separate from the control device 900. The gateway 1005 can connect the software management cloud 1009, the security cloud 1006, and the internal network of the vehicle 1000 protected by the in-vehicle security software 1010, which have different networks, to achieve communication.
[0151] For example, component 1001 may be a sensor. For example, the sensor may be used to obtain information about at least one of the state of vehicle 1000 or the state around vehicle 1000. For example, component 1001 may include sensor 910.
[0152] For example, component 1002 may be an ECU (electronic control unit), which may be used for engine control, transmission control, airbag control, or tire pressure management.
[0153] For example, component 1003 may be an instrument cluster. For example, the instrument cluster may be a panel located in front of the driver's seat in a dashboard. For example, the instrument cluster may be configured to display information necessary for driving to the driver (or passenger). For example, the instrument cluster may display at least one of a visual element indicating engine revolutions per minute (RPM), a visual element indicating the speed of vehicle 1000, a visual element indicating the remaining fuel level, a visual element indicating the gear status, and a visual element indicating information obtained through component 1001.
[0154] For example, component 1004 may be a telematics device. For example, the telematics device may be a device that provides various mobile communication services such as location information and safe driving in the vehicle (1000) by combining wireless communication technology and GPS (global positioning system) technology. For example, the telematics device may be used to connect the vehicle 1000 to the driver, the cloud (e.g., the safety cloud 1006) and / or the surrounding environment. For example, the telematics device may support high bandwidth and low latency for 5G NR specification technology (e.g., 5G NR's V2X technology, 5G NR's NTN (Non-Terrestrial Network) technology). For example, the telematics device may support autonomous driving of the vehicle 1000.
[0155] For example, gateway 1005 can be used to connect the network within vehicle 1000 with software management cloud 1009 and security cloud 1006, which are external networks. For example, software management cloud 1009 can be used to update or manage at least one software required for driving and managing vehicle 1000. For example, software management cloud 1009 can be linked with in-car security software 1010 installed within the vehicle. For example, in-car security software 1010 can be used to provide security functions within vehicle 1000. For example, in-car security software 1010 can encrypt data sent and received via the in-car network using an encryption key obtained from an external authorized server to encrypt the in-vehicle network. In various embodiments, the encryption key used by in-vehicle security software 1010 can be generated in response to vehicle identification information (vehicle license plate, vehicle identification number (VIN)) or information uniquely assigned to each user (e.g., user identification information).
[0156] In various embodiments, the gateway 1005 can transmit data encrypted by the in-vehicle security software 1010 using the encryption key to the software management cloud 1009 and / or the security cloud 1006. The software management cloud 1009 and / or the security cloud 1006 decrypt the data encrypted by the in-vehicle security software 1010 using the encryption key using a decryption key capable of decrypting the data, thereby identifying the vehicle or user from which the data was received. For example, because the decryption key is a unique key corresponding to the encryption key, the software management cloud 1009 and / or the security cloud 1006 can identify the data sender (e.g., the vehicle or user) based on the data decrypted using the decryption key.
[0157] For example, gateway 1005 is configured to support in-vehicle security software 1010 and may be associated with control device 900. For example, gateway 1005 may be associated with control device 900 to support a connection between control device 900 and client device 1007 connected to secure cloud 1006. According to another example, gateway 1005 may be associated with control device 900 to support a connection between control device 900 and a third-party cloud 1008 connected to secure cloud 1006. However, the present invention is not limited thereto.
[0158] In various embodiments, gateway 1005 can be used to connect vehicle 1000 with a software management cloud 1009 for managing the operating software of vehicle 1000. For example, software management cloud 1009 monitors whether the operating software of vehicle 1000 needs to be updated and, upon detecting that the operating software of vehicle 1000 needs to be updated, provides data for updating the operating software of vehicle 1000 via gateway 1005. In another example, software management cloud 1009 receives a user request for updating the operating software of vehicle 1000 from vehicle 1000 via gateway 1005 and, based on the request, provides data for updating the operating software of vehicle 1000. However, the present invention is not limited thereto.
[0159] Figure 11 is a diagram for explaining operation of an electronic device for training a neural network based on a training data set according to an embodiment.
[0160] Reference Figure 11 The described operations can be performed by the above-mentioned electronic devices (e.g., Figure 2 Executed by the electronic device 201).
[0161] refer to Figure 11In operation 1102, according to one embodiment, an electronic device may obtain a training data set. The electronic device may obtain a training data set for supervised learning. The training data may include input data and ground truth data pairs corresponding to the input data. The ground truth data may represent output data to be obtained from a neural network that receives input data of the ground truth data pair. The ground truth data may be obtained by the aforementioned electronic device.
[0162] For example, when training a neural network to recognize an image, the training data may include information about the image and one or more objects contained in the image. The information may include a category (category or class) of an object that can be recognized by the image. The information may include the position, width, height, and / or size of a visual object corresponding to the object in the image. The training data set identified by operation 1102 may include multiple training data pairs. In the example of training a neural network to recognize an image, the training data set identified by the electronic device may include multiple images and ground truth data corresponding to each of the multiple images.
[0163] Reference Figure 11 In operation 1104, according to one embodiment, the electronic device may train the neural network based on the training data set. In one embodiment of training the neural network based on supervised learning, the electronic device may input the input data contained in the training data into the input layer of the neural network. Figure 12 An example of a neural network including the input layer is described. The electronic device can obtain output data of the neural network corresponding to the input data from the output layer of the neural network that receives the input data through the input layer.
[0164] In one embodiment, the training of operation 1104 may be performed based on the difference between the output data and the ground truth data corresponding to the input data included in the training data. For example, the electronic device may adjust one or more parameters related to the neural network (e.g., the reference Figure 12 The electronic device may adjust the one or more parameters to reduce the difference. The operation of the electronic device to adjust the one or more parameters may be referred to as tuning the neural network. The electronic device may perform neural network tuning based on the output data by using a function defined for evaluating the performance of the neural network, such as a cost function. The difference between the output data and the ground truth data may be included in an example of the cost function.
[0165] refer to Figure 11 In operation 1106, according to one embodiment, the electronic device may determine whether the neural network trained in operation 1104 outputs valid output data. Valid output data means that the difference (or cost function) between the output data and the ground truth data satisfies the conditions set for using the neural network. For example, when the average value and / or the maximum value of the difference between the output data and the ground truth data is less than or equal to a specified threshold, the electronic device may determine that the neural network has output valid output data.
[0166] If the neural network does not output valid output data (1106-No), the electronic device may repeatedly perform training of the neural network based on operation 1104. The embodiment is not limited thereto, and the electronic device may repeatedly perform operations 1102 and 1104.
[0167] When valid output data is obtained from the neural network (1106-Yes), the electronic device according to one embodiment may use the trained neural network based on operation 1108. For example, the electronic device may input other input data, which is different from the input data input to the neural network as training data, into the neural network. The electronic device may use the output data obtained from the neural network that received the other input data as the result of inference performed on the other input data by the neural network.
[0168] Figure 12 is a block diagram of an electronic device according to an embodiment.
[0169] Figure 12 The electronic device 101 may include the aforementioned electronic devices.
[0170] For example, refer to Figure 12 The described operation can be performed by Figure 12 The electronic device 101 and / or Figure 12 Executed by processor 1210.
[0171] Reference Figure 12, the processor 1210 of the electronic device 101 can perform computations related to the neural network 1230 stored in the memory 1220. The processor 1210 may include at least one of a central processing unit (CPU), a graphics processing unit (GPU), or a neural processing unit (NPU). The NPU can be implemented as a chip separate from the CPU, or integrated in a chip such as a CPU in the form of a system on a chip (SoC). The NPU integrated in the CPU can be called a neural core and / or an artificial intelligence (AI) accelerator.
[0172] Reference Figure 12 , the processor 1210 may identify a neural network 1230 stored in the memory 1220. The neural network 1230 may include a combination of an input layer 1232, one or more hidden layers 1234 (or intermediate layers), and an output layer 1236. Each of the above layers (e.g., the input layer 1232, one or more hidden layers 1234, and the output layer 1236) may include multiple nodes. The number of hidden layers 1234 may vary depending on the embodiment, and a neural network 1230 including multiple hidden layers 1234 may be referred to as a deep neural network. The operation of training the deep neural network may be referred to as deep learning.
[0173] In one embodiment, if neural network 1230 has a feedforward neural network structure, a first node included in a particular layer may be connected to all second nodes included in other layers preceding the particular layer. Parameters stored for neural network 1230 in memory 1220 may include weights assigned to connections between the second nodes and the first node. In neural network 1230 having a feedforward neural network structure, the value of the first node may correspond to a weighted sum of values assigned to the second node based on the weights assigned to the connections connecting the second node and the first node.
[0174] In one embodiment, if the neural network 1230 has a convolutional neural network structure, a first node included in a specific layer may correspond to a weighted sum of some second nodes included in other layers before the specific layer. The part of the second nodes corresponding to the first node may be identified by a filter corresponding to the specific layer. The parameters stored in the memory 1220 for the neural network 1230 may include weights representing the filter. The filter may include one or more nodes in the second node for calculating the weighted sum of the first node, and weights corresponding to each of the one or more nodes.
[0175] According to one embodiment, the processor 1210 of the electronic device 101 can train the neural network 1230 using the training data set 1240 stored in the memory 1220. Based on the training data set 1240, the processor 1210 can execute a reference Figure 11 The described operations thereby adjust one or more parameters stored in memory 1220 for neural network 1230.
[0176] According to one embodiment, the processor 1210 of the electronic device 101 can perform object detection, object recognition, and / or object classification using a neural network 1230 trained based on a training data set 1240. The processor 1210 can input an image (or video) acquired through the camera 1250 into the input layer 1232 of the neural network 1230. Based on the input layer 1232 into which the image is input, the processor 1210 can sequentially acquire the values of the nodes of each layer included in the neural network 1230, thereby acquiring a set of values (e.g., output data) of the nodes of the output layer 1236. The output data can be used as a result of reasoning about the information contained in the image using the neural network 1230. The embodiment is not limited thereto, and the processor 1210 can also acquire an image (or video) from an external electronic device connected to the electronic device 101 via the communication circuit 1260 and input it into the neural network 1230.
[0177] In one embodiment, the neural network 1230 trained to process an image can be used to identify regions corresponding to objects in the image (object detection) and / or identify the category of the object represented in the image (object recognition and / or object classification). For example, the electronic device 101 can use the neural network 1230 to segment the region corresponding to the object in the image based on a rectangular shape, such as a bounding box. For example, the electronic device 101 can use the neural network 1230 to identify at least one category that matches the object from a plurality of specified categories.
[0178] In one embodiment, an electronic device of a vehicle including a tractor for towing a trailer may include a communication interface and a processor, wherein the processor is configured to: obtain, through the communication interface, an image captured by a camera when viewing from a lower portion of the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identify in the image a first portion obscured by the trailer and a second portion not obscured; and determine the length of the trailer based on a size of the second portion.
[0179] In one embodiment, the processor is configured to determine the length of the trailer based on the size of the second portion and the viewing angle of the camera.
[0180] In one embodiment, the processor is configured to identify the first portion and the second portion by performing a binarization operation and a morphological operation on the image.
[0181] In one embodiment, the processor is configured to determine the size of the second portion using a width of pixels allocated to the identified second portion.
[0182] In one embodiment, the processor is configured to determine the size of the second portion and / or the length of the trailer using a neural network trained to analyze video.
[0183] In one embodiment, the processor is configured to identify another vehicle located in a rearward direction of the trailer within the second portion of the image, and to determine a distance to the other vehicle based on a front width of the other vehicle.
[0184] In one embodiment, the processor is configured to determine the distance to the other vehicle based on a front width of the other vehicle and a viewing angle of the camera.
[0185] In one embodiment, the processor is configured to determine the distance between the trailer and the other vehicle based on the length of the trailer and the distance to the other vehicle.
[0186] In one embodiment, the processor is configured to: identify the other vehicle and the lane line in the second part of the image; and determine a first width of the other vehicle and a second width of the lane line; and determine the front width of the other vehicle based on actual width information of the lane line, the first width of the other vehicle, and the second width of the lane line.
[0187] In one embodiment, the electronic device may include a GPS (global positioning system) sensor, and the processor is configured to detect the geographic location of the vehicle using the GPS sensor, and obtain the actual width information of the lane line based on the detected geographic location.
[0188] In one embodiment, the processor is configured to obtain coordinate information of points at both ends of the second width of the lane line in the second part of the image, and obtain actual width information of the lane line based on the coordinate information.
[0189] In one embodiment, the processor is configured to: determine the category of the other vehicle based on the front width of the other vehicle, where the category is a category classified based on vehicle size; and determine the distance to the other vehicle based on the viewing angle of the camera, the front width of the other vehicle, and the category of the other vehicle.
[0190] According to one embodiment, a method for an electronic device of a vehicle including a tractor for towing a trailer may include the following operations: obtaining an image captured by a camera when viewed from below the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identifying a first portion obscured by the trailer and a second portion not obscured in the image; and determining a length of the trailer based on a size of the second portion.
[0191] In one embodiment, the method may include determining a length of the trailer based on a size of the second portion and a viewing angle of the camera.
[0192] In one embodiment, the method may include identifying the first portion and the second portion by performing a binarization operation and a morphological operation on the image.
[0193] In an embodiment, the method may include determining the second portion size using a width in pixels allocated to the identified second portion.
[0194] In one embodiment, the method may include determining the size of the second portion and / or the length of the trailer using a neural network trained to analyze video.
[0195] In one embodiment, the method may include identifying another vehicle located in a rearward direction of the trailer within the second portion of the image; and determining a distance to the other vehicle based on a front width of the other vehicle.
[0196] In one embodiment, the method may include determining the distance to the other vehicle based on the front width of the other vehicle and the viewing angle of the camera; and determining the distance between the trailer and the other vehicle based on the length of the trailer and the distance to the other vehicle.
[0197] According to one embodiment, a non-transitory computer-readable storage medium may store one or more programs. When executed by a processor of an electronic device of a vehicle including a tractor for towing a trailer, the one or more programs may enable the electronic device to: acquire an image captured by a camera viewed from below the trailer toward the rear of the tractor, wherein the camera is located at the rear of the tractor; identify a first portion obscured by the trailer and a second portion not obscured in the image; and determine the length of the trailer based on a size of the second portion.
[0198] The devices described above can be implemented using hardware components, software components, and / or a combination of hardware and software components. For example, the devices and components described in the embodiments can be implemented using one or more general-purpose or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor (DSP), a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device that can execute and respond to instructions. The processing device can execute an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device can access, store, operate, process, and generate data in response to the execution of software. For ease of understanding, although the description refers to the use of only one processing device, those skilled in the art will understand that the processing device can include multiple processing elements and / or multiple types of processing elements. For example, the processing device can include multiple processors or a processor and a controller. In addition, other processing configurations such as parallel processors can also be used.
[0199] Software may include a computer program, code, instructions, or any combination of these elements that causes a processing device to operate as intended, or that individually or collectively instructs a processing device. Software and / or data may be embodied in any type of machine, component, physical device, computer storage medium, or device for interpretation by a processing device or for providing instructions or data to a processing device. Software may be distributed across networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
[0200] The method according to the embodiment can be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer-readable medium. In this case, the medium can continuously store programs that can be executed on the computer, or temporarily store programs for execution or downloading. The medium can also be a recording or storage means in various forms of a single or multiple hardware combinations, not limited to media directly connected to a computer system, but also media distributed on a network. Examples of media include magnetic media such as hard disks, floppy disks and tapes, optical storage media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks (magneto-optical medium), and means for storing program instructions such as ROM, RAM, and flash memory. In addition, examples of other media can also include recording media and even storage media managed by application stores that distribute application programs or other various websites, servers, etc. that supply or distribute software.
[0201] While the embodiments have been described above using limited examples and accompanying drawings, those skilled in the art may make various modifications and variations based on the above descriptions. For example, the described techniques may be performed in a different order than that described, and / or the described systems, structures, devices, circuits, and other components may be combined or combined in a manner different from that described, or replaced with other components or equivalents, while still achieving appropriate results.
[0202] Accordingly, other implementations, other embodiments, and their equivalents are within the scope of the claims.
Claims
1. An electronic device for a vehicle including a tractor for towing a trailer, comprising: Communication interface; as well as processor, Wherein, the processor is configured to: Acquiring, through the communication interface, an image captured by a camera when viewing from the lower portion of the trailer toward the rear of the tractor, wherein the camera is disposed at the rear of the tractor; identifying in the image a first portion obscured by the trailer and a second portion that is not obscured; and The length of the trailer is determined based on the size of the second portion.
2. The electronic device according to claim 1, wherein The processor is configured to: The length of the trailer is determined based on the size of the second portion and the viewing angle of the camera.
3. The electronic device according to claim 1, wherein: The processor is configured to: The first portion and the second portion are identified by performing a binarization operation and a morphological operation on the image.
4. The electronic device according to claim 3, wherein: The processor is configured to: The size of the second portion is determined using the width of the pixels assigned to the identified second portion.
5. The electronic device according to claim 1, wherein: The processor is configured to: The dimensions of the second portion and / or the length of the trailer are determined using a neural network trained to analyze the video.
6. The electronic device according to claim 1, wherein: The processor is configured to: identifying other vehicles in the second portion of the image that are located in a rearward direction of the trailer; and Based on the front width of the other vehicle, the distance to the other vehicle is determined.
7. The electronic device according to claim 6, wherein: The processor is configured to: The distance to the other vehicle is determined based on the front width of the other vehicle and the viewing angle of the camera.
8. The electronic device according to claim 6, wherein: The processor is configured to: Based on the length of the trailer and the distance to the other vehicle, a distance between the trailer and the other vehicle is determined.
9. The electronic device according to claim 6, wherein: The processor is configured to: identifying the other vehicles and lane markings within the second portion of the image; Determining a first width of the other vehicle and a second width of the lane line; as well as The front width of the other vehicle is determined based on the actual width information of the lane line, the first width of the other vehicle, and the second width of the lane line.
10. The electronic device according to claim 9, wherein: Includes GPS sensor, The processor is configured to: detecting the geographic location of the vehicle using the GPS sensor; and The detected geographical location is used to obtain the actual width information of the lane line.
11. The electronic device according to claim 9, wherein: The processor is configured to: Acquiring coordinate information of points at both ends of a second width of the lane line in the second portion of the image; and The actual width information of the lane line is obtained based on the coordinate information.
12. The electronic device according to claim 7, wherein: The processor is configured to: determining a category of the other vehicle based on a front width of the other vehicle, wherein the category is a category classified based on vehicle size; and The distance to the other vehicle is determined based on the viewing angle of the camera, the front width of the other vehicle, and the type of the other vehicle.
13. A method of providing an electronic device for a vehicle including a tractor for towing a trailer, comprising the following operations: Acquiring an image captured by a camera when viewing from the lower portion of the trailer toward the rear of the tractor, wherein the camera is disposed at the rear of the tractor; identifying in the image a first portion obscured by the trailer and a second portion that is not obscured; and The length of the trailer is determined based on the size of the second portion.
14. The method according to claim 13, wherein include: The length of the trailer is determined based on the size of the second portion and the viewing angle of the camera.
15. The method according to claim 13, wherein include: The first portion and the second portion are identified by performing a binarization operation and a morphological operation on the image.
16. The method according to claim 15, wherein include: The size of the second portion is determined using the width of the pixels assigned to the identified second portion.
17. The method according to claim 13, wherein include: The dimensions of the second portion and / or the length of the trailer are determined using a neural network trained to analyze the video.
18. The method according to claim 13, wherein include: identifying other vehicles located in a rearward direction of the trailer within the second portion of the image; as well as Based on the front width of the other vehicle, the distance to the other vehicle is determined.
19. The method according to claim 18, wherein include: determining a distance to the other vehicle based on a front width of the other vehicle and a viewing angle of the camera; as well as Based on the length of the trailer and the distance to the other vehicle, a distance between the trailer and the other vehicle is determined.
20. A non-transitory computer-readable storage medium storing one or more programs that, when executed by a processor of an electronic device of a vehicle including a tractor for towing a trailer, enable the electronic device to: Acquiring an image captured by a camera when viewing from the lower portion of the trailer toward the rear of the tractor, wherein the camera is disposed at the rear of the tractor; identifying, in the image, a first portion obscured by the trailer and a second portion that is not obscured; as well as The length of the trailer is determined based on the size of the second portion.