WO2021153049A1 - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
WO2021153049A1
WO2021153049A1 PCT/JP2020/046662 JP2020046662W WO2021153049A1 WO 2021153049 A1 WO2021153049 A1 WO 2021153049A1 JP 2020046662 W JP2020046662 W JP 2020046662W WO 2021153049 A1 WO2021153049 A1 WO 2021153049A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
information
determination unit
processing
dnn
Prior art date
Application number
PCT/JP2020/046662
Other languages
English (en)
French (fr)
Inventor
咲絵 小松
浩朗 伊藤
功治 前田
Original Assignee
日立Astemo株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立Astemo株式会社 filed Critical 日立Astemo株式会社
Priority to JP2021574516A priority Critical patent/JP7239747B2/ja
Priority to US17/786,680 priority patent/US20230012843A1/en
Priority to CN202080089067.0A priority patent/CN114846505A/zh
Priority to DE112020005642.2T priority patent/DE112020005642T5/de
Publication of WO2021153049A1 publication Critical patent/WO2021153049A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/59Context or environment of the image inside of a vehicle, e.g. relating to seat occupancy, driver state or inner lighting conditions
    • G06V20/597Recognising the driver's state or behaviour, e.g. attention or drowsiness
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to an information processing device that uses a deep neural network.
  • DNN Deep Neural Network
  • DNN executes a learning process for learning the characteristics of an object and an inference process for extracting an object from image data based on the learned result.
  • the image data of the outside world is first acquired from the camera and converted into a format that can be used by DNN.
  • the inference process the converted image data is used as an input image, and the object is extracted using the DNN that has completed the learning process in advance. After that, a peripheral map is generated from the extraction result of the object, an action plan is made based on the peripheral map, and the vehicle is controlled.
  • Patent Document 1 discloses a technique of extracting an object from an input image from a camera using a neural network or the like and determining whether or not the space is a travelable space. Further, Patent Document 2 discloses a technique for gradually reducing the number of pixels of an input image from a camera according to a traveling state.
  • DNN repeatedly executes a convolution operation consisting of multiplication and addition, so the amount of operation is very large. Further, especially in the automatic driving of a vehicle, it is necessary to continuously update the action plan within a very short time, so that high-speed calculation is required for object extraction by DNN. Therefore, if a DNN is mounted on a GPU (Graphics Processing Unit), an FPGA (Field Programmable Gate Array), a microcomputer, a CPU, or the like, which is an arithmetic unit that can be mounted on a vehicle, the power consumption and the amount of heat generated by the arithmetic unit become extremely large.
  • GPU Graphics Processing Unit
  • FPGA Field Programmable Gate Array
  • Patent Document 1 does not consider reducing power consumption in either the conversion of the input image or the extraction of the object. Further, in Patent Document 2, it is possible to reduce the power consumption in the image conversion processing by changing the conversion method of the input image depending on the driving environment, but the power consumption in the inference processing using the DNN, which has a particularly large amount of calculation, is taken into consideration. Therefore, a sufficient power consumption reduction effect cannot be expected.
  • the present invention determines whether or not the object extraction process by the DNN can be omitted from the arithmetic load state and the driving environment of the arithmetic unit mounted on the vehicle, reduces the arithmetic load and power consumption of the arithmetic unit, and generates heat.
  • the purpose is to control the amount.
  • the present invention is an information processing apparatus having an arithmetic unit that executes an operation with a processor, a memory, and an inference model, and has a DNN processing unit that receives external information and extracts an object in the outside world from the external information by the inference model.
  • the DNN processing unit has a processing content control unit that controls the processing content of the DNN processing unit, and the DNN processing unit has an object extraction unit that executes the inference model in a deep neural network having a plurality of neuron layers.
  • the processing content control unit includes an execution layer determination unit that determines the layer to be used in the object extraction unit.
  • the information processing apparatus of the present invention reduces the amount of calculation of the deep neural network (DNN) based on the driving environment, thereby ensuring the DNN object extraction accuracy required for automatic driving, and the power consumption of the arithmetic unit. Can be reduced and the amount of heat generated can be suppressed. This makes it possible to increase the mileage of the electric vehicle and reduce the cost of the cooling system.
  • DNN deep neural network
  • Example 1 of this invention shows an example of the structure of the automatic driving system. It is a figure which shows Example 1 of this invention and shows a part of the process which performs the object extraction by DNN. It is a block diagram which shows Example 2 of this invention and shows an example of the structure of the automatic driving system. It is a block diagram which shows Example 3 of this invention and shows an example of the structure of the automatic driving system. It is a block diagram which shows Example 4 of this invention and shows an example of the structure of the automatic driving system.
  • FIG. 5 is a block diagram showing Example 5 of the present invention and showing an example of the configuration of an automatic driving system.
  • 6 is a block diagram showing Example 6 of the present invention and showing an example of the configuration of an automatic driving system.
  • Example 7 is a block diagram showing Example 7 of the present invention and showing an example of the configuration of an automatic driving system. It is a figure which shows Example 7 of this invention and shows a part of the process which performs the object extraction.
  • 8 is a block diagram showing Example 8 of the present invention and showing an example of the configuration of an automatic driving system. It is a figure which shows Example 8 of this invention and shows the image from the camera at the time of traveling through a tunnel.
  • 9 is a block diagram showing Example 9 of the present invention and showing an example of the configuration of an automatic driving system.
  • FIG. 10 is a block diagram showing Example 10 of the present invention and showing an example of the configuration of an automatic driving system.
  • 11 is a block diagram showing Example 11 of the present invention and showing an example of the configuration of an automatic driving system.
  • 12 is a block diagram showing Example 12 of the present invention and showing an example of the configuration of an automatic driving system.
  • DNN Deep Neural Network
  • a deep neural network having a plurality of layers of neurons repeatedly executes a convolution operation composed of multiplication and addition, so that the amount of calculation is very large.
  • the power consumption and heat generation amount of the arithmetic unit that executes the DNN are large. Therefore, when the object extraction process using the DNN is performed in the information processing device of the vehicle, the mileage of the electric vehicle may be shortened or the cooling cost may be reduced. Has become an issue.
  • FIG. 1 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the automatic driving system using the information processing device 100 includes the information processing device 100, the camera 200, and the vehicle control unit 300.
  • the information processing apparatus 100 is a computer including a processor 10, a memory 20, and an FPGA (Field Programmable Gate Array) 170.
  • the FPGA 170 is adopted as the arithmetic unit for executing the DNN, but the present invention is not limited to this, and a GPU (Graphics Processing Unit) may be adopted as the arithmetic unit. Further, the arithmetic unit that executes the DNN may be housed in the same package as the processor 10. Further, the processor 10 and the FPGA 170 are connected to the camera 200 and the vehicle control unit 300 via an interface (not shown).
  • the action planning unit 130 is loaded into the memory 20 as a program and executed by the processor 10.
  • the processor 10 operates as a functional unit that provides a predetermined function by executing a process according to a program of each functional unit.
  • the processor 10 functions as the action planning unit 130 by executing the process according to the action planning program.
  • the processor 10 also operates as a functional unit that provides each function of a plurality of processes executed by each program.
  • a computer and a computer system are devices and systems including these functional parts.
  • the FPGA 170 includes a DNN processing unit 110 and a processing content control unit 120. Includes Action Planning Department 130. Further, the DNN processing unit 110 includes an object extraction unit 111. The processing content control unit 120 includes an execution layer determination unit 121. The camera 200 may or may not be included in the information processing device 100. Further, the information processing device 100 may or may not be mounted on the vehicle.
  • the object extraction unit 111 holds a DNN (inference model) for use in inference processing after learning processing is performed in a computer such as a PC or a server.
  • the FPGA 170 extracts an object from the image data by using a DNN that reflects the information output from the processing content control unit 120, which will be described later, with respect to the external information (image data) acquired by the camera 200.
  • the camera 200 is attached to a predetermined position (not shown) of the vehicle, acquires an image of the front of the vehicle as external information in order to detect an object in the outside world (front) of the vehicle, and outputs the image to the information processing device 100. do.
  • the action planning unit 130 generates an action plan such as the traveling direction and the traveling speed of the vehicle by using the information extracted by the object extraction unit 111, and outputs the action plan to the vehicle control unit 300.
  • the vehicle control unit 300 controls the vehicle based on the output from the action planning unit 130.
  • a well-known or known technique may be applied, and thus the details will not be described in this embodiment.
  • the execution layer determination unit 121 holds the number of execution layers of the DNN used in the object extraction process, and outputs the information to the object extraction unit 111.
  • FIG. 2 is a diagram showing an example in which a part of the processing when the object extraction unit 111 of FIG. 1 performs object extraction by DNN from the information (image data) of the camera 200 is extracted.
  • the camera image 500 shows an example of an image output from the camera 200 shown in FIG.
  • the image 510 shows an example in which the camera image 500 in the first layer of the DNN of the object extraction unit 111 is divided, and the images 520, 530, 540, and 550 are the second layer, the third layer, and the fourth layer, respectively.
  • the division method in the fifth layer is shown.
  • the DNN processing unit 110 extracts a small object 511 such as a distant person or a car by dividing the camera image 500 into small pieces in the first layer, and divides the camera image into large pieces in the fifth layer. This indicates that a large object 551 such as a nearby car is being extracted.
  • the structure of the DNN is not limited to a structure in which a small object is first extracted and then a large object is extracted as in the structure used in this embodiment, and any structure may be used as long as the object can be extracted. Further, the number of block divisions and the number of layers when calculating with DNN are not limited to the method of FIG. 2 as long as the accuracy required for realizing automatic operation can be ensured.
  • the number of blocks for performing object extraction processing may be reduced by reducing the number of layers of DNN.
  • the execution layer determination unit 121 determines that the DNN layer executed in the object extraction process is the second layer to the fifth layer excluding the first layer for extracting the smallest object, and transfers the object extraction unit 111 to the object extraction unit 111.
  • execution layer determination unit 121 may instruct the object extraction unit 111 to use a layer preset according to the travel environment or the like as a processing condition at the start of travel.
  • the object extraction unit 111 By reducing the DNN layer (fixed value) used by the object extraction unit 111 in this way, it is possible to reduce the power consumption of arithmetic units such as FPGA 170 and GPU and suppress the amount of heat generated. As a result, the mileage of the electric vehicle is increased, and the cooling cost of the arithmetic unit can be reduced.
  • the above values are used for the number of layers and blocks of DNN in FIG. 2, but the DNN used for actual object extraction can obtain external information from several thousand. It is divided into tens of thousands of blocks and has a large number of layers. Therefore, the actual number of operations is enormous compared to the example shown above, and the effect of reducing the amount of operations by reducing the number of layers is also very large.
  • the camera 200 is adopted as a sensor for acquiring external information, but this includes objects such as LiDAR (Light Detection and Ringing), RADAR (Radio Detection and Ringing), and a far-infrared camera. It is not limited to the camera 200 as long as it is a sensor that can acquire the distance and the type of the object. Further, the sensors may be used alone or in combination of two or more.
  • LiDAR Light Detection and Ringing
  • RADAR Radio Detection and Ringing
  • a far-infrared camera It is not limited to the camera 200 as long as it is a sensor that can acquire the distance and the type of the object. Further, the sensors may be used alone or in combination of two or more.
  • an example of the object extraction unit 111 that executes the inference model generated by machine learning with DNN is shown, but the present invention is not limited to this, and a model generated by other machine learning or the like is used. It can be used.
  • FIG. 3 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of the second embodiment.
  • the same components as those in FIG. 1 are given the same name and reference numeral, and the description thereof will be omitted unless otherwise specified, assuming that they have the same or similar functions.
  • This embodiment shows an example in which the processing condition determination unit 122 and the sensor for detecting external state information are added to the first embodiment, and the execution layer determination unit 121 in the FPGA 170 is moved into the processing content control unit 120. ..
  • Other configurations are the same as those in the first embodiment.
  • the processing condition determination unit 122 newly added from the first embodiment determines the current traveling environment by inputting information indicating a traveling state from a sensor or the like of a traveling vehicle.
  • the execution layer determination unit 121 dynamically changes the number of layers (processing conditions) of the DNN used in the object extraction process based on the traveling environment determined by the processing condition determination unit 122.
  • the vehicle speed sensor 30 and the illuminance sensor 40 are connected to the information processing device 100 is shown, but the present invention is not limited thereto. Since it is sufficient if at least the vehicle speed can be detected, the vehicle speed may be calculated from the position information such as GPS (Global Positioning System).
  • GPS Global Positioning System
  • the processing condition determination unit 122 of the information processing device 100 determines the traveling environment from the information from the vehicle speed sensor 30 and the illuminance sensor 40, and outputs the information to the execution layer determination unit 121.
  • the execution layer determination unit 121 determines the layer to be used in the DNN as a processing condition based on the input traveling environment, and commands the object extraction unit 111.
  • the execution layer determination unit 121 is loaded into the memory 20 as a program and executed by the processor 10.
  • the execution layer of the DNN is statically determined in a limited driving environment.
  • the driving environment is various and complicated, and the accuracy of the object extracted from the image data.
  • processing condition determination unit 122 will be described with reference to a specific example.
  • the processing condition determination unit 122 describes an example in which the current traveling environment is determined to be in a traffic jam if the vehicle speed detected by the vehicle speed sensor 30 is equal to or less than a preset vehicle speed threshold value.
  • the object extraction unit 111 recognizes an object several tens of meters away. It is sufficient, and it is not necessary to extract the object with an accuracy for recognizing the object several hundred meters away.
  • the execution layer determination unit 121 determines the processing conditions based on the driving environment determined by the processing condition determination unit 122. As a processing condition, the execution layer determination unit 121 detects the smallest object in the DNN layer executed by the object extraction unit 111 so that the amount of DNN calculation can be reduced while ensuring the accuracy of object extraction required for automatic operation. It is determined to be the second layer (520) to the fifth layer (550) excluding the first layer (image 510 in FIG. 2).
  • the sensor for detecting the traveling state and the processing condition determining unit 122 for determining the traveling environment of the vehicle from the information indicating the traveling state are added to the configuration of the first embodiment to determine the execution layer.
  • the unit 121 determines the processing conditions suitable for the driving environment.
  • the information processing device 100 of the second embodiment dynamically affects the accuracy of object extraction and the power consumption and heat generation amount of the arithmetic unit (FPGA170) according to the driving environment as compared with the first embodiment. Can be changed dynamically.
  • the mileage of the electric vehicle is increased as compared with the first embodiment, and the cooling cost of the arithmetic unit (FPGA170) can be expected to be reduced.
  • the method of determining the traffic jam in the above does not have to be the vehicle speed sensor 30, and may be image information showing the traveling speed or traffic jam information such as a radio or the Internet.
  • the processing condition determination unit 122 determines that it is nighttime if the ambient brightness (illuminance) is equal to or less than the preset illuminance threshold value. At night, the surroundings become dark, and the camera 200 cannot obtain detailed external information as compared with the case where the surroundings are bright. Therefore, since it is not possible to obtain external information capable of extracting a distant object several hundred meters away, the object extraction unit 111 only needs to perform an operation with an accuracy of extracting an object several tens of meters away, and an object several hundred meters away. It is not necessary to extract the object with the accuracy to recognize.
  • the execution layer determination unit 121 provides information on the DNN layer executed by the object extraction unit 111 based on the traveling environment determined by the processing condition determination unit 122 from the second layer (520) to the fifth layer (550). ). Further, the information indicating the running state for determining the current brightness of the surroundings is not limited to the illuminance sensor 40. For example, day or night may be detected from a sensor such as a camera 200 that can detect the brightness of the surroundings, or a radio, the Internet, GPS, or the like that can determine the time.
  • an in-vehicle camera (not shown) may be used as information indicating the running state.
  • the processing condition determination unit 122 detects whether or not the driver is operating the steering wheel from the image data of the in-vehicle camera, and if the steering wheel is operated, the automatic driving (AD: Autonomous Driving) is not in use. Is determined.
  • AD Autonomous Driving
  • AD it is necessary to extract objects with high accuracy so that even small objects can be recognized because the vehicle is controlled only by the automatic driving system, but when AD is not used, the driver can obtain external information. Since it is recognizable, it is sufficient that the accuracy of object extraction capable of driving assistance (ADAS: Advanced Driver Assistance Systems) is maintained.
  • ADAS Advanced Driver Assistance Systems
  • the execution layer determination unit 121 determines that the information of the DNN layer executed by the object extraction unit 111 is the second layer (520) to the fifth layer (550) based on the traveling environment determined by the processing condition determination unit 122. do.
  • the information that the processing condition determination unit 122 determines whether or not the AD is in use is not limited to the in-vehicle camera, and can determine whether the driver is in the driver's seat, such as a sensor that detects the operation of the steering wheel. It may be. Further, it may be determined whether or not AD is used from the data such as the presence or absence of the action plan of the autonomous driving vehicle generated by the action planning unit 130.
  • processing condition determination unit 122 may determine the processing condition using any one of the information indicating the traveling state, or may use a plurality of the processing condition determination units 122 to determine the processing condition.
  • FIG. 4 is a block diagram showing an example of the configuration of an automatic driving system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 3 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • processing condition determination unit 122 and the load detection device 50 are added to the first embodiment, and the execution layer determination unit 121 in the FPGA 170 is moved into the processing content control unit 120.
  • Other configurations are the same as those in the first embodiment.
  • the processing condition determination unit 122 determines the current driving environment by inputting information indicating the traveling state from a running sensor or the like, but in the present embodiment, the processing condition determination unit 122 determines the current driving environment.
  • the calculation load of the object extraction unit 111 is used as an input to determine the current load state of the FPGA 170.
  • the execution layer determination unit 121 determines the number of DNN layers (processing conditions) used by the object extraction unit 111 based on the load state determined by the processing condition determination unit 122.
  • the load detection device 50 newly added from the first embodiment detects the calculation load of the FPGA 170 and inputs it to the processing condition determination unit 122.
  • the load detection device 50 can include, for example, a sensor that detects the power consumption of the FPGA 170, the supply current, and the like as an arithmetic load.
  • the execution layer determination unit 121 is arranged in the FPGA 170, but in the third embodiment, the execution layer determination unit 121 dynamically moves. In order to change the number of layers (processing conditions), the program is loaded into the memory 20 and executed by the processor 10.
  • processing condition determination unit 122 will be described with reference to a specific example.
  • the processing condition determination unit 122 calculates the load factor of the FPGA 170 as a calculation load and compares it with a predetermined load factor threshold value.
  • a load factor an example is shown in which a value (%) obtained by dividing the power consumption detected by the load detection device 50 by a predetermined maximum power is used.
  • the processing condition determination unit 122 determines that the calculation load of the FPGA 170 is reduced when the load factor of the FPGA 170 is higher than the load factor threshold value. Based on the determination result from the processing condition determination unit 122, the execution layer determination unit 121 first obtains the information of the DNN layer used in the object extraction unit 111 so that the load factor of the FPGA 170 is equal to or less than the load factor threshold value. It is determined to be the second layer (520) to the fifth layer (550) excluding the first layer (510) for detecting a small object.
  • the processing condition determination unit 122 that determines the load state from the arithmetic load of the FPGA 170
  • the load state according to the load factor of the FPGA 170 included in the information processing apparatus 100 is determined, and the execution layer determination unit 121 Can dynamically change the processing conditions according to the load status.
  • the information processing apparatus 100 can dynamically reduce the power consumption and the amount of heat generated by the FPGA 170 as compared with the first embodiment.
  • the information processing apparatus 100 of the present embodiment it is possible to suppress the occurrence of an abnormality in the FPGA 170 due to thermal runaway or the like and prevent the arithmetic accuracy of the arithmetic unit from being lowered. As a result, the mileage of the electric vehicle can be increased as compared with the first embodiment, and the cooling cost of the FPGA 170 or the like can be reduced.
  • the load factor of the FPGA 170 which is the calculation load in this embodiment, is not limited to the power consumption. Values related to the computational load such as the temperature of the FPGA 170 may be used. Further, the arithmetic load may include not only the FPGA 170 but also the arithmetic load of the processor 10.
  • processing condition determination unit 122 may determine the load state by using any one of the arithmetic loads, or may determine the load state by using a plurality of arithmetic loads.
  • FIG. 5 is a block diagram showing an example of the configuration of an automatic driving system using the information processing device 100 of this embodiment.
  • the same components as those in FIGS. 3 and 4 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • the current driving environment is determined by inputting information indicating a traveling state from a sensor or the like during traveling
  • the computing load of the information processing device 100 is input as the current driving environment.
  • An example of determining the load state is shown. In this example, an example in which the Example 2 is combined with the Example 3 is shown.
  • the processing condition determination unit 122 determines the traveling environment and the load state by inputting both the information indicating the traveling state and the calculation load of the FPGA 170, and outputs the determination result to the execution layer determination unit 121.
  • the execution layer determination unit 121 determines the number of layers (processing conditions) of the DNN used by the object extraction unit 111 based on the determination result from the processing condition determination unit 122.
  • the object extraction accuracy is dynamically compared to that of the second and third embodiments. And it is possible to change the reduction of power consumption and calorific value.
  • Example 2 As a result, an effect that combines the advantages of Example 2 and Example 3 can be expected. That is, it is possible to keep the load of the FPGA 170 in a normal state while maintaining the accuracy of object extraction suitable for various driving environments.
  • the processing condition determination unit 122 may determine the processing condition by using any one of the information indicating the traveling state and the calculation load, or may use a plurality of the processing condition determination unit 122 to determine the processing condition.
  • FIG. 6 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 5 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • the LiDAR 400, the sensor recognition unit 140, and the recognition accuracy determination unit 150 are added to the components of the fourth embodiment.
  • Other configurations are the same as those in the fourth embodiment.
  • the sensor recognition unit 140 newly added from the fourth embodiment processes the information (distance and direction) from the LiDAR 400 to recognize the object. Further, the recognition accuracy determination unit 150 determines the difference between the result of object extraction from the object extraction unit 111 and the result of object recognition from the sensor recognition unit 140, so that the accuracy required for object extraction by the object extraction unit 111 is required. Is determined, and the determined result is output to the processing condition determination unit 122.
  • the processing condition determination unit 122 updates the reference value that is a condition for reducing the calculation load in the object extraction unit 111 based on the determination result from the recognition accuracy determination unit 150, the running state, and the calculation load. , Prevents the omission of excessive calculation that causes insufficient accuracy of object extraction due to reduction of calculation load.
  • the reference value for controlling the number of layers of the DNN used by the object extraction unit 111 by the information indicating the traveling state and the calculation load was static.
  • this reference value is dynamic.
  • the object extraction unit 111 there are 5 objects extracted by the object extraction unit 111 by inputting image data from the camera 200, and 7 objects recognized by the sensor recognition unit 140 from the information from the LiDAR 400, which are extracted by the object extraction unit 111. It is assumed that the number of objects recognized is less than the number of objects recognized by the sensor recognition unit 140.
  • the recognition accuracy determination unit 150 states that the object extraction unit 111 does not maintain the accuracy of object extraction required for automatic operation. Judges.
  • the recognition accuracy determination unit 150 Based on the information from the object extraction unit 111 and the sensor recognition unit 140, the recognition accuracy determination unit 150 outputs a command to the processing condition determination unit 122 to change the processing conditions so that the accuracy of object extraction is improved.
  • the processing condition determination unit 122 changes the reference value for determining the processing condition.
  • the recognition accuracy determination unit 150 calculates the value obtained by dividing the number of objects extracted by the object extraction unit 111 by the number of objects recognized by the sensor recognition unit 140 as the recognition accuracy, and the calculated recognition accuracy is calculated. If it is equal to or less than the preset accuracy threshold, it may be determined that the recognition accuracy has deteriorated and output to the processing condition determination unit 122 may be performed.
  • the processing condition determination unit 122 receives a command from the recognition accuracy determination unit 150 to improve the accuracy of object extraction, and the reference value is increased by + 5%. As the load factor threshold is increased. Further, the processing condition determination unit 122 notifies the execution layer determination unit 121 that the load factor threshold value has been increased.
  • the execution layer determination unit 121 When the execution layer determination unit 121 receives the notification of the increase in the load factor threshold value, the execution layer determination unit 121 adds a predetermined value to the number of DNN layers currently used by the object extraction unit 111 and commands the object extraction unit 111 of the FPGA 170.
  • the predetermined value of the execution layer determination unit 121 is set to, for example, one layer.
  • the execution layer determination unit 121 can increase the number of layers of DNN used by the object extraction unit 111 to improve the accuracy of extracting the object.
  • the execution layer determination unit 121 cancels the notification of the increase in the load factor threshold because the effect of increasing the number of DNN layers used by the object extraction unit 111 is low when the traveling environment is congested or at night. be able to.
  • the object extraction unit It is possible to prevent excessive reduction of arithmetic processing (layers) such that the accuracy of object extraction required for automatic operation is insufficient in 111.
  • the information processing apparatus 100 can maintain processing with higher accuracy than the above-described first, second, third, and fourth embodiments.
  • the information processing apparatus 100 of the present embodiment can further reduce the power consumption as compared with the first, second, third, and fourth embodiments.
  • the sensor used for determining the accuracy of object extraction is LiDAR400, which can determine the distance to an object such as a camera, RADAR, or a far-infrared camera and the type of the object. It may be different from the sensor that outputs the external information input to the extraction unit 111, and is not limited to LiDAR. Further, the sensors may be used alone or in combination of two or more.
  • the recognition accuracy determination unit 150 as a method for determining the accuracy of object extraction by the recognition accuracy determination unit 150, it is static that the result of the object extraction unit 111 and the result of the sensor recognition unit 140 are determined whether or not they match. Although it is a process, the reference for determining the accuracy of object extraction may be dynamically changed by providing the recognition accuracy determination unit 150 with a learning function.
  • FIG. 7 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 5 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • an information amount determination unit 123 and an external information conversion unit 112 are added to the processing content control unit 120 of the fourth embodiment shown in FIG. 5, and an external information conversion unit 112 is added to the DNN processing unit 110, and the information is input from the camera 200.
  • An example of changing the number of pixels (or resolution) of the outside world image according to the driving environment and the load state is shown. Other than that, the configuration is the same as that of the fourth embodiment.
  • the information amount determination unit 123 determines the number of pixels (resolution) for inputting the external world image acquired by the camera 200 to the object extraction unit 111 based on the determination result from the processing condition determination unit 122, and converts the external information of the FPGA 170.
  • the external information conversion unit 112 converts the external world image acquired by the camera 200 into a format that can be used by DNN based on the command from the information amount determination unit 123. As a result, the object extraction unit 111 extracts the object with the number of pixels that matches the processing conditions (number of layers).
  • the size of the object extracted by each layer (510 to 550) of the object extraction unit 111 is different, so that the external world required depending on the processing content of each layer of the object extraction unit 111 is required. Since the number of pixels (resolution) of the image is also different, it is desirable that the number of pixels of the image input to the object extraction unit 111 is dynamically changed according to the number of layers used in the object extraction process.
  • the camera 200 outputs an image of 2 million pixels. Further, it is assumed that the information amount determination unit 123 determines from the determination result of the processing condition determination unit 122 that the number of pixels required for object extraction is 250,000 pixels.
  • the external information conversion unit 112 converts the 2 million pixel image output from the camera 200 so that it becomes 250,000 pixels.
  • the object extraction unit 111 extracts an object using the 250,000-pixel image output from the external information conversion unit 112.
  • the DNN processing unit 110 dynamically changes the number of pixels of the input image to the object extraction unit 111 based on the determination result from the processing condition determination unit 122, so that the DNN used by the object extraction unit 111 is used. It is possible to use an image having the same number of pixels as the number of execution layers. Therefore, in addition to reducing the execution layer of the DNN, the number of pixels of the image of the object extraction unit 111 can be reduced, and the amount of calculation can be reduced.
  • the information processing apparatus 100 of this embodiment can reduce power consumption and calorific value as compared with Examples 1, 2, 3, and 4.
  • the information processing device 100 of the present embodiment has a longer mileage in the electric vehicle than the first, second, third, and fourth embodiments, and can be expected to reduce the cooling cost of the FPGA 170 and the like.
  • the information amount determination unit 123 changes the number of pixels from the camera 200, but if the output of external information is LiDAR or RADAR, the number of point clouds is changed, or other information on external information.
  • the amount may be changed (reduced) and is not limited to the number of pixels.
  • FIG. 8 is a block diagram showing an example of the configuration of the automatic operation system using the information processing device 100 of the seventh embodiment.
  • the same components as those in FIG. 1 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • the block area determination unit 124 newly added in FIG. 8 holds a block area for executing the DNN object extraction process, and outputs the block area information to the object extraction unit 111.
  • the block area determination unit 124 of this embodiment holds a preset area as a fixed block area.
  • FIG. 9 is a diagram showing an example in which the object extraction unit 111 of FIG. 8 extracts a part of the process of extracting an object by DNN from the image data input from the camera 200.
  • the camera image 600 shows the camera image output from the camera 200 in FIG. Further, the image 610 shows the divided state of the camera image 600 in the first layer of the DNN for the object extraction unit 111, the image 620 shows the divided state in the second layer, and the image 630 shows the divided state in the third layer. Image 640 shows the divided state in the fourth layer, and image 650 shows the divided state in the fifth layer.
  • the structure of the DNN of the object extraction unit 111 is not limited to the configuration in which a small object is first extracted and then a large object is extracted as in the structure used in this embodiment, and the object is extracted from the camera image 600. Anything that can be extracted will do.
  • the number of block divisions and the number of layers when calculating the DNN in this case are not limited to the example of FIG. 9 as long as the accuracy required for realizing automatic operation can be ensured.
  • the camera image 600 from the camera 200 may show an object such as the hood of the own vehicle or the sky 601 as shown in FIG. These objects do not need to be extracted from the camera image 600 when controlling the vehicle. Therefore, by designating the block area in which the object extraction unit 111 executes DNN, it is possible to reduce the processing of object extraction in the block area in which only unnecessary objects are captured.
  • the object extraction unit 111 performs the object extraction process only in the area designated as the block area for executing the DNN.
  • the area where the object extraction process is not performed is defined as the exclusion area, and the area where the object extraction process is executed is defined as the block area.
  • the region of the camera image 600 in which only the sky is captured is designated as the exclusion region 611-A
  • the region of the camera image 600 in which only the bonnet is captured is designated as the exclusion region 611-B.
  • the object extraction unit 111 may perform object extraction by DNN in the block regions 612 of the third and fourth rows from the top of the image 610.
  • the object extraction unit 111 defines the region of the camera image 600 in which only the sky is captured as the exclusion region 621-A, and the region of the camera image 600 in which only the bonnet is captured as the exclusion region 621-B.
  • the object extraction unit 111 may perform object extraction by DNN in the block regions of the second and third rows from the top of the image 620.
  • the object extraction unit 111 may perform object extraction by DNN in the block areas 632 of the second and third rows from the top of the image 660.
  • all the areas are set to the block areas 642 and 652, and the object extraction by DNN is executed in all the blocks.
  • the processing of the DNN of the object extraction unit 111 is reduced in the fixed exclusion region of the camera image 600, so that, for example, the power consumption of the arithmetic unit such as the FPGA 170 and the GPU is reduced and the amount of heat generated is suppressed. Is possible. As a result, the mileage of the electric vehicle is increased, and the cooling cost of the arithmetic unit such as the FPGA 170 is reduced.
  • the above values are used for the number of layers and the number of blocks of the DNN in FIG. 9 for the sake of simplicity of explanation, but the DNN used for the actual object extraction is external information.
  • the camera image 600 is divided into thousands to tens of thousands of blocks, and the number of layers is large. Therefore, the actual number of operations is enormous compared to the example shown above, and the effect of reducing the amount of operations by reducing the block area for executing the operations is also very large.
  • external information is acquired from the camera 200, but the present invention is not limited to this.
  • the external information may be, for example, a sensor such as LiDAR, RADAR, or a far-infrared camera that can acquire the distance to an object and the type of the object. Further, the sensors may be used alone or in combination of two or more.
  • the block area determination unit 124 determines the block area to be executed by the DNN of the object extraction unit 111, even if the layers are deleted as in the first, second, third, fourth, fifth, and sixth embodiments. good. In this case, in addition to reducing the number of blocks used by the object extraction unit 111, the number of layers of the DNN is also reduced, so that the power consumption can be further reduced.
  • FIG. 10 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 8 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • This embodiment shows an example in which the processing condition determination unit 122 and the sensor are added to the seventh embodiment and the block area determination unit 124 in the FPGA 170 is moved into the processing content control unit 120.
  • Other configurations are the same as those in the seventh embodiment.
  • the processing condition determination unit 122 newly added from the seventh embodiment determines the current traveling environment by inputting information indicating a traveling state from a sensor or the like of a traveling vehicle.
  • the block area determination unit 124 dynamically determines the block area (similar to 612, 622, 632, 642, 652 and the like in FIG. 9) that executes DNN in the object extraction process based on the driving environment determined by the processing condition determination unit 122. change.
  • the present invention is not limited thereto. ..
  • the processing condition determination unit 122 of the information processing device 100 determines the traveling environment from the information from the vehicle speed sensor 30 and the illuminance sensor 40, and outputs the information to the block area determination unit 124.
  • the block area determination unit 124 determines the block area (or exclusion area) used in the DNN as a processing condition based on the input traveling environment, and commands the object extraction unit 111.
  • Example 7 since the block area has a fixed value, an example in which the block area determination unit 124 is arranged in the FPGA 170 is shown, but in Example 8, the block area determination unit 124 dynamically blocks the block area (or exclusion area). ) Is changed. Therefore, the execution layer determination unit 121 is loaded into the memory 20 as a program and executed by the processor 10.
  • the block area for executing DNN is statically determined in a limited driving environment.
  • the driving environment is various and complicated, and an object extracted from image data. Since the accuracy of extraction changes from moment to moment, it is desirable to be able to dynamically change the block area (or exclusion area) in which DNN is executed according to the driving environment.
  • processing condition determination unit 122 will be described with reference to a specific example.
  • the processing condition determination unit 122 determines that the current traveling environment is in a traffic jam.
  • the change in the image input from the camera 200 is small, so that the object extraction unit 111 can follow the vehicle in front of the vehicle. It suffices if the object extraction accuracy is high, and it is not necessary to execute the object extraction in the entire area of the image from the camera 200.
  • the block area determination unit 124 determines the processing conditions based on the driving environment determined by the processing condition determination unit 122. As processing conditions, the block area determination unit 124 excludes areas 611, 621, 631 and DNN that do not extract objects in FIG. 9 so that the amount of DNN calculation can be reduced while ensuring the accuracy of object extraction required for automatic operation.
  • the block regions 612, 622, 632, 642, and 652 for object extraction are determined in.
  • the object extraction unit 111 extracts the object only in the block areas 612, 622, 632, 642, and 652 determined by the block area determination unit 124. In the following, it may be simply a block area and an exclusion area.
  • the processing condition determination unit 122 for determining the external environment (driving environment) from the information indicating the traveling state is added to the configuration of the seventh embodiment to determine the processing conditions suitable for the traveling environment. conduct.
  • the information processing apparatus 100 of the present embodiment can dynamically change the accuracy of object extraction, the power consumption of the FPGA 170, and the amount of heat generated according to the traveling environment as compared with the seventh embodiment.
  • the method of determining the traffic jam in the above does not have to be the vehicle speed sensor 30, and may be image information showing the traveling speed or traffic jam information such as a radio or the Internet.
  • the processing condition determination unit 122 determines that the ambient brightness (illuminance) is equal to or less than the preset illuminance threshold value, the traveling environment is determined to be in the tunnel.
  • FIG. 11 is a diagram showing an example in which the object extraction unit 111 performs DNN processing in the camera image 600 from the camera 200 traveling in the tunnel. Since the inside of the tunnel is covered with a wall, it is not necessary to perform the processing of extracting the objects at the left and right ends of the camera image 600.
  • the block area determination unit 124 determines the exclusion area 603 in which the object is not extracted as shown in FIG.
  • a device or the like capable of specifying the current position such as GPS can be used.
  • the block area determination unit 124 may instruct the object extraction unit 111 to set the region that does not change (or is small) between the frames of the camera image 600 as the exclusion region 603.
  • an in-vehicle camera (not shown) may be used as information indicating the running state.
  • the processing condition determination unit 122 detects whether or not the driver is operating the steering wheel from the image data of the in-vehicle camera, and if the steering wheel is operated, the automatic driving (AD: Autonomous Driving) is not in use. Is determined.
  • AD Autonomous Driving
  • AD it is necessary to extract objects with high accuracy so that even small objects can be recognized because the vehicle is controlled only by the automatic driving system, but when AD is not used, the driver can obtain external information. Since it is recognizable, it is sufficient that the accuracy of object extraction that can support driving is maintained.
  • the block area determination unit 124 determines the block area for executing DNN in the object extraction unit 111 based on the traveling environment determined by the processing condition determination unit 122. Alternatively, the block area determination unit 124 may determine an exclusion area 611 or the like that does not execute DNN. Further, the method of determining whether AD is in use does not have to be an in-vehicle camera, but a sensor that detects the operation of the steering wheel, a method that can determine whether the driver is in the driver's seat, or an autonomous vehicle generated by the action planning unit 130. It may be determined whether or not AD is used from the data such as the presence or absence of the action plan of.
  • processing condition determination unit 122 may determine the processing condition using any one of the information indicating the traveling state, or may use a plurality of the processing condition determination units 122 to determine the processing condition.
  • FIG. 12 is a block diagram showing an example of the configuration of an automatic driving system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 10 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • a processing condition determination unit 122 and a load detection device 50 are added to the seventh embodiment, and an example in which the block area determination unit 124 in the FPGA 170 is moved into the processing content control unit 120 is shown.
  • Other configurations are the same as those in the seventh embodiment.
  • the processing condition determination unit 122 determines the current driving environment by inputting information indicating the traveling state from a running sensor or the like, but in the present embodiment, the processing condition determination unit 122 determines the current traveling environment. Uses the arithmetic load of the information processing apparatus 100 as an input to determine the current load state of the FPGA 170.
  • the block area determination unit 124 determines the DNN block area used by the object extraction unit 111 for object extraction based on the load state determined by the processing condition determination unit 122.
  • the load detection device 50 newly added from the seventh embodiment detects the calculation load of the FPGA 170 and inputs it to the processing condition determination unit 122.
  • the load detection device 50 can include, for example, a sensor that detects the power consumption of the FPGA 170, the supply current, and the like as an arithmetic load.
  • the block area determination unit 124 is arranged in the FPGA 170, but in the ninth embodiment, the block area determination unit 124 is arranged. Since 124 dynamically changes the block area (processing condition), it is loaded into the memory 20 as a program and executed by the processor 10.
  • processing condition determination unit 122 will be described with reference to a specific example.
  • the processing condition determination unit 122 calculates the load factor of the FPGA 170 as a calculation load and compares it with a predetermined load factor threshold value.
  • a load factor an example is shown in which a value (%) obtained by dividing the power consumption detected by the load detection device 50 by a predetermined maximum power is used.
  • the processing condition determination unit 122 determines that the calculation load of the FPGA 170 is reduced when the load factor of the FPGA 170 is higher than the load factor threshold value. Based on the determination result from the processing condition determination unit 122, the block area determination unit 124 determines an exclusion region in which the object extraction unit 111 does not perform object extraction so that the load factor of the FPGA 170 is equal to or less than the load factor threshold value. ..
  • the block area determination unit 124 may instruct the object extraction unit 111 to set the region that does not change (or is small) between the frames of the camera image 600 as the exclusion region 603.
  • the processing condition determination unit 122 that determines the load state from the calculation load, the load state according to the load factor of the FPGA 170 included in the information processing apparatus 100 is determined, and the execution layer determination unit 121 loads. It is possible to dynamically change the processing conditions according to the state. As a result, the information processing apparatus 100 can dynamically reduce the power consumption and the amount of heat generated by the FPGA 170 as compared with the first embodiment.
  • the information processing apparatus 100 of the present embodiment it is possible to suppress the occurrence of an abnormality in the FPGA 170 due to thermal runaway or the like and prevent the calculation accuracy from being lowered. As a result, the mileage of the electric vehicle can be increased as compared with the first embodiment, and the cooling cost of the FPGA 170 or the like can be reduced.
  • the load factor of the FPGA 170 which is the calculation load in this embodiment, is not limited to the power consumption. Values related to the computational load such as the temperature of the FPGA 170 may be used. Further, the arithmetic load may include not only the FPGA 170 but also the arithmetic load of the processor 10.
  • processing condition determination unit 122 may determine the load state by using any one of the arithmetic loads, or may determine the load state by using a plurality of arithmetic loads.
  • FIG. 13 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the same components as those in FIGS. 10 and 12 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • the current driving environment is determined by inputting information indicating a traveling state from a sensor or the like during traveling, and in the ninth embodiment, the calculation load of the information processing device 100 is input as the current load.
  • An example of determining the state is shown. In this example, an example in which the Example 8 is combined with the Example 9 is shown.
  • the processing condition determination unit 122 receives both the information indicating the traveling state during traveling and the calculation load of the FPGA 170 as inputs, determines the traveling environment and the load state, and outputs the information to the block area determination unit 124.
  • the block area determination unit 124 determines the block area (processing condition) of the DNN used for object extraction based on the determination result from the processing condition determination unit 122.
  • the block area determination unit 124 may determine the block area or the exclusion area as described above.
  • the information processing apparatus 100 of the present embodiment determines the traveling environment and the load state from the information indicating the traveling state by the processing condition determination unit 122 and the calculation load of the FPGA 170, thereby performing the eighth embodiment and the ninth embodiment.
  • the accuracy of object extraction and the reduction of power consumption and calorific value can be dynamically changed.
  • the information processing apparatus 100 of this embodiment can be expected to have an effect that combines the advantages of Examples 8 and 9. That is, it is possible to keep the load of the FPGA 170 in a normal state while maintaining the accuracy of object extraction suitable for various driving environments.
  • the processing condition determination unit 122 may determine the processing condition by using any one of the information indicating the traveling state and the calculation load, or may use a plurality of the processing condition determination unit 122 to determine the processing condition.
  • FIG. 14 is a block diagram showing an example of the configuration of an automatic driving system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 13 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • the LiDAR 400, the sensor recognition unit 140, and the recognition accuracy determination unit 150 are added to the components of the tenth embodiment.
  • Other configurations are the same as those in the fourth embodiment.
  • the sensor recognition unit 140 newly added from the tenth embodiment processes information (distance and direction) from the LiDAR 400 to recognize an object. Further, the recognition accuracy determination unit 150 determines the difference between the object extraction result from the object extraction unit 111 and the object recognition result from the sensor recognition unit 140, so that the accuracy required for object extraction by the object extraction unit 111 is required. Is determined, and the determined result is output to the processing condition determination unit 122.
  • the processing condition determination unit 122 updates the reference value that is a condition for reducing the calculation load in the object extraction unit 111 based on the determination result from the recognition accuracy determination unit 150, the running state, and the calculation load. , Prevents the omission of excessive calculation that causes insufficient accuracy of object extraction due to reduction of calculation load.
  • the block area for executing object extraction by DNN by the information indicating the running state and the calculation load is static, but the accuracy of object extraction required for automatic operation is required. It is desirable that this reference value is dynamic in order to maintain.
  • the object extraction unit 111 As an example, there are 5 objects extracted by the object extraction unit 111 by inputting image data from the camera 200, and 7 objects are recognized by the sensor recognition unit 140 from the information from the LiDAR 400, and the object extraction unit 111. It is assumed that the number of objects extracted in is less than the number of objects recognized by the sensor recognition unit 140.
  • the object extraction unit 111 determines that the accuracy of object extraction required for automatic operation is not maintained.
  • the recognition accuracy determination unit 150 Based on the information from the object extraction unit 111 and the sensor recognition unit 140, the recognition accuracy determination unit 150 outputs a command to the processing condition determination unit 122 to change the processing conditions so that the accuracy of object extraction is improved.
  • the processing condition determination unit 122 changes the reference value for determining the processing condition.
  • the processing condition determination unit 122 receives a command from the recognition accuracy determination unit 150 to improve the accuracy of object extraction, and the reference value is increased by + 5%. As the load factor threshold is increased. Further, the processing condition determination unit 122 notifies the block area determination unit 124 that the load factor threshold value has been increased.
  • the block area determination unit 124 When the block area determination unit 124 receives the notification of the increase in the load factor threshold value, the block area determination unit 124 adds a predetermined value to the DNN block area currently used by the object extraction unit 111 and commands the object extraction unit 111 of the FPGA 170.
  • the predetermined value of the block area determination unit 124 is set to, for example, 1.
  • the block area determination unit 124 can increase the number of DNN block areas used by the object extraction unit 111 to improve the accuracy of extracting the object. ..
  • the execution layer determination unit 121 cancels the notification of the increase in the load factor threshold because the effect of increasing the DNN block area used by the object extraction unit 111 is low when the traveling environment is congested or at night. be able to.
  • the object extraction unit It is possible to prevent excessive reduction of arithmetic processing (layers) such that the accuracy of object extraction required for automatic operation is insufficient in 111.
  • the information processing apparatus 100 of the present embodiment can maintain processing with higher accuracy than the above-mentioned Examples 7, 8, 9, and 10.
  • the information processing apparatus 100 of the present embodiment can reduce the power consumption of the FPGA 170 as compared with the examples 7, 8, 9, and 10.
  • the sensor used for determining the accuracy of object extraction is Lidar 400, which can determine the distance to an object such as a camera, RADAR, or a far-infrared camera and the type of the object, and is an object extraction unit 111. It is not limited to LiDAR as long as it is different from the sensor that outputs the external information input to. Further, the sensors may be used alone or in combination of two or more.
  • the recognition accuracy determination unit 150 as a method for determining the accuracy of object extraction by the recognition accuracy determination unit 150, it is static that the result of the object extraction unit 111 and the result of the sensor recognition unit 140 are determined whether or not they match. Although it is a process, the reference for determining the accuracy of object extraction may be dynamically changed by providing the recognition accuracy determination unit 150 with a learning function.
  • FIG. 15 is a block diagram showing an example of the configuration of an automatic operation system using the information processing device 100 of this embodiment.
  • the same components as those in FIG. 13 are given the same name and reference numeral, and unless otherwise specified, they are assumed to have the same or similar functions, and the description thereof will be omitted.
  • an information amount determination unit 123 and an external information conversion unit 112 are added to the processing content control unit 120 of the tenth embodiment shown in FIG. 13, and an external information conversion unit 112 is added to the DNN processing unit 110, and the information is input from the camera 200.
  • An example of changing the number of pixels (or resolution) of the outside world image according to the driving environment and the load state is shown. Other than that, the configuration is the same as that of the tenth embodiment.
  • the information amount determination unit 123 determines the number of pixels (resolution) for inputting the external world image acquired by the camera 200 to the object extraction unit 111 based on the result from the processing condition determination unit 122, and determines the number of pixels (resolution) to be input to the object extraction unit 111, and the external information conversion unit of the FPGA 170. Command 112.
  • the external information conversion unit 112 converts the external world image acquired by the camera 200 into a format that can be used by DNN based on the command from the information amount determination unit 123. As a result, the object extraction unit 111 extracts the object with the number of pixels according to the processing conditions (block area or exclusion area).
  • the camera 200 outputs an image of 2 million pixels. Further, it is assumed that the information amount determination unit 123 determines from the determination result of the processing condition determination unit 122 that the number of pixels required for object extraction is 250,000 pixels. In this case, the external information conversion unit 112 converts the 2 million pixel image output from the camera 200 into 250,000 pixels. The object extraction unit 111 extracts an object using the 250,000-pixel image output from the external information conversion unit 112.
  • the object extraction unit 111 executes the DNN by dynamically changing the number of pixels of the input image based on the determination result from the processing condition determination unit 122. It is possible to use an image having the number of pixels according to the area. Therefore, in addition to reducing the execution layer of the DNN, the number of pixels of the image for which the object extraction unit 111 extracts the object can be reduced, and the amount of calculation can be reduced.
  • the information processing apparatus 100 of this embodiment can reduce power consumption and calorific value as compared with Examples 7, 8, 9, and 10.
  • the information processing apparatus 100 of the present embodiment can be expected to have an increased mileage in the electric vehicle as compared with the examples 7, 8, 9, and 10, and an improvement in the cooling cost of the FPGA 170.
  • the information amount determination unit 123 changes the number of pixels from the camera 200, but if the output of external information is LiDAR or RADAR, the number of point clouds is determined, and other information on external information. The amount may be sufficient, and the number of pixels is not limited.
  • the information processing apparatus 100 of Examples 1 to 6 (7 to 12) can have the following configuration.
  • An information processing device (100) having a processor (10), a memory (20), and an arithmetic unit (FPGA170) that executes an operation with an inference model, and receives external information (output of the camera 200), and is described above. It has a DNN processing unit (110) that extracts an object in the outside world from the external information by an inference model, and a processing content control unit (120) that controls the processing content of the DNN processing unit (110).
  • the unit (110) has an object extraction unit (111) that executes the inference model in a deep neural network having a plurality of layers of neurons, and the processing content control unit (120) is the object extraction unit (111).
  • An information processing apparatus including an execution layer determination unit (121) for determining the layer used in the above.
  • the object extraction unit 111 by reducing the layer (fixed value) of the DNN used by the object extraction unit 111, it is possible to reduce the power consumption and the amount of heat generated by the arithmetic unit such as the FPGA 170 and the GPU. As a result, the mileage of the electric vehicle is increased, and the cooling cost of the arithmetic unit can be reduced.
  • the processing content control unit (120) receives external state information (running state) and sets a preset threshold value and external state information.
  • the execution layer determination unit (121) includes the processing condition determination unit (122) that compares the values and determines the external environment, and the execution layer determination unit (121) is the DNN processing unit based on the determination result of the processing condition determination unit (122).
  • the information processing apparatus 100 dynamically changes the processing conditions that affect the accuracy of object extraction and the power consumption and heat generation amount of the arithmetic unit (FPGA170) according to the driving environment, as compared with the above (1). It is possible to change to.
  • the information processing apparatus further including a load detection device (50) for detecting the arithmetic load of the arithmetic unit (170), and the processing content control unit (120). It has a processing condition determination unit (122) that receives the arithmetic load from the load detection device (50), compares the preset load threshold value with the arithmetic load, and determines the load state, and has the execution layer determination unit. (121) is an information processing apparatus characterized in that the number of layers used by the DNN processing unit (110) is determined based on the determination result of the processing condition determination unit (122).
  • the load state according to the load of the FPGA 170 included in the information processing apparatus 100 can be determined, and the execution layer determination unit 121 can dynamically change the processing conditions according to the load.
  • the information processing apparatus 100 can dynamically reduce the power consumption and the amount of heat generated by the FPGA 170 as compared with the above (1).
  • the information processing apparatus 100 of the present embodiment it is possible to suppress the occurrence of an abnormality in the FPGA 170 due to thermal runaway or the like and prevent the arithmetic accuracy of the arithmetic unit from being lowered. As a result, the mileage of the electric vehicle can be increased as compared with the first embodiment, and the cooling cost of the FPGA 170 or the like can be reduced.
  • the load detection device (50) for detecting the calculation load of the calculation device (170) is further provided, and the processing condition determination unit (122) receives the calculation load from the load detection device (50) and sets it in advance.
  • the load state is determined by comparing the calculated load threshold value with the arithmetic load, and the determination result of the external environment and the determination result of the load state are output to the execution layer determination unit (121) to be output to the execution layer determination unit (121).
  • 121) is an information processing apparatus characterized in that the number of layers used by the DNN processing unit (110) is determined based on the determination result of the processing condition determination unit (122).
  • the processing condition determination unit 122 determines the running environment and the load state from the information indicating the running state and the calculation load of the FPGA 170, thereby dynamically extracting the object as compared with the above (2) and (3). It is possible to change the accuracy and reduction of power consumption and calorific value. As a result, an effect that combines the above advantages (2) and (3) can be expected. That is, it is possible to keep the load of the FPGA 170 in a normal state while maintaining the accuracy of object extraction suitable for various driving environments.
  • the processing content control unit (120) receives sensor information (output of LiDAR400) for detecting an object and recognizes the object from the sensor information.
  • the recognition accuracy is calculated by comparing the sensor recognition unit (140), the object recognized by the sensor recognition unit (140), and the object extracted by the DNN processing unit (110), and the recognition accuracy is set in advance.
  • the recognition accuracy determination unit (150) for determining the decrease in recognition accuracy is further provided, and the processing condition determination unit (122) further includes the determination result of the external environment and the load.
  • the determination result of the recognition accuracy determination unit (150) is added to the determination result of the state and output to the execution layer determination unit (121), and the execution layer determination unit (121) is the processing condition determination unit (122).
  • An information processing apparatus characterized in that the number of layers used by the DNN processing unit (110) is determined based on the determination result of the above.
  • the object extraction unit by adding a sensor recognition unit 140 that recognizes an object based on information from the LiDAR 400, and a recognition accuracy determination unit 150 that determines the accuracy of object extraction by the object extraction unit 111 and the sensor recognition unit 140, the object extraction unit It is possible to prevent excessive reduction of arithmetic processing (layers) such that the accuracy of object extraction required for automatic operation is insufficient in 111. As a result, the information processing apparatus 100 can maintain processing with higher accuracy than the above (1), (2), (3), and (4). As a result, the power consumption can be further reduced with respect to the above (1), (2), (3), and (4).
  • the external information is image information
  • the processing content control unit (120) determines the determination result of the processing condition determination unit (122).
  • the DNN processing unit (110) further includes an information amount determining unit (123) that determines the amount of information of the image information based on the information amount, and the DNN processing unit (110) is based on the information amount determined by the information amount determining unit (123).
  • An information processing device further comprising an external information conversion unit (112) for changing the amount of information of the image information used in the object extraction unit (111).
  • the DNN processing unit 110 dynamically changes the number of pixels of the input image based on the determination result from the processing condition determination unit 122 to increase the number of DNN execution layers used by the object extraction unit 111. Images with a combined number of pixels can be used. Therefore, in addition to reducing the execution layer of the DNN, the number of pixels of the image used by the object extraction unit 111 can be reduced, and the amount of calculation can be further reduced. This makes it possible to reduce power consumption and calorific value as compared with the above (1), (2), (3), and (4). As a result, the mileage of the electric vehicle is increased as compared with the above (1), (2), (3), and (4), and the cooling cost of the FPGA 170 or the like can be expected to be reduced.
  • the present invention is not limited to the above-described examples, and includes various modifications.
  • the above-described embodiment is described in detail in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to the one including all the configurations described.
  • any of addition, deletion, or replacement of other configurations can be applied alone or in combination.
  • each of the above configurations, functions, processing units, processing means, etc. may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. Further, each of the above configurations, functions, and the like may be realized by software by the processor interpreting and executing a program that realizes each function. Information such as programs, tables, and files that realize each function can be placed in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
  • SSD Solid State Drive
  • control lines and information lines indicate those that are considered necessary for explanation, and not all control lines and information lines are necessarily indicated on the product. In practice, it can be considered that almost all configurations are interconnected.
  • An information processing device that has an arithmetic unit that executes operations with a processor, memory, and an inference model.
  • the DNN processing unit includes a DNN processing unit that receives external information and extracts an object in the outside world from the external information by the inference model, and a processing content control unit that controls the processing content of the DNN processing unit. It has an object extraction unit including the inference model that divides the external information into a plurality of block regions for extracting objects of different sizes and extracts the objects in the outside world for each block region by a deep neural network.
  • the processing content control unit is an information processing device including a block area determination unit that determines the block area used in the object extraction unit.
  • the processing content control unit receives external state information, compares a preset threshold value with the value of the external state information, and determines the external environment.
  • the block area determination unit determines the block area to be used in the DNN processing unit based on the determination result of the processing condition determination unit, and outputs the block area to the DNN processing unit.
  • the information processing device further including a load detection device for detecting the calculation load of the calculation device, and the processing content control unit receives the calculation load from the load detection device. It has a processing condition determination unit that determines a load state by comparing a preset load threshold value with the arithmetic load, and the block area determination unit is the DNN processing unit based on the determination result of the processing condition determination unit.
  • An information processing device characterized in determining a pre-block area to be used in.
  • the information processing device further including a load detection device for detecting the calculation load of the calculation device, and the processing condition determination unit receives the calculation load from the load detection device.
  • the load state is determined by comparing the preset load threshold value with the arithmetic load, the determination result of the external environment and the determination result of the load state are output to the block area determination unit, and the block area determination unit determines the load state.
  • An information processing apparatus characterized in that the block region used in the DNN processing unit is determined based on a determination result of the processing condition determination unit.
  • the processing content control unit receives sensor information for detecting an object and recognizes the object from the sensor information by the sensor recognition unit and the sensor recognition unit.
  • the recognition accuracy is calculated by comparing the processed object with the object extracted by the DNN processing unit, and when the recognition accuracy is equal to or less than a preset accuracy threshold, the recognition accuracy determination unit determines a decrease in the recognition accuracy.
  • the processing condition determination unit adds the determination result of the recognition accuracy determination unit to the determination result of the external environment and the determination result of the load state, and outputs the determination result to the block area determination unit.
  • An information processing apparatus characterized in that the block area determination unit determines the block area to be used in the DNN processing unit based on a determination result of the processing condition determination unit.
  • the external information is image information
  • the processing content control unit determines the amount of information of the image information based on the determination result of the processing condition determination unit.
  • the DNN processing unit further has an information amount determining unit to be determined, and the DNN processing unit changes the information amount of the image information used in the object extraction unit based on the information amount determined by the information amount determining unit.
  • An information processing device characterized by further having a unit.
  • Information processing device 110 DNN processing unit 111 Object extraction unit 112 External information conversion unit 120 Processing content control unit 121 Execution layer determination unit 122 Processing condition determination unit 123 Information amount determination unit 124 Block area determination unit 130 Action planning unit 140 Sensor recognition unit 150 Extraction accuracy judgment unit 200 Camera 300 Vehicle control unit 400 LiDAR

