CN113259666B - 电子设备及其图像处理方法、片上系统和介质 - Google Patents

电子设备及其图像处理方法、片上系统和介质 Download PDF

Info

Publication number
CN113259666B
CN113259666B CN202110528184.9A CN202110528184A CN113259666B CN 113259666 B CN113259666 B CN 113259666B CN 202110528184 A CN202110528184 A CN 202110528184A CN 113259666 B CN113259666 B CN 113259666B
Authority
CN
China
Prior art keywords
image data
processor
quantization
memory
image
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202110528184.9A
Other languages
English (en)
Other versions
CN113259666A (zh
Inventor
阮小飞
杨磊
尚峰
黄敦博
刘宇轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Technology China Co Ltd
Original Assignee
ARM Technology China Co Ltd
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 ARM Technology China Co Ltd filed Critical ARM Technology China Co Ltd
Priority to CN202110528184.9A priority Critical patent/CN113259666B/zh
Publication of CN113259666A publication Critical patent/CN113259666A/zh
Application granted granted Critical
Publication of CN113259666B publication Critical patent/CN113259666B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements

Abstract

本申请涉及图像处理领域,公开了一种电子设备及其图像处理方法、片上系统和介质。本申请的图像数据量化方法包括:第一处理器获取量化参数;第一处理器获取第一图像数据并根据量化参数对第一图像数据进行量化生成第二图像数据;第一处理器向第二处理器发送所述第二图像数据。如此,图像数据直接通过第一处理器量化后传递给第二处理器,减小了系统的端到端延迟,减轻了中央处理器和第二处理器的负荷。

Description

电子设备及其图像处理方法、片上系统和介质
技术领域
本申请涉及图像处理领域,特别涉及一种电子设备及其图像处理方法、片上系统和介质。
背景技术
随着人工智能(artificial intelligence,AI)的迅速发展,神经网络处理器(neural network processing unit,NPU)在智能电子设备中的应用越来越广泛。在包含图像信号处理器(image signal processor,ISP)和NPU的系统或芯片中,由于部分在NPU中运行的深度学习模型对输入数据有格式要求,例如,为了提高计算效率,部分深度学习模型对图像数据的位深有要求,例如要求数据为有符号8位整型(INT8),因此ISP中的图像数据需要被量化后再传送至NPU中进行深度学习模型推理,以满足深度学习模型对输入数据格式的要求。
发明内容
本申请实施例提供了一种电子设备及其图像处理方法、片上系统和介质。本申请的实施例直接通过图像信号处理器对图像数据进行量化后再传送给第二处理器进行图像数据处理,减小了系统中图像数据传送的端到端延迟,同时降低了第二处理器和中央处理器的负荷。
第一方面,本申请实施例提供了一种图像数据量化方法,该方法包括:图像信号处理器获取量化参数;图像信号处理器获取第一图像数据并根据量化参数对第一图像数据进行量化生成第二图像数据;图像信号处理器向第二处理器发送第二图像数据。
如此,通过图像信号处理器对第一图像数据进行量化后直接传送给第二处理器,减少了系统中图像数据传送的端到端延迟,同时降低了第二处理器和中央处理器的负荷。
在上述第一方面的一种可能的实现中,上述方法还包括:根据第一图像数据的取值范围和第二图像数据的取值范围,确定量化参数。其中,第一图像数据的取值范围可以通过统计第一图像数据中的最大值和最小值来获取,例如第一图像数据中最大值为450,最小值为0,则第一图像数据的取值范围为0~450;第二图像数据的取值范围可以根据第二处理器中的图像处理模型对输入数据格式的要求获取,例如INT8代表-128~127,UINT8(无符号8位整型)代表0~255。
在上述第一方面的一种可能的实现中,量化参数包括缩放系数和偏置量。
当量化参数是缩放系数和偏置量时,可以离线计算并存储在ISP的寄存器中。例如,当ISP统计的第一图像数据取值范围为0~450,采取有符号INT8量化,即8位有符号整型量化,取值范围是-128~127,则缩放系数为[127-(-128)]/(450-0),偏置量为-128。本申请的实施例中,图像处理模型可以是卷积神经网络模型、循环递归神经网络模型等。
在上述第一方面的一种可能的实现中,上述图像信号处理器获取第一图像数据并根据量化参数对第一图像数据进行量化生成第二图像数据,具体包括:
图像信号处理器逐行获取第一图像数据的行数据;
图像信号处理器根据缩放系数对上述行数据进行缩放;
图像信号处理器根据偏置量对缩放后的行数据进行偏置生成第二图像数据。
在一些实施例中,还可以同时获取第一图像数据不同色彩通道相同行的数据进行缩放和偏置,例如当第一图像数据为RGB(一种色域空间,由红色(red,R))、绿色(green,G)、蓝色(blue,B)来表示颜色)图像时,可以同时获取R(红色)、G(绿色)、B(蓝色)三个通道行索引号相同的行,根据量化参数对三个通道的行数据缩放和偏置后,同时生成三个通道的第二图像数据。
在上述第一方面的一种可能实现中,图像信号处理器向第二处理器发送第二图像数据,具体包括:
图像信号处理器将第二数据传送到存储器;
第二处理器从存储器中读取第二图像数据。
在上述第一方面的一种可能实现中,电子设备还包括总线,并且第一处理器和第二处理器通过总线进行耦接。
在上述第一方面的一种可能的实现中,第二处理器是神经网络处理器。在另一些实施例中,第二处理器也可以是其他可以进行图像数据处理的处理器,例如数字信号处理器等。
第二方面,本申请实施例提供了一种图像信号处理器,用于实现上述第一方面所述的图像数据量化方法。
第三方面,本申请实施例提供了一种可读介质,可读介质上存储有指令,该指令在被图像信号处理器执行时,可以实现第一方面所述的图像数据量化方法。
第四方面,本申请实施例提供了一种电子设备,包括存储器、图像信号处理器和第二处理器,用于执行第一方面所述的图像数据量化方法。在一些实施例中,存储器还用于存储由电子设备的一个或多个处理器执行的指令。
第五方面,本申请实施例提供了一种片上系统,包括存储器、图像信号处理器和第二处理器,用于执行第一方面所述的图像数据填充方法。在一些实施例中,片上系统还可以包括总线控制单元、中断管理单元、协处理器等其他部件。在另一些实施例中存储器还用于存储由片上系统的一个或多个处理器执行的指令。
附图说明
图1A示出了一种图像数据的量化示意图;
图1B示出了一种人图像数据不同位深量化的效果示意图;
图2根据本申请的一些实施例,示出了一种电子设备100的结构示意图;
图3根据本申请的一些实施例,示出了一种图像数据量化方法的示意图;
图4根据本申请的一些实施例,示出了一种图像数据量化方法的示意图;
图5根据本申请的一些实施例,示出了一种图像数据量化方法的示意图;
图6根据本申请的一些实施例,示出了一种图像数据量化方法的流程示意图;
图7根据本申请的一些实施例,示出了一种图像数据量化运算的示意图;
图8根据本申请的一些实施例,示出了一种图像数据量化运算的示意图;
图9根据本申请的一些实施例,示出了一种图像信号处理器的结构示意图;
图10根据本申请的一些实施例,示出了一种量化模块的结构示意图;
图11根据本申请的一些实施例,示出了一种图像信号处理器进行图像处理的流程示意图;
图12根据本申请的一些实施例,示出了一种片上系统的结构示意图。
具体实施方式
本申请的说明性实施例包括但不限于电子设备及其图像处理方法、图像信号处理器、片上系统和介质。
为了便于理解,下面对本申请涉及的术语进行解释。
量化:为了平衡图像处理模型的准确程度及运算效率,在进行图像处理前,需要对输入图像数据的位深进行调整。例如,图1A示出了灰度图像不同位深量化的示意图,如图1A所示,量化是将图像中的颜色从最亮到最暗的区间进行划分,例如灰度图像是对白色到黑色进行区间划分,例如8位量化即是使图像数据的位深为8位,用8位二进制数来表征从白色到黑色中各个色阶颜色,8位量化中的图像有28=256个色阶,0代表黑色,255代表白色,相似的,4位量化则是将白色到黑色的区间划分为24=16个色阶,0代表黑色,15代表白色,当图像数据被量化为1位时,则只有黑色和白色。不同位深的量化对应图片的精细程度也不一致。
例如,图1B示出了对同一幅图像进行不同位深量化的结果,如图1B所示,进行8位量化后的图像可以清楚的呈现花瓣上的纹理、叶片的细节,色彩层次丰富;进行6位量化后的图像色彩层次有所降低,但仍可清楚的呈现花瓣上的纹理;4位量化后的图像色彩层次明显降低,相较于6位量化后的人像丢失更多的细节,例如花瓣的纹理丢失;而1位量化的人像中只有黑白两种颜色,只能呈现花瓣和叶片的轮廓。
下面结合附图进一步阐述本申请实施例的技术方案和有益效果。
图2根据本申请的一些实施例,示出了一种电子设备100的结构示意图,电子设备100可以进行图像的获取、图像数据的量化及深度学习模型推理。其中,深度学习模型推理是指电子设备100的NPU 104(第二处理器)根据图像处理模型对图像数据进行运算。图像处理模型包括但不限于卷积神经网络模型、循环递归神经网络模型等深度学习模型。
如图2所示,电子设备100包括:镜头101、图像传感器102、ISP 103、NPU 104、中央处理器(central processing unit,CPU)105、显示器106、存储器107和接口模块108。其中,镜头101和图像传感器102连接,图像传感器102与ISP 103连接,ISP 103、NPU 104、CPU105、显示器106、存储器107和接口模块108通过总线109耦接。ISP 103、NPU 104、CPU 105和存储器107可以通过总线109耦接构成片上系统(system on chip,SOC)1000,在另一些实施例中,ISP 103、NPU 104、CPU 105和存储器107也可以是独立的器件,可以不集成在片上系统上。
其中,镜头101用于收集景物反射的光信号并呈现在图像传感器102上,镜头101可以是定焦镜头、变焦镜头、鱼眼镜头、全景镜头等。
图像传感器102用于将通过镜头101收集的景物反射的光信号转换为电信号,生成原始图像(RAW)数据,例如可以生成Bayer格式的数据。图像传感器可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管通成。
ISP 103是用于图像数据处理的专用集成电路(application-specificintegrated circuit,ASIC),用于对图像传感器102形成的图像数据进行进一步处理,以获得更好的图像质量。在一些实施例中,ISP 103还用于对图像数据进行量化运算。
NPU 104可以为实现深度学习的ASIC,在一些实施例中,NPU 104可以通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理。电子设备100可以通过NPU 104进行深度学习模型推理,例如:图像分类、图像识别、人脸识别、语音识别、文本理解等。
CPU 105可以包括一个或多个处理单元,例如,可以包括中央处理器CPU(CentralProcessing Unit)、数字信号处理器DSP(Digital Signal Processor)、微处理器MCU(Micro-programmed Control Unit)、AI(Artificial Intelligence,人工智能)处理器或可编程逻辑器件FPGA(Field Programmable Gate Array)等的处理模块或处理电路。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
显示器106的显示面板可以采用液晶显示屏(Liquid Crystal Display,LCD),有机发光二极管(Organic Light-emitting Diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(Active-matrix Organic Light-emitting Diode的,AMOLED),柔性发光二极管(Flex Light-emitting Diode,FLED),Mini LED,Micro LED,Micro OLED,量子点发光二极管(Quantum Dot Light-emitting Diodes,QLED)等。显示器106可以用于显示经过ISP 103处理的图像数据,还可以用于显示NPU 104的运算结果,例如显示人脸图像和人脸识别的结果。
存储器107可用于存储数据、软件程序以及模块,可以是易失性存储器(VolatileMemory),例如随机存取存储器(Random-Access Memory,RAM),双倍数据率同步动态随机存取存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)等。在一些实施例中,存储器107可以用于存储量化后的图像数据。
接口模块108包括外部存储器接口、通用串行总线(universal serial bus,USB)接口等。其中外部存储器接口可以用于连接非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM),快闪存储器(Flash Memory),硬盘(Hard DiskDrive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,或者也可以是可移动存储介质,例如安全数字(Secure Digital,SD)存储卡等,用于扩展电子设备100的存储能力。
总线109用于耦接ISP 103、NPU 104、CPU 105、显示器106、存储器107和接口模块108。总线109可以是高级高性能总线(advanced high-performance bus,AHB),也可以是其他类型的数据总线。
可以理解,图2所示的电子设备100的结构只是一种示例,可以是包含ISP和NPU的任意电子设备100,并不构成对电子设备100的具体限定,在另一些实施例中,电子设备100可以包含更多或更少的模块,还可以组合或者拆分部分模块,本申请实施例不作限制。
可以理解,电子设备100可以包括但不限于:膝上型计算机、台式计算机、平板计算机、手机、服务器、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备、电视机等。
在相关技术方案的一些实施例中,为了满足NPU 104中运行的深度学习模型对图像数据位深的要求,电子设备100可以通过镜头101、图像传感器102拍摄图像,然后通过ISP103对拍摄的图像进行预处理(例如白平衡调整、坏点矫正、色域转换),然后将预处理之后的图像数据通过CPU 105进行量化,再将量化后的图像数据传送给NPU 104进行深度学习模型推理。
例如,图3示出了相关技术方案的一些实施例中,为了满足NPU 104中运行的深度学习模型对图像数据位深的要求,电子设备100通过镜头101、图像传感器102采集的图像数据经过ISP 103处理后,使用CPU 105进行图像数据量化的交互过程,包括以下步骤。
步骤301:ISP 103将预处理后的图像数据传送到存储器107进行存储。
步骤302:CPU 105通过总线109从存储器107读取图像数据。
步骤303:CPU 105对读取的图像数据进行量化。
步骤304:CPU 105将量化后的图像数据传送到存储器107进行存储。
步骤305:NPU 104从存储器107读取量化后的图像数据。
步骤306:NPU 104根据读取到的量化后的图像数据进行深度学习模型推理。
不难理解的是,在图3所示的技术方案中,图像数据经过ISP 103的预处理并写入存储器107后,CPU 105从存储器107中读取未量化的图像数据,CPU 105将从存储器107中读取的未量化的图像数据进行量化,再将量化后的数据写入存储器107,然后NPU 104才能从存储器107读取量化后的图像数据。即CPU 105需要读/写存储器107,NPU 104才能读取到量化后的图像数据,图像数据传送次数较多,导致图像数据传送延迟高,占用系统带宽大,同时,使用CPU 105进行量化运算会增加CPU 105的运行负荷,影响CPU 105的性能。
在另一些实施例中,在电子设备100的ISP 103将图像数据写入存储器107后,直接采用NPU 104进行图像数据量化,如图4所示,包括以下步骤。
步骤401:ISP 103将处理后的图像数据传送到存储器107进行存储。
步骤402:NPU 104通过总线109从存储器107读取图像数据。
步骤403:NPU 104对读取的图像数据进行量化。
步骤404:NPU 104将量化后的图像数据传送到存储器107进行存储。
步骤405:NPU 104从存储器107读取量化后的图像数据。
步骤406:NPU 104根据读取到的量化后的图像数据进行深度学习模型推理。
然而,从图4所示的实施例中,不难看出,直接采用NPU 104进行图像数据量化,虽然降低了CPU 105的运算负荷,但由于仍然需要NPU 104从存储器107中读取未量化的图像数据,以及向存储器107写入量化后的图像数据,图像数据传送的时延较高,占用系统带宽大,同时会增加NPU 104的运算负荷。
为了解决上述图3和图4所示的技术方案中,由于CPU 105或NPU 104从存储器107中读取未量化的图像数据以及向存储器107中写入量化后的数据导致图像数据传送时延较高,占用系统带宽大,以及使用CPU 105进行量化运算会增加CPU 105运算负荷,使用NPU104进行量化运算会增加NPU 104运算负荷的问题。本申请技术方案直接通过ISP103对图像数据进行量化,从而无需从存储器107中读取未量化的图像数据,减少了图像数据的读写次数,可以降低时延,并且释放出CPU 105或NPU 104关于图像数据量化的计算资源,从而避免影响CPU 105或NPU 104的总体性能。
具体地,如图5所示,本申请技术方案中,电子设备100直接采用ISP 103进行图像数据量化的过程包括以下步骤。
步骤501:ISP 103对图像数据进行量化。
步骤502:ISP 103将量化后的图像数据传送到存储器107进行存储。
步骤503:NPU 104从存储器107读取量化后的图像数据。
步骤504:NPU 104根据从存储器107读取到的量化后的图像数据进行深度学习模型推理。例如,NPU 104通过将读取的图像数据进行深度学习模型推理,从而实现人脸识别、图像内容识别等。
可见,采用ISP 103直接进行图像数据的量化,将量化后的图像数据传送到存储器107后,NPU 104即可读取存储器107中经过量化的图像数据进行深度学习模型推理,无需CPU 105或NPU 104读取未量化的图像数据进行量化后再写入存储器107,从而减少了电子设备100中图像数据传递的次数,降低了图像数据从ISP 103传递到NPU 104的时延,减小了系统带宽的占用,同时降低了CPU105和NPU 104的负荷,可以提升电子设备100整体的性能。
在一些实施例中,可以采用逐行量化的方式对图像数据进行量化。图6根据本申请实施例,示出了图5所示的图像数据量化方法中ISP 103逐行对图像数据进行量化的流程图,包括以下步骤。
步骤600:ISP 103获取量化参数。其中,量化参数包括缩放系数A和偏置量B。
例如,可以根据NPU 104中运行的深度学习模型对图像数据取值范围的要求以及图像传感器102采集的图像数据的取值范围计算量化参数。例如,当图像传感器102采集的图像数据取值范围为0~1023,NPU 104中的深度学习模型要求图像数据为8位有符号整型,取值范围-128~127时。缩放系数A=[127-(-128)+1]/(1023-0+1)=0.25,偏置系数B为-128。可以理解,在一些实施例中,只需要对图像数据进行缩放时,偏置系数为0;在另一些实施例中,只需要对图像数据进行偏置,此时缩放系数的取值为0。
可以理解,量化参数可以离线计算并存储于电子设备10的存储器107中,ISP 103进行量化时可以从存储器107读取量化参数以进行下一步操作,在另一些实施例中,电子设备10还可以实时进行计算,本申请实施例不作限制。
步骤601:ISP 103获取待量化图像数据的一行数据,根据缩放系数A和偏置量B对获取的行数据进行量化运算并输出。例如,待量化的数据为X,缩放系数为A,偏置量为B,则量化后的图像数据为A×X+B。
可以理解,在一些实施例中,可以使用定点乘法对待量化图像数据进行缩放,例如,当缩放系数A为0.25时,用二进制浮点数表示为0000.0100,可以将其小数点右移4位转换为定点数00000100,当待量化的图像数据为64,二进制定点数表示为00100000,先用00000100×00100000=10000000,再将10000000小数点左移4位并舍弃小数部分,变为1000,即十进制数16。
具体的,图7根据本申请实施例示出了根据步骤601中的缩放系数A和偏置量B按行进行量化的示意图。如图7所示,ISP 103逐行读取待量化的图像数据,然后对待量化的行数据X进行缩放,缩放后进行偏置,最后输出量化后的图像数据。具体的,当A=0.25,B=-128时,对于第一行数据[130 285 161 819],先读取当前行数据,然后计算0.25×[130 285161 819]得到缩放后的数据[32 71 40 204],再对缩放后的数据进行-128的偏置,得到量化后的行数据[-95 -56 -87 77],最后输出量化后的行数据;对于第二行数据[935 560993 145],先读取当前行数据,然后计算0.25×[935 560 993 145]得到缩放后的数据[233140 246 36],再对缩放后的数据进行-128的偏置,得到量化后的行数据[106 13 121 -91],最后输出量化后的行数据;对于第三行数据[647 980 980 431],先读取当前行数据,然后计算0.25×[647 980 980 431]得到缩放后的数据[161 245 245 107],再对缩放后的数据进行-128的偏置,得到量化后的行数据[34 118 118 -20],最后输出量化后的行数据;对于第四行数据[99 988 497 937],先读取当前行数据,然后计算0.25×[99 988 497937]得到缩放后的数据[24 247 124 234],再对缩放后的数据进行-128的偏置,得到量化后的行数据[-103 120 -3 107],最后输出量化后的行数据。
步骤602:ISP 103判断是否已经完成所有行数据的量化,若已经完成所有行数据的量化,则结束量化过程;否则转至步骤601,获取与当前完成量化的一行数据相邻的下一行数据,然后对该下一行数据进行量化。
可以理解,本申请实施例的通过缩放和偏置方法对图像数据进行量化只是一种示例性说明,本领域的普通技术人员应当理解,对于不同的硬件结构的ISP 103和深度学习模型对图像数据格式的不同需求,还可以采用其他的方式,本申请实施例不作限制。
可以理解,在另一些实施例中,还可以一次性读取待量化图像数据的全部数据,对图像数据全部进行量化后输出。例如,图8示出了一种一次性读取待量化的图像数据,并对图像的全部数据进行量化的示意图。如图8所示,ISP 103一次性读取待量化的图像数据,经过缩放和偏置后整幅输出量化后的图像数据。具体的,待处理图像数据大小为4×4,图像数据范围为0-1023,量化目标为8位有符号整型数据,则缩放系数A为0.25,偏置量B为-128。ISP 103先将待量化的图像数据全部读取完毕,然后通过定点乘法对待量化的图像数据X进行0.25倍的缩放,再根据偏置量B对缩放后的图像数据进行-128的偏置,得到8位的有符号整型图像数据,最后整幅输出量化后的图像数据。
可以理解,在一些实施例中,待处理图像数据可以包含多个色彩通道,例如RGB图像包含三个色彩通道,三个色彩通道的缩放系数和偏置量相同。在进行量化时可以同时读取不同通道中行索引号相同的行同时进行量化,例如同时读取R、G、B三个通道的第一行数据进行量化。在另一些实施例中,待处理图像数据不同色彩通道的缩放系数和偏置量也可以不同,此时分别对不同色彩通道的行分别读取进行行量化运算。
进一步,图9根据本申请的一些实施例,示出了一种ISP 103的结构示意图。如图9所示,ISP 103包括处理器1031、图像传输接口1032、通用外围设备1033、量化模块1034和通用功能模块1035。其中:
处理器1031用于ISP 103中的逻辑控制和调度。例如,根据预设的图像预处理要求,调用通用功能模块对图像数据进行预处理。
图像传输接口1032用于图像数据的传输。
通用外围设备1033包括但不限于:
用于耦接ISP 103的各个模块的总线及其控制器,例如I2C总线可以使处理器控制ISP的工作模式,获取ISP的工作状态等;
用于与其他设备耦接的总线,例如高级高性能总线(advanced high-performancebus,AHB),可以使ISP与其他设备(如DSP、CPU等)进行高性能通信;
用于监控ISP工作状态的看门狗单元(WATCHDOG)。
量化模块1034,用于根据NPU中图像处理模型,例如深度学习模型,对输入数据的要求,对图像数据进行量化运算。
图10根据本申请的一些实施例,示出了一种量化模块的结构示意图,包括乘法器10341和加法器10342。其中:
乘法器10341用于根据缩放系数对图像数据进行缩放,在一些实施例中,乘法器10341可以是定点乘法器,也可以是其他类型的乘法器,还可以是相同或者不同乘法器的组合。
加法器10342用于根据偏置量对图像数据进行偏置,在一些实施例中,加法器10342可以是定点加法器,也可以是其他类型的加法器,还可以是相同或者不同的加法器的组合。
可以理解,图10所示的量化模块1034的结构只是一种示例,本领域的技术人员应当理解,其可以包含更多或更少的模块,也可以组合或者拆分部分模块,本申请实施例不作限定。
可以理解,不同的图像处理模型对输入图像的色域空间要求不同,量化模块可以对不同类型色域空间的图像数据进行量化,包括但不限于RGB、YUV(一种色域空间,由明向度(Y)和色度(U和V)来表示颜色)。
可以理解,在一些实施例中,量化模块也可以集成到通用功能模块1035中,本申请实施例不做限定。
通用功能模块1035用于对输入ISP 103的图像进行预处理,以提高图像数据的质量,包括但不限于:黑电平补偿(black level correction,BLC)、坏点矫正(bad pixelcorrection,BPC)、镜头矫正(lens shading correction,LSC)、去马赛克(Demosaic)、降噪(Denoise)、自动白平衡(automatic white balance,AWB)、颜色矫正(Color Correction)、伽马矫正(Gamma Correction)、色域转换等。当图像传感器将RAW格式的图像数据传递给ISP 103时,先由通过功能模块1035进行预处理。通用功能模块可以包括RAW域处理模块、YUV域处理模块和RGB域处理模块,图11示出了一种通用功能模块对图像数据进行处理的过程示意图,包括以下步骤。
RAW域处理模块对图像数据进行坏点矫正、黑电平矫正和自动白平衡。
经过RAW域处理后的图像数据经过RGB插值后得到RGB域的图像数据,再由RGB域处理模块对RGB域的图像数据进行伽马矫正和颜色校正。
经过RGB域处理的图像数据经过色域转换得到YUV域的图像数据,再由YUV域处理模块对YUV域的图像数据进行降噪、边缘增加、亮度/对比度/色度调整。
经过RGB域处理的图像数据经过色域转换得到YUV域的图像数据,再由YUV域处理模块对YUV域的图像数据进行降噪、边缘增加、亮度/对比度/色度调整。
可以理解,图像数据经过通用功能模块1035处理后即可输出到量化模块1034进行图像数据量化。其中,输出到量化模块1034的图像数据色域可以是RGB,也可以是YUV,还可以是灰度图像,本申请实施例不做限制。
可以理解,图9所示的ISP 103的结构只是一种示例,本领域的技术人员应当理解,其可以包含更多或更少的模块,也可以组合或者拆分部分模块,本申请实施例不作限定。
本申请实施例还提供一种片上系统(system on chip,SOC),如图12所示,片上系统1000包括ISP 103、NPU 104、CPU 105和存储器107。ISP 103、NPU 104、CPU 105和存储器107通过总线109耦接。ISP 103可以对图像数据进行量化,并通过总线109传送到存储器107,NPU 104从存储器107读取填充后的图像数据进行深度学习模型推理,如此减小了SOC1000中的端到端延迟和系统带宽的占用,同时减轻了NPU 104和CPU 105的工作负荷。
可以理解,图12所示的SOC 1000只是一种示例性说明,本领域的技术人员应当理解,在另一些实施例中,可以增加或减小一些部件,例如,增加总线控制单元、中断管理单元、协处理器等,还可以拆分或者组合一些部件,例如,将ISP 103和NPU 104集成在一起,本申请实施例不作限制。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(Digital Signal Processor,DSP)、微控制器、专用集成电路(Application Specific Integrated Circuit,ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、可擦除可编程只读存储器(Erasable Programmable Read OnlyMemory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。

Claims (10)

1.一种图像数据量化方法,用于电子设备,其特征在于,所述电子设备包括第一处理器和第二处理器;并且
所述方法包括:
所述第一处理器获取量化参数,所述量化参数是根据第一图像数据的取值范围和第二图像数据的取值范围确定;
所述第一处理器获取所述第一图像数据并根据所述量化参数对所述第一图像数据进行量化生成所述第二图像数据;
所述第一处理器向所述第二处理器发送所述第二图像数据;
其中,所述第一处理器为图像信号处理器,所述第二处理器为神经网络处理器。
2.根据权利要求1所述的图像数据量化方法,其特征在于,所述量化参数包括缩放系数和偏置量。
3.根据权利要求2所述的图像数据量化方法,其特征在于,所述第一处理器获取第一图像数据并根据所述量化参数对所述第一图像数据进行量化生成第二图像数据,包括:
所述第一处理器逐行获取所述第一图像数据的行数据;
所述第一处理器根据所述缩放系数对所述行数据进行缩放;
所述第一处理器根据所述偏置量对缩放后的行数据进行偏置生成所述第二图像数据。
4.根据权利要求3所述的图像数据量化方法,其特征在于,所述电子设备还包括存储器;并且所述方法还包括:
所述第一处理器按行将所述第二图像数据传送到存储器。
5.根据权利要求1所述的图像数据量化方法,其特征在于,所述电子设备还包括存储器;并且所述第一处理器向所述第二处理器发送所述第二图像数据,具体包括:
所述第一处理器将所述第二图像数据传送到所述存储器;
所述第二处理器从所述存储器中读取所述第二图像数据。
6.根据权利要求1至5中任一项所述的图像数据量化方法,其特征在于,所述电子设备还包括总线;并且
所述第一处理器和所述第二处理器通过总线进行耦接。
7.一种图像信号处理器,其特征在于,用于执行权利要求1至6任一项所述的图像数据量化方法。
8.一种可读介质,其特征在于,所述可读介质中包含有指令,当所述指令被电子设备的图像信号处理器执行时使电子设备实现权利要求1至6任一项所述的图像数据量化方法。
9.一种电子设备,其特征在于,包括:
存储器,用于存储由电子设备的一个或多个处理器执行的指令;以及
第一处理器和第二处理器,用于执行权利要求1至6任一项所述的图像数据量化方法。
10.一种片上系统,其特征在于,包括:
存储器,用于存储由片上系统的一个或多个处理器执行的指令;以及
第一处理器和第二处理器,用于执行权利要求1至6任一项所述的图像数据量化方法。
CN202110528184.9A 2021-05-14 2021-05-14 电子设备及其图像处理方法、片上系统和介质 Active CN113259666B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110528184.9A CN113259666B (zh) 2021-05-14 2021-05-14 电子设备及其图像处理方法、片上系统和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110528184.9A CN113259666B (zh) 2021-05-14 2021-05-14 电子设备及其图像处理方法、片上系统和介质

Publications (2)

Publication Number Publication Date
CN113259666A CN113259666A (zh) 2021-08-13
CN113259666B true CN113259666B (zh) 2022-12-16

Family

ID=77181905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110528184.9A Active CN113259666B (zh) 2021-05-14 2021-05-14 电子设备及其图像处理方法、片上系统和介质

Country Status (1)

Country Link
CN (1) CN113259666B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106412503A (zh) * 2016-09-23 2017-02-15 华为技术有限公司 图像处理方法及装置
CN111860530A (zh) * 2020-07-31 2020-10-30 Oppo广东移动通信有限公司 电子设备、数据处理方法及相关装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190056888A (ko) * 2017-11-17 2019-05-27 삼성전자주식회사 비디오 부호화 장치 및 방법
CN111696039B (zh) * 2020-05-28 2023-07-28 Oppo广东移动通信有限公司 图像处理方法及装置、存储介质和电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106412503A (zh) * 2016-09-23 2017-02-15 华为技术有限公司 图像处理方法及装置
CN111860530A (zh) * 2020-07-31 2020-10-30 Oppo广东移动通信有限公司 电子设备、数据处理方法及相关装置

Also Published As

Publication number Publication date
CN113259666A (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
US10970830B2 (en) Image style conversion method, apparatus and device
US20210272246A1 (en) Method, system, and computer-readable medium for improving quality of low-light images
US10270988B2 (en) Method for generating high-dynamic range image, camera device, terminal and imaging method
US9760794B2 (en) Method and system of low-complexity histrogram of gradients generation for image processing
US11887280B2 (en) Method, system, and computer-readable medium for improving quality of low-light images
US11398016B2 (en) Method, system, and computer-readable medium for improving quality of low-light images
EP3891695B1 (en) Electronic device and method for adjusting color of image data by using infrared sensor
WO2021114184A1 (zh) 神经网络模型的训练方法、图像处理方法及其装置
US20190251670A1 (en) Electronic device and method for correcting images using external electronic device
US20080285868A1 (en) Simple Adaptive Wavelet Thresholding
US9083887B2 (en) Image capture devices configured to generate compensation gains based on an optimum light model and electronic apparatus having the same
CN113627328A (zh) 电子设备及其图像识别方法、片上系统和介质
CN113259666B (zh) 电子设备及其图像处理方法、片上系统和介质
WO2021073316A1 (zh) 一种图像信号转换处理方法、装置及终端设备
US20220301278A1 (en) Image processing method and apparatus, storage medium, and electronic device
CN113256763B (zh) 电子设备及其图像处理方法、片上系统和介质
CN111383171B (zh) 一种图片处理方法、系统及终端设备
CN114697621A (zh) 使用反指数函数优化的边缘保留噪声降低算法
CN1262118C (zh) 图像处理装置以及相机
CN112734673B (zh) 一种基于多表达式融合的低照度图像增强方法及系统
CN116668838B (zh) 图像处理方法与电子设备
US11823430B2 (en) Video data processing
CN216649832U (zh) 图像传感器
CN113421209B (zh) 图像处理方法、片上系统、电子设备和介质
WO2021016864A1 (zh) 图像处理方法、系统、可移动平台及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant