CN117176933B - 一种图像信号处理方法及装置、电子设备和存储介质 - Google Patents

一种图像信号处理方法及装置、电子设备和存储介质 Download PDF

Info

Publication number
CN117176933B
CN117176933B CN202311451237.7A CN202311451237A CN117176933B CN 117176933 B CN117176933 B CN 117176933B CN 202311451237 A CN202311451237 A CN 202311451237A CN 117176933 B CN117176933 B CN 117176933B
Authority
CN
China
Prior art keywords
instruction
firmware
isp
information
client
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
CN202311451237.7A
Other languages
English (en)
Other versions
CN117176933A (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.)
Moore Threads Technology Co Ltd
Original Assignee
Moore Threads Technology 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 Moore Threads Technology Co Ltd filed Critical Moore Threads Technology Co Ltd
Priority to CN202311451237.7A priority Critical patent/CN117176933B/zh
Publication of CN117176933A publication Critical patent/CN117176933A/zh
Application granted granted Critical
Publication of CN117176933B publication Critical patent/CN117176933B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本公开涉及图像信号处理领域,尤其涉及一种图像信号处理方法及装置、电子设备和存储介质。该方法包括:确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。本公开实施例无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。

Description

一种图像信号处理方法及装置、电子设备和存储介质
技术领域
本公开涉及图像信号处理领域,尤其涉及一种图像信号处理方法及装置、电子设备和存储介质。
背景技术
图像信号处理单元 (Image Signal Processor,ISP) 是视觉处理芯片的一个重要硬件模块,能够对光学传感器采集的原始图像进行调节,提高图像质量。图像调节工具一般使用客户-服务端架构,用户通过电脑客户端工具发送各种调节命令给ISP,以查询和/或修改服务端的硬件参数,进行图像质量的调节。
现有技术中,每个调节命令对应一个软件接口,由于ISP调节命令有将近300个,如果每个调节命令都以软件接口形式存在的话,软件代码量庞大,会给软件的开发和维护带来困难。
发明内容
有鉴于此,本公开提出了一种图像信号处理技术方案。
根据本公开的一方面,提供了一种图像信号处理方法,应用于客户端,包括:
确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:
提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,包括:
接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;
将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:
获取操作指令中的第二指令标识、待写入数据和固件可执行的数据格式,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
将所述待写入数据转换成固件可执行的数据格式;
向所述固件发送获取的第二指令标识和格式转换后的待写入数据。
在一种可能的实现方式中,所述确定用于指示固件执行操作的操作指令,包括:
接收用于指示固件执行操作的指令名称;
根据预存的对应关系,确定与所述指令名称对应的指示信息,作为操作指令;所述对应关系包括:指令名称和操作指令包含的指示信息之间的对应关系,所述指示信息包括第一指令标识或第二指令标识。
在一种可能的实现方式中,所述对应关系基于JSON文件中的结构体进行存储;
用于指示固件执行对ISP状态的读取操作的结构体中的指令参数包括:
指令名称;第一指令标识;待读取的数据的格式;对所述操作指令进行反馈的目标数据格式;
用于指示固件执行对ISP硬件参数的写操作的结构体中的数据包括:
指令名称;第二指令标识;固件可执行的数据格式;待写入数据;写入数据的生效时机;对所述操作指令进行反馈的目标数据格式。
根据本公开的一方面,提供了一种图像信号处理方法,应用于ISP固件,包括:
通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP状态的读取操作的情况下,所述基于所述指示信息执行操作,包括:
基于所述指示信息,读取所述指示信息指示的软件或硬件的状态参数;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:
向所述客户端发送读取的状态参数。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP硬件参数的写操作的情况下,所述基于所述指示信息执行操作,包括:
对所述指示信息所指示的ISP硬件执行参数写入操作;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:
在参数写入操作执行完成后,向所述客户端发送写入结果。
根据本公开的一方面,提供了一种图像信号处理装置,应用于客户端,包括:
操作指令确定单元,用于确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
指示信息发送单元,用于通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
响应信息接收单元,用于接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述指示信息发送单元,用于:
提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述响应信息接收单元,用于:
接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;
将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,指示信息发送单元,用于:
获取操作指令中的第二指令标识、待写入数据和固件可执行的数据格式,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
将所述待写入数据转换成固件可执行的数据格式;
向所述固件发送获取的第二指令标识和格式转换后的待写入数据。
在一种可能的实现方式中,操作指令确定单元,用于:
接收用于指示固件执行操作的指令名称;
根据预存的对应关系,确定与所述指令名称对应的指示信息,作为操作指令;所述对应关系包括:指令名称和操作指令包含的指示信息之间的对应关系,所述指示信息包括第一指令标识或第二指令标识。
在一种可能的实现方式中,所述对应关系基于JSON文件中的结构体进行存储;
用于指示固件执行对ISP状态的读取操作的结构体中的指令参数包括:
指令名称;第一指令标识;待读取的数据的格式;对所述操作指令进行反馈的目标数据格式;
用于指示固件执行对ISP硬件参数的写操作的结构体中的数据包括:
指令名称;第二指令标识;固件可执行的数据格式;待写入数据;写入数据的生效时机;对所述操作指令进行反馈的目标数据格式。
根据本公开的一方面,提供了一种图像信号处理装置,应用于ISP固件,包括:
指示信息接收单元,用于通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
操作执行单元,用于基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
响应信息发送单元,用于在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP状态的读取操作的情况下,所述操作执行单元,用于基于所述指示信息,读取所述指示信息指示的软件或硬件的状态参数;
响应信息发送单元,用于向所述客户端发送读取的状态参数。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP硬件参数的写操作的情况下,操作执行单元,用于对所述指示信息所指示的ISP硬件执行参数写入操作;
响应信息发送单元,用于在参数写入操作执行完成后,向所述客户端发送写入结果。
根据本公开的另一方面,提供了一种图像信号处理装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
在本公开实施例中,在客户端和固件之间预设用于指示固件执行操作的指示信息,具体可以预设IPS中的每一功能模块地址对应的指示信息,通过该对应关系,就能够确定需要执行操作的功能模块,进而实现对确定的功能模块的参数的写入和状态读取操作,然后通过预设端口将该指示信息发送给固件,固件即可根据该指示信息执行操作,即只需要一个预设的软件接口,就可以支持客户端对ISP固件进行多种操作的控制,无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出对原始图像经过图像信号处理单元处理的示意图。
图2示出根据本公开一实施例的图像信号处理方法的流程图。
图3示出根据本公开一实施例的图像信号处理方法的流程图。
图4示出根据本公开一实施例的状态参数读取过程的流程图。
图5示出根据本公开一实施例的硬件参数写入过程的流程图。
图6示出根据本公开一实施例的图像信号处理装置的框图。
图7示出根据本公开一实施例的图像信号处理装置的框图。
图8示出根据本公开实施例的一种电子设备的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
随着芯片性能和信道带宽的不断提升,数字图像信号的清晰度远超传统模拟信号所能达到的清晰度,再加上图像数字化本身具有的高抗干扰能力和高传输速度,使得数字图像信号在工作、生活中越来越重要。
通常,数字图像信号需要使用传感器进行识别,例如电荷耦合器件(ChargeCoupled Device,CCD)图像传感器和互补金属氧化物场效应管(Complementary MetalOxide Semiconductor,CMOS)图像传感器(CMOS Image Sensor,CIS)等传感器。目前,较为常用的是CMOS图像传感器。
然而,传感器直接获取的原始图像信号,存在噪声污染、色差等传感器本身难以解决的问题。由于图像信号处理涉及大量的数据和严格的实时性要求,所以ISP通常采用硬件方案实现,因此,可以设置独立的ISP芯片,或可在传感器上集成ISP系统,来增强图像质量、实时还原图像信号。图1示出对原始图像经过图像信号处理单元处理的示意图,图1中的左图为原始图像,图1中的右图为进行ISP处理后的图像,可以看出,图1中的右图更符合人眼感知的高质量图像。具体的,ISP使用流水线的结构,使输入图像信号通过各个功能模块的处理,输出处理好的图像。ISP流水线能够将图像从原始域(RAW域)转换到红绿蓝域(RGB域),再转换到亮度色度域(YUV域),即图像信号在ISP内部经历了两次颜色空间变换:在RGB插值(Bayer Demosaic)模块进行的从RAW域到RGB域的变换,和在颜色空间变换(ColorSpace Coversion,CSC)模块进行的从RGB域到YUV域的变换。其中,ISP在RAW域中执行操作的功能模块有:坏点校正 (Bad Point Correction,DPC)、黑电平校正 (Black LevelCorrection,BLC)、镜头阴影矫正 (Lens Shade Correction,LSC)、RAW域降噪(NoiseReduction for RAW,NR Raw)、自动白平衡增益(Automatic White Balance Gain,AWBGain);在RGB域中执行操作的功能模块有:伽玛校正(Gamma)和颜色校正矩阵(ColorCorrection Matrix,CCM);在YUV域中执行操作的功能模块有:颜色降噪(Noise Reductionfor Chroma,NR Chroma),色调和饱和度控制(Hue & Saturation Control,Hue &Saturation)、平台空域降噪(NR Luma)、边缘增强(Edge Enhance)、对比度和亮度控制(Contrast & Brightness Control,Contrast & Brightness)。图像数据经过YUV域后,再进行输出图像格式转换(Output Data Formatter)模块处理,输出实时图像,或进一步经过写入直接存储访问(DMA Writer)模块处理,写入存储缓冲器。
ISP中的功能模块众多,加上每个功能模块中有很多参数都需要根据主观或客观图像质量评估标准,以进行图像质量的调节,这样,ISP中的调节命令共计大约300个,如果每个命令都以软件接口的形式存在,会给软件的开发和维护带来巨大麻烦。而如果要添加或删除命令,还需要修改客户端代码,重新编译才能使用,进一步增加了软件开发人员的工作量、灵活性不足。
图2示出根据本公开一实施例的图像信号处理方法的流程图,该方法可以应用于客户端,客户端可运行于终端设备、服务器或者其他处理设备等。其中,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。
在一些可能的实现方式中,该图像信号处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
如图2所示,所述图像信号处理方法,应用于客户端,包括:
步骤S11,确定用于指示固件执行操作的操作指令;
所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
这里的固件可以是运行在ISP硬件上的软件,能够实现对ISP硬件逻辑的控制,从而对镜头和传感器进行相应控制,完成自动光圈、自动曝光、自动白平衡等图像信号处理功能。
固件能够对IPS处理单元执行硬件参数的写操作,以将硬件参数写入IPS的硬件中,完成对硬件逻辑的控制,IPS处理单元利用硬件参数修改后的硬件执行图像信号处理操作。此外,固件也能够执行对ISP状态的读取操作,以读取ISP的硬件参数或IPS硬件的运行状态参数。
这里的操作指令,可以是用于指示固件执行对ISP状态的读取操作的指令,也可以是用于指示固件执行对ISP硬件参数的写操作的指令。该指令可以是用户输入的指令,在一个示例中,用户可以通过终端窗口的命令行界面,以输入命令的方式输入指令;在另一个示例中,用户可以通过图形用户界面(Graphical User Interface,GUI),在图形用户界面中通过点击、选择等操作来输入指令,在该示例中,实际的指令可以是预先设置好的指令,由用户通过GUI界面的操作来触发指令的输入;在另一个示例中,可以是用户通过网络接口发送的命令,客户端通过网络接口基于某种协议来接收远程的指令,本公开对具体的输入指令的方式不做限定。
步骤S12,通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
这里的预设接口为客户端和固件之间约定的数据传输协议,通常支持多种请求方式,客户端可以根据预先约定的请求方式来调用该预设接口,将操作指令对应的指示信息通过该接口发送给固件。
在确定操作指令后,响应于该操作指令,可以确定出发送给固件的指示信息,该指示信息可以是操作指令携带的信息,或者是根据操作指令进一步确定的信息。指示信息为客户端和固件之间预设的用于指示固件执行操作的信息,即预先设定了指示信息和固件操作的对应关系,固件在接收到该指示信息后,能够根据预设的对应关系,来执行与指示信息相对应的操作。例如,根据指示信息,执行对ISP硬件参数的写操作,或者对ISP状态的读取操作,等等,具体可参见本公开提供的可能的实现方式,本公开对此不作限定。
步骤S13,接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。
固件在执行操作后,会返回响应信息给客户端,以将固件执行操作的结果返回。例如,对ISP硬件参数的写入结果,获取的ISP状态,等等。
客户端基于接收到的响应信息对操作指令进行反馈,在一个示例中,在操作指令是基于客户端输入的指令的情况下,可以通过客户端的显示界面对固件执行操作的结果进行显示;在另一个示例中,在操作指令是用户通过网络接口发送的命令的情况下,可以通过该网络接口返回固件执行操作给远端的客户端。此外,也还可以通过其它方式对操作指令进行反馈,本公开对此不作限定。
在本公开实施例中,确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。由此,在客户端和固件之间预设用于指示固件执行操作的指示信息,具体可以预设IPS中的每一功能模块地址对应的指示信息,通过该对应关系,就能够确定需要执行操作的功能模块,进而实现对确定的功能模块的参数的写入和状态读取操作,然后通过预设端口将该指示信息发送给固件,固件即可根据该指示信息执行操作,即只需要一个预设的软件接口,就可以支持客户端对ISP固件进行多种操作的控制,无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数。
指示信息具体可以包括操作指令中的第一指令标识,第一指令标识为客户端和固件之间预设的用于指示固件执行对ISP状态的读取操作的信息,在操作指令中携带第一指令标识的情况下,即用于指示固件执行对ISP状态的读取操作。
第一指令标识还用于指示待读取状态参数的功能模块(软件或硬件),IPS中有多个功能模块,因此,可以预先设定多个第一指令标识所对应的功能模块,以在接收到第一指令标识后,确定与第一执行标识对应的功能模块的状态参数。待读取状态参数的功能模块,为根据客户端的图像信号的显示需求,确定的可能需要调整参数的功能模块。针对IPS中的每一功能模块,均可以预设对应的第一指令标识。
IPS中的功能模块可以是软件也可以是硬件,因此,状态参数具体可以是软件的状态参数,也可以是硬件的状态参数,例如,可以是AWB GAin模块中的R、Gr、Gb、B四个通道的增益参数,对于同一图像信号的显示效果而言,根据经验或算法计算,可能需要对多个功能模块的参数进行修改,在一示例中,可以对IPS中的多个待修改的功能模块的参数的实时值进行读取,并根据读取到的数值,确定最终需要进行修改的功能模块。
客户端可以将第一指令标识通过网络端口发送给固件,固件根据第一指令标识确定对应的要查询的功能模块的参数,并查询得到该参数的参数值,并返回给客户端。
在本公开实施例中,通过提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数。由此,在客户端和固件之间预设第一指令标识与IPS中的功能模块(软件或硬件)之间的对应关系,具体可以预设IPS中的每一功能模块地址对应的第一指令标识,通过该对应关系,就能够确定需要获取状态参数的功能模块,进而实现确定的功能模块的状态参数的读取操作,固件可以在接收到第一指令标识后,根据预先设定的第一指令标识对应的功能模块,来读取对应的状态参数,而无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,包括:接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。
固件在从ISP中查询到状态参数后,会通过某种数据格式将状态参数值返回给客户端,在一个示例中,固件可以将状态参数值以二进制的形式返回给客户端。而为了便于客户端对操作指令进行反馈,可以对状态参数进行格式转换。
具体地,操作指令中可以携带需要转换的目标数据格式,目标数据格式为操作指令中指示的客户端反馈状态数据时的数据格式,客户端在从操作指令中获取到目标数据格式后,可以将状态参数转换为目标数据格式,然后基于格式转换后的状态参数对操作指令进行反馈。在一个示例中,在目标数据格式为整数的情况下,可以将固件发送的二进制形式的状态参数转换为整数,并打印后在客户端的界面中进行显示。
在本公开实施例中,通过接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;然后将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。由此,通过在操作指令中携带客户端反馈数据时的目标数据格式,以指示客户端能够基于目标数据格式对状态参数进行转换,并对操作指令进行反馈,无需在代码中维护每个命令各自的软件接口来定义目标数据格式,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:获取操作指令中的第二指令标识、待写入数据和固件可执行的数据格式,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;将所述待写入数据转换成固件可执行的数据格式;向所述固件发送获取的第二指令标识和格式转换后的待写入数据。
指示信息具体可以是操作指令中的第二指令标识,第二指令标识为客户端和固件之间预设的用于指示固件执行对ISP硬件参数的写操作的信息,在操作指令中携带第二指令标识的情况下,即用于指示固件执行对ISP硬件参数的写操作。
IPS中有多个功能模块,因此,可以预先设定多个第二指令标识所对应的功能模块,以在接收到第二指令标识后,确定与第二执行标识对应的功能模块的状态参数。待写入参数的功能模块,为根据客户端的图像信号的显示需求,确定可能需要调整参数的功能模块。
IPS系统在接收感光元件采集的原始信号数据后,会根据客户端的要求(设定的硬件参数)进行原始信号数据的后期处理,并将处理后的图像推送给前端进行显示,如图像的显示效果不符合预期,则可以通过客户端对IPS系统的硬件参数进行修改。
在一示例中,可以根据客户端的图像信号的显示效果,确定需要进行修改的功能模块(即待修改的功能模块),待修改的功能模块中需要进行修改的参数即为待修改的参数。显示效果可以为客户端中图像信号的色调、饱和度、坏点、对比度等信息,由于传感器采集的原始图像在客户端的显示效果往往并不符合人眼感知习惯,使得人眼从原始图像中获得的信息较少,而通过对图像信号进行调整,则可以使客户端显示的图像信号的显示效果更符合人眼感知需求,以便从调整后的图像信号中轻松获取更加丰富的图像数据。进一步的,还可以确定待修改的功能模块中具体要修改的参数,即待修改参数。
在一示例中,可以基于经验来确定待修改的功能模块及待修改参数,或者基于算法(例如神经网络),根据图像信号的显示效果,进行待修改的功能模块及待修改参数的确定,提高待修改的功能模块的确定速度和准确度,进而提高图像信号处理的效率。本公开对确定待修改的功能模块的方法不作具体限定,可以根据实际情况进行选择。
在操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,操作指令中会包含第二指令标识、待写入参数和固件可执行的数据格式,其中,第二指令标识用于指示待进行参数写入的硬件功能模块,例如,可以用AWG Gain这一第二指令标识来指示对AWBGAin模块中的参数进行写入操作;待写入参数为具体要写入的参数值;固件可执行的数据格式为固件可以写入ISP硬件的参数格式,示例性的,固件可执行的数据格式可以是数据的个数和类型,例如,针对白平衡增益模块,可以设置对该功能模块的写入操作的数据需要是4个整数型参数,具体的,每个参数代表的具体意义,也可以事先设定。
客户端根据第二指令标识中的固件可执行的数据格式,将待写入数据转换成该格式,进一步的,固件可执行的数据格式还可以是固件所需的待写入数据的参数数量等格式,在输入的待写入数据由于参数数量不符合固件可执行的数据格式而无法转换时,可以发出格式不符的提醒,要求用户重新输入或按照约定取值。示例性的,当输入的数据个数少于数据格式中设定的个数时,可以在操作界面指示客户重新输入;当输入的数据个数多于数据格式中设定的个数时,可以按照输入的顺序取设定个数的数据。本公开对数据格式的具体格式不作限定,可以根据实际情况进行选择。通过对待写入数据的格式进行限定,在输入的待写入数据不符合该格式规定时,发出提醒,能够减少填写数据错误的情况,提高客户端输入待写入数据的准确度。
在本公开实施例中,第二指令标识中可以携带固件可执行的数据格式,客户端可以直接根据该数据格式将待写入数据转换成固件可执行的数据格式,再发送给固件,固件即可将待写入数据写入第二指令标识对应的硬件中,完成硬件参数的写入。由此,在客户端和固件之间预设第二指令标识与IPS中的功能模块之间的对应关系,具体可以预设IPS中的每一功能模块地址对应的第一指令标识,通过该对应关系,就能够确定需要写入硬件参数的功能模块,进而对确定的功能模块的执行硬件参数的读取操作,固件可以在确定第二指令标识后,根据预先设定的第二指令标识对应的功能模块,将格式转换后的待写入数据写入硬件中,而无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
在写入操作完成后,可以接收固件返回的响应信息,并基于响应信息对操作指令进行反馈,该响应信息可以用于表征写入操作的结果,例如,可以是写入成功,或者写入失败,或者也可以是写入操作完成后,功能模块中的具体参数值。
在一种可能的实现方式中,所述确定用于指示固件执行操作的操作指令,包括:接收用于指示固件执行操作的指令名称;根据预存的对应关系,确定与所述指令名称对应的指示信息,作为操作指令;所述对应关系包括:指令名称和指示信息之间的对应关系,所述指示信息包括第一指令标识或第二指令标识。
在该实现方式中,可以预先存储指令名称和操作指令包含的指示信息之间的对应关系,基于该对应关系,可以实现通过输入指令名称快速输入操作指令,提高了指令的输入效率。该对应关系可以存储于可扩展标记语言(eXtensible Markup Language,XML)、超文本标记语言(HyperText Markup Language,HTML)以及脚本语言的对象表示(JavaScriptObject Notation,JSON)等格式的文件中。
在本公开实施例中,通过预存对应关系将操作命令及其参数按照某种规则进行描述,例如单独存储到JSON、XML、HTML等文件中,从而使得命令和代码分离出来,灵活性大大增强。当增删命令时,无需在软件代码中重新定义接口函数,并从头开始写代码来实现它,只需要修改文件中预存的对应关系即可,所以软件代码开发和维护工作量大大减小。
下面,以对应关系基于JSON文件中的结构体进行存储为例,对操作指令中的参数进行详细描述。
用于指示固件执行对ISP状态的读取操作的结构体中的指令参数包括:指令名称;第一指令标识;待读取的数据的格式;对所述操作指令进行反馈的目标数据格式。
其中,指令名称用于标识不同的指令
第一指令标识为客户端和固件之间预设的用于指示固件执行对ISP状态的读取操作的信息;
待读取的数据的格式是对该命令读取的状态数据或写入ISP中数据的说明,例如,可以用“I”表示将要从ISP中读取/写入一个整数;“4I”表示4个整数;“f”则表示浮点数。
目标数据格式为操作指令中指示的客户端反馈状态数据时的数据格式,客户端在从操作指令中获取到目标数据格式后,可以将状态参数转换为目标数据格式,然后基于格式转换后的状态参数对操作指令进行反馈。
用于指示固件执行对ISP硬件参数的写操作的结构体中的数据包括:指令名称;第二指令标识;固件可执行的数据格式;待写入数据;写入数据的生效时机;对所述操作指令进行反馈的目标数据格式。
其中,指令名称用于标识不同的指令,每一个指令可以通过一个结构体来实现,指令名称可以作为结构体的名词,以对JSON文件中不同的结构体进行区分;
第二指令标识为客户端和固件之间预设的用于指示固件执行对ISP硬件参数的写操作的信息;
固件可执行的数据格式为固件可以写入ISP硬件的参数格式,示例性的,固件可执行的数据格式可以是数据的个数和类型,例如,针对白平衡增益模块,可以设置对该功能模块的写入操作的数据需要是4个整数型参数;
待写入数据客户端指示固件写入ISP硬件的具体参数的值;
写入数据的生效时机,具体可以是某个时刻,或者也可以是在某个条件下生效,例如,在下一次执行图像信号处理任务时生效。在一示例中,可以规定直接将待写入数据写入到ISP中对应的功能模块中,即,写入立即生效;还可以规定待写入数据间接写入到ISP中对应的功能模块中,即,第一预设数值不立即生效。进一步的,还可以在结构体中对间接生效的时间进行进一步的细化,本公开对此不作详述,可以根据实际情况进行选择。
对操作指令进行反馈的目标数据格式,约定了客户端在反馈写入结果时的数据格式。
图3示出根据本公开一实施例的图像信号处理方法的流程图,该方法应用于ISP固件,如图3所示,该方法包括:
步骤S21,通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
步骤S22,基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
步骤S23,在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
具体的,固件在接收到客户端发送的指示信息后,能够根据指示信息执行相应的操作,在一个示例中,固件可以根据指示信息中的第一指令标识,执行对ISP状态的读取操作,以读取ISP的硬件参数或IPS硬件的运行状态参数。在一个示例中,固件可以根据指示信息中的第二指令标识,对IPS处理单元执行硬件参数的写操作,以将硬件参数写入IPS的硬件中,完成对硬件逻辑的控制,IPS处理单元利用硬件参数修改后的硬件执行图像信号处理操作。
固件在执行完获取操作后,可以将获取到的状态参数返回给客户端,以便客户端对操作指令进行反馈;固件在执行完写入操作后,可以将写入操作的结果(写入成功/失败)返回给客户端,以便客户端对操作指令进行反馈。
固件可以根据指示信息中的指令标识(第一指令标识或第二指令标识),确定待修改的功能模块在IPS中的地址,进而对功能模块进行状态参数的获取或硬件参数的写入,具体可以将IPS中各个功能模块的地址和指令标识的对应关系,采用哈希映射的方式存储在固件中,固件通过指令标识从哈希表中确定功能模块的地址,该过程能够减少固件匹配到功能模块的时间,进而提高图像信号处理的速度。
在本公开实施例中,固件通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;并基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;在操作执行完成后,向所述客户端发送表征操作结果的响应信息。由此,在客户端和固件之间预设用于指示固件执行操作的指示信息,具体可以预设IPS中的每一功能模块地址对应的指示信息,通过该对应关系,就能够确定需要执行操作的功能模块,进而实现对确定的功能模块的参数的写入和状态读取操作,然后固件通过预设端口接收该指示信息,即可根据该指示信息执行操作,即只需要一个预设的软件接口,就可以支持客户端对ISP固件进行多种操作的控制,无需在代码中维护每个命令各自的软件接口,软件代码开发和维护的工作量大大减小,极大地方便了软件的开发和维护。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP状态的读取操作的情况下,所述基于所述指示信息执行操作,包括:基于所述指示信息,读取所述指示信息指示的软件或硬件的状态参数;在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:向所述客户端发送读取的状态参数。
固件基于指示信息中的第一指令标识,能够确定需要读取的功能模块(软件或硬件),进而读取该功能模块的状态参数,然后将读取的状态参数发送给客户端。
在一种可能的实现的方式中,在所述指示信息指示固件执行对ISP硬件参数的写操作的情况下,所述基于所述指示信息执行操作,包括:对所述指示信息所指示的ISP硬件执行参数写入操作;在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:在参数写入操作执行完成后,向所述客户端发送写入结果。
固件基于指示信息中的第二指令标识,能够确定需要写入参数的功能模块(硬件),进而向该硬件写入硬件参数,然后将写入结果发送给客户端。
应用场景示例
人类视觉系统对物体的观察不受光源影响,即具有颜色恒常性特点。但是传感器在不同光线下,物体呈现的颜色不同,如在晴朗天空下会偏蓝,在烛光下会偏红等。
为了消除光源对于图像传感器成像的影响,模拟人类视觉系统的颜色恒常性,本公开实施例提出了一种图像信号处理方法,这一方法可以对图像信号处理单元 (ImageSignal Processor,ISP)中的自动白平衡增益(AWB Gain)模块的参数进行读取和调整,图4示出根据本公开一实施例的状态参数读取过程的流程图,如图4所示,对AWB Gain模块进行参数读取的过程包括:
1.客户端接收到用户输入的第一指令名称,基于第一指令名称,从JSON文件中匹配到用于获取AWB Gain模块的状态参数的第一结构体,该第一结构体中包含第一指令标识,用于指示需要获取AWB Gain模块的状态参数;待读取的AWB Gain模块的数据格式;对操作指令进行反馈的目标数据格式。
2.客户端将获取到的第一结构体中的指示信息发送给固件,固件基于第一指令标识确定要读取状态参数的功能模块为AWB Gain模块,进而获取该模块的状态参数,并返回给客户端。具体的,客户端通过网络端口(TCP/IP协议)将指示信息发送给固件。
3.固件接收到指示信息,返回AWB Gain模块的第一状态值。
4.客户端在接收到状态参数值后,根据第一结构体中规定的目标数据格式,将二进制形式的第一状态值转换成十进制形式的第二状态值,并显示在客户端。
图5示出根据本公开一实施例的硬件参数写入过程的流程图,如图5所示,对AWBGain模块进行参数写入的过程包括:
1.客户端接收到用户输入的第二指令名称,基于第二指令名称,从JSON文件中匹配到用于写入AWB Gain模块的参数的第二结构体,该第二结构体中包含第二指令标识,用于指示需要向AWB Gain模块写入硬件参数;固件可执行的数据格式;待写入数据;写入数据的生效时机;对操作指令进行反馈的目标数据格式。
2.客户端根据固件可执行的数据格式,将十进制形式的待写入数据转换成二进制形式。
3.客户端将第二指令标识和格式转换后的待写入数据通过网络端口(TCP/IP协议)发送给固件。固件根据第二指令标识确定待写入参数的模块为AWB Gain模块,并将待写入数据写入AWB Gain模块中。
4.固件在写入硬件参数后,返回AWB Gain模块的参数写入结果给客户端。
需要说明的是,本公开实施例的图像信号处理方法不限于应用在AWB Gain模块的状态参数的获取和参数调整,可以应用于ISP中任意功能模块的参数调整,本公开对此不作限定。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开还提供了图像信号处理装置电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种图像信号处理方法,相应技术方案和描述可参见方法部分的相应记载,不再赘述。
根据本公开的一方面,提供了一种图像信号处理装置,图6示出根据本公开一实施例的图像信号处理装置的框图。该装置应用于客户端,如图6所示,该装置60包括:
操作指令确定单元61,用于确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
指示信息发送单元62,用于通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
指示信息发送单元63,用于接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述指示信息发送单元,用于:
提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述响应信息接收单元,用于:
接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;
将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。
在一种可能的实现方式中,在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,指示信息发送单元,用于:
获取操作指令中的第二指令标识、待写入数据和固件可执行的数据格式,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
将所述待写入数据转换成固件可执行的数据格式;
向所述固件发送获取的第二指令标识和格式转换后的待写入数据。
在一种可能的实现方式中,操作指令确定单元,用于:
接收用于指示固件执行操作的指令名称;
根据预存的对应关系,确定与所述指令名称对应的指示信息,作为操作指令;所述对应关系包括:指令名称和操作指令包含的指示信息之间的对应关系,所述指示信息包括第一指令标识或第二指令标识。
在一种可能的实现方式中,所述对应关系基于JSON文件中的结构体进行存储;
用于指示固件执行对ISP状态的读取操作的结构体中的指令参数包括:
指令名称;第一指令标识;待读取的数据的格式;对所述操作指令进行反馈的目标数据格式;
用于指示固件执行对ISP硬件参数的写操作的结构体中的数据包括:
指令名称;第二指令标识;固件可执行的数据格式;待写入数据;写入数据的生效时机;对所述操作指令进行反馈的目标数据格式。
根据本公开的一方面,提供了一种图像信号处理装置,图7示出根据本公开一实施例的图像信号处理装置的框图。该装置应用于ISP固件,如图7所示,该装置70包括:
指示信息接收单元71,用于通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
操作执行单元72,用于基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
响应信息发送单元73,用于在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP状态的读取操作的情况下,所述操作执行单元,用于基于所述指示信息,读取所述指示信息指示的软件或硬件的状态参数;
响应信息发送单元,用于向所述客户端发送读取的状态参数。
在一种可能的实现方式中,在所述指示信息指示固件执行对ISP硬件参数的写操作的情况下,操作执行单元,用于对所述指示信息所指示的ISP硬件执行参数写入操作;
响应信息发送单元,用于在参数写入操作执行完成后,向所述客户端发送写入结果。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
图8示出根据本公开实施例的一种电子设备1900的框图。例如,装置1900可以被提供为一服务器或终端设备。参照图8,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出接口1958(I/O接口)。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM, LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (12)

1.一种图像信号处理方法,其特征在于,应用于客户端,包括:
确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果;
其中,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数;或,
在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:获取操作指令中的第二指令标识、待写入数据,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;向所述固件发送获取的第二指令标识和待写入数据。
2.根据权利要求1所述的方法,其特征在于,在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,包括:
接收固件返回的状态参数,并从所述操作指令中获取预设的目标数据格式;
将所述状态参数转换为所述目标数据格式,并基于格式转换后的状态参数对所述操作指令进行反馈。
3.根据权利要求1所述的方法,其特征在于,在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,所述通过预设接口向所述固件发送所述操作指令对应的指示信息,包括:
获取操作指令中的第二指令标识、待写入数据和固件可执行的数据格式,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
将所述待写入数据转换成固件可执行的数据格式;
向所述固件发送获取的第二指令标识和格式转换后的待写入数据。
4.根据权利要求1所述的方法,其特征在于,所述确定用于指示固件执行操作的操作指令,包括:
接收用于指示固件执行操作的指令名称;
根据预存的对应关系,确定与所述指令名称对应的指示信息,作为操作指令;所述对应关系包括:指令名称和操作指令包含的指示信息之间的对应关系,所述指示信息包括第一指令标识或第二指令标识。
5.根据权利要求4所述的方法,其特征在于,所述对应关系基于JSON文件中的结构体进行存储;
用于指示固件执行对ISP状态的读取操作的结构体中的指令参数包括:
指令名称;第一指令标识;待读取的数据的格式;对所述操作指令进行反馈的目标数据格式;
用于指示固件执行对ISP硬件参数的写操作的结构体中的数据包括:
指令名称;第二指令标识;固件可执行的数据格式;待写入数据;写入数据的生效时机;对所述操作指令进行反馈的目标数据格式。
6.一种图像信号处理方法,其特征在于,应用于ISP固件,包括:
通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息,所述指示信息包括第一指令标识或第二指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
7.根据权利要求6所述的方法,其特征在于,在所述指示信息指示固件执行对ISP状态的读取操作的情况下,所述基于所述指示信息执行操作,包括:
基于所述指示信息,读取所述指示信息指示的软件或硬件的状态参数;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:
向所述客户端发送读取的状态参数。
8.根据权利要求6所述的方法,其特征在于,在所述指示信息指示固件执行对ISP硬件参数的写操作的情况下,所述基于所述指示信息执行操作,包括:
对所述指示信息所指示的ISP硬件执行参数写入操作;
在操作执行完成后,向所述客户端发送表征操作结果的响应信息,包括:
在参数写入操作执行完成后,向所述客户端发送写入结果。
9.一种图像信号处理装置,其特征在于,应用于客户端,包括:
操作指令确定单元,用于确定用于指示固件执行操作的操作指令,所述操作包括:固件对图像信号处理单元ISP硬件参数的写操作或对ISP状态的读取操作;
指示信息发送单元,用于通过预设接口向所述固件发送所述操作指令对应的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息;
响应信息接收单元,用于接收所述固件返回的响应信息,并基于所述响应信息对所述操作指令进行反馈,所述响应信息表征固件执行操作的结果;
在所述操作指令用于指示固件执行对ISP状态的读取操作的情况下,所述指示信息发送单元,用于:提取操作指令中的第一指令标识,并向所述固件发送所述第一指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数;或,
在所述操作指令用于指示固件执行对ISP硬件参数的写操作的情况下,指示信息发送单元,用于:获取操作指令中的第二指令标识、待写入数据,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;向所述固件发送获取的第二指令标识和待写入数据。
10.一种图像信号处理装置,其特征在于,应用于ISP固件,包括:
指示信息接收单元,用于通过预设接口接收客户端发送的指示信息,所述指示信息为客户端和固件之间预设的用于指示固件执行操作的信息,所述指示信息包括第一指令标识或第二指令标识,所述第一指令标识用于指示固件读取软件或硬件的状态参数,所述第二指令标识用于指示固件对相应的ISP硬件执行参数写入操作;
操作执行单元,用于基于所述指示信息执行操作,所述操作包括:固件对ISP硬件参数的写操作或对ISP状态的读取操作;
响应信息发送单元,用于在操作执行完成后,向所述客户端发送表征操作结果的响应信息。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在执行所述存储器存储的指令时,实现权利要求1至8中任意一项所述的方法。
12.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至8中任意一项所述的方法。
CN202311451237.7A 2023-11-02 2023-11-02 一种图像信号处理方法及装置、电子设备和存储介质 Active CN117176933B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311451237.7A CN117176933B (zh) 2023-11-02 2023-11-02 一种图像信号处理方法及装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311451237.7A CN117176933B (zh) 2023-11-02 2023-11-02 一种图像信号处理方法及装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN117176933A CN117176933A (zh) 2023-12-05
CN117176933B true CN117176933B (zh) 2024-01-23

Family

ID=88947290

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311451237.7A Active CN117176933B (zh) 2023-11-02 2023-11-02 一种图像信号处理方法及装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN117176933B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547301A (zh) * 2010-09-30 2012-07-04 苹果公司 使用图像信号处理器处理图像数据的系统和方法
CN110300989A (zh) * 2017-05-15 2019-10-01 谷歌有限责任公司 可配置并且可编程的图像处理器单元
CN110445977A (zh) * 2018-05-04 2019-11-12 安凯(广州)微电子技术有限公司 图像信号处理器的参数设置方法及终端设备
CN111240965A (zh) * 2020-01-03 2020-06-05 珠海亿智电子科技有限公司 Isp实时调试方法及其系统
CN113259604A (zh) * 2021-05-14 2021-08-13 厦门壹普智慧科技有限公司 一种智能感知图像获取装置及方法
WO2022046147A1 (en) * 2020-08-24 2022-03-03 Google Llc Lookup table processing and programming for camera image signal processing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547301A (zh) * 2010-09-30 2012-07-04 苹果公司 使用图像信号处理器处理图像数据的系统和方法
CN110300989A (zh) * 2017-05-15 2019-10-01 谷歌有限责任公司 可配置并且可编程的图像处理器单元
CN110445977A (zh) * 2018-05-04 2019-11-12 安凯(广州)微电子技术有限公司 图像信号处理器的参数设置方法及终端设备
CN111240965A (zh) * 2020-01-03 2020-06-05 珠海亿智电子科技有限公司 Isp实时调试方法及其系统
WO2022046147A1 (en) * 2020-08-24 2022-03-03 Google Llc Lookup table processing and programming for camera image signal processing
CN113259604A (zh) * 2021-05-14 2021-08-13 厦门壹普智慧科技有限公司 一种智能感知图像获取装置及方法

Also Published As

Publication number Publication date
CN117176933A (zh) 2023-12-05

Similar Documents

Publication Publication Date Title
JP4854748B2 (ja) 現像サーバおよび現像方法
WO2019011195A1 (en) CONTROL METHOD, TERMINAL EQUIPMENT, AND COMPUTER-READABLE NON-TRANSITORY STORAGE MEDIUM FOR AUTOMATIC EXPOSURE CONTROL OF A REGION OF INTEREST
CN111510698A (zh) 图像处理方法、装置、存储介质及移动终端
KR20120118383A (ko) 이미지 보정 장치 및 이를 이용하는 이미지 처리 장치와 그 방법들
CN101047773B (zh) 成像设备、视频信号处理电路和方法
US10600170B2 (en) Method and device for producing a digital image
US20220006982A1 (en) Color adjustment method, color adjustment device, electronic device and computer-readable storage medium
US10152945B2 (en) Image processing apparatus capable of performing conversion on input image data for wide dynamic range
CN101686321A (zh) 用于减少图像数据中的噪声的方法和系统
CN110807735A (zh) 图像处理方法、装置、终端设备及计算机可读存储介质
CN113781321B (zh) 图像高亮区域的信息补偿方法、装置、设备及存储介质
CN114998122A (zh) 一种低照度图像增强方法
JP4752421B2 (ja) 画像レタッチ方法、画像レタッチ装置及び画像レタッチプログラム
US9894315B2 (en) Image capturing apparatus, image processing apparatus and method, image processing system, and control method for image capturing apparatus
CN105654925A (zh) 高动态范围图像处理方法及系统
CN117176933B (zh) 一种图像信号处理方法及装置、电子设备和存储介质
KR102164998B1 (ko) 디지털 영상 선예도 강화 방법
KR20200053879A (ko) 이기종 카메라 동시 제어를 위한 분산촬영장치 및 그 제어방법, 이에 사용되는 카메라 제어 클라이언트
CN112950509B (zh) 一种图像处理方法、装置及电子设备
CN101019131A (zh) 有效完成图像数据变换过程的系统和方法
US20190052803A1 (en) Image processing system, imaging apparatus, image processing apparatus, control method, and storage medium
JP2020112730A (ja) 表示装置及びその制御方法、プログラム、記憶媒体
CN102752476A (zh) 一种实时调节图像印片光的方法和装置
EP4250722A1 (en) Image processing method and related device
CN113395503B (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