Abstract

車両の自動運転システムにおいて、走行中の環境等によりDNNで行われる物体抽出の演算量を低減する。プロセッサとメモリと推論モデルで演算を実行する演算装置を有する情報処理装置であって、外部情報を受け付けて、前記推論モデルによって前記外部情報から外界の物体を抽出するDNN処理部と、前記DNN処理部の処理内容を制御する処理内容制御部と、を有し、前記DNN処理部は、複数のニューロンの層を有するディープニューラルネットワークで前記推論モデルを実行する物体抽出部を有し、前記処理内容制御部は、前記物体抽出部で用いる前記層を決定する実行層決定部を含む。

Description

情報処理装置
 本発明は、ディープニューラルネットワークを利用する情報処理装置に関する。
 近年、機械学習を用いて周辺認識や自動操舵、自動速度制御によって目的地まで車両を制御する技術が進展している。また、物体認識等に適用する機械学習の手法としてディープニューラルネットワーク(DNN:Deep Neural Network)が知られている。
 DNNは、物体の特徴を習得する学習処理と、学習した結果をもとに画像データから物体の抽出を行う推論処理を実行する。従来からにDNNを利用して車両の自動運転を行う際には、まずカメラから外界の画像データを取得し、DNNで使用可能なフォーマットに変換する。推論処理においては、変換された画像データを入力画像として予め学習処理を完了させたDNNを使って物体の抽出を行う。その後、物体の抽出結果から周辺地図を生成し、周辺地図をもとに行動計画を立て、車両の制御を行う。
 特許文献1では、カメラからの入力画像からニューラルネットワーク等を用いて物体を抽出し、走行可能な空間か否かを決定する技術が示されている。また、特許文献2では、走行状態に合わせて段階的にカメラからの入力画像の画素数を小さくする技術が示されている。
特開2019-008796号公報 特開2018-056838号公報
 DNNは乗算と加算で構成される畳み込み演算を繰り返して実行するため、演算量が非常に多い。また、特に車両の自動運転では非常に短い時間内で行動計画を更新し続ける必要があることから、DNNによる物体抽出には高速な演算が要求される。そのため、車両に搭載可能な演算装置であるGPU(Graphics Processing Unit)やFPGA(Field Programmable Gate Array)、マイコン、CPU等にDNNを実装すると、演算装置の消費電力や発熱量が非常に大きくなる。
 また、どのような場面でも自動運転を継続するためには、高い精度での物体抽出を行う必要があることから入力画像は画素数の大きいものを用いる必要があり、入力画像の変換をする際にも同様に消費電力や発熱量が大きくなる。車両が提供可能な電力には限りがあるため、消費電力や発熱量が大きくなることで電動車両では走行可能距離が短くなり、また、演算装置の冷却コストが増加するという問題が生じる。
 しかし、前記特許文献1では入力画像の変換及び物体抽出のいずれにおいても消費電力を低減させることは考慮されていない。また、特許文献2では走行環境により入力画像の変換方法を変更することで、画像変換処理での電力削減が可能であるが、特に演算量が多いDNNを使った推論処理における消費電力は考慮されていないため、十分な消費電力の削減効果が期待できない。
 本発明は、前記の点に鑑み、車両に搭載される演算装置の演算負荷状態と走行環境から、DNNによる物体抽出処理の省略可否を判定し、演算装置の演算負荷及び消費電力の低減、発熱量の抑制を目的とする。
 本発明は、プロセッサとメモリと推論モデルで演算を実行する演算装置を有する情報処理装置であって、外部情報を受け付けて、前記推論モデルによって前記外部情報から外界の物体を抽出するDNN処理部と、前記DNN処理部の処理内容を制御する処理内容制御部と、を有し、前記DNN処理部は、複数のニューロンの層を有するディープニューラルネットワークで前記推論モデルを実行する物体抽出部を有し、前記処理内容制御部は、前記物体抽出部で用いる前記層を決定する実行層決定部を含む。
 本発明の情報処理装置は、走行環境に基づいてディープニューラルネットワーク(DNN)の演算量を低減することにより、自動運転に必要とされるDNNの物体抽出精度を確保しながら、演算装置の消費電力の削減と発熱量の抑制を実現できる。これにより、電動車両の走行可能距離の増大や冷却システムのコスト低減が可能となる。
 本明細書において開示される主題の、少なくとも一つの実施の詳細は、添付されている図面と以下の記述の中で述べられる。開示される主題のその他の特徴、態様、効果は、以下の開示、図面、請求項により明らかにされる。
