WO2020135602A1 - 图像处理方法、装置、智能驾驶系统和车载运算平台 - Google Patents
图像处理方法、装置、智能驾驶系统和车载运算平台 Download PDFInfo
- Publication number
- WO2020135602A1 WO2020135602A1 PCT/CN2019/128764 CN2019128764W WO2020135602A1 WO 2020135602 A1 WO2020135602 A1 WO 2020135602A1 CN 2019128764 W CN2019128764 W CN 2019128764W WO 2020135602 A1 WO2020135602 A1 WO 2020135602A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- fixed
- point
- network parameters
- image
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0007—Image acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Definitions
- the present application relates to fixed-point technology, in particular to an image processing method and device, an intelligent driving system, and a vehicle-mounted computing platform.
- convolutional neural network technology is more and more frequently applied to products such as image processing, unmanned driving system, assisted driving system and so on. Since convolutional neural networks process image data, convolutional neural network technologies usually rely on high-performance graphics processors (Graphics Processing Units, GPUs), require huge amounts of computation, and consume large memory.
- graphics processors Graphics Processing Units, GPUs
- Embodiments of the present application provide an image processing method, device, intelligent driving system, and vehicle-mounted computing platform.
- an image processing method provided includes:
- the convolutional neural network is fixed-point processed by using floating-point network parameters, and the fixed-point processing network parameters are the values expressed by powers of 2;
- an image processing apparatus includes:
- Parameter fixed-point module used for fixed-point processing of convolutional neural network using floating-point network parameters according to the fixed-point bit width hardware resources of the arithmetic unit.
- the fixed-point processing network parameters are values expressed by powers of 2 ;
- Image acquisition module for acquiring images to be processed
- An image processing module is used to control the arithmetic unit to process the image according to the network parameters after the fixed-point processing of the convolutional neural network to obtain the processing result of the image.
- an intelligent driving system including: a vehicle-mounted camera, a convolutional neural network subsystem, and a control subsystem; wherein, the control subsystem is used for:
- the convolutional neural network is fixed-point processed by using floating-point network parameters, and the fixed-point processing network parameters are powers of 2 Expressed value
- an on-board computing platform based on FPGA including: a processor, an external memory, a memory, and an FPGA computing unit;
- the external memory stores the network parameters after the fixed-point processing of the neural network, or the binary values and the look-up tables corresponding to the network parameters after the fixed-point processing of the neural network are stored, and the look-up table is used to Indicates the binary value corresponding to the power value of different network parameters; the network parameters after fixed-point processing are the values expressed by powers of 2;
- the processor reads the network parameters of the fixed-point processing of the neural network into the memory, and inputs the data on the memory and the image information to be processed to the FPGA arithmetic unit; or, the processor will According to the binary value and the look-up table, the searched network parameters obtained by the fixed-point processing are read into the memory, and the data on the memory and the image information to be processed are input to the FPGA arithmetic unit;
- the FPGA operation unit obtains a shift operation result according to the image information to be processed and the network parameters of the fixed-point processing, and sums the results for multiple times to obtain a processing result of the image.
- an electronic device includes:
- the memory is used to store at least one executable instruction, and the executable instruction causes the processor to perform the operation corresponding to the image processing method according to any one of the embodiments.
- an electronic device includes:
- the processor and the image processing device according to any one of the embodiments; when the processor runs the image processing device, the modules in the image processing device according to any one of the embodiments are executed.
- a computer-readable storage medium in which a computer program is stored, and the computer program is used to execute any feasible implementation manner of the first aspect above Image processing method steps in.
- Embodiments of the present application provide an image processing method and device, an intelligent driving system, and an on-board computing platform.
- the image processing method includes: according to the fixed-point bit width hardware resources of the computing unit, the convolutional neural network is fixed-pointed using floating-point network parameters To obtain the image to be processed, and control the operation unit to process the image according to the network parameters after the convolutional neural network fixed-point processing to obtain the image processing result.
- the image processing method includes: according to the fixed-point bit width hardware resources of the computing unit, the convolutional neural network is fixed-pointed using floating-point network parameters To obtain the image to be processed, and control the operation unit to process the image according to the network parameters after the convolutional neural network fixed-point processing to obtain the image processing result.
- the use of a power of 2 to represent network parameters can reduce the complexity of the operation, increase the operation speed, achieve fast real-time response, and reduce the power consumption during the operation.
- the operation unit is FPGA and other hardware with limited hardware resources, solve The problem that the convolutional neural network cannot be applied to the hardware or the acceleration calculation cannot be implemented on the hardware.
- FIG. 1 is a schematic flowchart of an image processing method provided by an embodiment of the present application.
- FIG 2 is another schematic flowchart of an image processing method provided by an embodiment of the present application.
- FIG. 3 is a schematic structural diagram of an image processing apparatus provided by an embodiment of the present application.
- FIG 4 is another schematic structural diagram of an image processing apparatus provided by an embodiment of the present application.
- FIG. 5 is a schematic structural diagram of an intelligent driving system provided by an embodiment of the present application.
- FIG. 6 is a schematic structural diagram of an on-board computing platform based on FPGA provided by an embodiment of the present application.
- FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
- the embodiments of the present application can be applied to a computer system/server, which can operate together with many other general-purpose or special-purpose computing system environments or configurations.
- Examples of well-known computing systems, environments, and/or configurations suitable for use with computer systems/servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, based on Microprocessor systems, set-top boxes, programmable consumer electronics, network personal computers, small computer systems, large computer systems, and distributed cloud computing technology environments that include any of the above systems, etc.
- the computer system/server may be described in the general context of computer system executable instructions (such as program modules) executed by the computer system.
- program modules may include routines, programs, target programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types.
- the computer system/server can be implemented in a distributed cloud computing environment. In the distributed cloud computing environment, tasks are performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules may be located on local or remote computing system storage media including storage devices.
- FIG. 1 is a schematic flowchart of an image processing method provided by an embodiment of the present application.
- Exemplary execution subjects of the embodiments of the present application may be electronic devices such as image processing apparatuses and processors, or any devices and systems applying image processing methods, such as monitoring systems and intelligent driving systems.
- the image processing method includes:
- the convolutional neural network uses fixed-point processing of network parameters expressed by floating-point.
- the network parameters after fixed-point processing are values expressed by powers of two.
- the computing unit in the embodiment of the present application may be a computing unit that supports fixed-point operations, such as a field programmable logic gate array (Field Programmable Gate Array, FPGA for short) digital signal processor (Digital Signal Processor, DSP for short) )Wait.
- FPGA Field Programmable Gate Array
- DSP Digital Signal Processor
- the fixed-point width resources of the computing unit are usually relatively limited.
- the fixed-point bit width resource is selected as small as possible, such as 8-bit or 4-bit bit or even less wide resource amount to implement fixed-point operation.
- the small fixed-point bit width resources often affect the calculation speed.
- the embodiments of the present application adapt the fixed-point hardware by adapting the convolutional neural network.
- the optimization of wide resource volume realizes high-speed operation on the limited resource platform.
- Convolutional neural networks usually include multiple convolutional layers for feature extraction of the image to be processed, and classification of the extracted features to achieve various functions of the convolutional neural network.
- the convolutional neural network contains multiple network parameters, and the value of the network parameters in the convolutional neural network determines the performance of the convolutional neural network.
- the network parameters of convolutional neural networks are usually expressed as floating point numbers.
- the convolutional neural network in the embodiment of the present application may be a trained convolutional neural network.
- floating-point network parameters occupy storage space and have high computational complexity.
- fixed-point processing is performed on the convolutional neural network using floating-point network parameters, so that the fixed-point processing network parameters are adopted.
- the value represented by a power of 2 reduces the occupation of storage space by network parameters on the one hand, and simplifies the operations required for image processing based on convolutional neural networks on the other hand.
- the power of 2 is used to represent the network parameters in a fixed point.
- the operation unit can use shift and addition operations to replace the slower processing speed and greater power consumption Multiplication to achieve image processing.
- the use of a power of 2 to represent network parameters can greatly reduce the complexity of the operation, increase the operation speed, achieve fast real-time response, and reduce the power consumption during the operation.
- the operation unit is FPGA and other hardware with limited hardware resources, the volume can be solved. The problem that the product neural network cannot be applied to hardware or cannot realize accelerated calculation on hardware.
- the network parameters of the convolutional neural network it may be detected whether the form of the network parameter is a floating-point number, and if so, the value of the network parameter needs to be fixed-pointed.
- the network parameter after the fixed-point processing is a sum of M powers of 2 and M is an integer greater than 1.
- M powers of 2 may be used for a floating point number.
- the floating point number 36.11 it can be represented by 2 5 +2 2 .
- 2 4 +2 2 +2 1 can be used for the floating point number 21.42.
- the floating point number 16.25 it can be expressed by 2 4 +2 -2 .
- the multiplication operations related to the network parameters in the convolutional neural network can be simplified to shift operations, which simplifies the operation of the convolutional neural network and improves the operation rate of the convolutional neural network.
- the fixed-point network parameters can also be expressed by the sum of powers of 2 less than M.
- the floating point number 32 it can be represented by 2 5 .
- M is equal to 2.
- M is equal to 2.
- M for a fixed-point result of a network parameter, it can be expressed by 2 k +2 j .
- the accuracy of the network parameters can be ensured, and the amount of calculation is not increased, and the occupation of memory and storage resources is reduced.
- the embodiments of the present application provide a possible storage method of the network parameters after the fixed-point processing. In this method:
- the fixed-point network parameters are the sum of the power of 2 to the power of k and the power of 2 to j, both k and j are integers, k is greater than j, and the difference between k and j is less than the preset threshold.
- 2 k +2 j can be used for fixed-point representation, where k and j are both integers, and k is greater than j.
- the difference between k and j may be limited to be less than a preset threshold.
- the process of determining the preset threshold can first determine the initial values of all network parameters of the convolutional neural network, and then determine the minimum precision value s according to the precision of all the initial values.
- the minimum precision value s is the possible value of j The minimum value.
- the maximum value can be rounded up to the maximum initial value.
- a power of 2 may be used, for example, 2 t represents the maximum value, or M powers of 2 represent the maximum value, such as 2 p +2 q . t, p, and q are integers, and p is greater than q. t or p is the maximum possible value of k.
- the difference between k and j is greater than the preset threshold, the smallest possible value of j can be increased, that is, the fixed-point accuracy of the network parameters is reduced.
- the optional way of storing the fixed-point processing network parameter may include:
- the binary value mapping table is used to indicate the binary values corresponding to different combinations of k and j values;
- the network parameters after the fixed-point processing are the sum of the power of k of 2 and the power of j of 2, considering that k and j are different integers, and the difference between k and j is less than the preset threshold d, so
- the network parameter may have 28 values. For 28 different values, 5 digits can be used to distinguish. Therefore, a binary value mapping table can be established.
- the binary mapping table indicates the binary values corresponding to different combinations of k and j values, thereby reducing the storage space occupied by the fixed-point processing network parameters during storage.
- 2 log bits may be used to encode the network parameters after the fixed-point processing.
- the first log bit can be used to represent the first power of 2
- the last log bit can represent the next power of 2.
- this step S101 may be executed by the processor invoking the corresponding instruction stored in the memory, or may be executed by the parameter fixed-point module 301 executed by the processor.
- the image to be processed may be an image captured by a surveillance camera, an image captured by a car camera, or an image pre-stored in an image library.
- the embodiment of the present application does not limit the image to be processed Acquisition method.
- this step S102 may be executed by the processor invoking the corresponding instruction stored in the memory, or may be executed by the image acquisition module 302 executed by the processor.
- the control operation unit processes the image according to the network parameters after the fixed-point processing of the convolutional neural network to obtain an image processing result.
- this step S103 may be executed by the processor invoking the corresponding instruction stored in the memory, or may be executed by the image processing module 303 executed by the processor.
- the image processing result includes but is not limited to at least one of the following: object detection/tracking result, feature extraction result, segmentation result, and classification result.
- control arithmetic unit processes the image through the fixed-point processed convolutional neural network according to the network parameter, which may include:
- the control operation unit determines the network parameters after the fixed-point processing of the convolutional neural network according to the binary value and the binary mapping table.
- control operation unit determines the network parameters after the fixed-point processing of the convolutional neural network by searching in the binary mapping table according to the stored binary value, or determining the power k and j by searching in the binary mapping table, Therefore, the network parameter 2 k +2 j after fixed-point processing can be determined.
- the image processing method provided by the embodiment of the present application includes: performing fixed-point processing on the convolutional neural network using floating-point network parameters according to the fixed-point bit width hardware resources of the arithmetic unit to obtain the image to be processed, and controlling the arithmetic unit according to the convolution
- the network parameters after the neural network fixed-point processing processes the image to obtain the image processing result.
- the use of a power of 2 to represent network parameters reduces the complexity of the operation, improves the speed of the operation, achieves fast real-time response, and reduces the power consumption during the operation.
- the operation unit is hardware with limited hardware resources such as FPGA
- convolutional neural networks cannot be applied to hardware or cannot be accelerated on hardware.
- FIG. 2 is another schematic flowchart of the image processing method provided by the embodiment of the present application.
- the image processing method includes:
- the convolutional neural network is fixed-point processed by using floating-point network parameters.
- the training data may be labeled data.
- the training data is an image labeling a face area or a driving area.
- the training, fixed-point, and retraining of the network parameters of the convolutional neural network may be performed multiple times to improve the accuracy of the network parameters.
- the control operation unit processes the image according to the revised network parameters of the convolutional neural network to obtain the image processing result.
- the training data is used to train the convolutional neural network including the fixed-point processing network parameters again to Correcting the network parameters after fixed-point processing can improve the accuracy of the network parameters of the convolutional neural network.
- FIG. 3 is a schematic structural diagram of an image processing apparatus provided by an embodiment of the present application. As shown in FIG. 3, the image processing apparatus includes:
- the parameter fixed-point module 301 is used for fixed-point processing of the network parameters expressed by the floating point of the convolutional neural network according to the fixed-point bit width hardware resource of the arithmetic unit.
- the network parameters after fixed-point processing are values expressed by powers of two.
- the image acquisition module 302 is used to acquire an image to be processed.
- the image processing module 303 is used to control the arithmetic unit to process the image according to the network parameters after the fixed-point processing of the convolutional neural network to obtain the image processing result.
- the network parameters after the fixed-point processing are the sum of M powers of 2 and M is an integer greater than 1.
- M is equal to 2.
- the network parameter after the fixed-point processing is the sum of the power of 2 to the power of k and the power of 2 to j, both k and j are integers, k is greater than j, and the difference between k and j is less than a preset threshold.
- an embodiment of the present application further provides an image processing apparatus.
- 4 is a schematic structural diagram of an image processing apparatus provided in Embodiment 2 of the present application. As shown in FIG. 4, the image processing device further includes:
- the storage module 304 is used to obtain the binary values corresponding to the network parameters after the fixed-point processing according to the k and j, and the binary value mapping table, and the binary value mapping table is used to indicate the binary values corresponding to different combinations of k and j values; Store the binary value corresponding to the network parameters after the fixed-point processing.
- the image processing module 303 in the embodiment shown in FIG. 4 is used to:
- the control operation unit determines the network parameters after the fixed-point processing of the convolutional neural network according to the binary value and the binary mapping table;
- the image is processed according to the network parameters after convolutional neural network fixed-point processing.
- the image processing device further includes:
- the training module 305 is used to train the convolutional neural network including the network parameters after the fixed-point processing using the training data before the control operation unit processes the image according to the network parameters after the fixed-point processing of the convolutional neural network Network parameters to be corrected.
- the image processing results include but are not limited to at least one of the following: object detection/tracking results, feature extraction results, segmentation results, and classification results.
- Another aspect of the embodiments of the present application also provides an intelligent driving system that uses the image processing method in the above embodiments and has the same or similar technical features and technical effects.
- the intelligent driving system includes: an on-board camera 501, a convolutional neural network subsystem 502, and a control subsystem 503; where the control subsystem 503 is used to:
- the convolutional neural network is fixed-point processed using floating-point network parameters.
- the fixed-point processing network parameters are expressed by powers of 2 Value of
- intelligent driving includes, but is not limited to: assisted driving, automatic driving, and switching between multiple driving modes such as assisted driving and automatic driving.
- the network parameters after the fixed-point processing are the sum of M powers of 2 and M is an integer greater than 1.
- M is equal to 2.
- the network parameter after the fixed-point processing is the sum of the power of 2 to the power of k and the power of 2 to j, both k and j are integers, k is greater than j, and the difference between k and j is less than a preset threshold.
- control subsystem 503 is also used to obtain the binary value corresponding to the network parameter after the fixed-point processing according to the k and j, and the binary value mapping table, and the binary value mapping table is used to indicate different values of k and j Combine the corresponding binary values.
- the intelligent driving system also includes: a storage subsystem 504;
- the storage subsystem 504 is used to store the binary value corresponding to the network parameter after the fixed-point processing.
- control subsystem 503 is used for,
- Control the convolutional neural network subsystem to determine the network parameters after the fixed-point processing of the convolutional neural network according to the binary values and binary value mapping tables stored in the storage subsystem;
- the image of the road surface of the vehicle collected by the on-board camera is processed to obtain the image processing result.
- the intelligent driving system further includes: a training subsystem 505;
- the training subsystem 505 is used to train the convolutional neural network including the network parameters after the fixed-point processing by using the training data to correct the network parameters after the fixed-point processing.
- the image processing result includes but is not limited to at least one of the following: license plate recognition result, drivable area detection result, lane line detection result, lane line attribute detection result, and vehicle camera attitude detection result.
- Another aspect of the embodiments of the present application also provides an on-board computing platform based on FPGA, which uses the image processing method in the above embodiments, and has the same or similar technical features and technical effects.
- the FPGA-based vehicle computing platform includes: a processor 601, an external memory 602, a memory 603, and an FPGA computing unit 604; wherein,
- the external memory 602 stores the network parameters after the fixed-point processing of the neural network, or the binary values and look-up tables corresponding to the network parameters after the fixed-point processing of the neural network are stored.
- the look-up table is used to indicate the power of different network parameters
- the binary value corresponding to the secondary value; the network parameters after fixed-point processing are the values expressed in powers of 2;
- the processor 601 reads the network parameters of the fixed-point processing of the neural network into the memory 603, and inputs the data on the memory and the image information to be processed to the FPGA arithmetic unit 604; or, the processor 601 will search according to the binary value and the lookup table
- the network parameters obtained by the fixed-point processing are read into the memory 603, and the data on the memory 603 and the image information to be processed are input to the FPGA arithmetic unit 604;
- the FPGA operation unit 604 obtains the shift operation result according to the image information to be processed and the network parameters of the fixed-point processing, and sums the results for multiple times to obtain the image processing result.
- the network parameters after the fixed-point processing are the sum of M powers of 2 and M is an integer greater than 1.
- M is equal to 2.
- the network parameter after the fixed-point processing is the sum of the power of 2 to the power of k and the power of 2 to j, both k and j are integers, k is greater than j, and the difference between k and j is less than a preset threshold.
- k and j are stored in the external memory 602;
- the lookup table indicates the binary values corresponding to different combinations of k and j values.
- the image processing results include but are not limited to at least one of the following: object detection/tracking results, feature extraction results, segmentation results, and classification results.
- FIG. 7 is a schematic structural diagram of the electronic device provided by the embodiment of the present application. As shown in FIG. 7, the electronic device includes: a processor 702 and a memory 701;
- the memory 701 is used to store at least one executable instruction, and the executable instruction causes the processor 702 to perform the operation corresponding to the image processing method provided in any one of the foregoing embodiments.
- the electronic device further includes an operation unit 703, and the operation unit 703 is configured to implement the operation of the convolutional neural network in any of the foregoing embodiments.
- Another aspect of the embodiments of the present application further provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and the computer program is used to execute the steps of the image processing method provided in any of the foregoing embodiments.
- the disclosed system, device, and method may be implemented in other ways.
- the device embodiments described above are only schematic.
- the division of units is only a division of logical functions.
- there may be other divisions for example, multiple units or components may be combined or integrated To another system, or some features can be ignored, or not implemented.
- the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical, or other forms.
- the method and apparatus of the present application may be implemented in many ways.
- the method and apparatus of the present application may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware.
- the above sequence of steps for the method is for illustration only, and the steps of the method of the present application are not limited to the sequence specifically described above unless otherwise specifically stated.
- the present application may also be implemented as programs recorded in a recording medium, and these programs include machine-readable instructions for implementing the method according to the present application.
- the present application also covers a recording medium storing a program for executing the method according to the present application.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
- Image Processing (AREA)
Abstract
Description
Claims (33)
- 一种图像处理方法,其特征在于,包括:根据运算单元的定点位宽硬件资源量,将卷积神经网络使用浮点表示的网络参数定点化处理,定点化处理后的网络参数为采用2的幂次表示的值;获取待处理的图像;控制所述运算单元根据所述卷积神经网络定点化处理后的网络参数处理所述图像,得到所述图像的处理结果。
- 根据权利要求1所述的方法,其特征在于,所述定点化处理后的网络参数为M个2的幂次之和,所述M为大于1的整数。
- 根据权利要求2所述的方法,其特征在于,所述M等于2。
- 根据权利要求1-3任一所述的方法,其特征在于,所述定点化处理后的网络参数为2的k次幂与2的j次幂之和,所述k和所述j均为整数,所述k大于所述j、且所述k与所述j之差小于预设阈值。
- 根据权利要求4所述的方法,其特征在于,所述将卷积神经网络使用浮点表示的网络参数定点化处理之后,所述方法还包括:根据所述k与所述j,以及,二进制值映射表,获取所述定点化处理后的网络参数对应的二进制值,所述二进制值映射表用于指示不同k与j取值组合对应的二进制值;存储所述定点化处理后的网络参数对应的二进制值。
- 根据权利要求5所述的方法,其特征在于,所述控制所述运算单元根据所述卷积神经网络定点化处理后的网络参数处理所述图像,包括:控制所述运算单元根据所述二进制值和所述二进制映射表,确定所述卷积神经网络的定点化处理后的网络参数;根据所述卷积神经网络定点化处理后的网络参数处理所述图像。
- 根据权利要求1-6任一项所述的方法,其特征在于,所述控制所述运算单元根据定点化处理后的网络参数处理所述图像之前,还包括:采用训练数据训练包括定点化处理后的网络参数的卷积神经网络,以对所述定点化处理后的网络参数进行修正。
- 根据权利要求1-7任一项所述的方法,其特征在于,所述图像的处理结果包括以下至少之一:对象检测/跟踪结果、特征提取结果、分割结果、分类结果。
- 一种图像处理装置,其特征在于,包括:参数定点化模块,用于根据运算单元的定点位宽硬件资源量,将卷积神经网络使用浮点表示的网络参数定点化处理,定点化处理后的网络参数为采用2的幂次表示的值;图像获取模块,用于获取待处理的图像;图像处理模块,用于控制所述运算单元根据所述卷积神经网络定点化处理后的网络参数处理所述图像,得到所述图像的处理结果。
- 根据权利要求9所述的装置,其特征在于,所述定点化处理后的网络参数为M个2的幂次之和,所述M为大于1的整数。
- 根据权利要求10所述的装置,其特征在于,所述M等于2。
- 根据权利要求9-11任一所述的装置,其特征在于,所述定点化处理后的网络参数为2的k次幂与2的j次幂之和,所述k和所述j均为整数,所述k大于所述j、且所述k与所述j之差小于预设阈值。
- 根据权利要求12所述的装置,其特征在于,还包括:存储模块,用于根据所述k与所述j,以及,二进制值映射表,获取所述定点化处理后的网络参数对应的二进制值,所述二进制值映射表用于指示不同k与j取值组合对应的二进制值;存储所述定点化处理后的网络参数对应的二进制值。
- 根据权利要求13所述的装置,其特征在于,所述图像处理模块,用于:控制所述运算单元根据所述二进制值和所述二进制映射表,确定所述卷积神经网络的定点化处理后的网络参数;根据所述卷积神经网络定点化处理后的网络参数处理所述图像。
- 根据权利要求9-14任一项所述的装置,其特征在于,所述装置还包括:训练模块,用于在控制所述运算单元根据所述卷积神经网络定点化处理后的网络参数处理所述图像之前,采用训练数据训练包括定点化处理后的网络参数的卷积神经网络,以对所述定点化处理后的网络参数进行修正。
- 根据权利要求9-15任一项所述的装置,其特征在于,所述图像的处理结果包括以下至少之一:对象检测/跟踪结果、特征提取结果、分割结果、分类结果。
- 一种智能驾驶系统,其特征在于,包括:车载摄像头,卷积神经网络子系统和控制子系统;其中,所述控制子系统用于:根据运行所述卷积神经网络子系统的运算单元的定点位宽硬件资源量,将卷积神经网络使用浮点表示的网络参数定点化处理,定点化处理后的网络参数为采用2的幂次表示的值;控制所述卷积神经网络子系统根据所述卷积神经网络定点化处理后的网络参数处理所述车载摄像头采集到的车辆行驶路面的图像,得到所述图像的处理结果;根据所述图像的处理结果进行车辆智能驾驶。
- 根据权利要求17所述的系统,其特征在于,所述定点化处理后的网络参数为M个2的幂次之和,所述M为大于1的整数。
- 根据权利要求18所述的系统,其特征在于,所述M等于2。
- 根据权利要求17-19任一所述的系统,其特征在于,所述定点化处理后的网络参数为2的k次幂与2的j次幂之和,所述k和所述j均为整数,所述k大于所述j、且所述k与所述j之差小于预设阈值。
- 根据权利要求20所述的系统,其特征在于,所述控制子系统还用于,根据所述k与所述j,以及,二进制值映射表,获取所述定点化处理后的网络参数对应的二进制值,所述二进制值映射表用于指示不同k与j取值组合对应的二进制值;所述智能驾驶系统还包括:存储子系统;所述存储子系统,用于存储所述定点化处理后的网络参数对应的二进制值。
- 根据权利要求21所述的系统,其特征在于,所述控制子系统用于,控制所述卷积神经网络子系统根据所述存储子系统中存储的二进制值和二进制值映射表,确定所述卷积神经网络的定点化处理后的网络参数;根据所述卷积神经网络定点化处理后的网络参数处理所述车载摄像头采集到的车辆行驶路面的图像,得到所述图像的处理结果。
- 根据权利要求17-22任一项所述的系统,其特征在于,所述智能驾驶系统还包括:训练子系统;所述训练子系统用于,采用训练数据训练包括定点化处理后的网络参数的所述卷积神经网络,以对所述定点化处理后的网络参数进行修正。
- 根据权利要求17-21任一项所述的系统,其特征在于,所述图像的处理结果包括以下至少之一:车牌识别结果、可行驶区域检测结果、车道线检测结果、车道线属性检测结果、车载摄像头姿态检测结果。
- 一种基于FPGA的车载运算平台,其特征在于,包括:处理器、外部存储器、内存和FPGA运算单元;所述外部存储器中存储有神经网络的定点化处理后的网络参数,或者,存储有所述神经网络的定点化处理后的网络参数对应的二进制值和查找表,所述查找表用于指示不同的网络参数的幂次值对应的二进制值;定点化处理后的网络参数为采用2的幂次表示的值;所述处理器将所述神经网络的定点化处理的网络参数读入所述内存,将所述内存上的数据和待处理的图像信息输入到所述FPGA运算单元;或者,所述处理器将根据所述二进制值和所述查找表,查找得到定点化处理的网络参数读入所述内存,将所述内存上的数据和待处理的图像信息输入到所述FPGA运算单元;所述FPGA运算单元根据所述待处理的图像信息和定点化处理的网络参数得到移位运算结果,对多次结果求和运算,得到所述图像的处理结果。
- 根据权利要求25所述的平台,其特征在于,所述定点化处理后的网络参数为M个2的幂次之和,所述M为大于1的整数。
- 根据权利要求26所述的平台,其特征在于,所述M等于2。
- 根据权利要求25-27任一所述的平台,其特征在于,所述定点化处理后的网络参数为2的k次幂与2的j次幂之和,所述k和所述j均为整数,所述k大于所述j、且所述k与所述j之差小于预设阈值。
- 根据权利要求28所述的平台,其特征在于,所述外部存储器中存储有所述k与所述j;所述查找表指示了不同的k和j的取值组合对应的二进制值。
- 根据权利要求25-29任一项所述的平台,其特征在于,所述图像的处理结果包括以下至少之一:对象检测/跟踪结果、特征提取结果、分割结果、分类结果。
- 一种电子设备,其特征在于,包括:处理器和存储器;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-8任一项所述的图像处理方法对应的操作。
- 一种电子设备,其特征在于,包括:处理器和权利要求9-16任一项所述的图像处理装置;在处理器运行所述图像处理装置时,权利要求9-16任一项所述的图像处理装置中的模块被运行。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序用于执行权利要求1-8任一项所述的图像处理方法步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021533181A JP2022515343A (ja) | 2018-12-29 | 2019-12-26 | 画像処理方法、装置、インテリジェント運転システム及び車載演算プラットフォーム |
KR1020217018122A KR20210092254A (ko) | 2018-12-29 | 2019-12-26 | 이미지 처리 방법, 장치, 지능형 주행 시스템 및 차량 탑재 연산 플랫폼 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811643406.6A CN111383156B (zh) | 2018-12-29 | 2018-12-29 | 图像处理方法、装置、智能驾驶系统和车载运算平台 |
CN201811643406.6 | 2018-12-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020135602A1 true WO2020135602A1 (zh) | 2020-07-02 |
Family
ID=71126827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/128764 WO2020135602A1 (zh) | 2018-12-29 | 2019-12-26 | 图像处理方法、装置、智能驾驶系统和车载运算平台 |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP2022515343A (zh) |
KR (1) | KR20210092254A (zh) |
CN (1) | CN111383156B (zh) |
WO (1) | WO2020135602A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704921A (zh) * | 2017-10-19 | 2018-02-16 | 北京智芯原动科技有限公司 | 基于Neon指令的卷积神经网络的算法优化方法及装置 |
CN107885214A (zh) * | 2017-11-22 | 2018-04-06 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的加速自动驾驶视觉感知的方法及装置 |
US20180157969A1 (en) * | 2016-12-05 | 2018-06-07 | Beijing Deephi Technology Co., Ltd. | Apparatus and Method for Achieving Accelerator of Sparse Convolutional Neural Network |
CN108985449A (zh) * | 2018-06-28 | 2018-12-11 | 中国科学院计算技术研究所 | 一种对卷积神经网络处理器的控制方法及装置 |
CN109002881A (zh) * | 2018-06-28 | 2018-12-14 | 郑州云海信息技术有限公司 | 基于fpga的深度神经网络的定点化计算方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2862337B2 (ja) * | 1990-06-19 | 1999-03-03 | キヤノン株式会社 | ニューラルネットワークの構築方法 |
US10373050B2 (en) * | 2015-05-08 | 2019-08-06 | Qualcomm Incorporated | Fixed point neural network based on floating point neural network quantization |
JP2018173672A (ja) * | 2015-09-03 | 2018-11-08 | 株式会社Preferred Networks | 実装装置 |
JP6734938B2 (ja) * | 2017-01-10 | 2020-08-05 | 株式会社日立製作所 | ニューラルネットワーク回路 |
CN108830288A (zh) * | 2018-04-25 | 2018-11-16 | 北京市商汤科技开发有限公司 | 图像处理方法、神经网络的训练方法、装置、设备及介质 |
-
2018
- 2018-12-29 CN CN201811643406.6A patent/CN111383156B/zh active Active
-
2019
- 2019-12-26 KR KR1020217018122A patent/KR20210092254A/ko active Search and Examination
- 2019-12-26 WO PCT/CN2019/128764 patent/WO2020135602A1/zh active Application Filing
- 2019-12-26 JP JP2021533181A patent/JP2022515343A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180157969A1 (en) * | 2016-12-05 | 2018-06-07 | Beijing Deephi Technology Co., Ltd. | Apparatus and Method for Achieving Accelerator of Sparse Convolutional Neural Network |
CN107704921A (zh) * | 2017-10-19 | 2018-02-16 | 北京智芯原动科技有限公司 | 基于Neon指令的卷积神经网络的算法优化方法及装置 |
CN107885214A (zh) * | 2017-11-22 | 2018-04-06 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的加速自动驾驶视觉感知的方法及装置 |
CN108985449A (zh) * | 2018-06-28 | 2018-12-11 | 中国科学院计算技术研究所 | 一种对卷积神经网络处理器的控制方法及装置 |
CN109002881A (zh) * | 2018-06-28 | 2018-12-14 | 郑州云海信息技术有限公司 | 基于fpga的深度神经网络的定点化计算方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2022515343A (ja) | 2022-02-18 |
KR20210092254A (ko) | 2021-07-23 |
CN111383156A (zh) | 2020-07-07 |
CN111383156B (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10929746B2 (en) | Low-power hardware acceleration method and system for convolution neural network computation | |
CN113033537B (zh) | 用于训练模型的方法、装置、设备、介质和程序产品 | |
US10762373B2 (en) | Image recognition method and device | |
CN113920307A (zh) | 模型的训练方法、装置、设备、存储介质及图像检测方法 | |
WO2022227770A1 (zh) | 目标对象检测模型的训练方法、目标对象检测方法和设备 | |
CN113642583B (zh) | 用于文本检测的深度学习模型训练方法及文本检测方法 | |
CN108229658B (zh) | 基于有限样本的物体检测器的实现方法及装置 | |
US11699240B2 (en) | Target tracking method and apparatus, and storage medium | |
US20240153240A1 (en) | Image processing method, apparatus, computing device, and medium | |
WO2020135601A1 (zh) | 图像处理方法、装置、车载运算平台、电子设备及系统 | |
CN109902588B (zh) | 一种手势识别方法、装置及计算机可读存储介质 | |
WO2024040954A1 (zh) | 点云语义分割网络训练方法、点云语义分割方法及装置 | |
WO2019177731A1 (en) | Cluster compression for compressing weights in neural networks | |
CN114724133B (zh) | 文字检测和模型训练方法、装置、设备及存储介质 | |
CN114187459A (zh) | 目标检测模型的训练方法、装置、电子设备以及存储介质 | |
CN113348472A (zh) | 具有软内核选择的卷积神经网络 | |
Wasala et al. | Real-time HOG+ SVM based object detection using SoC FPGA for a UHD video stream | |
WO2020135602A1 (zh) | 图像处理方法、装置、智能驾驶系统和车载运算平台 | |
CN115082598B (zh) | 文本图像生成、训练、文本图像处理方法以及电子设备 | |
CN113139463B (zh) | 用于训练模型的方法、装置、设备、介质和程序产品 | |
CN114282664A (zh) | 自反馈模型训练方法、装置、路侧设备及云控平台 | |
CN112861940A (zh) | 双目视差估计方法、模型训练方法以及相关设备 | |
JP2022539554A (ja) | 高精度のニューラル処理要素 | |
CN113343979B (zh) | 用于训练模型的方法、装置、设备、介质和程序产品 | |
CN115578613B (zh) | 目标再识别模型的训练方法和目标再识别方法 |
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: 19901983 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021533181 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 20217018122 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 01.10.2021) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19901983 Country of ref document: EP Kind code of ref document: A1 |