CN113421209B - 图像处理方法、片上系统、电子设备和介质 - Google Patents
图像处理方法、片上系统、电子设备和介质 Download PDFInfo
- Publication number
- CN113421209B CN113421209B CN202110684925.2A CN202110684925A CN113421209B CN 113421209 B CN113421209 B CN 113421209B CN 202110684925 A CN202110684925 A CN 202110684925A CN 113421209 B CN113421209 B CN 113421209B
- Authority
- CN
- China
- Prior art keywords
- image
- processor
- image data
- data
- histogram
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000007781 pre-processing Methods 0.000 claims abstract description 10
- 238000013136 deep learning model Methods 0.000 claims description 19
- 238000003062 neural network model Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 53
- 230000015654 memory Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 238000012937 correction Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000010295 mobile communication Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008571 general function Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- 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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
本申请涉及图像处理领域,公开了一种图像处理方法、片上系统、电子设备和介质。上述图像处理方法用于上述电子设备,上述电子设备包括第一处理器和第二处理器;并且上述图像处理方法包括:所述第一处理器获取第一图像数据;所述第一处理器根据所述第一图像数据获取图像预处理所需的目标参数;所述第一处理器向所述第二处理器发送所述第一图像数据及所述目标参数;其中,所述第一处理器为图像信号处理器。该方法能够有效减少中央处理器的运行负荷,减少系统端到端的延迟。
Description
技术领域
本申请涉及图像处理技术领域,特别涉及一种图像处理方法、片上系统、电子设备和介质。
背景技术
随着图像处理技术应用的普及,其应用范围越来越广,例如在医学、军事、摄像等领域已经得到广泛应用。目前,一般采用各种图像处理系统或芯片对图像进行分析处理,例如,可以通过包含图像信号处理器(image signal processor,ISP)、中央处理器(centralprocessing unit,CPU)和神经网络处理器(neural network processing unit,NPU)的图像处理系统提取图像的特征,并进行深度学习模型推理。
随着各领域对图像处理的要求的进一步提高,现有图像处理系统或芯片需要承受较大的运算量,造成运行负荷较大,且影响图像处理速度。因此,在NPU对图像进行进一步处理前,例如进行深度学习模型推理前,需要对图像进行预处理,例如计算图像均值、计算图像方差,图像特征标准化等,以提NPU进行深度学习模型推理的速度。
发明内容
本申请实施例提供了一种图像处理方法、片上系统、电子设备和介质。
第一方面,本申请实施例提供了一种图像处理方法,能够用于电子设备,所述电子设备包括第一处理器和第二处理器;并且
所述方法包括:
所述第一处理器获取第一图像数据;
所述第一处理器根据所述第一图像数据获取图像预处理所需的目标参数;
所述第一处理器向所述第二处理器发送所述第一图像数据及所述目标参数;
其中,所述第一处理器为图像信号处理器。
在上述第一方面的一种可能的实现中,所述目标参数包括平均值和/或方差值。
在上述第一方面的一种可能的实现中,所述第一图像数据包括图像中每个像素点的灰度值的统计数据。
在上述第一方面的一种可能的实现中,所述第一处理器根据所述第一图像数据获取图像预处理所需的平均值,包括:
所述第一处理器将所述第一图像数据分为多个第一图像子区域数据;
所述第一处理器根据每个第一图像子区域数据获取每个第一图像子区域数据的直方图;
所述第一处理器根据所述每个第一图像子区域数据的直方图获取第一图像数据的直方图;
所述第一处理器根据所述第一图像数据的直方图获取所述第一图像数据的平均值。
在上述第一方面的一种可能的实现中,所述第一处理器根据所述第一图像数据获取图像预处理所需的方差值,包括:
所述第一处理器根据所述第一图像数据获取所述第一图像数据的第N-1帧的平均值;N为正整数;本申请实施例中,第N帧可以为当前帧,则第N-1帧为当前帧的前一帧,第N+1帧为当前帧的后一帧。
所述第一处理器将所述第一图像数据的每个数据减去所述第一图像数据的第N-1帧的平均值的差值的平方作为第二图像数据;
所述第一处理器将所述第二图像数据分为多个第二图像子区域数据;
所述第一处理器根据每个第二图像子区域数据获取每个第二图像子区域数据的直方图;
所述第一处理器根据每个第二图像子区域数据的直方图获取第二图像数据的直方图;
所述第一处理器根据所述第二图像数据的直方图获取所述第二图像数据的第N帧的方差值。
本申请实施例中,第一图像数据可以原始的图像数据,第一图像子区域数据可以为对原始图像数据进行分块划分获取的多个图像子区域数据,第二图像子区域数据可以为对第二图像数据进行分块划分获取的多个图像子区域数据。
在上述第一方面的一种可能的实现中,所述第二处理器是神经网络处理器。
本申请实施例提供的图像处理方法,通过图像信号处理器对图像数据进行目标参数,例如平均值和方差的计算,然后将图像数据、计算出的平均值传送至神经网络处理器,神经网络处理器根据图像数据、计算出的平均值进行深度学习模型推理。该方法能够有效减少中央处理器的运行负荷,加快中央处理器的运行速度;另外,直接通过图像信号处理器将图像数据、计算出的平均值传送至神经网络处理器,不通过中央处理器进行传送,能够减少系统端到端的延迟,进一步加快图像处理速度。
第二方面,本申请实施例提供一种电子设备,其特征在于,包括:第一处理器和第二处理器,用于执行上述图像处理方法。
在上述第一方面的一种可能的实现中,所述电子设备还包括总线;
所述第一处理器和第二处理器通过所述总线进行耦接。
第三方面,本申请实施例提供一种片上系统,包括:第一处理器和第二处理器,用于执行所述的图像处理方法。其中,片上系统可以为图像处理芯片。
第三方面,本申请实施例提供一种机器可读介质,其特征在于,所述机器可读介质上存储有指令,该指令在机器上执行时使机器执行上述图像处理方法。
附图说明
图1根据本申请的一些实施例,示出了一种电子设备的结构示意图;
图2根据本申请的一些实施例,示出了一种图像处理方法的流程示意图;
图3根据本申请的一些实施例,示出了一种图像处理方法的流程示意图;
图4根据本申请的一些实施例,示出了一种图像处理方法的过程示意图;
图5根据本申请的一些实施例,示出了一种图像处理方法的流程示意图;
图6根据本申请的一些实施例,示出了一种图像处理方法的过程示意图;
图7根据本申请的一些实施例,示出了一种ISP的结构示意图;
图8示出了一种通用功能模块对图像数据进行处理的过程示意图;
图9根据本申请的一些实施例,示出了一种电子设备的结构示意图。
具体实施方式
可以理解,如本文所使用的,术语“模块”可以指代或者包括专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用、或群组)和/或存储器、组合逻辑电路、和/或提供所描述的功能的其他适当硬件组件,或者可以作为这些硬件组件的一部分。
可以理解,在本申请各实施例中,处理器可以是微处理器、数字信号处理器、微控制器等,和/或其任何组合。根据另一个方面,所述处理器可以是单核处理器,多核处理器等,和/或其任何组合。
本申请的说明性实施例包括但不限于图像处理方法、片上系统、电子设备和介质。
下面将结合附图对本申请的实施例作进一步地详细描述。本申请实施例提供的图像处理方法可以用于能够进行图像处理的各种电子设备中,例如,可以用于手机或计算机中。
图1根据本申请的一些实施例,示出了一种电子设备100的结构示意图。可以理解,电子设备100可以包括但不限于:膝上型计算机、台式计算机、平板计算机、手机、服务器、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、阅读器设备、电视机等。
如图1所示,电子设备100可以包括镜头101、图像传感器102以及片上系统(systemon chip,SOC)1000。其中,其中,镜头101和图像传感器102连接,图像传感器702与片上系统1000连接。
具体的,镜头101用于收集景物反射的光信号并呈现在图像传感器102上,镜头101可以是定焦镜头、变焦镜头、鱼眼镜头、全景镜头等。
图像传感器102用于将通过镜头101收集的景物反射的光信号转换为电信号,生成原始图像(RAW)数据并将原始图像数据发送至片上系统1000,例如原始图像(RAW)数据可以为Bayer格式的数据。图像传感器可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管通成。
片上系统1000可以包括ISP103、NPU104、中央处理器(central processing unit,CPU)105以及总线106;其中,ISP103、NPU104、CPU 105可以通过总线106耦接;在另一些实施例中,片上系统1000可以包括ISP103、NPU104以及总线106,其中,ISP103和NPU104通过总线106耦接,CPU 105为电子设备中独立的器件。在另一些实施例中,片上系统1000可以包括ISP103、NPU104、总线106及存储器107,存储器107可以为双倍速率同步动态随机存储器,其中,ISP103、NPU104、CPU 105及存储器107可以通过总线106耦接;在另一些实施例中,ISP103、NPU104、CPU105也可以均是电子设备100中独立的器件。
可以理解,图1中所示的片上系统1000只是一种示例性说明,本领域的技术人员应当理解,在另一些实施例中,可以增加或减少一些部件,例如,增加总线控制单元、中断管理单元、协处理器等,还可以拆分或者组合一些部件,例如,将ISP103和CPU105集成在一起,本申请实施例不作限制。
ISP103是用于图像数据处理的专用集成电路(application-specificintegrated circuit,ASIC),用于对图像传感器102形成的图像数据进行进一步处理,以获得更好的图像质量。在一些实施例中,ISP103可以用于对图像进行预处理,例如计算图像数据的平均值和/或方差值等,并将图像数据及其平均值和/或方差值发送至NPU104中。
NPU104是为深度学习设计的ASIC,在一些实施例中,可以通过从ISP103中获取的平均值和/或方差值对图像进行后续处理,例如可以进行深度学习模型推理,例如可以包括:神经网络模型训练、图像识别、人脸识别等。
CPU105可以包括一个或多个处理单元,例如,可以包括中央处理器CPU(CentralProcessing Unit)、图像处理器GPU(Graphics Processing Unit)、数字信号处理器DSP(Digital Signal Processor)、微处理器MCU(Micro-programmed Control Unit)、AI(Artificial Intelligence,人工智能)处理器或可编程逻辑器件FPGA(FieldProgrammable Gate Array)等的处理模块或处理电路。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
总线106用于耦接ISP103、NPU104、CPU 105。总线106可以是高级高性能总线(advanced high-performance bus,AHB),也可以是其他类型的数据总线。
本申请实施例提供的上述片上系统1000包括能够通过ISP103对图像进行预处理,例如计算图像数据的平均值和/或方差值等,并将图像数据及其平均值和/或方差值发送至NPU104中,通过NPU104从ISP103中获取的图像数据、平均值和/或方差值对图像进行后续处理,能够实现各种图像分析处理,能够加快图像处理的速度。
可以理解,图1所示的电子设备100的结构只是一种示例,可以是包含ISP103、NPU104和CPU105的任意电子设备100,并不构成对电子设备100的具体限定,在另一些实施例中,电子设备100可以包含更多或更少的模块,还可以组合或者拆分部分模块,本申请实施例不作限制。
在一些实施例中,电子设备100可以通过镜头101和图像传感器102获取图像数据并将图像数据传递至ISP103,具体的景物/人物通过镜头101在图像传感器102上形成光学信号,图像传感器102将光学信号转换为电信号,形成RAW格式的图像数据并传递给片上系统1000的ISP103中,图像数据传递给片上系统1000的ISP103后,片上系统1000对图像数据进行处理的方法有多种;一种可实施的方案中,可以如图2所示,包括以下步骤:
步骤2001:ISP103将图像数据发送至CPU105。
本申请实施例中,图像数据可以为图像每个点的灰度值的统计数据。
步骤2002:CPU105根据图像数据获取图像数据直方图。
本申请实施例中,图像数据直方图可以为图像的灰度直方图,表示的是图像的每一灰度级与该灰度级出现频率的对应关系;灰度直方图的横坐标为灰度范围,纵坐标为像素频率,其中灰度范围可以为0~255,可以将灰度范围0-255分成多个灰度级即灰度区间,统计图像中像素在每个灰度级出现的频率。
图像灰度直方图能够用于反映图像灰度的分布情况。根据灰度直方图可以直观的反映出图像的明暗程度,例如,如果灰度值为0灰度级频率较高,就说明图像偏暗,如果灰度值为255的灰度级的频率较低,说明图像偏亮。
步骤2003:CPU105根据图像的直方图获取图像的平均值。根据上述说明,若图像的直方图为灰度直方图,则图像的平均值为灰度平均值。图像的灰度平均值可以为灰度直方图中所有小矩形的面积与每个小矩形的横坐标中点的坐标值的乘积的加和。
步骤2004:CPU105将图像数据及图像平均值发送至NPU104。
步骤2005:NPU104根据图像数据及图像平均值进行深度学习模型推理。
在一些实施例中,NPU104根据图像数据及图像平均值进行深度学习模型推理的具体过程可以为:NPU104在获取到图像数据及图像平均值后,可以将图像数据整体减去图像平均值,实现图像零均值化。图像零均值化后可以移除图像的平均亮度值,以便进行后续的图像识别等深度学习模型推断。
本申请实施例提供的上述图像处理方法通过将图像数据发送至ISP103,然后由ISP103将图像数据发送至CPU105,通过CPU105计算图像数据的平均值,并将图像数据集计算好的平均值发送至NPU104,通过NPU104进行深度学习模型推理。上述图像处理方法通过CPU105进行图像预处理,例如平均值的计算,会增加CPU 105的运行负荷,减慢CPU 105的运行速度,且因为图像数据需要从ISP103发送至CPU105,再从CPU105发送至NPU104,需要经过两次发送,造成系统端到端的延迟较高,减慢片上系统1000的运行速度,从而造成图像处理的速度较慢。
本申请实施例提供另一种图像处理方法,主要为通过ISP103对图像数据进行预处理,例如计算平均值及方差值,然后将图像数据、计算出的平均值及方差等传送至NPU104,NPU104根据图像数据、计算出的平均值和方差值进行深度学习模型推理。该图像处理方法能够直接在ISP103模块中计算平均值及方差值,然后将直接将图像数据、平均值及方差值发送到NPU104进行深度学习,能够有效减少CPU105的运行负荷以及系统端到端的延迟。
图3示出了图像传感器102将图像数据传递给ISP103后采用ISP103和NPU104进行图像处理的方法交互流程示意图,如图3所示,包括下以步骤:
步骤3001:ISP103将原始的图像数据分为多个图像子区域数据。
本申请实施例中,图像数据可以为图像中每个点的灰度值的统计数据。将图像数据分为多个图像子区域数据的具体实施方法可以为如图4中(a)所示,将图像A分成多个子区域,例如,将图像A分成面积相同的n个子区域,分别为区域1、区域2……区域n等,则图像子区域数据可以为图像中每个子区域的各个点的灰度值的统计数据。
步骤3002:ISP103获取每个图像子区域数据的直方图。
本申请实施例中,每个图像子区域数据的直方图可以为每个图像子区域数据的灰度直方图。可以通过每个图像子区域数据即图像中每个子区域的灰度值的统计数据获取每个图像子区域数据的灰度直方图(如图4(b)所示)。
步骤3003:ISP103根据每个图像子区域数据的直方图获取图像数据的直方图。
本申请实施例中,图像数据的直方图可以为图像数据灰度直方图,可以通过每个图像子区域数据的直方图进行加和获取(如图4(c)所示)。
步骤3004:ISP103ISP103根据图像数据的直方图获取图像数据的平均值。
本申请实施例中,图像数据的平均值可以为图像的灰度平均值。其中,图像的灰度平均值可以为灰度直方图中所有小矩形的面积与每个小矩形的横坐标中点的坐标值的乘积的加和。
本申请实施例中平均值的计算方式为通过上述将图像数据分为多个图像子区域数据,分别计算每个图像子区域数据的直方图,然后根据每个图像子区域数据的直方图获取图像数据的直方图,根据图像数据的直方图获取图像数据的平均值,该方式可以将图像数据细分化,能够更精确的获取最终的平均值。
可以理解,在一些实施例中,也可以采用直接获取整个图像数据的直方图,通过整个图像数据的直方图获取平均值的方式。
步骤3005:ISP103将图像数据及图像数据的平均值发送至NPU104。
步骤3006:NPU104根据图像数据及图像数据的平均值进行深度学习模型推理。
在一些实施例中,NPU104根据图像数据及图像平均值进行深度学习模型推理的具体过程可以为:NPU104在获取到图像数据及图像平均值后,可以将图像数据整体减去图像平均值,实现图像零均值化。图像零均值化后可以移除图像的平均亮度值,以便进行后续的图像识别等深度学习模型推断。
本申请实施例图3中提供的图像处理方法,主要为通过对图像数据进行平均值的计算,然后将图像数据、计算出的平均值传送至NPU104,NPU104根据图像数据、计算出的平均值进行深度学习模型推理。该方法能够有效减少CPU105的运行负荷,加快CPU105的运行速度;另外,直接通过ISP103将图像数据、计算出的平均值传送至NPU104,不通过CPU105进行传送,能够减少系统端到端的延迟,进一步加快图像处理速度。
此外,在一些实施例中,有些图像处理还需要对图像数据进行特征标准化,然后进行后续的深度学习;图像的特征标准化除了需要计算图像的平均值,还需要计算图像的方差值,通过对图像数据减去平均值,再除以方差值实现图像的特征标准化。
图5示出了一种图像处理方法,能够通过ISP103计算图像数据的方差值,然后将图像数据及方差值传送至NPU104,NPU104根据图像数据方差值进行深度学习模型推理。图像处理方法的具体步骤如图5所示,包括:
步骤5001:ISP103计算第一图像数据前一帧的平均值;
本申请实施例中,第一图像数据的平均值由ISP103进行计算,其具体计算方法可以参照前述平均值的计算方法,在此不再赘述。
步骤5002:ISP103将第一发送至存储器107中;
步骤5003:ISP103从存储器107中获取第一图像数据前一帧的平均值;
步骤5004:ISP103将第一图像数据的每个数据减去第一图像数据前一帧平均值的差值的平方作为第二图像数据;
例如,第一图像数据包括为Xi的数据集,其中,i为正整数,则第二图像数据的为Xi与第一图像数据前一帧平均值的差值的平方组成的数据集。即例如第一图像数据包括X1、X2及X3;第一图像数据前一帧的平均值为M,则第二图像数据包括(X1-M)2、(X2-M)2及(X3-M)2。
本申请实施例中,如图6(a)所示,可以将第一图像数据定义为A,,第一图像数据减去平均值获取的第二图像数据定义为B。
本申请实施例中,在计算第一图像数据当前帧的方差值时,采用的第一图像数据的平均值是前一帧的平均值,能够有效避免因用当前帧的平均值,而只能等待当前帧的平均值计算完后才能计算方差的情况出现,实现在ISP 103中实时计算方差,进一步减小系统的延迟。
可以理解,计算第一图像数据当期帧的方差的时候,ISP模块可以同时进行第一图像数据当前帧的平均值的计算,计算后将第一图像数据当前帧的平均值发送至存储器107,便于下一帧方差值的计算。
步骤5005:ISP103将第二图像数据分为多个图像子区域数据。
本申请实施例中,将第二图像数据分为多个图像子区域数据的具体实施方法可以为如图6中(a)所示,将图像B分成多个面积相同的图像子区域,例如,将图像B分成n个子区域,分别为区域1、区域2……区域n等。则图像子区域数据可以为图像中每个子区域的各个点的灰度值的统计数据。
步骤5006:ISP103根据图像子区域数据获取每个图像子区域数据的直方图。
本申请实施例中,每个图像子区域数据的直方图可以为每个图像子区域数据的灰度直方图。可以通过每个图像子区域数据即图像中每个子区域的灰度值的统计数据获取每个图像子区域数据的灰度直方图(如图6(b)所示)。
本申请实施例中,通过分块直方图统计的方式,对图像数据的每个子区域进行直方图统计,且直方图统计数据不用转移到双倍速率同步动态随机存储器等内存进行缓存,能够有效提升计算效率。
步骤5007:ISP103根据每个图像子数据的直方图获取第二图像数据的直方图。
本申请实施例中,图像数据的直方图可以为图像数据灰度直方图,可以通过每个图像子区域数据的直方图进行加和获取(如图6(c)所示)。
步骤5008:ISP103根据第二图像数据的直方图获取第二图像数据的当前帧的方差。其中,第二图像数据的当前帧方差可以为灰度直方图中所有小矩形的面积与每个小矩形的横坐标中点的坐标值与平均值的差的乘积的加和。
步骤5009:ISP101将第一图像数据及第二图像数据的方差值发送至NPU104。
步骤5010:NPU104根据第一图像数据及第二图像数据的方差值进行深度学习模型推理。
在一些实施例中,NPU104根据第一图像数据及第二图像数据的方差值进行深度学习模型推理的具体过程可以为:NPU104在获取到图像数据及图像平均值后,通过对图像数据减去平均值,获得的结果除以方差值实现图像的特征标准化。图像标准化后可以减小后续深度学习中数据的处理量,以便增加图像识别等深度学习模型推理的运行速度。
本申请实施例图5中示出的图像处理方法,能够通过ISP103计算图像数据的方差值,然后直接将图像数据及方差值传送至NPU104,该方法能够有效减少CPU105的运行负荷,另外,直接通过ISP103将图像数据及方差值传送至NPU104,不通过CPU105进行传送,能够减少系统端到端的延迟,加快图像处理速度。
进一步,图7根据本申请的一些实施例,示出了一种ISP103的结构示意图。如图7所示,ISP103包括处理器1031、图像传输接口1032、通用外围设备1033、计算模块1034和通用功能模块1035。
处理器1031用于ISP103中的逻辑控制和调度。
图像传输接口1032用于图像数据的传输。
通用外围设备1033包括但不限于:
用于耦接ISP103的各个模块的总线及其控制器,例如I2C总线可以使处理器控制ISP的工作模式,获取ISP的工作状态等;
用于与其他设备耦接的总线,例如高级高性能总线(advanced high-performancebus,AHB),可以使ISP与其他设备(如DSP、CPU等)进行高性能通信;
用于监控ISP工作状态的看门狗单元(WATCHDOG)。
计算模块1034,用于计算图像数据的平均值及方差值等。
可以理解,一些实施例中,计算模块也可以集成到通用功能模块1035中,本申请实施例不做限定。
通用功能模块1035用于对输入ISP103的图像进行处理,包括但不限于:黑电平补偿(black level correction,BLC)、坏点矫正(bad pixel correction,BPC)、镜头矫正(lens shading correction,LSC)、去马赛克(Demosaic)、降噪(Denoise)、自动白平衡(automatic white balance,AWB)、颜色矫正(Color Correction)、伽马矫正(GammaCorrection)、色域转换等。当图像传感器将RAW格式的图像数据传递给图像信号处理器1030时,先由通过功能模块进行处理。通用功能模块可以包括RAW域处理模块、YUV域处理模块和RGB域处理模块,图8示出了一种通用功能模块对图像数据进行处理的过程示意图,包括以下步骤。
RAW域处理模块对图像数据进行坏点矫正、黑电平矫正和自动白平衡。
经过RAW域处理后的图像数据经过RGB插值后得到RGB域的图像数据,再由RGB域处理模块对RGB域的图像数据进行伽马矫正和颜色校正。
经过RGB域处理的图像数据经过色域转换得到YUV域的图像数据,再由YUV域处理模块对YUV域的图像数据进行降噪、边缘增加、亮度/对比度/色度调整。
经过RGB域处理的图像数据经过色域转换得到YUV域的图像数据,再由YUV域处理模块对YUV域的图像数据进行降噪、边缘增加、亮度/对比度/色度调整。
可以理解,图像数据经过通用功能模块处理后即可输出到计算模块1034进行图像数据填充。其中,输出到计算模块1034的图像数据色域可以是RGB,也可以是YUV,还可以是灰度图像,本申请实施例不做限制。
可以理解,图8所示的ISP103的结构只是一种示例,本领域的技术人员应当理解,其可以包含更多或更少的模块,也可以组合或者拆分部分模块,本申请实施例不作限定。
另外,图9提供了一种执行本申请上述实施例提供的图像处理方法的电子设备900的具体结构示意图,例如,电子设备900可以为手机等。如图9所示,电子设备可以包括处理器910、无线通信模块920、移动通信模块930、电源模块940、音频模块950、接口模块960、摄像头970、存储器980,传感器模块990、按键901以及显示屏902等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备900的具体限定。在本申请另一些实施例中,电子设备900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器910可以包括图1中所示的片上系统1000。
电源模块940可以包括电源、电源管理部件等。电源可以为电池。电源管理部件用于管理电源的充电和电源向其他模块的供电。在一些实施例中,电源管理部件包括充电管理模块和电源管理模块。充电管理模块用于从充电器接收充电输入;电源管理模块用于连接电源,充电管理模块与处理器910。电源管理模块接收电源和/或充电管理模块的输入,为处理器910,显示屏902,摄像头970,及无线通信模块920等供电。
移动通信模块930可以包括但不限于天线、功率放大器、滤波器、LNA(Low noiseamplify,低噪声放大器)等。移动通信模块930可以提供应用在电子设备900上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块930可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块930还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,移动通信模块930的至少部分功能模块可以被设置于处理器910中。在一些实施例中,移动通信模块930至少部分功能模块可以与处理器910的至少部分模块被设置在同一个器件中。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivisionmultiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),无线局域网(wireless local areanetworks,WLAN),近距离无线通信技术(near field communication,NFC),调频(frequency modulation,FM)和/或field communication,NFC),红外技术(infrared,IR)技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidounavigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
无线通信模块920可以包括天线,并经由天线实现对电磁波的收发。无线通信模块920可以提供应用在电子设备900上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。电子设备900可以通过无线通信技术与网络以及其他设备进行通信。
在一些实施例中,电子设备900的移动通信模块930和无线通信模块920也可以位于同一模块中。
显示屏902用于显示人机交互界面、图像、视频等。显示屏902包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organiclight-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flexlight-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
传感器模块990可以包括接近光传感器、压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
音频模块950用于将数字音频信息转换成模拟音频信号输出,或者将模拟音频输入转换为数字音频信号。音频模块950还可以用于对音频信号编码和解码。在一些实施例中,音频模块950可以设置于处理器910中,或将音频模块950的部分功能模块设置于处理器910中。在一些实施例中,音频模块950可以包括扬声器、听筒、麦克风以及耳机接口。
摄像头970用于捕获静态图像或视频,可以包括上述实施例提及的镜头和图像传感器;物体通过镜头生成光学图像投射到图像传感器。图像传感器把光信号转换成电信号,形成RAW格式的图像数据并传递给片上系统1000的ISP103中。
接口模块960包括外部存储器接口、通用串行总线(universal serial bus,USB)接口及用户标识模块(subscriber identification module,SIM)卡接口等。其中外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备900的存储能力。外部存储卡通过外部存储器接口与处理器910通信,实现数据存储功能。通用串行总线接口用于电子设备900和其他电子设备进行通信。用户标识模块卡接口用于与安装至电子设备900的SIM卡进行通信,例如读取SIM卡中存储的电话号码,或将电话号码写入SIM卡中。
在一些实施例中,电子设备900还包括按键901、马达以及指示器等。其中,按键901可以包括音量键、开/关机键等。马达用于使电子设备900产生振动效果,例如在用户的电子设备900被呼叫的时候产生振动,以提示用户接听电子设备900来电。指示器可以包括激光指示器、射频指示器、LED指示器等。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如,计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (8)
1.一种图像处理方法,用于电子设备,其特征在于,所述电子设备包括第一处理器、第二处理器和中央处理器;并且
所述方法包括:
所述第一处理器获取第一图像数据;
所述第一处理器根据所述第一图像数据获取图像预处理所需的目标参数;所述目标参数包括平均值和/或方差值;
所述第一处理器不通过所述中央处理器,直接向所述第二处理器发送所述第一图像数据及所述目标参数;
其中,所述第一处理器为图像信号处理器;所述第二处理器为神经网络模型处理器,所述第二处理器用于基于所述第一图像数据及所述目标参数进行图像零均值化、深度学习模型推理。
2.根据权利要求1所述的图像处理方法,其特征在于,所述第一图像数据包括图像中每个像素点的灰度值的统计数据。
3.根据权利要求2所述的图像处理方法,其特征在于,所述第一处理器根据所述第一图像数据获取图像预处理所需的平均值,包括:
所述第一处理器将所述第一图像数据分为多个第一图像子区域数据;
所述第一处理器根据每个第一图像子区域数据获取每个第一图像子区域数据的直方图;
所述第一处理器根据所述每个第一图像子区域数据的直方图获取第一图像数据的直方图;
所述第一处理器根据所述第一图像数据的直方图获取所述第一图像数据的平均值。
4.根据权利要求2所述的图像处理方法,其特征在于,所述第一处理器根据所述第一图像数据获取图像预处理所需的方差值,包括:
所述第一处理器根据所述第一图像数据获取所述第一图像数据的第N-1帧的平均值;N为正整数;
所述第一处理器将所述第一图像数据的每个数据减去所述第一图像数据的第N-1帧的平均值的差值的平方作为第二图像数据;
所述第一处理器将所述第二图像数据分为多个第二图像子区域数据;
所述第一处理器根据每个第二图像子区域数据获取每个第二图像子区域数据的直方图;
所述第一处理器根据每个第二图像子区域数据的直方图获取第二图像数据的直方图;
所述第一处理器根据所述第二图像数据的直方图获取所述第二图像数据的第N帧的方差值。
5.一种电子设备,其特征在于,包括:第一处理器和第二处理器,用于执行权利要求1至4任一项所述的图像处理方法。
6.根据权利要求5所述的电子设备,其特征在于,所述电子设备还包括总线;
所述第一处理器和第二处理器通过所述总线进行耦接。
7.一种片上系统,其特征在于,包括:第一处理器和第二处理器,用于执行权利要求1至4任一项所述的图像处理方法。
8.一种机器可读介质,其特征在于,所述机器可读介质上存储有指令,该指令在机器上执行时使机器执行权利要求1至4中任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110684925.2A CN113421209B (zh) | 2021-06-21 | 2021-06-21 | 图像处理方法、片上系统、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110684925.2A CN113421209B (zh) | 2021-06-21 | 2021-06-21 | 图像处理方法、片上系统、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113421209A CN113421209A (zh) | 2021-09-21 |
CN113421209B true CN113421209B (zh) | 2022-12-30 |
Family
ID=77789678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110684925.2A Active CN113421209B (zh) | 2021-06-21 | 2021-06-21 | 图像处理方法、片上系统、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113421209B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105612554A (zh) * | 2013-10-11 | 2016-05-25 | 冒纳凯阿技术公司 | 用于表征通过视频医疗设备获取的图像的方法 |
CN106529469A (zh) * | 2016-11-08 | 2017-03-22 | 华北水利水电大学 | 基于自适应坡度的无人机载LiDAR点云滤波方法 |
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
CN110300989A (zh) * | 2017-05-15 | 2019-10-01 | 谷歌有限责任公司 | 可配置并且可编程的图像处理器单元 |
CN110785804A (zh) * | 2017-06-27 | 2020-02-11 | 株式会社半导体能源研究所 | 显示系统及数据处理方法 |
CN111338695A (zh) * | 2018-12-19 | 2020-06-26 | 中科寒武纪科技股份有限公司 | 基于流水线技术的数据处理方法及相关产品 |
CN111739110A (zh) * | 2020-08-07 | 2020-10-02 | 北京美摄网络科技有限公司 | 一种图像过暗或过曝检测方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11367163B2 (en) * | 2019-05-31 | 2022-06-21 | Apple Inc. | Enhanced image processing techniques for deep neural networks |
CN111260593B (zh) * | 2020-01-14 | 2023-03-14 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN111985635A (zh) * | 2020-09-02 | 2020-11-24 | 北京小米松果电子有限公司 | 一种加速神经网络推理处理的方法、装置及介质 |
CN112927181B (zh) * | 2020-11-18 | 2022-11-18 | 珠海市杰理科技股份有限公司 | 图像亮度调节方法及装置、图像采集设备、存储介质 |
-
2021
- 2021-06-21 CN CN202110684925.2A patent/CN113421209B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105612554A (zh) * | 2013-10-11 | 2016-05-25 | 冒纳凯阿技术公司 | 用于表征通过视频医疗设备获取的图像的方法 |
CN106529469A (zh) * | 2016-11-08 | 2017-03-22 | 华北水利水电大学 | 基于自适应坡度的无人机载LiDAR点云滤波方法 |
CN110300989A (zh) * | 2017-05-15 | 2019-10-01 | 谷歌有限责任公司 | 可配置并且可编程的图像处理器单元 |
CN110785804A (zh) * | 2017-06-27 | 2020-02-11 | 株式会社半导体能源研究所 | 显示系统及数据处理方法 |
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
CN111338695A (zh) * | 2018-12-19 | 2020-06-26 | 中科寒武纪科技股份有限公司 | 基于流水线技术的数据处理方法及相关产品 |
CN111739110A (zh) * | 2020-08-07 | 2020-10-02 | 北京美摄网络科技有限公司 | 一种图像过暗或过曝检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113421209A (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3951574A1 (en) | Image processing method and apparatus, and device | |
CN111552451B (zh) | 显示控制方法及装置、计算机可读介质及终端设备 | |
WO2019072057A1 (zh) | 一种图像信号处理方法、装置及设备 | |
EP4036854A1 (en) | Image processing method and apparatus, and electronic device | |
EP4231147A1 (en) | Drawing command processing method and related device therefor | |
EP4280586A1 (en) | Point light source image detection method and electronic device | |
CN113436576B (zh) | 应用于二维码扫描的oled显示屏调光方法及装置 | |
WO2021217367A1 (zh) | 一种开启应用程序的方法、装置及终端 | |
EP4328852A1 (en) | Method for expanding dynamic range of image and electronic device | |
CN114422682A (zh) | 拍摄方法、电子设备和可读存储介质 | |
US20240046604A1 (en) | Image processing method and apparatus, and electronic device | |
EP4181016A1 (en) | Image processing method, electronic device, image processing system and chip system | |
CN116315667A (zh) | 数据传输方法、装置、设备及存储介质 | |
CN113421209B (zh) | 图像处理方法、片上系统、电子设备和介质 | |
CN112956240B (zh) | 天线切换方法及装置 | |
US12008761B2 (en) | Image processing method and apparatus, and device | |
CN116074624B (zh) | 一种对焦方法和装置 | |
CN116896626B (zh) | 视频运动模糊程度的检测方法和装置 | |
EP4262227A1 (en) | Exposure control method and electronic device | |
CN115760652B (zh) | 扩展图像动态范围的方法和电子设备 | |
CN115705663B (zh) | 图像处理方法与电子设备 | |
CN116717486B (zh) | 调整风扇转速的方法、装置、电子设备及可读存储介质 | |
US20240176480A1 (en) | Screenshot method, electronic device, and storage medium | |
CN115734323B (zh) | 功耗优化方法和装置 | |
US20240143686A1 (en) | Web page display method, apparatus, and system |
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 |