本発明の実施例1を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例1を示し、DNNで物体抽出を行う処理の一部を示す図である。 本発明の実施例2を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例3を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例4を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例5を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例6を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例7を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例7を示し、物体抽出を行う処理の一部を示す図である。 本発明の実施例8を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例8を示し、トンネル走行時のカメラからの画像を表す図である。 本発明の実施例9を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例10を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例11を示し、自動運転システムの構成の一例を示すブロック図である。 本発明の実施例12を示し、自動運転システムの構成の一例を示すブロック図である。
 以下、実施例を、図面を用いて説明する。
 複数のニューロンの層を有するディープニューラルネットワーク(以下DNN:Deep Neural Network)は、乗算と加算で構成される畳み込み演算を繰り返し実行するため、演算量が非常に多い。それに伴いDNNを実行する演算装置の消費電力や発熱量が大きいため、車両の情報処理装置にDNNを用いた物体抽出処理を行う場合には、電動車両では走行可能距離が短くなる場合や冷却コストが高くなることが課題となっている。
 図1は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。
 図1に示すように、本実施例に係る情報処理装置100を用いた自動運転システムは、情報処理装置100と、カメラ200、車両制御部300で構成される。ここで、情報処理装置100は、プロセッサ10と、メモリ20と、FPGA(Field Programmable Gate Array)170を含む計算機である。
 なお、本実施例では、DNNを実行する演算装置としてFPGA170を採用した例を示すが、これに限定されるものではなく、GPU(Graphics Processing Unit)を演算装置に採用してもよい。また、DNNを実行する演算装置は、プロセッサ10と同一のパッケージに収容されてもよい。また、プロセッサ10とFPGA170は、図示しないインターフェースを介してカメラ200及び車両制御部300に接続される。
 メモリ20には、行動計画部130がプログラムとしてロードされてプロセッサ10によって実行される。プロセッサ10は、各機能部のプログラムに従って処理を実行することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ10は、行動計画プログラムに従って処理を実行することで行動計画部130として機能する。他のプログラムについても同様である。さらに、プロセッサ10は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
 FPGA170は、DNN処理部110と、処理内容制御部120とを含む。行動計画部130を含む。また、DNN処理部110は、物体抽出部111を含む。処理内容制御部120は、実行層決定部121を含む。なお、カメラ200は情報処理装置100内に含まれていてもよいし、含まれていなくてもよい。また、情報処理装置100は車両に搭載されていてもよいし、されていなくてもよい。
 最初に、DNN処理部110の処理について説明する。物体抽出部111は、PCや、サーバ等の計算機で学習処理が行われた後の推論処理に用いるためのDNN(推論モデル)が保持されている。FPGA170は、カメラ200が取得した外部情報(画像データ)に対して、後述する処理内容制御部120から出力される情報を反映したDNNを用いて画像データから物体の抽出を行う。
 なお、カメラ200は車両の所定の位置(図示省略)に取り付けられて、車両の外界(前方)の物体を検出するため外部情報として、車両の前方の画像を取得し、情報処理装置100へ出力する。
 行動計画部130は、物体抽出部111で物体を抽出した情報を用いて、車両の進行方向や、進行速度等の行動計画を生成し、車両制御部300に出力する。車両制御部300は行動計画部130からの出力をもとに車両の制御を行う。車両制御部300で行う処理については、周知又は公知の技術を適用すればよいので、本実施例では詳述しない。
 次に、処理内容制御部120の処理について説明する。実行層決定部121は、物体抽出処理で使用するDNNの実行層の数を保持しており、その情報を物体抽出部111に出力する。
 以下、物体抽出部111の処理について具体例を用いて説明する。DNNの物体抽出処理では、外部情報(画像データ)に対して分割数が異なる複数の層を用いて物体を抽出することで、様々な大きさの物体の抽出を可能とする。図2は図1の物体抽出部111がカメラ200の情報(画像データ)からDNNで物体抽出を行う際の処理の一部を抜粋した例を示す図である。
 図2において、カメラ画像500は、図1に示したカメラ200から出力される画像の一例を示す。また、画像510は、物体抽出部111のDNNの第1層目でのカメラ画像500を分割した例を示し、画像520、530、540、550はそれぞれ第2層、第3層、第4層、第5層での分割方法を示す。
 図2では、DNN処理部110が、カメラ画像500を第1層ではカメラ画像を小さく分割することで遠くの人や車等の小さい物体511を抽出し、第5層ではカメラ画像を大きく分割することで近くの車等大きい物体551を抽出していることを示している。
 DNN処理部110は、画像510では入力画像(500)を5×5=25のブロックに分割してそのブロック単位で物体抽出部111が物体抽出の処理を行う。DNN処理部110は、同様に画像520では4×4=16、画像530では3×3=9、画像540では2×2=4、画像550では1×1=1のブロックに分割して物体抽出の処理を行う。
 したがって、DNN処理部110が図2に示す画像において物体抽出の処理を行う回数は、25+16+9+4+1=55回となる。なお、DNNの構造は、本実施例で使用した構造のように小さい物体を先に抽出してから大きい物体を抽出するという構造に限定されず、物体を抽出可能なものであればよい。また、DNNで演算する際のブロックの分割数及び層の数は、自動運転を実現するために必要な精度を確保することが可能であれば、図2の方法に限定されない。
 一方、例えば工場等の私有地内で見通しがよく、走行している車両の種類も限定されている道路を、一般道路に比べて十分に低速で走行する車等の場合では、数百メートル先にある遠くの小さい物体を抽出しなくてもよい。そのため、DNNの層数を減らすことで物体抽出の処理を行うブロック数を減らしてもよい。
 例えば、実行層決定部121は、物体抽出処理で実行するDNNの層を1番小さい物体を抽出する第1層目を除いた、第2層から第5層と決めて、物体抽出部111へ指令する。物体抽出部111では、この実行層決定部121からの情報をもとに、DNNの第2層から第5層のみを実行して物体抽出の処理を行う。この場合、物体抽出の処理を行う回数は、16+9+4+1=30となり、前記全ての層で物体抽出をした場合に比べて、25回の演算を削減できる。
 なお、実行層決定部121は、走行開始時に走行環境などに応じて予め設定された層を処理条件として物体抽出部111へ指令すればよい。
 このように、物体抽出部111が用いるDNNの層(固定値)を削減することで、例えばFPGA170やGPU等の演算装置の消費電力の削減及び発熱量の抑制が可能となる。結果として、電動車両では走行可能距離が増大し、演算装置の冷却コストが低減できる。
 なお、今回は説明を簡単にする都合上、図2におけるDNNの層数やブロック数に前記のような値を使用しているが、実際の物体抽出に使用するDNNでは外部情報を数千から数万のブロックに分割し、かつ層の数も多い。そのため、実際の演算回数は前記で示した例より膨大で、層数の削減による演算量の低減効果も非常に大きくなる。
 なお、本実施例では外部情報を取得するセンサとしてカメラ200を採用した例を示すが、これはLiDAR(Light Detection and Ranging)や、RADAR(Radio Detection and Ranging)や、遠赤外線カメラ等の物体との距離や物体の種類が取得できるセンサであればよく、カメラ200に限定されない。また、センサは単独で使用してもよいし、複数を組み合わせて使用してもよい。
 上記実施例1では、機械学習によって生成された推論モデルをDNNで実行する物体抽出部111の例を示したが、これに限定されるものではなく、他の機械学習などによって生成されたモデルを利用することができる。
 以下に、本発明の実施例2について説明する。図3は、実施例2の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図3において、図1と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして説明を省略する。
 本実施例は、前記実施例1に処理条件判定部122と外部の状態情報を検出するセンサを追加して、FPGA170内の実行層決定部121を処理内容制御部120内へ移動した例を示す。その他の構成については、前記実施例1と同様である。
 図3において、実施例1から新たに追加された処理条件判定部122は、走行中の車両のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行う。実行層決定部121は処理条件判定部122が判定した走行環境に基づいて物体抽出処理で使用するDNNの層数(処理条件)を動的に変更する。
 本実施例では、車両の走行状態を検出するセンサとして、車速センサ30と照度センサ40を情報処理装置100に接続する例を示すが、これらに限定されるものではない。少なくとも車速を検出できればよいので、GPS(Grobal Positioning System)等の位置情報から車速を算出するようにしてもよい。
 情報処理装置100の処理条件判定部122は、車速センサ30と照度センサ40からの情報から走行環境を判定して、実行層決定部121へ出力する。実行層決定部121は、入力された走行環境に基づいてDNNで使用する層を処理条件として決定して物体抽出部111へ指令する。
 前記実施例1では、層数(処理条件)が固定値のためFPGA170内に実行層決定部121を配置した例を示したが、実施例2では、実行層決定部121が動的に層数(処理条件)を変更する。このため、実行層決定部121は、プログラムとしてメモリ20にロードされて、プロセッサ10によって実行する。
 実施例1では、限定された走行環境においてDNNの実行層を静的に決定する例を示したが、車両の自動運転では走行環境は様々であり複雑で、画像データから抽出される物体の精度も時々刻々と変化するため、走行環境に応じてDNNの実行層を動的に変更できることが望ましい。
 以下、処理条件判定部122の処理について具体例を用いて説明する。
 一例として、走行状態を示す情報とし車速センサ30が検出した車速を用いる例を示す。処理条件判定部122は、車速センサ30が検出した車速が、予め設定された車速閾値以下であれば現在の走行環境は渋滞中であると判定した例について説明する。
 車両が渋滞中で非常に低速(例えば、5km/h)で走行している場合は、カメラ200から入力される画像の変化が小さいため、物体抽出部111では数十メートル先の物体を認識すればよく、数百m先の物体を認識させるための精度で物体抽出をしなくてよい。
 実行層決定部121は、処理条件判定部122が判定した走行環境をもとに処理条件を決定する。実行層決定部121は処理条件として、自動運転に必要な物体抽出の精度を確保しつつDNNの演算量が削減できるように、物体抽出部111で実行するDNNの層は1番小さい物体を検出する第1層(図2の画像510)を除いた、第2層(520)から第5層(550)と決定する。
 このように、実施例2では前記実施例1の構成に、走行状態を検出するセンサと、走行状態を示す情報から車両の走行環境を判定する処理条件判定部122とを追加し、実行層決定部121が走行環境に適した処理条件の決定を行う。これにより、実施例2の情報処理装置100は、実施例1よりも、走行環境に合わせて動的に、物体抽出の精度と演算装置(FPGA170)の消費電力及び発熱量に影響を与える処理条件の動的な変更が可能となる。
 結果として、電動車両では実施例1よりも走行可能距離が増大し、演算装置(FPGA170)の冷却コスト低減が期待できる。なお、上記で渋滞と判定する方法は、車速センサ30でなくてもよく、走行速度が分かる画像情報や、ラジオ、インターネット等の渋滞情報でもよい。
 また、走行状態を示す情報として照度センサ40を用いて、処理条件判定部122が周囲の明るさ(照度)が予め設定された照度閾値以下であれば夜間だと判定する。夜間は周囲が暗くなり、カメラ200は周囲が明るい場合に比べて詳細な外部情報を得ることができない。そのため、数百メートル先の遠くの物体を抽出可能な外部情報を得られないため、物体抽出部111は数十メートル先の物体を抽出する精度で演算をすればよく、数百メートル先の物体を認識するための精度での物体抽出をしなくてよい。
 この場合、実行層決定部121は、処理条件判定部122が判定した走行環境をもとに、物体抽出部111で実行するDNNの層の情報を第2層(520)から第5層(550)と決定する。また、現在の周辺の明るさを判定するための走行状態を示す情報は、照度センサ40に限定されるものではない。例えば、カメラ200等の周囲の明るさを検知できるセンサや、ラジオやインターネット、GPS等の時刻を判定可能なものから昼か夜かを検知するようにしてもよい。
 また、走行状態を示す情報として車内カメラ(図示省略)を用いてもよい。この場合、処理条件判定部122は、車内カメラの画像データからドライバーがハンドルを操作しているか否かを検出し、ハンドルを操作していれば自動運転(AD:Autonomous Driving)の使用中ではないと判定する。ADを使用する際には自動運転システムのみで車両を制御することから小さな物体まで認識するような高い精度での物体抽出が必要となるが、ADを使用していない場合、ドライバーが外界情報を認知可能なため、運転支援(ADAS:Advanced Driver Assistance Systems)が可能な物体抽出の精度が保たれていればよい。
 実行層決定部121は、処理条件判定部122が判定した走行環境をもとに、物体抽出部111で実行するDNNの層の情報を第2層(520)から第5層(550)と決定する。
 また、処理条件判定部122がADの使用中か否かを判定する情報は車内カメラに限定されるものではなく、ハンドルの操作を検知するセンサ等、ドライバーが運転席にいるかを判定可能なものでもよい。また、行動計画部130が生成した自動運転車両の行動計画の有無等のデータからADを使用している否かを判定してもよい。
 なお、処理条件判定部122は走行状態を示す情報のうちいずれか1つを用いて処理条件の判定をしてもよいし、複数用いて処理条件の判定をしてもよい。
 以下に、本発明の実施例3について説明する。図4は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図4において、図3と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、前記実施例1に処理条件判定部122と負荷検出装置50を追加して、FPGA170内の実行層決定部121を処理内容制御部120内へ移動した例を示す。
その他の構成については、前記実施例1と同様である。
 前記実施例2では、処理条件判定部122は、走行中のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行っているが、本実施例では処理条件判定部122は、情報処理装置100で物体抽出部111の演算負荷を入力として、現在のFPGA170の負荷状態の判定を行う。実行層決定部121は処理条件判定部122が判定した負荷状態をもとに物体抽出部111で使用するDNNの層数(処理条件)を決定する。
 図4において、実施例1から新たに追加された負荷検出装置50は、FPGA170の演算負荷を検出して処理条件判定部122へ入力する。なお、負荷検出装置50は、例えば、FPGA170の消費電力や、供給電流などを演算負荷として検出するセンサを含むことができる。
 また、前記実施例1では、層数(処理条件)が固定値のためFPGA170内に実行層決定部121を配置した例を示したが、実施例3では、実行層決定部121が動的に層数(処理条件)を変更するため、プログラムとしてメモリ20にロードされて、プロセッサ10によって実行する。
 以下、処理条件判定部122の処理について具体例を用いて説明する。
 一例として、処理条件判定部122は、演算負荷としてFPGA170の負荷率を算出し、所定の負荷率閾値と比較する。なお、負荷率は、負荷検出装置50が検出した消費電力を所定の最大電力で除した値(%)を用いる例を示す。
 処理条件判定部122は、FPGA170の負荷率が負荷率閾値よりも高い場合、FPGA170の演算負荷を下げると判定する。実行層決定部121は、処理条件判定部122からの判定結果をもとに、FPGA170の負荷率が負荷率閾値以下になるように、物体抽出部111で使用するDNNの層の情報を1番小さい物体を検出する第1層(510)を除いた第2層(520)から第5層(550)と決定する。
 このように、FPGA170の演算負荷から負荷状態を判定する処理条件判定部122を追加することで、情報処理装置100に含まれるFPGA170の負荷率に応じた負荷状態を判定し、実行層決定部121は負荷状態に応じて処理条件を動的に変更することが可能となる。これにより、情報処理装置100は、実施例1に比して動的にFPGA170の消費電力の削減及び発熱量の抑制ができる。
 さらに、本実施例の情報処理装置100では、上記により、熱暴走等によりFPGA170に異常が発生するのを抑制し、演算装置の演算精度が低下することを防ぐことが可能となる。これにより、前記実施例1に比して電動車両の走行可能距離を増大することが可能となり、FPGA170等の冷却コストを低減できる。
 また、本実施例で演算負荷としているFPGA170の負荷率は、消費電力に限定されるものではない。FPGA170の温度等の演算負荷に関連する値を利用すればよい。また、上記演算負荷は、FPGA170だけはなくプロセッサ10の演算負荷を含めるようにしてもよい。
 なお、処理条件判定部122は演算負荷のうちいずれか1つを用いて負荷状態の判定をしてもよいし、複数の演算負荷を用いて負荷状態を判定してもよい。
以下に、本発明の実施例4について説明する。図5は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図5において、図3、図4と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、前記実施例2の構成に前記実施例3の構成を加えた例を示す。その他の構成については、前記実施例2と同様である。
 前記実施例2では走行中のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行っており、前記実施例3では情報処理装置100の演算負荷を入力として、現在の負荷状態の判定を行う例を示した。本実施例では、前記実施例2に前記実施例3を組み合わせた例を示す。
 処理条件判定部122は、走行状態を示す情報と、FPGA170の演算負荷の両方を入力として、走行環境と負荷状態の判定を行って、実行層決定部121へ前記判定結果を出力する。実行層決定部121は、処理条件判定部122からの判定結果をもとに物体抽出部111で使用するDNNの層数(処理条件)を決定する。
 このように、処理条件判定部122で走行状態を示す情報と、FPGA170の演算負荷から走行環境と負荷状態を判定することで、実施例2及び実施例3に比して動的に物体抽出精度と消費電力及び発熱量の削減を変更することが可能となる。
 結果として、実施例2及び実施例3の利点を合わせた効果が期待できる。つまり、様々な走行環境において適した物体抽出の精度を保ちつつ、FPGA170の負荷を正常な状態に保つことが可能となる。
 なお、処理条件判定部122は走行状態を示す情報及び演算負荷のうちいずれか1つを用いて処理条件の判定をしてもよいし、複数用いて処理条件の判定をしてもよい。
 以下に、本発明の実施例5形態について説明する。図6は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図6において、図5と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例は、前記実施例4の構成要素にLiDAR400と、センサ認識部140と、認識精度判定部150を追加したものである。その他の構成については前記実施例4と同様である。
 図6において、実施例4から新たに追加されたセンサ認識部140は、LiDAR400からの情報(距離及び方位)を処理し、物体の認識を行う。また、認識精度判定部150は、物体抽出部111からの物体抽出の結果と、センサ認識部140からの物体認識の結果の差異を判定することで、物体抽出部111の物体抽出が必要な精度を保持しているか否を判定し、判定した結果を処理条件判定部122に出力する。
 そして、処理条件判定部122は、認識精度判定部150からの判定結果と、走行状態及び演算負荷に基づいて、物体抽出部111での演算負荷を削減する条件となる基準値を更新することで、演算負荷の削減による物体抽出の精度が不足するような過度な演算の省略を防ぐ。
 実施例1、2、3、4の情報処理装置100では、走行状態を示す情報と演算負荷によって物体抽出部111で使用するDNNの層数の制御を行うための基準値は静的であったが、自動運転に必要な物体抽出の精度を保つために、この基準値は動的であることが望ましい。
 以下、認識精度判定部150の処理について具体例を用いて説明する。
 一例として、カメラ200からの画像データを入力して、物体抽出部111で抽出した物体が5個、LiDAR400からの情報からセンサ認識部140で認識した物体が7個で、物体抽出部111において抽出された物体の数がセンサ認識部140で認識された物体の数よりも少なかったとする。
 この場合、センサ認識部140で認識された物体が物体抽出部111では抽出できていないことから、物体抽出部111では自動運転に必要な物体抽出の精度が保たれていないと認識精度判定部150が判定する。
 認識精度判定部150は、物体抽出部111とセンサ認識部140のからの情報をもとに、処理条件判定部122に処理条件を物体抽出の精度が向上するように変更する命令を出力し、処理条件判定部122は処理条件を決めるための基準値の変更を行う。
 なお、認識精度判定部150は、物体抽出部111で抽出された物体の数を、センサ認識部140が認識した物体の数で除した値を認識精度として算出し、算出された認識精度が、予め設定された精度閾値以下の場合には、認識精度が低下したと判定して、処理条件判定部122へ出力するようにしてもよい。
 本実施例の基準値は、例えば、負荷率閾値を補正する値とした場合、処理条件判定部122は認識精度判定部150から物体抽出の精度を向上する命令を受け付けると、基準値を+5%として負荷率閾値を増大させる。また、処理条件判定部122は、実行層決定部121へ負荷率閾値を増大したことを通知する。
 実行層決定部121は、負荷率閾値の増大の通知を受け付けると、現在物体抽出部111で使用しているDNNの層数に所定値を加算してFPGA170の物体抽出部111へ指令する。実行層決定部121の所定値は、例えば、1層などに設定される。
 このように、認識精度判定部150からの要求に応じて、実行層決定部121は物体抽出部111で使用するDNNの層数を増大し、物体を抽出する精度を向上させることができる。
 ただし、実行層決定部121は、走行環境が渋滞中又は夜間の場合には、物体抽出部111が使用するDNNの層数を増大させる効果が低いため、負荷率閾値の増大の通知をキャンセルすることができる。
 このように、LiDAR400からの情報で物体を認識するセンサ認識部140と、物体抽出部111とセンサ認識部140の物体抽出の精度を判定する認識精度判定部150を追加することで、物体抽出部111において自動運転に必要な物体抽出の精度が不足するような、過度の演算処理(層)の削減が行われることを防ぐことができる。
 これにより、情報処理装置100は、前記実施例1、2、3、4よりも精度の高い処理を維持できる。結果として本実施例の情報処理装置100は、実施例1、2、3、4に対して、より消費電力の削減が可能となる。
 なお、本実施例では物体抽出の精度の判定に用いるセンサをLiDAR400としている例を示すが、これはカメラ、RADAR、遠赤外線カメラ等の物体との距離や物体の種類が判別できるもので、物体抽出部111に入力される外部情報を出力するセンサとは異なるものであればよく、LiDARに限定されない。また、センサは単独で使用してもよいし、複数を組み合わせて使用してもよい。
 また、本実施例では、認識精度判定部150が物体抽出の精度を判定する手法として、物体抽出部111の結果とセンサ認識部140の結果が一致しているか否かを判定するという静的な処理となっているが、認識精度判定部150に学習機能を持たせることで物体抽出の精度を判定する基準を動的に変化させてもよい。
 以下に、本発明の実施例6について説明する。図7は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図7において、図5と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、図5に示した前記実施例4の処理内容制御部120に情報量決定部123と、DNN処理部110内に外部情報変換部112を追加して、カメラ200から入力された外界画像の画素数(又は解像度)を走行環境や負荷状態に応じて変更する例を示す。その他の、構成は前記実施例4と同様である。
 図7において、実施例4から新たに追加された情報量決定部123と外部情報変換部112について説明する。情報量決定部123は処理条件判定部122からの判定結果をもとに、カメラ200で取得した外界画像を物体抽出部111へ入力する画素数(解像度)を決定して、FPGA170の外部情報変換部112へ指令する。
 外部情報変換部112は、情報量決定部123からの指令をもとにカメラ200で取得した外界画像をDNNで使用可能なフォーマットに変換する。これにより、物体抽出部111では処理条件(層数)に合わせた画素数で物体抽出が行われる。
 前記実施例1、2、3、4において、物体抽出部111の各層(510~550)で抽出される物体の大きさは異なるため、物体抽出部111の各層の処理内容によっては必要となる外界画像の画素数(解像度)も異なるため、物体抽出部111へ入力される画像の画素数は、物体抽出処理で使用する層数に応じて動的に変更されることが望ましい。
 以下、外部情報変換部112における処理について具体例を用いて説明する。
 一例として、カメラ200は200万画素の画像を出力していたとする。また、処理条件判定部122の判定結果から、情報量決定部123は、物体抽出をするために必要な画素数は25万画素であると判定したとする。
 この場合、外部情報変換部112は、カメラ200から出力された200万画素の画像を25万画素になるように変換する。物体抽出部111は、この外部情報変換部112から出力された25万画素の画像を使って物体抽出を行う。
 このように、DNN処理部110は、処理条件判定部122からの判定結果に基づいて物体抽出部111への入力画像の画素数を動的に変更することで、物体抽出部111で使用するDNNの実行層の数に合わせた画素数の画像を使用することが可能となる。このため、DNNの実行層を削減することに加えて、物体抽出部111の画像の画素数を削減でき、演算量を削減することが可能となる。
 これにより、本実施例の情報処理装置100は、実施例1、2、3、4よりも消費電力の削減及び発熱量の抑制が可能となる。結果として、本実施例の情報処理装置100は、実施例1、2、3、4よりも電動車両では走行可能距離が増大し、FPGA170等の冷却コストの低減が期待できる。
 なお、本実施例では情報量決定部123はカメラ200からの画素数を変更しているが、外部情報を出力するものがLiDARやRADARであれば点群数を変更する等、外部情報の情報量の変更(削減)であればよく、画素数に限定されない。
 図8は、実施例7の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図8においては、図1と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、前記実施例1の実行層決定部121をブロック領域決定部124に置き換えた例を示す。その他の構成については、前記実施例1と同様である。
 図8において新たに追加されたブロック領域決定部124は、DNNの物体抽出の処理を実行するブロック領域を保持しており、ブロック領域の情報を物体抽出部111に出力する。本実施例のブロック領域決定部124は、予め設定された領域を固定されたブロック領域として保持している。
 以下、物体抽出部111の処理について具体例を用いて説明する。
 図9は図8の物体抽出部111が、カメラ200から入力された画像データからDNNで物体の抽出を行う処理の一部を抜粋した例を示す図である。
 図9において、カメラ画像600は図8におけるカメラ200から出力されるカメラ画像を示す。また、画像610は物体抽出部111用DNNの第1層目でのカメラ画像600の分割状態を示し、画像620は第2層での分割状態を示し、画像630は第3層での分割状態を示し、画像640は第4層での分割状態を示し、画像650は第5層での分割状態を示す。
 DNN処理部110は、画像610ではカメラ画像600を5×5=25のブロックに分割して、物体抽出部111は各ブロック単位で物体抽出の処理を行う。DNN処理部110は、同様に画像620ではカメラ画像600を4×4=16のブロックに分割し、画像630ではカメラ画像600を3×3=9のブロックに分割し、画像640ではカメラ画像600を2×2=4のブロックに分割し、画像650ではカメラ画像600を1×1=1のブロックに分割して物体抽出の処理を行う。
 したがって、図9に示す第1層~第5層の物体抽出部111を構成するDNNが物体抽出処理を行う回数は25+16+9+4+1=55回となる。なお、物体抽出部111のDNNの構造については、本実施例で使用した構造のように小さい物体を先に抽出してから大きい物体を抽出するという構成に限定されず、カメラ画像600から物体を抽出可能なものであればよい。また、この場合のDNNの演算をする際のブロックの分割数及び層の数は、自動運転を実現するために必要な精度を確保することが可能であれば、図9の例に限定されない。
 一方、例えばカメラ200からのカメラ画像600には、図9に示すように自車のボンネットや空601等の物体が写る場合がある。これらの物体は、車両の制御を行う際にはカメラ画像600からの抽出が不要な物体である。そのため、物体抽出部111がDNNを実行するブロック領域を指定することで、不要な物体のみが写るブロック領域での物体抽出の処理を削減してもよい。
 図9において、例えば、平坦な見通しのよい道のみを走行する車両の場合には、カメラ画像600には自動運転に不要な物体(雲やボンネット)が常に同じ場所にある。この場合、この部分のブロック領域では物体抽出の処理を行わなくてよい。物体抽出部111では、DNNを実行するブロック領域として指定された領域のみで物体抽出の処理を行う。
 図9の場合では、物体抽出の処理を行わない領域を除外領域とし、物体抽出の処理を実行する領域をブロック領域とする。
 物体抽出部111の第1層の画像610では、カメラ画像600のうち空のみが写る領域を除外領域611-Aとし、カメラ画像600のうちボンネットのみが写る領域を除外領域611-Bとする。なお、除外領域の空とボンネットを特定しない場合には、「-」以降の符号を省略した符号「611」で表す。他の構成要素の符号についても同様である。
 そして、除外領域611-Aと611-Bの間の領域を、ブロック領域612に設定する。すなわち、第1層では、物体抽出部111が、画像610のうち上から3行目と4行目のブロック領域612でDNNによる物体抽出を実施すればよい。
 第2層の画像620では、物体抽出部111がカメラ画像600のうち空のみが写る領域を除外領域621-Aとし、カメラ画像600のうちボンネットのみが写る領域を除外領域621-Bとする。
 そして、除外領域621-Aと621-Bの間の領域を、ブロック領域622に設定する。第2層では、物体抽出部111が画像620のうち上から2行目と3行目のブロック領域でDNNによる物体抽出を実施すればよい。
 第3層の画像630では、物体抽出部111がカメラ画像600のうち空のみが写る領域を除外領域631-Aとする。そして、除外領域631-A以外の領域を、ブロック領域632として設定する。第3層では、物体抽出部111が、画像660のうち上から2行目と3行目のブロック領域632でDNNによる物体抽出を実施すればよい。
 第4層の画像640と第5層の画像620では、全ての領域がブロック領域642、652に設定されて、全てのブロックでDNNによる物体抽出が実行される。
 このように、物体抽出の処理を行わない除外領域611を、ブロック領域決定部124に予め設定しておくことで、DNNの演算数は9+8+6+4+1=28回となり、カメラ画像600の全てのブロック領域で物体抽出を実施した場合に比べて、27回のDNNの演算を削減できる。
 本実施例では、カメラ画像600のうち固定された除外領域で物体抽出部111のDNNの処理が削減されることで、例えば、FPGA170やGPU等の演算装置の消費電力の削減及び発熱量の抑制が可能となる。結果として、電動車両では走行可能距離が増大し、FPGA170等の演算装置の冷却コストが低減される。
 なお、本実施例では説明を簡単にする都合上、図9におけるDNNの層数やブロック数に前記のような値を使用しているが、実際の物体抽出に使用するDNNでは外部情報であるカメラ画像600を数千から数万のブロックに分割し、かつ層の数も多い。そのため、実際の演算回数は前記で示した例より膨大で、演算を実行するブロック領域を削減することによる演算量の低減効果も非常に大きくなる。
 なお、本実施例では外部情報をカメラ200から取得しているが、これに限定されるものではない。外部情報としては、例えば、LiDARや、RADARあるいは遠赤外線カメラ等の物体との距離や物体の種類が取得できるセンサであればよい。また、センサは単独で使用してもよいし、複数を組み合わせて使用してもよい。
 また、ブロック領域決定部124では物体抽出部111のDNNが実行するブロック領域を決定しているが、前記実施例1、2、3、4、5、6のように層の削除を行ってもよい。この場合、物体抽出部111で使用するブロック数を削減するのに加えて、DNNの層数も削減することで、さらに消費電力を削減することが可能となる。
 以下に、本発明の実施例8について説明する。図10は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図10において、図8と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例は、前記実施例7に処理条件判定部122とセンサを追加して、FPGA170内のブロック領域決定部124を処理内容制御部120内へ移動した例を示す。その他の構成については、前記実施例7と同様である。
 図10において、実施例7から新たに追加された処理条件判定部122は、走行中の車両のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行う。ブロック領域決定部124は処理条件判定部122が判定した走行環境に基づいて、物体抽出処理でDNNを実行するブロック領域(図9の612、622、632、642、652以下同様)を動的に変更する。
 本実施例では、車両の走行状態を検出するセンサとして、前記実施例2と同様に車速センサ30と照度センサ40を情報処理装置100に接続する例を示すが、これらに限定されるものではない。
 情報処理装置100の処理条件判定部122は、前記実施例2と同様に、車速センサ30と照度センサ40からの情報から走行環境を判定して、ブロック領域決定部124へ出力する。ブロック領域決定部124は、入力された走行環境に基づいてDNNで使用するブロック領域(又は除外領域)を処理条件として決定して物体抽出部111へ指令する。
 前記実施例7では、ブロック領域が固定値のためFPGA170内にブロック領域決定部124を配置した例を示したが、実施例8では、ブロック領域決定部124が動的にブロック領域(又は除外領域)を変更する。このため、実行層決定部121はプログラムとしてメモリ20にロードされて、プロセッサ10によって実行される。
 実施例7では、限定された走行環境においてDNNを実行するブロック領域を静的に決定する例を示したが、車両の自動運転では走行環境は様々であり複雑で、画像データから抽出される物体抽出の精度も時々刻々と変化するため、走行環境に応じてDNNを実行するブロック領域(又は除外領域)を動的に変更できることが望ましい。
 以下、処理条件判定部122の処理について具体例を用いて説明する。
 一例として、走行状態を示す情報とし車速センサ30が検出した車速を用いる例を示す。処理条件判定部122は、車速センサ30が検出した車速が、予め設定された車速閾値以下であれば現在の走行環境が渋滞中であると判定する。
 車両が渋滞中で非常に低速(例えば、5km/h)で走行している場合は、カメラ200から入力される画像の変化が小さいため、物体抽出部111では、自車前方の車両に追従可能な物体抽出の精度があればよく、カメラ200からの画像の全ての領域で物体抽出を実行する必要がない。
 ブロック領域決定部124は、処理条件判定部122が判定した走行環境をもとに処理条件を決定する。ブロック領域決定部124は、処理条件として、自動運転に必要な物体抽出の精度を確保しつつDNNの演算量が削減できるように、図9における物体抽出をしない除外領域611、621、631及びDNNで物体抽出を行うブロック領域612、622、632、642、652を決定する。
 物体抽出部111は、ブロック領域決定部124が決定したブロック領域612、622、632、642、652のみで物体抽出を行う。なお、以下では単にブロック領域と除外領域とする場合がある。
 このように、実施例8では前記実施例7の構成に、走行状態を示す情報から外部環境(走行環境)を判定する処理条件判定部122を追加し、走行環境に適した処理条件の判定を行う。これにより、本実施例の情報処理装置100は、前記実施例7に比して走行環境に合わせて動的に、物体抽出の精度とFPGA170の消費電力及び発熱量の変更ができる。
 結果として、電動車両では実施例7に比して走行可能距離が増大し延び、FPGA170の冷却コスト低減が期待できる。なお、上記で渋滞と判定する方法は、車速センサ30でなくてもよく、走行速度が分かる画像情報や、ラジオ、インターネット等の渋滞情報でもよい。
 また、走行状態を示す情報として照度センサ40を用いて、処理条件判定部122が周囲の明るさ(照度)が予め設定された照度閾値以下であれば走行環境がトンネル内だと判定する。
 図11は、トンネル走行中のカメラ200からのカメラ画像600のうち、物体抽出部111でDNNの処理を行う例を示した図である。トンネル内は周囲が壁で覆われているため、カメラ画像600のうち、左右端の物体抽出の処理はしなくてもよい。
 ブロック領域決定部124は、処理条件判定部122からの判定結果がトンネル内であれば、図11に示す物体抽出をしない除外領域603を決定する。現在の走行環境をトンネルと判別する方法は、GPSのように現在位置を特定可能な装置等を用いることができる。
 なお、ブロック領域決定部124は、カメラ画像600のフレーム間で変化のない(又は少ない)領域を除外領域603とするよう、物体抽出部111へ指令してもよい。
 また、走行状態を示す情報として車内カメラ(図示省略)を用いてもよい。この場合、処理条件判定部122は、車内カメラの画像データからドライバーがハンドルを操作しているか否かを検出し、ハンドルを操作していれば自動運転(AD:Autonomous Driving)の使用中ではないと判定する。ADを使用する際には自動運転システムのみで車両を制御することから小さな物体まで認識するような高い精度での物体抽出が必要となるが、ADを使用していない場合、ドライバーが外界情報を認知可能なため、運転支援が可能な物体抽出の精度が保たれていればよい。
 ブロック領域決定部124は、処理条件判定部122が判定した走行環境をもとに、物体抽出部111でDNNを実行するブロック領域を決定する。あるいは、ブロック領域決定部124は、DNNを実行しない除外領域611等を決定してもよい。また、AD使用中かを判定する方法は車内カメラでなくてもよく、ハンドルの操作を検知するセンサやドライバーが運転席にいるかを判定可能なもの、又は行動計画部130が生成した自動運転車の行動計画の有無等のデータからADを使用しているか判定してもよい。
 なお、処理条件判定部122は走行状態を示す情報のうちいずれか1つを用いて処理条件の判定をしてもよいし、複数用いて処理条件の判定をしてもよい。
 以下に、本発明の実施例9について説明する。図12は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図12において、図10と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、前記実施例7に処理条件判定部122と負荷検出装置50を追加して、FPGA170内のブロック領域決定部124を処理内容制御部120内へ移動した例を示す。その他の構成については、前記実施例7と同様である。
 前記実施例8では、処理条件判定部122は、走行中のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行っているが、本実施例では処理条件判定部122は、情報処理装置100の演算負荷を入力として、現在のFPGA170の負荷状態の判定を行う。ブロック領域決定部124は、処理条件判定部122が判定した負荷状態をもとに物体抽出部111が物体抽出に使用するDNNのブロック領域を決定する。
 図12において、実施例7から新たに追加された負荷検出装置50は、FPGA170の演算負荷を検出して処理条件判定部122へ入力する。なお、負荷検出装置50は、例えば、FPGA170の消費電力や、供給電流などを演算負荷として検出するセンサを含むことができる。
 また、前記実施例7では、DNNを実行するブロック領域(又は除外領域)が固定値のためFPGA170内にブロック領域決定部124を配置した例を示したが、実施例9では、ブロック領域決定部124が動的にブロック領域(処理条件)を変更するため、プログラムとしてメモリ20にロードされて、プロセッサ10によって実行する。
 以下、処理条件判定部122の処理について具体例を用いて説明する。
 一例として、処理条件判定部122は、演算負荷としてFPGA170の負荷率を算出し、所定の負荷率閾値と比較する。なお、負荷率は、負荷検出装置50が検出した消費電力を所定の最大電力で除した値(%)を用いる例を示す。
 処理条件判定部122は、FPGA170の負荷率が負荷率閾値よりも高い場合、FPGA170の演算負荷を下げると判定する。ブロック領域決定部124は、処理条件判定部122からの判定結果をもとに、FPGA170の負荷率が負荷率閾値以下になるように、物体抽出部111で物体抽出を実施しない除外領域を決定する。
 なお、ブロック領域決定部124は、カメラ画像600のフレーム間で変化のない(又は少ない)領域を除外領域603とするよう、物体抽出部111へ指令してもよい。
 このように、演算負荷から負荷状態を判定する処理条件判定部122を追加することで、情報処理装置100に含まれるFPGA170の負荷率に応じた負荷状態を判定し、実行層決定部121は負荷状態に応じて処理条件を動的に変更することが可能となる。これにより、情報処理装置100は、実施例1に比して動的にFPGA170の消費電力の削減及び発熱量の抑制ができる。
 さらに、本実施例の情報処理装置100では、上記により、熱暴走等によりFPGA170に異常が発生するのを抑制し、演算精度が低下することを防ぐことが可能となる。これにより、前記実施例1に比して電動車両の走行可能距離を増大することが可能となり、FPGA170等の冷却コストを低減できる。
 また、本実施例で演算負荷としているFPGA170の負荷率は、消費電力に限定されるものではない。FPGA170の温度等の演算負荷に関連する値を利用すればよい。また、上記演算負荷は、FPGA170だけはなくプロセッサ10の演算負荷を含めるようにしてもよい。
 なお、処理条件判定部122は演算負荷のうちいずれか1つを用いて負荷状態の判定をしてもよいし、複数の演算負荷を用いて負荷状態を判定してもよい。
 以下に、本発明の実施例10について説明する。図13は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図13において、図10、図12と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、前記実施例8の構成に前記実施例9構成を加えた例を示す。その他の構成については、前記実施例8と同様である。
 前記実施例8では走行中のセンサ等からの走行状態を示す情報を入力として、現在の走行環境の判定を行っており、実施例9では情報処理装置100の演算負荷を入力として、現在の負荷状態の判定を行う例を示した。本実施例では、前記実施例8に前記実施例9を組み合わせた例を示す。
 処理条件判定部122は、走行中の走行状態を示す情報と、FPGA170の演算負荷の両方を入力として、走行環境と負荷状態の判定を行ってブロック領域決定部124へ出力する。ブロック領域決定部124は、処理条件判定部122からの判定結果をもとに物体抽出に使用するDNNのブロック領域(処理条件)を決定する。なお、ブロック領域決定部124は、上述のようにブロック領域又は除外領域を決定すればよい。
 このように、本実施例の情報処理装置100は、処理条件判定部122で走行状態を示す情報と、FPGA170の演算負荷から走行環境と負荷状態を判定することで、実施例8及び実施例9に比して物体抽出の精度と消費電力及び発熱量の削減を動的に変更できる。
 結果として、本実施例の情報処理装置100は、実施例8及び実施例9の利点を合わせた効果が期待できる。つまり、様々な走行環境において適した物体抽出の精度を保ちつつ、FPGA170の負荷を正常な状態に保つことが可能となる。
 なお、処理条件判定部122は走行状態を示す情報及び演算負荷のうちいずれか1つを用いて処理条件の判定をしてもよいし、複数用いて処理条件の判定をしてもよい。
 以下に、本発明の実施例11について説明する。図14は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図14において、図13と同様の構成要素には同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例は、前記実施例10の構成要素にLiDAR400と、センサ認識部140と、認識精度判定部150を追加したものである。その他の構成については前記実施例4と同様である。
 図14において、実施例10から新たに追加されたセンサ認識部140はLiDAR400からの情報(距離及び方位)を処理し、物体の認識を行う。また、認識精度判定部150は、物体抽出部111からの物体の抽出結果と、センサ認識部140からの物体認識の結果の差異を判定することで、物体抽出部111の物体抽出が必要な精度を保持しているか否かを判定し、判定した結果を処理条件判定部122に出力する。
して演算負荷を削減する条件となる基準値を更新することで、演算負荷削減による物体抽出の精度が不足するような過度な演算削除を防ぐ。
 そして、処理条件判定部122は、認識精度判定部150からの判定結果と、走行状態及び演算負荷に基づいて、物体抽出部111での演算負荷を削減する条件となる基準値を更新することで、演算負荷の削減による物体抽出の精度が不足するような過度な演算の省略を防ぐ。
 前記実施例7、8、9、10では、走行状態を示す情報と演算負荷によってDNNによって物体抽出を実行するブロック領域は静的であったが、自動運転をするために必要な物体抽出の精度を保つために、この基準値は動的であることが望ましい。
 以下、認識精度判定部150の処理について具体例を用いて説明する。
 一例として、カメラ200からの画像データを入力して、物体抽出部111で抽出した物体が5個、LiDAR400からの情報からセンサ認識部140で認識した物体の個数が7個で、物体抽出部111において抽出された物体の数がセンサ認識部140で認識された物体の数よりも少なかったとする。
 この場合、センサ認識部140で抽出された物体が物体抽出部111では抽出できていないことから、物体抽出部111は自動運転に必要な物体抽出の精度が保たれていないと判定する。
 認識精度判定部150は、物体抽出部111とセンサ認識部140のからの情報をもとに、処理条件判定部122に処理条件を物体抽出の精度が向上するように変更する命令を出力し、処理条件判定部122は処理条件を決めるための基準値の変更を行う。
 本実施例の基準値は、例えば、負荷率閾値を補正する値とした場合、処理条件判定部122は認識精度判定部150から物体抽出の精度を向上する命令を受け付けると、基準値を+5%として負荷率閾値を増大させる。また、処理条件判定部122は、ブロック領域決定部124へ負荷率閾値を増大したことを通知する。
 ブロック領域決定部124は、負荷率閾値の増大の通知を受け付けると、現在物体抽出部111で使用しているDNNのブロック領域に所定値を加算してFPGA170の物体抽出部111へ指令する。ブロック領域決定部124の所定値は、例えば、1などに設定される。
 このように、認識精度判定部150からの要求に応じて、ブロック領域決定部124は物体抽出部111で使用するDNNのブロック領域の数を増大し、物体を抽出する精度を向上させることができる。
 ただし、実行層決定部121は、走行環境が渋滞中又は夜間の場合には、物体抽出部111が使用するDNNのブロック領域を増大させる効果が低いため、負荷率閾値の増大の通知をキャンセルすることができる。
 このように、LiDAR400からの情報で物体を認識するセンサ認識部140と、物体抽出部111とセンサ認識部140の物体抽出の精度を判定する認識精度判定部150を追加することで、物体抽出部111において自動運転に必要な物体抽出の精度が不足するような、過度の演算処理(層)の削減が行われることを防ぐことができる。
 これにより、本実施例の情報処理装置100は、前記実施例7、8、9、10よりも精度の高い処理を維持できる。結果として本実施例の情報処理装置100は、実施例7、8、9、10に対して、FPGA170の消費電力を低減することが可能となる。
 なお、本実施例では物体抽出の精度の判定に用いるセンサをLidar400としているが、これはカメラ、RADAR、遠赤外線カメラ等の物体との距離や物体の種類が判別できるもので、物体抽出部111に入力される外部情報を出力するセンサと異なるものであればよく、LiDARに限定されない。また、センサは単独で使用してもよいし、複数を組み合わせて使用してもよい。
 また、本実施例では、認識精度判定部150が物体抽出の精度を判定する手法として、物体抽出部111の結果とセンサ認識部140の結果が一致しているか否かを判定するという静的な処理となっているが、認識精度判定部150に学習機能を持たせることで物体抽出の精度を判定する基準を動的に変化させてもよい。
 以下に、本発明の実施例12について説明する。図15は、本実施例の情報処理装置100を用いた自動運転システムの構成の一例を示すブロック図である。図15において、図13と同様の構成要素には 同じ名称と符号を付与しており、特に説明がない限り、同一又は類似の機能を有するものとして、説明を省略する。
 本実施例では、図13に示した前記実施例10の処理内容制御部120に情報量決定部123と、DNN処理部110内に外部情報変換部112を追加して、カメラ200から入力された外界画像の画素数(又は解像度)を走行環境や負荷状態に応じて変更する例を示す。その他の、構成は前記実施例10と同様である。
 図15において、前記実施例10から新たに追加された情報量決定部123と外部情報変換部112について説明する。情報量決定部123は処理条件判定部122からの結果をもとに、カメラ200で取得した外界画像を物体抽出部111へ入力する画素数(解像度)を決定して、FPGA170の外部情報変換部112へ指令する。
 外部情報変換部112は、情報量決定部123からの指令をもとにカメラ200で取得した外界画像をDNNで使用可能なフォーマットに変換する。これにより、物体抽出部111では処理条件(ブロック領域又は除外領域)に合わせた画素数で物体抽出が行われる。
 以下、外部情報変換部112における処理について具体例を用いて説明する。
 一例として、カメラ200は200万画素の画像を出力していたとする。また、処理条件判定部122の判定結果から、情報量決定部123は、物体抽出をするために必要な画素数は25万画素であると判定したとする。この場合、外部情報変換部112は、カメラ200から出力された200万画素の画像を25万画素になるように変換する。物体抽出部111は、この外部情報変換部112から出力された25万画素の画像を使って物体抽出を行う。
 このように、本実施例の情報処理装置100は、処理条件判定部122からの判定結果に基づいて入力画像の画素数を動的に変更することで、物体抽出部111でDNNを実行するブロック領域に合わせた画素数の画像を使用することが可能となる。このため、DNNの実行層を削減することに加えて、物体抽出部111が物体抽出を行う画像の画素数を削減でき、演算量を削減することが可能となる。
 これにより、本実施例の情報処理装置100は、前記実施例7、8、9、10よりも消費電力の削減及び発熱量の抑制が可能となる。結果として、本実施例の情報処理装置100は、実施例7、8、9、10より電動車両では走行可能距離が伸び増大し、FPGA170の冷却コストの改善が期待できる。
 なお、本実施例では情報量決定部123はカメラ200からの画素数を変更しているが、外部情報を出力するものがLiDARやRADARであれば点群数を決定する等、外部情報の情報量であればよく、画素数に限定されない。
 <結び> 以上のように、上記実施例1~6(7~12)の情報処理装置100は、以下のような構成とすることができる。
 (1)プロセッサ(10)とメモリ(20)と推論モデルで演算を実行する演算装置(FPGA170)を有する情報処理装置(100)であって、外部情報(カメラ200の出力)を受け付けて、前記推論モデルによって前記外部情報から外界の物体を抽出するDNN処理部(110)と、前記DNN処理部(110)の処理内容を制御する処理内容制御部(120)と、を有し、前記DNN処理部(110)は、複数のニューロンの層を有するディープニューラルネットワークで前記推論モデルを実行する物体抽出部(111)を有し、前記処理内容制御部(120)は、前記物体抽出部(111)で用いる前記層を決定する実行層決定部(121)を含むことを特徴とする情報処理装置。
 上記構成により、物体抽出部111が使用するDNNの層(固定値)を削減することで、例えばFPGA170やGPU等の演算装置の消費電力の削減及び発熱量の抑制が可能となる。結果として、電動車両では走行可能距離が増大し、演算装置の冷却コストが低減できる。
 (2)上記(1)に記載の情報処理装置であって、前記処理内容制御部(120)は、外部の状態情報(走行状態)を受け付けて、予め設定された閾値と外部の状態情報の値を比較して、外部環境を判定する処理条件判定部(122)を含み、前記実行層決定部(121)は、前記処理条件判定部(122)の判定結果に基づいて、前記DNN処理部(110)で使用する前記層の数を決定し、前記DNN処理部(110)に出力することを特徴とする情報処理装置。
 上記構成により、走行状態を検出するセンサと、走行状態を示す情報から車両の走行環境を判定する処理条件判定部122とを追加し、実行層決定部121が走行環境に適した処理条件の決定を行う。これにより、情報処理装置100は、上記(1)よりも、走行環境に合わせて動的に、物体抽出の精度と演算装置(FPGA170)の消費電力及び発熱量に影響を与える処理条件を動的に変更することが可能となる。
 結果として、電動車両では上記(1)よりも走行可能距離が増大し、演算装置(FPGA170)の冷却コスト低減が期待できる。
 (3)上記(1)に記載の情報処理装置であって、前記演算装置(170)の演算負荷を検出する負荷検出装置(50)をさらに有し、前記処理内容制御部(120)は、前記負荷検出装置(50)から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定する処理条件判定部(122)を有し、前記実行層決定部(121)は、前記処理条件判定部(122)の判定結果に基づいて、前記DNN処理部(110)で使用する前記層の数を決定することを特徴とする情報処理装置。
 上記構成により、情報処理装置100に含まれるFPGA170の負荷に応じた負荷状態を判定し、実行層決定部121は負荷に応じて処理条件を動的に変更することができる。これにより、情報処理装置100は、上記(1)に比して動的にFPGA170の消費電力の削減及び発熱量の抑制が可能となる。
 さらに、本実施例の情報処理装置100では、上記により、熱暴走等によりFPGA170に異常が発生するのを抑制し、演算装置の演算精度が低下することを防ぐことが可能となる。これにより、前記実施例1に比して電動車両の走行可能距離を増大することが可能となり、FPGA170等の冷却コストを低減できる。
 (4)上記(2)に記載の情報処理装置であって、 
 前記演算装置(170)の演算負荷を検出する負荷検出装置(50)をさらに有し、前記処理条件判定部(122)は、前記負荷検出装置(50)から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定し、前記外部環境の判定結果と前記負荷状態の判定結果を前記実行層決定部(121)へ出力し、前記実行層決定部(121)は、前記処理条件判定部(122)の判定結果に基づいて、前記DNN処理部(110)で使用する前記層の数を決定することを特徴とする情報処理装置。
 上記構成により、処理条件判定部122で走行状態を示す情報と、FPGA170の演算負荷から走行環境と負荷状態を判定することで、上記(2)及び(3)に比して動的に物体抽出の精度と消費電力及び発熱量の削減を変更することが可能となる。結果として、上記(2)及び(3)の利点を合わせた効果が期待できる。つまり、様々な走行環境において適した物体抽出の精度を保ちつつ、FPGA170の負荷を正常な状態に保つことが可能となる。
 (5)上記(4)に記載の情報処理装置であって、前記処理内容制御部(120)は、物体を検出するセンサ情報(LiDAR400の出力)を受け付けて、前記センサ情報から物体を認識するセンサ認識部(140)と、前記センサ認識部(140)で認識された物体と、前記DNN処理部(110)で抽出した物体を比較して認識精度を算出し、前記認識精度が予め設定された精度閾値以下の場合には、認識精度の低下を判定する認識精度判定部(150)と、をさらに有し、前記処理条件判定部(122)は、前記外部環境の判定結果と、前記負荷状態の判定結果に、前記認識精度判定部(150)の判定結果を加えて前記実行層決定部(121)へ出力し、前記実行層決定部(121)は、前記処理条件判定部(122)の判定結果に基づいて、前記DNN処理部(110)で使用する前記層の数を決定することを特徴とする情報処理装置。
 上記構成により、LiDAR400からの情報で物体を認識するセンサ認識部140と、物体抽出部111とセンサ認識部140の物体抽出の精度を判定する認識精度判定部150を追加することで、物体抽出部111において自動運転に必要な物体抽出の精度が不足するような、過度の演算処理(層)の削減が行われることを防ぐことができる。これにより、情報処理装置100は、上記(1)、(2)、(3)、(4)よりも精度の高い処理を維持できる。結果として上記(1)、(2)、(3)、(4)に対して、より消費電力の削減が可能となる。
 (6)上記(2)に記載の情報処理装置であって、前記外部情報は、画像情報であって、前記処理内容制御部(120)は、前記処理条件判定部(122)の判定結果に基づいて前記画像情報の情報量を決定する情報量決定部(123)をさらに有し、前記DNN処理部(110)は、前記情報量決定部(123)で決定された情報量に基づいて、前記物体抽出部(111)で用いる前記画像情報の情報量を変更する外部情報変換部(112)をさらに有することを特徴とする情報処理装置。
 上記構成により、DNN処理部110は、処理条件判定部122からの判定結果に基づいて入力画像の画素数を動的に変更することで、物体抽出部111で使用するDNNの実行層の数に合わせた画素数の画像を使用することができる。このため、DNNの実行層を削減することに加えて、物体抽出部111で使用する画像の画素数を削減でき、演算量さらに削減することが可能となる。これにより、上記(1)、(2)、(3)、(4)よりも消費電力の削減及び発熱量の抑制が可能となる。結果として、上記(1)、(2)、(3)、(4)よりも電動車両では走行可能距離が増大し、FPGA170等の冷却コストの低減が期待できる。
 なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。
例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
 また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、DVD等の記録媒体に置くことができる。
 また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
 <補足>
 特許請求の範囲に記載した以外の本発明の観点の代表的なものとして、次のものがあげられる。
 <7>
 プロセッサとメモリと推論モデルで演算を実行する演算装置を有する情報処理装置であって、
 外部情報を受け付けて、前記推論モデルによって前記外部情報から外界の物体を抽出するDNN処理部と、前記DNN処理部の処理内容を制御する処理内容制御部と、を有し、前記DNN処理部は、前記外部情報を異なる大きさの物体を抽出するための複数のブロック領域に分割し、ディープニューラルネットワークによって前記ブロック領域毎に前記外界の物体を抽出する前記推論モデルを含む物体抽出部を有し、前記処理内容制御部は、前記物体抽出部で用いる前記ブロック領域を決定するブロック領域決定部を含むことを特徴とする情報処理装置。
 <8>
 上記<7>に記載の情報処理装置であって、前記処理内容制御部は、外部の状態情報を受け付けて、予め設定された閾値と外部の状態情報の値を比較して、外部環境を判定する処理条件判定部を含み、前記ブロック領域決定部は、前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記ブロック領域を決定し、前記DNN処理部に出力することを特徴とする情報処理装置。
 <9>
 上記<7>に記載の情報処理装置であって、前記演算装置の演算負荷を検出する負荷検出装置をさらに有し、前記処理内容制御部は、前記負荷検出装置から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定する処理条件判定部を有し、前記ブロック領域決定部は、前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前ブロック領域を決定することを特徴とする情報処理装置。
 <10>
 上記<8>に記載の情報処理装置であって、前記演算装置の演算負荷を検出する負荷検出装置をさらに有し、前記処理条件判定部は、前記負荷検出装置から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定し、前記外部環境の判定結果と前記負荷状態の判定結果を前記ブロック領域決定部へ出力し、前記ブロック領域決定部は、前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記ブロック領域を決定することを特徴とする情報処理装置。
 <11>
 上記<10>に記載の情報処理装置であって、前記処理内容制御部は、物体を検出するセンサ情報を受け付けて、前記センサ情報から物体を認識するセンサ認識部と、前記センサ認識部で認識された物体と、前記DNN処理部で抽出した物体を比較して認識精度を算出し、前記認識精度が予め設定された精度閾値以下の場合には、認識精度の低下を判定する認識精度判定部と、をさらに有し、前記処理条件判定部は、前記外部環境の判定結果と、前記負荷状態の判定結果に、前記認識精度判定部の判定結果を加えて前記ブロック領域決定部へ出力し、前記ブロック領域決定部は前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記ブロック領域を決定することを特徴とする情報処理装置。
 <12>
 上記<8>に記載の情報処理装置であって、前記外部情報は、画像情報であって、前記処理内容制御部は、前記処理条件判定部の判定結果に基づいて前記画像情報の情報量を決定する情報量決定部をさらに有し、前記DNN処理部は、前記情報量決定部で決定された情報量に基づいて、前記物体抽出部で用いる前記画像情報の情報量を変更する外部情報変換部をさらに有することを特徴とする情報処理装置。
100 情報処理装置
110 DNN処理部
111 物体抽出部
112 外部情報変換部
120 処理内容制御部
121 実行層決定部
122 処理条件判定部
123 情報量決定部
124 ブロック領域決定部
130 行動計画部
140 センサ認識部
150 抽出精度判定部
200 カメラ
300 車両制御部
400 LiDAR

Claims (6)

  1.  プロセッサとメモリと推論モデルで演算を実行する演算装置を有する情報処理装置であって、
     外部情報を受け付けて、前記推論モデルによって前記外部情報から外界の物体を抽出するDNN処理部と、
     前記DNN処理部の処理内容を制御する処理内容制御部と、を有し、
     前記DNN処理部は、
     複数のニューロンの層を有するディープニューラルネットワークで前記推論モデルを実行する物体抽出部を有し、
     前記処理内容制御部は、
     前記物体抽出部で用いる前記層を決定する実行層決定部を含むことを特徴とする情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記処理内容制御部は、
     外部の状態情報を受け付けて、予め設定された閾値と外部の状態情報の値を比較して、外部環境を判定する処理条件判定部を含み、
     前記実行層決定部は、
     前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記層の数を決定し、前記DNN処理部に出力することを特徴とする情報処理装置。
  3.  請求項1に記載の情報処理装置であって、
     前記演算装置の演算負荷を検出する負荷検出装置をさらに有し、
     前記処理内容制御部は、
     前記負荷検出装置から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定する処理条件判定部を有し、
     前記実行層決定部は、
     前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記層の数を決定することを特徴とする情報処理装置。
  4.  請求項2に記載の情報処理装置であって、
     前記演算装置の演算負荷を検出する負荷検出装置をさらに有し、
     前記処理条件判定部は、
     前記負荷検出装置から前記演算負荷を受け付けて、予め設定された負荷閾値と前記演算負荷を比較して負荷状態を判定し、前記外部環境の判定結果と前記負荷状態の判定結果を前記実行層決定部へ出力し、
     前記実行層決定部は、
     前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記層の数を決定することを特徴とする情報処理装置。
  5.  請求項4に記載の情報処理装置であって、
     前記処理内容制御部は、
     物体を検出するセンサ情報を受け付けて、前記センサ情報から物体を認識するセンサ認識部と、
     前記センサ認識部で認識された物体と、前記DNN処理部で抽出した物体を比較して認識精度を算出し、前記認識精度が予め設定された精度閾値以下の場合には、認識精度の低下を判定する認識精度判定部と、をさらに有し、
     前記処理条件判定部は、
     前記外部環境の判定結果と、前記負荷状態の判定結果に、前記認識精度判定部の判定結果を加えて前記実行層決定部へ出力し、
     前記実行層決定部は、
     前記処理条件判定部の判定結果に基づいて、前記DNN処理部で使用する前記層の数を決定することを特徴とする情報処理装置。
  6.  請求項2に記載の情報処理装置であって、
     前記外部情報は、画像情報であって、
     前記処理内容制御部は、
     前記処理条件判定部の判定結果に基づいて前記画像情報の情報量を決定する情報量決定部をさらに有し、
     前記DNN処理部は、
     前記情報量決定部で決定された情報量に基づいて、前記物体抽出部で用いる前記画像情報の情報量を変更する外部情報変換部をさらに有することを特徴とする情報処理装置。
PCT/JP2020/046662 2020-01-30 2020-12-15 情報処理装置 WO2021153049A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021574516A JP7239747B2 (ja) 2020-01-30 2020-12-15 情報処理装置
US17/786,680 US20230012843A1 (en) 2020-01-30 2020-12-15 Information processing apparatus
CN202080089067.0A CN114846505A (zh) 2020-01-30 2020-12-15 信息处理装置
DE112020005642.2T DE112020005642T5 (de) 2020-01-30 2020-12-15 Informationsverarbeitungsvorrichtung

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020013448 2020-01-30
JP2020-013448 2020-01-30

Publications (1)

Publication Number Publication Date
WO2021153049A1 true WO2021153049A1 (ja) 2021-08-05

Family

ID=77079733

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/046662 WO2021153049A1 (ja) 2020-01-30 2020-12-15 情報処理装置

Country Status (5)

Country Link
US (1) US20230012843A1 (ja)
JP (1) JP7239747B2 (ja)
CN (1) CN114846505A (ja)
DE (1) DE112020005642T5 (ja)
WO (1) WO2021153049A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0757094A (ja) * 1993-08-10 1995-03-03 Ricoh Co Ltd ニューラルネットワークによる画像認識装置
JP2018190045A (ja) * 2017-04-28 2018-11-29 日立オートモティブシステムズ株式会社 車両電子制御装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6735506B2 (ja) 2016-09-29 2020-08-05 パナソニックIpマネジメント株式会社 画像生成装置、および、画像処理システム
US10007269B1 (en) 2017-06-23 2018-06-26 Uber Technologies, Inc. Collision-avoidance system for autonomous-capable vehicle

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0757094A (ja) * 1993-08-10 1995-03-03 Ricoh Co Ltd ニューラルネットワークによる画像認識装置
JP2018190045A (ja) * 2017-04-28 2018-11-29 日立オートモティブシステムズ株式会社 車両電子制御装置

Also Published As

Publication number Publication date
CN114846505A (zh) 2022-08-02
US20230012843A1 (en) 2023-01-19
JP7239747B2 (ja) 2023-03-14
DE112020005642T5 (de) 2022-09-01
JPWO2021153049A1 (ja) 2021-08-05

Similar Documents

Publication Publication Date Title
US11508049B2 (en) Deep neural network processing for sensor blindness detection in autonomous machine applications
CN111095291B (zh) 由自动驾驶车辆实时检测车道和边界
US11804047B2 (en) Method and apparatus for recognizing object
US20210326678A1 (en) Stereo depth estimation using deep neural networks
CN110494863B (zh) 确定自主车辆的可驾驶自由空间
US20200324794A1 (en) Technology to apply driving norms for automated vehicle behavior prediction
US20210158043A1 (en) Systems and methods for panoptic image segmentation
CN113950702A (zh) 在视频分析应用中使用相关滤波器的多对象跟踪
JP2023503729A (ja) 自律運転アプリケーションのための曲線適合を使用するランドマーク検出
CN114902295A (zh) 用于自主驾驶应用的三维路口结构预测
CN111133447A (zh) 适于自主驾驶的对象检测和检测置信度
EP3441909A1 (en) Lane detection method and apparatus
CA3118155A1 (en) Techniques for kinematic and dynamic behavior estimation in autonomous vehicles
CN114155272A (zh) 自主机器应用中的自适应目标跟踪算法
JP7143269B2 (ja) 車両挙動予測のための圧縮環境特徴の表示
US20220301099A1 (en) Systems and methods for generating object detection labels using foveated image magnification for autonomous driving
US11693470B2 (en) Voltage monitoring over multiple frequency ranges for autonomous machine applications
WO2021153049A1 (ja) 情報処理装置
EP3989031B1 (en) Systems and methods for fusing road friction data to enhance vehicle maneuvering
US20230186640A1 (en) Single and across sensor object tracking using feature descriptor mapping in autonomous systems and applications
CN113609888A (zh) 利用平面单应性和自监督的场景结构理解进行对象检测
EP3850539A2 (en) Deep neural network processing for sensor blindness detection in autonomous machine applications
US11900689B1 (en) Traffic light identification and/or classification for use in controlling an autonomous vehicle
US20240010196A1 (en) Learning autonomous vehicle safety concepts from demonstrations
US20230177839A1 (en) Deep learning based operational domain verification using camera-based inputs for autonomous systems and applications

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20916349

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021574516

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 20916349

Country of ref document: EP

Kind code of ref document: A1