WO2019072140A1 - Image hardware encoding processing method and device - Google Patents

Image hardware encoding processing method and device Download PDF

Info

Publication number
WO2019072140A1
WO2019072140A1 PCT/CN2018/109280 CN2018109280W WO2019072140A1 WO 2019072140 A1 WO2019072140 A1 WO 2019072140A1 CN 2018109280 W CN2018109280 W CN 2018109280W WO 2019072140 A1 WO2019072140 A1 WO 2019072140A1
Authority
WO
WIPO (PCT)
Prior art keywords
hardware
image data
image
data
instruction
Prior art date
Application number
PCT/CN2018/109280
Other languages
French (fr)
Chinese (zh)
Inventor
张剑
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2019072140A1 publication Critical patent/WO2019072140A1/en

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/127Prioritisation of hardware or computational resources
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules

Abstract

Provided in the embodiments of the present application are an image hardware encoding processing method and device, the method comprising: acquiring image data; processing the image data at a framework layer of an operating system according to at least part of configuration information, the configuration information comprising: at least one of a size conversion instruction, a format conversion instruction and an algorithm processing instruction; and sending the processed image data and a hardware encoding instruction to hardware for encoding. In the image hardware encoding processing method provided in the embodiments of the present invention, since at least one of size conversion, format conversion and algorithm processing may be carried out at the framework layer, image data of various sizes and formats may be provided and converted in the framework layer into data formats that the hardware may process for hardware encoding, which avoids multiple data interactions between an application program and bottom layer hardware in existing technology, improves the encoding efficiency, and also improves the flexibility of processing.

Description

图像硬件编码处理方法和装置Image hardware coding processing method and device
本申请要求2017年10月13日递交的申请号为201710952763.X、发明名称为“图像硬件编码处理方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。The present application claims priority to Chinese Patent Application Serial No. No. No. No. No. No. No. No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No.
技术领域Technical field
本申请涉及数据处理技术领域,特别是涉及一种图像硬件编码处理方法和装置。The present application relates to the field of data processing technologies, and in particular, to an image hardware coding processing method and apparatus.
背景技术Background technique
针对图像的编码,是利用图像压缩标准,将图像进行编码压缩的行为。以JPEG图像为例,JPEG是一个国际图像压缩标准,JPEG图像压缩算法能够在提供良好的压缩性能的同时,具有比较好的重建质量,被广泛应用于图像、视频处理领域。For the encoding of images, the image compression standard is used to encode and compress images. Taking JPEG image as an example, JPEG is an international image compression standard. JPEG image compression algorithm can provide good compression performance and has better reconstruction quality. It is widely used in image and video processing.
图像编码压缩可以通过软件编码,也可以通过硬件编码实现。硬件编码一般使用专属芯片,性能和功耗都优于软件编码,尤其是硬件编码的速度优势,是大尺寸图像选择硬件编码最主要原因。Image coding compression can be done by software or by hardware coding. Hardware coding generally uses a proprietary chip, which is superior to software coding in terms of performance and power consumption, especially the speed advantage of hardware coding. It is the main reason for selecting hardware coding for large-size images.
在电子装置中,存在底层的硬件层、中间的框架层(Framework)和上层的应用程序层。例如在操作系统中,底层包括相机(camera)硬件装置等;中间层的Framework框架层包括camera Framework的应用输入图像硬编码模块等;上层应用程序包括camera应用。在硬件编码中,需要将图像数据从上层应用程序(例如camera应用)传递到底层(例如硬件模块)。In an electronic device, there are an underlying hardware layer, an intermediate frame layer (Framework), and an upper layer application layer. For example, in the operating system, the bottom layer includes a camera hardware device, etc.; the middle layer's Framework frame layer includes a camera framework application input image hard coding module; and the upper layer application includes a camera application. In hardware coding, image data needs to be passed from an upper application (such as a camera application) to an underlying (such as a hardware module).
现有的方案中,底层硬件不能灵活地处理图像编码。例如,由于底层硬件仅能识别特定格式的图像数据,导致应用程序层只能提供固定格式的图像数据。如果是应用程序从外部获得的其他格式的数据,该应用程序需要进行转换格式,再调用系统接口进行处理,而后再发送至底层硬件进行编码。再例如,当使用者希望在硬件编码之前对图像数据进行算法处理——如降噪、变焦等,必须将图像数据返回应用程序层进行处理,否则无法进行处理。因此,底层硬件不能灵活地处理图像编码将会导致底层硬件和上层应用程序之间发生多次数据交互,影响了编码效率。In the existing scheme, the underlying hardware cannot handle image coding flexibly. For example, because the underlying hardware can only recognize image data in a specific format, the application layer can only provide image data in a fixed format. In the case of data in other formats obtained by the application from outside, the application needs to convert the format, call the system interface for processing, and then send it to the underlying hardware for encoding. For another example, when the user wants to perform image processing on the image data before hardware coding, such as noise reduction, zooming, etc., the image data must be returned to the application layer for processing, otherwise processing cannot be performed. Therefore, the inability of the underlying hardware to handle image encoding flexibly will result in multiple data interactions between the underlying hardware and the upper application, affecting the coding efficiency.
发明内容Summary of the invention
本发明的目的之一在于提出一种图像硬件编码处理方法和处理装置,以解决现有技 术存在的底层硬件不能灵活地处理图像编码导致影响编码效率的问题。One of the objects of the present invention is to provide an image hardware coding processing method and processing apparatus to solve the problem that the underlying hardware of the prior art cannot flexibly process image coding and affect coding efficiency.
为了解决上述问题,本申请实施例公开了一种图像硬件编码处理方法,包括:In order to solve the above problem, the embodiment of the present application discloses an image hardware coding processing method, including:
获取图像数据;Obtain image data;
至少根据所述配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;And performing data processing on the image data at a frame layer of the operating system according to the partial information of the configuration information, where the configuration information includes: at least one of a size conversion instruction, a format conversion instruction, and an algorithm processing instruction;
将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The data processed image data and the hardware coded instructions are sent to the hardware for encoding.
本申请实施例还公开了一种图像硬件编码处理装置,应用于电子装置的操作系统,所述装置包括:The embodiment of the present application further discloses an image hardware encoding processing device, which is applied to an operating system of an electronic device, and the device includes:
图像数据获取模块,用于获取图像数据;An image data acquiring module, configured to acquire image data;
数据处理模块,用于至少根据所述配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;a data processing module, configured to perform data processing on the image data at a framework layer of an operating system according to at least part of the information of the configuration information, where the configuration information includes: a size conversion instruction, a format conversion instruction, and an algorithm processing instruction. one;
发送模块,用于将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The sending module is configured to send the data processed image data and the hardware encoded instruction to the hardware for encoding.
本申请实施例还公开了一种终端设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如本申请实施例中一个或多个所述的方法。The embodiment of the present application further discloses a terminal device, including: one or more processors; and one or more machine-readable media having instructions stored thereon, when executed by the one or more processors, The terminal device is caused to perform the method as described in one or more of the embodiments of the present application.
本申请实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行如本申请实施例中一个或多个所述的方法。The embodiment of the present application further discloses one or more machine readable mediums having stored thereon instructions that, when executed by one or more processors, cause the terminal device to perform one or more of the embodiments as described in the embodiments of the present application. method.
与现有技术相比,本申请实施例提出的图像硬件编码处理装置至少包括以下优点:Compared with the prior art, the image hardware coding processing apparatus proposed by the embodiment of the present application at least includes the following advantages:
在本发明实施例提出的图像硬件编码处理方法中,由于框架层能够处理尺寸转换、格式转换、算法处理至少其中之一的操作,可以提供多种尺寸、格式图像数据,在框架层内转换为硬件能够处理的数据形式,供硬件编码;或者在框架层内对图像数据进行算法处理这样的操作增加了可以提供的图像数据的形式,避免了现有技术应用程序与底层硬件之间的多次数据交互,提高了编码的效率,也提高了处理的灵活性。In the image hardware coding processing method proposed by the embodiment of the present invention, since the frame layer can process at least one of size conversion, format conversion, and algorithm processing, image data of various sizes and formats can be provided, and converted into frame layers to The form of data that the hardware can handle for hardware coding; or the algorithmic processing of image data within the framework layer. This adds the form of image data that can be provided, avoiding multiple attempts between the prior art application and the underlying hardware. Data interaction improves the efficiency of coding and increases the flexibility of processing.
附图说明DRAWINGS
图1是本申请一实施例的示意图;1 is a schematic view of an embodiment of the present application;
图2所示为本申请一实施例的图像硬件编码处理方法的流程图;2 is a flowchart of an image hardware encoding processing method according to an embodiment of the present application;
图3所示为该方法的一种可实施的模块结构示意图;FIG. 3 is a schematic structural diagram of an implementable module of the method;
图4所示为该方法的另一种可实施的模块结构示意图;FIG. 4 is a schematic structural diagram of another implementable module of the method;
图5所示为本申请另一实施例的图像硬件编码处理方法的流程图;FIG. 5 is a flowchart of an image hardware encoding processing method according to another embodiment of the present application;
图6所示为图5中步骤S202的子步骤的流程图;Figure 6 is a flow chart showing the sub-steps of step S202 in Figure 5;
图7是本申请图像硬件编码处理装置的一实施例结构框图;7 is a structural block diagram of an embodiment of an image hardware coding processing apparatus of the present application;
图8是本申请图像硬件编码处理装置的另一实施例的结构框图;8 is a structural block diagram of another embodiment of an image hardware coding processing apparatus of the present application;
图9是本申请一实施例提供的终端设备的硬件结构示意图;FIG. 9 is a schematic structural diagram of hardware of a terminal device according to an embodiment of the present application;
图10是本申请另一实施例提供的终端设备的硬件结构示意图。FIG. 10 is a schematic structural diagram of hardware of a terminal device according to another embodiment of the present disclosure.
具体实施方式Detailed ways
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。The above described objects, features and advantages of the present application will become more apparent and understood.
图1是本申请一实施例的示意图,体现了本发明的构思。如上所述,从数据传输和功能实现的角度来看,电子装置中存在底层的硬件层、中间的框架层和上层的应用程序层。前述和后述的框架层(Framework),是指操作系统中应用程序与底层硬件之间的架构,提供了软件开发的框架,使开发更具工程性、简便性和稳定性。如图1所示,以应用程序11指代应用程序层中的多种应用程序,应用程序11通过框架层12提供的接口与框架层12进行数据交互。以硬件13指代硬件层中的多种硬件,硬件13也通过框架层12提供的接口与框架层12进行数据交互。此外应用程序11与硬件13也存在数据交互,不再赘述。1 is a schematic diagram of an embodiment of the present application, embodying the concept of the present invention. As described above, from the perspective of data transmission and function implementation, there are an underlying hardware layer, an intermediate frame layer, and an upper application layer in the electronic device. The aforementioned and later frameworks refer to the architecture between the application and the underlying hardware in the operating system, providing a framework for software development, making development more engineering, simple, and stable. As shown in FIG. 1, the application 11 refers to a plurality of applications in the application layer, and the application 11 performs data interaction with the framework layer 12 through an interface provided by the framework layer 12. The hardware 13 refers to various hardware in the hardware layer, and the hardware 13 also performs data interaction with the framework layer 12 through the interface provided by the framework layer 12. In addition, the application 11 and the hardware 13 also have data interaction, and will not be described again.
配置信息14中携带了各种指令,例如针对图像数据的格式转换指令、尺寸转换指令、算法处理指令等。同时,配置信息14中还携带有硬件编码指令,该硬件编制指令供硬件编码使用。在框架层12获得配置信息14和图像数据15之后,框架层12可以利用配置信息14中的各种指令,针对图像数据15进行格式转换、算法处理、尺寸转换等数据处理,在数据处理之后再发送至硬件13,根据硬件编码指令进行编码。如此一来,所提供的图像数据15可以是多种格式、尺寸的数据,避免了现有技术的局限性,使得图像硬件编码处理更加灵活。The configuration information 14 carries various instructions such as a format conversion instruction, a size conversion instruction, an algorithm processing instruction, and the like for image data. At the same time, the configuration information 14 also carries a hardware coding instruction, which is used for hardware coding. After the frame layer 12 obtains the configuration information 14 and the image data 15, the frame layer 12 can perform data processing such as format conversion, algorithm processing, size conversion, etc. on the image data 15 by using various instructions in the configuration information 14, after the data processing. It is sent to the hardware 13 and encoded according to the hardware coded instructions. In this way, the provided image data 15 can be data of multiple formats and sizes, avoiding the limitations of the prior art, and making the image hardware encoding process more flexible.
以下通过多个实施例具体进行说明。The following is specifically described by way of a plurality of embodiments.
第一实施例First embodiment
图2所示为本发明一实施例的图像硬件编码处理方法的流程图,图3是该方法的一 种可实施的模块结构示意图。图4是该方法的另一种可实施的模块结构示意图。结合图2、图3和图4进行说明。该方法可以应用于电子装置的操作系统,电子装置例如为手机、电脑、服务器等。上述图像硬件编码处理方法可以包括如下步骤。FIG. 2 is a flowchart of an image hardware encoding processing method according to an embodiment of the present invention, and FIG. 3 is a schematic diagram of an executable module structure of the method. 4 is a schematic diagram of another implementable module structure of the method. Description will be made with reference to Figs. 2, 3 and 4. The method can be applied to an operating system of an electronic device such as a mobile phone, a computer, a server, or the like. The above image hardware encoding processing method may include the following steps.
S102,获取图像数据。在这一步骤中,图像数据可以是应用程序提供的,也可以是通过其他途径获取,例如可以根据配置信息中的图像数据的提取地址提取到的图像数据,以下分别进行说明。S102. Acquire image data. In this step, the image data may be provided by an application, or may be acquired by other means, for example, image data that can be extracted according to the extracted address of the image data in the configuration information, which will be separately described below.
在第一种情况下,结合图3所示,图像数据14和配置信息15均由应用程序11提供。二者可以同时提供,也可以先后提供,本发明并不限制。即,步骤S101和步骤S102在这种情况下可以同时或者先后执行,本发明并不限定其顺序。在向框架层12提供信息之后,可以根据图像数据14创建输入,如编号121所示,把外部输入的数据封装为框架层的输入数据结构;再根据发送至框架层12的配置信息122对图像数据15进行处理,例如上述的尺寸转换、格式转换、算法处理等,如编号124所示。在执行算法处理时,可以调用框架层中嵌入的算法库123。在处理之后,可以生成输入硬件的图像数据125。In the first case, as shown in connection with FIG. 3, both the image data 14 and the configuration information 15 are provided by the application 11. Both may be provided at the same time or may be provided one after the other, and the present invention is not limited thereto. That is, step S101 and step S102 can be performed simultaneously or sequentially in this case, and the present invention is not limited to the order. After the information is provided to the frame layer 12, an input may be created from the image data 14, as indicated by the number 121, the externally input data is encapsulated as an input data structure of the frame layer; and the image is then imaged according to the configuration information 122 sent to the frame layer 12. The data 15 is processed, such as the size conversion, format conversion, algorithm processing, etc. described above, as indicated by reference numeral 124. When the algorithm processing is performed, the algorithm library 123 embedded in the framework layer can be called. After processing, image data 125 of the input hardware can be generated.
此外,在可选实施例中,发送至框架层中的配置信息15中还可以具有内存申请指令。内存申请指令可以用于申请内存缓存区,供存储硬件编码后的图像数据存储。因此,在框架层12中可以根据配置信息122输出内存配置126,当编码后的图像数据从硬件13返回框架层时,可以利用输出缓存队列127开辟内存缓存区,以存储所述硬件编码后的图像数据。Moreover, in an alternative embodiment, the configuration information 15 sent to the framework layer may also have a memory application instruction. The memory application instruction can be used to apply for a memory buffer for storing image data after storage hardware encoding. Therefore, in the frame layer 12, the memory configuration 126 can be output according to the configuration information 122. When the encoded image data is returned from the hardware 13 to the frame layer, the output buffer queue 127 can be used to open the memory buffer area to store the hardware coded Image data.
在第二种情况下,结合图4所示,可以通过应用程序11提供的配置信息15,获得提取图像数据的地址,图像数据的提取地址可以为图像数据存储的内存地址。图像数据14可以由图像信号处理器(ISP,image signal processor)16提供。图像信号处理器16为硬件层中的硬件,所提供的图像数据14可以如图4为多路图像,或者为一路图像数据。在提供多路图像数据之后,可以利用选择器129对图像数据进行选择,或者不使用选择器,直接用多路数据创建输入。在此并不限制。In the second case, as shown in FIG. 4, the address of the extracted image data can be obtained by the configuration information 15 provided by the application 11, and the extracted address of the image data can be the memory address of the image data storage. Image data 14 may be provided by an image signal processor (ISP) 16. The image signal processor 16 is hardware in the hardware layer, and the provided image data 14 may be a multi-path image as shown in FIG. 4 or one-way image data. After the multiplexed image data is provided, the image data can be selected using the selector 129, or the input can be directly created with the multiplexed data without using a selector. There is no limit here.
在图3和图4中,配置信息122的主要配置信息来自于配置信息15,但是配置信息122也包含框架层内部自身的一些状态信息,即将应用程序设置的配置信息15转换为框架层14可理解的配置信息122,因此以不同的编号标识。In FIG. 3 and FIG. 4, the main configuration information of the configuration information 122 is from the configuration information 15, but the configuration information 122 also includes some state information of the internal layer of the framework layer, that is, the configuration information 15 set by the application program is converted into the frame layer 14 The configured configuration information 122 is therefore identified by a different number.
进一步地,配置信息14中还可以包括拍照指令和拍照参数。该拍照指令可以驱动底层的相机硬件进行拍照。在步骤S102获取图像信息的步骤之前,该方法还可以包括根据 拍照指令驱动相机拍照的步骤。拍照参数包括拍摄帧数、图像参数、合成图像帧数、合成图像数据选择至少其中之一。拍摄获得的原始图像数据可以由硬件层中的图像信号处理器输出的,在拍照完成之后可以根据上述的提取地址,从图像信号处理器输出的内存地址提取拍摄的图像数据。在可选实施例中,如果拍照参数中的拍摄帧数为多帧,对应的图像参数可以为每一帧对应的图像参数。图像参数例如包括每次拍照的尺寸、格式、缩放倍率等。Further, the configuration information 14 may further include a photographing instruction and a photographing parameter. The camera command can drive the underlying camera hardware to take a photo. Before the step of acquiring image information in step S102, the method may further comprise the step of driving the camera to take a picture according to the photographing instruction. The photographing parameters include at least one of a photographing frame number, an image parameter, a composite image frame number, and a composite image data selection. The raw image data obtained by the photographing may be output by the image signal processor in the hardware layer, and the photographed image data may be extracted from the memory address output by the image signal processor according to the extracted address after the photographing is completed. In an optional embodiment, if the number of shooting frames in the camera parameter is multiple frames, the corresponding image parameter may be an image parameter corresponding to each frame. The image parameters include, for example, the size, format, zoom ratio, and the like of each photograph.
S103,至少根据所述配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;S103, performing data processing on the image data in a framework layer of an operating system according to at least part information of the configuration information, where the configuration information includes: at least one of a size conversion instruction, a format conversion instruction, and an algorithm processing instruction;
在这一步骤中,可以根据配置信息中的各种指令,在框架层中对图像数据进行相应的处理。In this step, the image data can be processed correspondingly in the framework layer according to various instructions in the configuration information.
如上述,配置信息可以是由应用程序提供的,也可以是通过其他方式获取的。在一实施例中,当需要针对图像数据进行编码时,电子装置的应用程序层(App层)中的应用程序可以提供配置信息(configuration)至电子装置的框架层(Framework层)。如上所述,框架层和应用程序层之间具有数据接口,当应用程序层中的某一个应用程序提供数据至框架层中的某一模块时,可以通过该数据接口提供数据,并指定该模块接收。举例来说,“相机”这一操作系统的应用程序提供图像编码相关的配置信息,并发送至框架层的数据接口,指定框架层的编码模块接收。配置信息包括尺寸转换指令、格式转换指令和算法处理指令至少其中之一,这些指令用于调用框架层内相关的处理。此外,配置信息还可以包括硬件编码指令,用于硬件编码,例如包括编码后图像尺寸、图像旋转角度、图像压缩率、输出图像帧数、硬件输入到硬件输出的格式转换等至少其中之一,本发明并不特别限制。在上述的各种指令对应的操作中,尺寸转换即将图像数据的尺寸转换为底层硬件需要的特定尺寸。由于硬件是多种多样的,每个硬件对尺寸对齐的要求可能不同,在此处可以根据硬件的需求,将图像数据转换为符合硬件需求的尺寸。As described above, the configuration information may be provided by an application or may be obtained by other means. In an embodiment, when encoding for image data is required, an application in an application layer (App layer) of the electronic device can provide configuration information to a framework layer (Framework layer) of the electronic device. As described above, there is a data interface between the framework layer and the application layer. When an application in the application layer provides data to a module in the framework layer, data can be provided through the data interface, and the module is specified. receive. For example, an application of the "camera" operating system provides image encoding related configuration information and sends it to the data interface of the framework layer, which is specified by the encoding module of the framework layer. The configuration information includes at least one of a size conversion instruction, a format conversion instruction, and an algorithm processing instruction for invoking related processing within the framework layer. In addition, the configuration information may further include hardware coding instructions for hardware coding, for example, including at least one of an encoded image size, an image rotation angle, an image compression ratio, an output image frame number, and a format conversion of a hardware input to a hardware output, The invention is not particularly limited. In the operations corresponding to the various instructions described above, the size conversion converts the size of the image data into a specific size required by the underlying hardware. Due to the variety of hardware, each hardware may have different requirements for size alignment. Here, the image data can be converted to a size that meets the hardware requirements according to the requirements of the hardware.
格式转换即为将原始的图像数据格式转换为底层硬件需要的特定格式。例如在一些情况下,如果出于应用程序配置需要,可以将图像数据转换为应用程序指定的硬件能力集中的特定格式,譬如,某硬件对格式的要求必须是YUV的NV21格式,所以在此处的格式转换中,可以将图像格式转换为符合硬件需求的格式。Format conversion is the conversion of the original image data format to the specific format required by the underlying hardware. For example, in some cases, if the application configuration needs, the image data can be converted to a specific format in the hardware capability set specified by the application. For example, the format requirement of a certain hardware must be the NV21 format of YUV, so here In the format conversion, the image format can be converted to a format that meets the hardware requirements.
算法处理是利用嵌入框架层中或者框架层自带的算法对图像数据进行处理,算法处 理例如包括图示的HDR算法、数码变焦多帧优化、多帧降噪算法、全焦处理算法等。嵌入的算法可以是插件,在进行了配置之后可以使用。The algorithm processing uses the algorithm embedded in the framework layer or the framework layer to process the image data. The algorithm processing includes, for example, the illustrated HDR algorithm, digital zoom multi-frame optimization, multi-frame noise reduction algorithm, and full focus processing algorithm. The embedded algorithm can be a plugin that can be used after it has been configured.
配置信息中的各指令可以携带有发送的目标模块,因此在框架层中即可根据目标被分发至各模块,例如给算法库模块分发算法选择信息、给格式转换模块分发的转换信息、给内存模块分发的分配内存信息等。在操作中,可以分别将各个模块的变量初始化为配置指定的信息,当图像数据经过这些模块的时候就根据这些初始化的配置数据处理图像,在此不再赘述。Each instruction in the configuration information may carry the transmitted target module, and thus may be distributed to each module according to the target in the framework layer, for example, distributing algorithm selection information to the algorithm library module, converting information distributed to the format conversion module, and providing the memory to the memory. Allocate memory information, etc. distributed by the module. In the operation, the variables of each module may be initialized to the information specified by the configuration, and the image data is processed according to the initialized configuration data when the image data passes through the modules, and details are not described herein.
S104,将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。S104: Send the data processed image data and the hardware coded instruction to the hardware for encoding.
在这一步骤中,框架层可以将处理后的图像数据和配置信息中的硬件编码指令发送至硬件,利用硬件封装的编码程序实现硬件编码。举例来说,硬件封装的编码程序例如是JPEG硬件编码程序,在编码之后生成JPEG格式的图像。但是本领域技术人员可以明确的是,编码程序并不限定为JPEG编码,而是可以覆盖任何能够在硬件中实现的编码方式。In this step, the framework layer may send the processed image data and the hardware coded instructions in the configuration information to the hardware, and implement hardware coding using the hardware-encapsulated encoding program. For example, the hardware-encapsulated encoding program is, for example, a JPEG hardware encoding program that generates an image in JPEG format after encoding. However, it will be apparent to those skilled in the art that the encoding process is not limited to JPEG encoding, but can cover any encoding method that can be implemented in hardware.
在可选的实施例中,配置信息还可以包括封装指令,用于将框架层处理之后的图像数据与硬件编码指令封装,整体发送至硬件进行编码。出于易用性的目的,图像数据和硬件编码指令可以封装后整体发送,但是本领域技术人员可以明确的是,本发明实施例提出的方案也可以不包括封装的步骤。In an optional embodiment, the configuration information may further include a package instruction for encapsulating the image data after the frame layer processing and the hardware coded instruction, and transmitting the whole to the hardware for encoding. For the purpose of ease of use, the image data and the hardware coded instructions may be sent as a whole after being packaged, but it is obvious to those skilled in the art that the solution proposed by the embodiment of the present invention may not include the steps of encapsulation.
当每一次处理图像之前均需要获取配置信息时,步骤S102,即获取图像数据的步骤之前,所述方法还可以包括:The method may further include: before the step of acquiring the image data, the method may further include:
S101,获取图像硬件编码的配置信息;S101. Acquire configuration information of an image hardware code.
在这一步骤中,配置信息可以是由应用程序提供的,也可以是通过其他方式获取的,例如,根据应用程序提供的地址从服务器下载,或者由设定的服务器推送,或者系统默认配置、或者提供设置接口由用户设置等,在此不再赘述。在一可选实施例中,所述配置信息包括硬件编码指令,即步骤S104中的硬件编码指令可以是从配置信息中获得的。同样地,硬件编码指令也可以通过其他方式获取,例如,根据应用程序提供的地址从服务器下载,或者由设定的服务器推送,或者系统默认配置、或者提供设置接口由用户设置等,并不限定于从配置信息中获得。In this step, the configuration information may be provided by the application, or may be obtained by other means, for example, downloading from the server according to the address provided by the application, or being pushed by the set server, or the system default configuration, Or provide a setting interface set by the user, etc., and will not be described here. In an optional embodiment, the configuration information includes hardware coded instructions, that is, the hardware coded instructions in step S104 may be obtained from configuration information. Similarly, the hardware coded instruction can also be obtained by other means, for example, downloading from the server according to the address provided by the application, or pushing by the set server, or the system default configuration, or providing the setting interface by the user, etc., without limitation Obtained from the configuration information.
在可选实施例中,在实现硬件编码后,上述方法还可以包括:In an optional embodiment, after the hardware coding is implemented, the foregoing method may further include:
S105,存储所述硬件编码后的图像;以及S105. Store the hardware encoded image; and
S106,发送所述硬件编码后图像的存储地址。S106. Send a storage address of the hardware encoded image.
在这一步骤中,硬件可以将编码后的图像存储在内存缓存区,并将内存缓存区的地址发送至框架层,例如,可以发送至框架层与应用程序的数据接口,使得应用程序能够根据该内存缓存区的地址调取编码后的图像。In this step, the hardware can store the encoded image in the memory buffer and send the address of the memory buffer to the framework layer, for example, can be sent to the data interface of the framework layer and the application, so that the application can The address of the memory buffer is retrieved from the encoded image.
以下通过几个具体的应用示例,对第一实施例提出的图像硬件编码处理方法的应用进行介绍。The application of the image hardware coding processing method proposed by the first embodiment will be described below through several specific application examples.
在一种情景下,用户需要对现有的图片进行格式转换处理。用户通过应用程序11提供图像数据14和配置信息15。配置信息15中包含的部分或全部内容可以是由用户自己定义的,或者是预先设置的。例如,在应用程序的界面,提供若干选项供用户选择,这些选项可以包括:选择模板图片、从相册中选择图片、拍摄照片等图片来源的选择,还可以包括转换尺寸、转换格式、算法处理的指令。用户的这些选择在应用程序中生成配置信息,发送至框架层。结合图3所示,当需要进行格式转换时,根据用户的选择,应用程序11中的配置信息15中携带了格式转换指令。在框架层中,利用格式转换指令处理图像数据14,处理之后将该图片和硬件编码指令一同发送至硬件进行编码。In one scenario, the user needs to perform a format conversion process on the existing image. The user provides image data 14 and configuration information 15 through the application 11. Some or all of the content included in the configuration information 15 may be defined by the user himself or may be preset. For example, in the interface of the application, there are several options for the user to select. These options may include: selecting a template image, selecting a picture from an album, taking a photo, and the like, and may also include conversion size, conversion format, algorithm processing. instruction. These choices of the user generate configuration information in the application and send it to the framework layer. As shown in FIG. 3, when format conversion is required, the format conversion instruction is carried in the configuration information 15 in the application 11 according to the user's selection. In the framework layer, the image data 14 is processed using a format conversion instruction, which is then sent to the hardware for encoding along with the hardware encoding instructions.
在另一种情况下,用户需要对新拍摄的照片进行HDR算法处理,即高动态范围图像(High-Dynamic Range,简称HDR)。HDR算法例如需要框架层发送多帧拍照原始图像的请求,每帧图像的曝光值不同,通过HDR算法获得更广的亮度域图像,避免过曝或者欠曝。在处理中,结合图4所示,用户可以在上述选项中进行选择,例如选择“拍照”和“HDR算法处理”。根据用户的选择,应用程序11向框架层发送的配置信息15中包括拍照指令和HDR算法处理指令。在框架层中,利用上述指令获取图像数据14并处理图像数据14,处理之后将该图片和硬件编码指令一同发送至硬件进行编码。In another case, the user needs to perform HDR algorithm processing on the newly taken photo, that is, High-Dynamic Range (HDR). For example, the HDR algorithm requires a frame layer to send a multi-frame photo original image request, and the exposure value of each frame image is different, and a wider brightness domain image is obtained by the HDR algorithm to avoid overexposure or underexposure. In the process, as shown in FIG. 4, the user can select among the above options, for example, select "photographing" and "HDR algorithm processing". According to the user's selection, the configuration information 15 sent by the application 11 to the framework layer includes a photographing instruction and an HDR algorithm processing instruction. In the frame layer, the image data 14 is acquired by the above instruction and the image data 14 is processed. After the process, the picture and the hardware coded instruction are sent together to the hardware for encoding.
由上述可知,本发明实施例提出的图像硬件编码处理方法至少具有如下技术效果:It can be seen from the above that the image hardware coding processing method proposed by the embodiment of the present invention has at least the following technical effects:
在本发明实施例提出的图像硬件编码处理方法中,由于框架层能够处理尺寸转换、格式转换、算法处理等至少其中之一的操作,可以提供多种尺寸、格式图像数据,在框架层内转换为硬件能够处理的数据形式,供硬件编码;或者在框架层内对图像数据进行算法处理。这样的操作增加了可以提供的图像数据的形式,避免了现有技术应用程序与底层硬件之间的多次数据交互,提高了编码的效率,也提高了处理的灵活性。In the image hardware encoding processing method proposed by the embodiment of the present invention, since the framework layer can process at least one of size conversion, format conversion, algorithm processing, etc., image data of various sizes and formats can be provided, and converted in the framework layer. A form of data that can be processed by the hardware for hardware coding; or algorithmic processing of image data within the framework layer. Such an operation increases the form of image data that can be provided, avoids multiple data interactions between the prior art application and the underlying hardware, improves coding efficiency, and increases processing flexibility.
第二实施例Second embodiment
图5所示为本申请另一实施例的图像硬件编码处理方法的流程图。如图5所示,本申请实施例提出的图像硬件编码处理方法可以包括如下步骤:FIG. 5 is a flowchart of an image hardware encoding processing method according to another embodiment of the present application. As shown in FIG. 5, the image hardware coding processing method proposed by the embodiment of the present application may include the following steps:
S202,获取图像数据;S202. Acquire image data.
S203,根据所述配置信息,在操作系统的框架层对所述图像数据进行数据处理,所述数据处理包括格式转换、算法处理至少其中之一;S203, performing data processing on the image data in a framework layer of an operating system according to the configuration information, where the data processing includes at least one of format conversion and algorithm processing;
上述两个步骤可以与第一实施例的步骤S102和S103相同或相似,在此不再赘述。The above two steps may be the same as or similar to the steps S102 and S103 of the first embodiment, and details are not described herein again.
S205,将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。S205. Send the data processed image data and the hardware coded instruction to the hardware for encoding.
这一步骤可以与第一实施例的步骤S103相同,在此不再赘述。This step may be the same as step S103 of the first embodiment, and details are not described herein again.
图6所示为图5中步骤S202的子步骤的流程图。如图6所示,在本实施例中,步骤S02的图像数据可以是应用程序提供的,也可以是根据配置信息中的提取指令,从存储区域——例如内存中调用的。例如,步骤S202即获取图像数据的步骤可以包括如下子步骤:Figure 6 is a flow chart showing the sub-steps of step S202 in Figure 5. As shown in FIG. 6, in the embodiment, the image data of step S02 may be provided by an application, or may be called from a storage area, such as a memory, according to an extraction instruction in the configuration information. For example, the step of acquiring image data in step S202 may include the following sub-steps:
S202b,从所述配置信息中获取图像数据的提取地址;以及S202b, obtaining an extracted address of the image data from the configuration information;
S202c,从所述提取地址中提取图像数据。S202c: Extract image data from the extracted address.
在上述两个步骤中,例如尽管应用程序未提供图像数据,但是提供从特定的存储地址获得图像数据的提取地址,在框架层中可以根据该提取地址,从存储区域(例如内存)中提取图像数据进行处理。In the above two steps, for example, although the application does not provide image data, it provides an extraction address for obtaining image data from a specific storage address, and an image can be extracted from a storage area (for example, a memory) according to the extraction address in the frame layer. The data is processed.
在本实施例中,在上述步骤S202b中,所述图像数据的提取地址可以为在框架层内的相机数据的地址,结合图4所示,图像数据14可以由图像信号处理器(ISP,image signal processor)16提供。图像信号处理器16为硬件层中的硬件,其输出的图像数据的地址即可以作为图像数据的提取地址,以利于框架层从该地址提取图像数据。In this embodiment, in the above step S202b, the extraction address of the image data may be the address of the camera data in the frame layer. As shown in FIG. 4, the image data 14 may be provided by an image signal processor (ISP, image). Signal processor)16 is provided. The image signal processor 16 is hardware in the hardware layer, and the address of the image data outputted therefrom can be used as an extraction address of the image data to facilitate the frame layer to extract image data from the address.
在本实施例中,步骤S202c中获取的图像数据可以为多路图像数据,则步骤S202即获取图像数据的步骤还可以包括:In this embodiment, the image data acquired in step S202c may be multiplexed image data, and the step of acquiring image data in step S202 may further include:
S202d,从所述多路图像数据中选择至少一路图像数据。S202d: Select at least one image data from the multiplexed image data.
在这一步骤中,根据图4所示,所提供的图像数据14可以是从硬件层的图像信号处理器输出的数据,该数据可以为多路。在提供多路图像数据之后,可以利用选择器129对图像数据进行选择,或者不使用选择器,直接用多路数据创建输入。在此并不限制。In this step, according to FIG. 4, the supplied image data 14 may be data output from an image signal processor of the hardware layer, which may be multiplexed. After the multiplexed image data is provided, the image data can be selected using the selector 129, or the input can be directly created with the multiplexed data without using a selector. There is no limit here.
在实际应用中,底层的相机硬件在正常情况下都是多路数据同时输出,在此选择多 路数据中的其中一路,每一路数据经过的处理都不一样,可以按需进行选择。例如,多路数据主要包含预览数据、回调数据、拍照数据流、还有可能包含录像数据。这些数据大小格式都可以不一样,经过的图像信号处理算法处理也不一样,视场角也可能不一样,选择的时候可以由应用程序层指定这些数据的索引来选择,也可以由应用程序指定需要什么条件的图像。例如转换需要用大尺寸图像,相机的数据索引为:预览1,拍照2,回调3;此时配置信息指定需要索引2的数据,框架层就会去相机系统提取拍照2的数据,或者应用指定用相机数据中尺寸最大的数据。根据选择条件,可以自动比较不同数据的图像尺寸,选择最大的,比如拍照2的数据作为输入源,这里的选择条件就是“尺寸”。选择条件也可以是其他图像参数,例如变焦倍率,格式等,在此不再赘述。In practical applications, the underlying camera hardware outputs multiple channels of data simultaneously under normal conditions. One of the multiple channels of data is selected here. Each channel of data is processed differently and can be selected as needed. For example, multi-channel data mainly includes preview data, callback data, photo data stream, and possibly video data. These data size formats can be different, the processed image signal processing algorithm is different, and the field of view may be different. When selecting, the index of the data can be specified by the application layer, or can be specified by the application. An image of what conditions are needed. For example, the conversion needs to use a large-size image. The camera's data index is: preview 1, photo 2, callback 3; at this time, the configuration information specifies the data that needs index 2, and the frame layer will go to the camera system to extract the data of the photo 2, or the application designation. Use the largest size data in the camera data. According to the selection conditions, the image size of different data can be automatically compared, and the largest one, such as the data of the photograph 2, is selected as the input source, and the selection condition here is "size". The selection condition may also be other image parameters, such as zoom magnification, format, etc., and will not be described herein.
在本实施例中,所述配置信息还包括拍照指令和拍照参数,从所述配置信息中获取图像数据的提取地址的步骤之前,所述获取图像数据的步骤包括:In this embodiment, the configuration information further includes a photographing instruction and a photographing parameter. Before the step of acquiring the extracted address of the image data from the configuration information, the step of acquiring the image data includes:
S202a,根据拍照指令和拍照参数驱动相机拍照。S202a, driving the camera to take a photo according to the photographing instruction and the photographing parameter.
所述拍照参数例如可以包括拍摄帧数、图像参数、合成图像帧数、合成图像数据源选择至少其中之一。The photographing parameter may include, for example, at least one of a photographing frame number, an image parameter, a composite image frame number, and a composite image data source selection.
图像参数例如可以为图像的尺寸,当需要使用若干帧图像合成一帧时,可以在拍照参数中定义合成图像的帧数。当需要使用一帧主要的图片结合其他图片合成图像时,可以定义合成图像数据源选择方式,例如选择最高分辨率的图像作为主要图片,或者选择最其中固定的一路拍摄到的图像数据。The image parameter may be, for example, the size of the image, and when it is necessary to synthesize one frame using a plurality of frame images, the number of frames of the composite image may be defined in the photographing parameter. When it is necessary to use one frame of the main picture in combination with other picture synthesis images, the synthetic image data source selection mode can be defined, for example, selecting the highest resolution image as the main picture, or selecting the image data captured most of the way.
在本实施例中,在步骤S205,即将数据处理后的图像数据和硬件编码指令发送至硬件进行编码的步骤之后,所述方法还可以包括:In this embodiment, after the step of transmitting the data processed image data and the hardware encoding instruction to the hardware for encoding, the method may further include:
S206,存储所述硬件编码后的图像;以及S206. Store the hardware encoded image; and
S208,发所述硬件送编码后图像的存储地址。S208. Send the hardware to send a stored address of the encoded image.
上述步骤分别与第一实施例中的步骤S105和S106相同,在此不再赘述。The above steps are the same as steps S105 and S106 in the first embodiment, and are not described herein again.
在本实施例中,还可以根据内存申请指令,为编码后的图像申请内存。内存申请指令例如是从编码信息中获得的,或是从其他途径获得,并不特别限制。In this embodiment, it is also possible to apply for memory for the encoded image according to the memory application instruction. The memory application instruction is obtained, for example, from the encoded information, or obtained from other sources, and is not particularly limited.
在一实施例中,所述配置信息中还包括内存申请指令,所述方法还可以包括:In an embodiment, the configuration information further includes a memory application instruction, and the method may further include:
S204,根据内存申请指令提供内存缓存区,供存储所述硬件编码后的图像;S204, providing a memory buffer according to the memory application instruction, for storing the hardware encoded image;
则,步骤S206,即所述存储所述硬件编码后的图像的步骤包括:Then, step S206, that is, the step of storing the hardware-encoded image includes:
将编码后的图像存储至所述内存缓存区。The encoded image is stored to the memory buffer.
值得注意的是,上述步骤S204和步骤S205的执行没有顺序关系,即步骤S204可以先于、后于或者与步骤S205同时执行,本发明并不特别限制。It should be noted that the execution of the above steps S204 and S205 has no sequential relationship, that is, the step S204 may be performed before, after or simultaneously with the step S205, and the present invention is not particularly limited.
在步骤S204中,可以在配置信息中携带内存申请指令,在框架层中根据该指令提供内存缓存区。该内存缓存区用于储存编码后的图像。该内存缓存区的大小可以由用户定义,例如其可以设置为存储一帧或多帧编码后的图像数据。在现有技术中,图像数据直接从应用程序发送至底层硬件层进行编码处理,为编码后的图像预留的内存缓存区是固定不变的。然而在本发明的方案中,通过框架层可以直接配置内存缓存区,当所需要处理的图像数据为多帧图片时,内存缓存区可以有足够的空间缓存多帧图片,为多帧图片同时处理提供了基础。In step S204, a memory application instruction may be carried in the configuration information, and a memory buffer is provided in the framework layer according to the instruction. This memory buffer is used to store the encoded image. The size of the memory buffer can be defined by the user, for example, it can be set to store one or more frames of encoded image data. In the prior art, image data is directly sent from an application to an underlying hardware layer for encoding processing, and a memory buffer reserved for the encoded image is fixed. However, in the solution of the present invention, the memory buffer area can be directly configured through the framework layer. When the image data to be processed is a multi-frame picture, the memory buffer area can have enough space to buffer the multi-frame picture, and the multi-frame picture is simultaneously processed. The foundation.
在本实施例中,所述算法处理处理指令对应的算法例如包括:HDR算法、数码变焦多帧优化、多帧降噪算法、全焦处理算法至少其中一者。In this embodiment, the algorithm corresponding to the algorithm processing instruction includes, for example, at least one of an HDR algorithm, a digital zoom multi-frame optimization, a multi-frame noise reduction algorithm, and a full focus processing algorithm.
HDR算法,举例来说需要框架层发送多帧拍照原始图像的请求(yuv或者rgb格式输出),每帧图像的曝光值不同,通过HDR算法获得更广的亮度域图像,避免过曝或者欠曝,其他的步骤和普通拍照相同。The HDR algorithm, for example, requires a frame layer to send a multi-frame photo original image request (yuv or rgb format output), and the exposure value of each frame image is different, and a wider brightness domain image is obtained by the HDR algorithm to avoid overexposure or underexposure. The other steps are the same as ordinary photos.
多帧降噪算法,举例来说是在暗光条件没有开启闪光灯的情况下触发,即拍摄多帧一样参数的照片来合成,提高暗光下的亮度和减少噪点,最后合成为一帧照片,其他和普通拍照相同。The multi-frame noise reduction algorithm, for example, triggers in the case where the flash is not turned on in the dark condition, that is, photographs of the same parameters as the multi-frame are combined to improve the brightness and noise reduction under the dark light, and finally synthesized into a frame of photos. Others are the same as ordinary photos.
全焦处理算法,举例来说是框架层下发多次拍照命令(yuv或rgb格式输出),每次拍照命令的焦距参数不同,对焦距离不同,从而合成一帧全景深都清晰的图像。The full-focus processing algorithm, for example, is to issue a plurality of photographing commands (yuv or rgb format output) at the frame layer, and the focal length parameters of each photographing command are different, and the focusing distance is different, thereby synthesizing a panoramic image with a clear panorama.
数码变焦多帧优化算法,举例来说,配置信息配置拍摄两帧照片的请求,一帧放大N倍变焦放大,一帧正常不放大,然后选取框架层的算法库中的数码变焦多帧优化算法对两帧合成来优化最后变焦的效果,最后可以输出一帧优化后的图片,或者输出未做优化的一帧N倍放大的(只用请求拍照的其中一帧N倍放大的原始图)和优化后的N倍放大的作为输出。Digital zoom multi-frame optimization algorithm, for example, configuration information configures the request to take two frames of photos, one frame enlarges N times zoom magnification, one frame does not zoom normally, and then selects the digital zoom multi-frame optimization algorithm in the algorithm layer of the frame layer Combine two frames to optimize the final zoom effect, and finally output one frame of optimized image, or output an unoptimized one-frame N-time magnification (using only one of the N-magnified original images of the requested photo) and The optimized N times magnification is used as the output.
在一实施例中,所述硬件编码指令包括:编码后图像尺寸、图像旋转角度、图像压缩率、输出图像帧数至少其中之一。In an embodiment, the hardware coding instruction includes at least one of an encoded image size, an image rotation angle, an image compression ratio, and an output image frame number.
在一实施例中,步骤S206,即存储所述硬件编码后的图像之后,所述方法还包括:In an embodiment, after step S206, that is, after storing the hardware-encoded image, the method further includes:
S207,将多个硬件编码后的图像存储至连续的存储地址。S207. Store the plurality of hardware-encoded images to consecutive storage addresses.
由于硬件可以同时处理多个图像数据,每个处理后图像数据的存储地址可能是不同的,即内存地址不连续。在这一步骤中,可以通过内存拼接的方式,即将一段内存的数据拷贝到另一段数据的结束地址,使二者地址连续。后续应用程序可以从起始地址连续读取,获取合成后的编码图像。Since the hardware can process multiple image data at the same time, the storage address of each processed image data may be different, that is, the memory address is not continuous. In this step, the memory splicing method can copy the data of one piece of memory to the end address of another piece of data, so that the addresses of the two are continuous. Subsequent applications can continuously read from the starting address to obtain the synthesized encoded image.
在一实施例中,在步骤S203和步骤S205之间,即进行数据处理和发送至硬件进行编码的步骤之间,该方法还可以包括:In an embodiment, between step S203 and step S205, that is, between performing data processing and transmitting to hardware for encoding, the method may further include:
封装所述图像数据和硬件编码指令。Encapsulating the image data and hardware coded instructions.
在这一步骤中,可以将应用程序传送的或者在框架层中其他模块中获得的图像数据和硬件编码指令封装为底层硬件能够识别的图像数据传送至底层硬件。In this step, image data and hardware coded instructions transmitted by the application or obtained in other modules in the framework layer may be encapsulated into image data that can be recognized by the underlying hardware to be transmitted to the underlying hardware.
由上述可知,本发明实施例提出的图像硬件编码处理方法至少具有如下技术效果:It can be seen from the above that the image hardware coding processing method proposed by the embodiment of the present invention has at least the following technical effects:
在本发明实施例提出的图像硬件编码处理方法中,由于框架层能够处理尺寸转换、格式转换、算法处理等至少其中之一的操作,可以提供多种尺寸、格式图像数据,在框架层内转换为硬件能够处理的数据形式,供硬件编码;或者在框架层内对图像数据进行算法处理。这样的操作增加了可以提供的图像数据的形式,避免了现有技术应用程序与底层硬件之间的多次数据交互,提高了编码的效率,也提高了处理的灵活性。In the image hardware encoding processing method proposed by the embodiment of the present invention, since the framework layer can process at least one of size conversion, format conversion, algorithm processing, etc., image data of various sizes and formats can be provided, and converted in the framework layer. A form of data that can be processed by the hardware for hardware coding; or algorithmic processing of image data within the framework layer. Such an operation increases the form of image data that can be provided, avoids multiple data interactions between the prior art application and the underlying hardware, improves coding efficiency, and increases processing flexibility.
除了上述效果之外,本发明实施例提出的图像硬件编码处理方法进一步还具有如下技术效果:In addition to the above effects, the image hardware encoding processing method proposed by the embodiment of the present invention further has the following technical effects:
在本发明提供的图像硬件编码处理方法中,在应用程序层不需要数据在自身进行处理时,可以要求框架层自行获取图像数据,例如可以通过相机系统的相机数据的存储地址获取图像数据。避免了跨层的数据传输和通讯同步开销,提升了性能和不必要的应用开发工作。In the image hardware coding processing method provided by the present invention, when the application layer does not need data to be processed by itself, the frame layer may be required to acquire image data by itself, for example, image data may be acquired through a storage address of camera data of the camera system. Avoid cross-layer data transfer and communication synchronization overhead, improving performance and unnecessary application development work.
另外,框架层中可以设置数据处理的多种功能模块,在本发明实施例提供的方案中,可以在应用程序中通过选项的方式选择其中一部分进行处理。例如用户可以通过选项选择是否开启HDR算法处理。对于其他例如封装等处理,可以不提供选项,而由框架层自动处理。In addition, a plurality of functional modules for data processing may be disposed in the framework layer. In the solution provided by the embodiment of the present invention, a part of the processing may be selected by using an option in the application. For example, the user can select whether to enable HDR algorithm processing by using an option. For other processing such as encapsulation, options may be provided without being provided by the framework layer.
再者,本发明提供的图像硬件编码处理方法可以在框架层建立算法通道,进行图像 处理。例如,框架层能够访问相机的数据,进而可以缓存该数据,在框架层进行处理,实现零延迟拍照效果。在应用中可以在框架层中设置不同的算法,对应地在应用程序设置不同的算法处理选项。例如,由应用程序指定的不同曝光度的图像生成HDR图像、由应用程序指定不同清晰度的图像合成最高清晰度的图像等,避免了底层硬件由于编码单一性导致的提供图像的限制性,增加了应用程序的功能。Furthermore, the image hardware encoding processing method provided by the present invention can establish an algorithm channel at the framework layer for image processing. For example, the framework layer can access the camera's data, which in turn can be cached and processed at the framework layer to achieve a zero-latency photo effect. Different algorithms can be set in the framework layer in the application, correspondingly setting different algorithm processing options in the application. For example, an image of different exposures specified by an application generates an HDR image, an image of a different definition is specified by an application, and an image of the highest definition is synthesized, thereby avoiding the limitation of providing an image by the underlying hardware due to coding unity, and increasing The function of the application.
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。It should be noted that, for the method embodiments, for the sake of simple description, they are all expressed as a series of action combinations, but those skilled in the art should understand that the embodiments of the present application are not limited by the described action sequence, because In accordance with embodiments of the present application, certain steps may be performed in other sequences or concurrently. In the following, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required in the embodiments of the present application.
第三实施例Third embodiment
图7所示为本申请一实施例的图像硬件编码处理装置的结构框图。如图7所示,本申请实施例提出的图像硬件编码处理装置可以包括:FIG. 7 is a structural block diagram of an image hardware coding processing apparatus according to an embodiment of the present application. As shown in FIG. 7, the image hardware coding processing apparatus proposed by the embodiment of the present application may include:
图像数据获取模块502,用于获取图像数据;An image data obtaining module 502, configured to acquire image data;
数据处理模块503,用于至少根据配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;The data processing module 503 is configured to perform data processing on the image data at a frame layer of the operating system according to at least part of the information of the configuration information, where the configuration information includes: at least a size conversion instruction, a format conversion instruction, and an algorithm processing instruction. One;
发送模块504,用于将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The sending module 504 is configured to send the data processed image data and the hardware encoded instruction to the hardware for encoding.
由上述可知,本发明实施例提出的图像硬件编码处理装置至少具有如下技术效果:It can be seen from the above that the image hardware coding processing apparatus proposed by the embodiment of the present invention has at least the following technical effects:
在本发明实施例提出的图像硬件编码处理装置中,由于框架层能够处理尺寸转换、格式转换、算法处理等操作,应用程序可以提供多种格式图像数据,在框架层内转换为硬件能够处理的格式数据,供硬件编码。这样的操作避免了现有技术应用程序与底层硬件之间的多次数据交互,提高了编码的效率,也提高了处理的灵活性。In the image hardware coding processing apparatus proposed by the embodiment of the present invention, since the framework layer can handle operations such as size conversion, format conversion, algorithm processing, etc., the application program can provide image data of multiple formats and convert it into hardware capable of processing in the framework layer. Format data for hardware coding. Such an operation avoids multiple data interactions between the prior art application and the underlying hardware, improves coding efficiency, and increases processing flexibility.
第四实施例Fourth embodiment
图8所示为本申请另一实施例的图像硬件编码处理装置的流程图。如图8所示,本申请实施例提出的图像硬件编码处理装置可以包括:FIG. 8 is a flowchart of an image hardware coding processing apparatus according to another embodiment of the present application. As shown in FIG. 8, the image hardware encoding processing apparatus proposed by the embodiment of the present application may include:
图像数据获取模块602,用于获取图像数据;An image data obtaining module 602, configured to acquire image data;
数据处理模块603,用于至少根据配置信息的部分信息,在操作系统的框架层对所 述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;The data processing module 603 is configured to perform data processing on the image data at a framework layer of the operating system according to at least part of the information of the configuration information, where the configuration information includes: at least a size conversion instruction, a format conversion instruction, and an algorithm processing instruction. One;
发送模块605,用于将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The sending module 605 is configured to send the data processed image data and the hardware encoded instruction to the hardware for encoding.
在本发明提出的图像硬件编码处理装置的一实施例中,所述图像数据处理模块用于接收应用程序发送的图像数据。In an embodiment of the image hardware encoding processing apparatus of the present invention, the image data processing module is configured to receive image data sent by an application.
在本发明提出的图像硬件编码处理装置的一实施例中,所述配置信息还包括图像数据的提取地址,所述图像数据获取模块包括:In an embodiment of the image hardware coding processing apparatus of the present invention, the configuration information further includes an extraction address of the image data, and the image data acquisition module includes:
地址获取子模块6022,用于从所述配置信息中获取图像数据的提取地址;An address obtaining submodule 6022, configured to acquire an extracted address of the image data from the configuration information;
提取子模块6023,用于从所述提取地址中提取图像数据。An extraction submodule 6023 is configured to extract image data from the extracted address.
在本发明提出的图像硬件编码处理装置的一实施例中,所述图像数据的提取地址为在框架层内的相机数据的存储地址,所述相机数据包括:从硬件层的图像信号处理器输出的数据。In an embodiment of the image hardware encoding processing apparatus of the present invention, the extracted address of the image data is a storage address of camera data in a frame layer, and the camera data includes: an image signal processor output from a hardware layer The data.
在本发明提出的图像硬件编码处理装置的一实施例中,所述图像数据为多路图像数据,所述图像数据获取模块用于:In an embodiment of the image hardware coding processing apparatus of the present invention, the image data is multiplexed image data, and the image data acquisition module is configured to:
选择模块6024,用于从获取的多路图像数据中选择至少一路图像数据。The selecting module 6024 is configured to select at least one image data from the acquired multi-path image data.
在本发明提出的图像硬件编码处理装置的一实施例中,所述配置信息还包括拍照指令和拍照参数,所述图像数据模块还包括:In an embodiment of the image hardware coding processing apparatus of the present invention, the configuration information further includes a photographing instruction and a photographing parameter, and the image data module further includes:
拍照子模块6021,用于根据拍照指令和拍照参数驱动相机拍照。The photo sub-module 6021 is configured to drive the camera to take a photo according to the photographing instruction and the photographing parameter.
在本发明提出的图像硬件编码处理装置的一实施例中,所述拍照参数包括包括拍摄帧数和图像参数,所述拍摄帧数为多帧,所述图像参数为所述多帧对应的图像参数。In an embodiment of the image hardware encoding processing apparatus of the present invention, the photographing parameter includes a photographing frame number and an image parameter, the photographing frame number is a plurality of frames, and the image parameter is an image corresponding to the multi-frame. parameter.
在本发明提出的图像硬件编码处理装置的一实施例中,所述装置还包括:In an embodiment of the image hardware coding processing apparatus of the present invention, the apparatus further includes:
存储模块606,用于存储所述硬件编码后的图像;以及a storage module 606, configured to store the hardware encoded image;
发送模块608,用于发送所述硬件编码后图像的存储地址。The sending module 608 is configured to send a storage address of the hardware encoded image.
在本发明提出的图像硬件编码处理装置的一实施例中,所述装置还包括:In an embodiment of the image hardware coding processing apparatus of the present invention, the apparatus further includes:
内存提供模块604,用于根据内存申请指令提供内存缓存区,供存储硬件编码后的图像;The memory providing module 604 is configured to provide a memory buffer area according to the memory application instruction, for storing the hardware encoded image;
所述存储模块用于将编码后的图像存储至所述内存缓存区。The storage module is configured to store the encoded image to the memory buffer.
在本发明提出的图像硬件编码处理装置的一实施例中,所述装置还包括:In an embodiment of the image hardware coding processing apparatus of the present invention, the apparatus further includes:
移动模块607,用于将多个编码后的图像存储至连续的存储地址。The mobile module 607 is configured to store the plurality of encoded images to consecutive storage addresses.
在本发明提出的图像硬件编码处理装置的一实施例中,所述算法处理指令对应的算 法包括:HDR算法、数码变焦多帧优化、多帧降噪算法、全焦处理算法至少其中一者。In an embodiment of the image hardware coding processing apparatus of the present invention, the algorithm corresponding to the algorithm processing instruction includes at least one of an HDR algorithm, a digital zoom multi-frame optimization, a multi-frame noise reduction algorithm, and a full focus processing algorithm.
在本发明提出的图像硬件编码处理装置的一实施例中,所述硬件编码指令包括:编码后图像尺寸、图像旋转角度、图像压缩率、输出图像帧数至少其中之一。In an embodiment of the image hardware encoding processing device of the present invention, the hardware encoding instruction includes at least one of an encoded image size, an image rotation angle, an image compression ratio, and an output image frame number.
在本发明提出的图像硬件编码处理装置的一实施例中,该装置还可以包括配置信息获取模块,用于获取配置信息。上述的硬件编码指令和/或内存申请指令可以存储在配置信息中,在操作时从配置信息中获得,也可以通过其他方式获取,例如,根据应用程序提供的地址从服务器下载,或者由设定的服务器推送,或者系统默认配置、或者提供设置接口由用户设置等。In an embodiment of the image hardware encoding processing device of the present invention, the device may further include a configuration information acquiring module, configured to acquire configuration information. The above hardware coded instructions and/or memory application instructions may be stored in the configuration information, obtained from the configuration information during operation, or may be obtained by other means, for example, downloading from the server according to the address provided by the application, or by setting Server push, or system default configuration, or provide settings interface by user settings, etc.
由上述可知,本发明实施例提出的图像硬件编码处理装置至少具有如下技术效果:It can be seen from the above that the image hardware coding processing apparatus proposed by the embodiment of the present invention has at least the following technical effects:
在本发明实施例提出的图像硬件编码处理方法中,由于框架层能够处理尺寸转换、格式转换、算法处理等至少其中之一的操作,可以提供多种尺寸、格式图像数据,在框架层内转换为硬件能够处理的数据形式,供硬件编码;或者在框架层内对图像数据进行算法处理。这样的操作增加了可以提供的图像数据的形式,避免了现有技术应用程序与底层硬件之间的多次数据交互,提高了编码的效率,也提高了处理的灵活性。In the image hardware encoding processing method proposed by the embodiment of the present invention, since the framework layer can process at least one of size conversion, format conversion, algorithm processing, etc., image data of various sizes and formats can be provided, and converted in the framework layer. A form of data that can be processed by the hardware for hardware coding; or algorithmic processing of image data within the framework layer. Such an operation increases the form of image data that can be provided, avoids multiple data interactions between the prior art application and the underlying hardware, improves coding efficiency, and increases processing flexibility.
除了上述效果之外,本发明实施例提出的图像硬件编码处理装置进一步还具有如下技术效果:In addition to the above effects, the image hardware coding processing apparatus proposed by the embodiment of the present invention further has the following technical effects:
在本发明提供的图像硬件编码处理装置中,在应用程序层不需要数据在自身进行处理时,可以要求框架层自行获取图像数据,例如可以通过相机系统的存储地址获取图像数据。避免了跨层的数据传输和通讯同步开销,提升了性能和不必要的应用开发工作。In the image hardware coding processing apparatus provided by the present invention, when the application layer does not need data to be processed by itself, the frame layer may be required to acquire image data by itself, for example, image data may be acquired through a storage address of the camera system. Avoid cross-layer data transfer and communication synchronization overhead, improving performance and unnecessary application development work.
另外,框架层中可以设置数据处理的多种功能,在本发明实施例提供的方案中,可以在应用程序中通过选项的方式选择其中一部分进行处理。例如用户可以通过选项选择是否开启HDR算法处理。对于其他例如封装等处理,可以不提供选项,而由框架层自动处理。In addition, a plurality of functions of the data processing may be set in the framework layer. In the solution provided by the embodiment of the present invention, a part of the processing may be selected by using an option in the application. For example, the user can select whether to enable HDR algorithm processing by using an option. For other processing such as encapsulation, options may be provided without being provided by the framework layer.
再者,本发明提供的图像硬件编码处理装置可以在框架层建立算法通道,进行图像处理。例如,框架层能够访问相机的数据,进而可以缓存该数据,在框架层进行处理,实现零延迟拍照效果。在应用中可以在框架层中设置不同的算法,对应地在应用程序设置不同的算法处理选项。例如,由应用程序指定的不同曝光度的图像生成HDR图像、由应用程序指定不同清晰度的图像合成最高清晰度的图像等,避免了底层硬件由于编码单一性导致的提供图像的限制性,增加了应用程序的功能。Furthermore, the image hardware coding processing apparatus provided by the present invention can establish an algorithm channel at the framework layer for image processing. For example, the framework layer can access the camera's data, which in turn can be cached and processed at the framework layer to achieve a zero-latency photo effect. Different algorithms can be set in the framework layer in the application, correspondingly setting different algorithm processing options in the application. For example, an image of different exposures specified by an application generates an HDR image, an image of a different definition is specified by an application, and an image of the highest definition is synthesized, thereby avoiding the limitation of providing an image by the underlying hardware due to coding unity, and increasing The function of the application.
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关 之处参见方法实施例的部分说明即可。For the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
本申请实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行本申请实施例所述的一个或多个图像硬件编码处理方法。一种示例的机器可读介质为非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在终端设备时,可以使得该终端设备执行本申请实施例中各方法步骤的指令(instructions)。The embodiment of the present application further provides one or more machine readable mediums, on which instructions are stored, when executed by one or more processors, causing the terminal device to execute one or more image hardware as described in the embodiments of the present application. Encoding processing method. An exemplary machine readable medium is a non-volatile readable storage medium having stored therein one or more programs that can be made when the one or more modules are applied to a terminal device The device executes the instructions of the method steps in the embodiment of the present application.
图9为本申请一实施例提供的终端设备的硬件结构示意图。如图9所示,该终端设备可以包括输入设备90、处理器91、输出设备92、存储器93和至少一个通信总线94。通信总线94用于实现元件之间的通信连接。存储器93可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器93中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。FIG. 9 is a schematic structural diagram of hardware of a terminal device according to an embodiment of the present disclosure. As shown in FIG. 9, the terminal device may include an input device 90, a processor 91, an output device 92, a memory 93, and at least one communication bus 94. Communication bus 94 is used to implement a communication connection between components. Memory 93 may include high speed RAM memory, and may also include non-volatile memory NVM, such as at least one disk memory, in which various programs may be stored for performing various processing functions and implementing the method steps of the present embodiments.
可选的,上述处理器91例如可以为中央处理器(Central Processing Unit,简称CPU)、应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,该处理器91通过有线或无线连接耦合到上述输入设备90和输出设备92。Optionally, the processor 91 may be, for example, a central processing unit (CPU), an application specific integrated circuit (ASIC), a digital signal processor (DSP), a digital signal processing device (DSPD), and programmable logic. A device (PLD), field programmable gate array (FPGA), controller, microcontroller, microprocessor or other electronic component is implemented that is coupled to the input device 90 and the output device 92 by a wired or wireless connection.
可选的,上述输入设备90可以包括多种输入设备,例如可以包括面向用户的用户接口、面向设备的设备接口、软件的可编程接口、摄像头、传感器中至少一种。可选的,该面向设备的设备接口可以是用于设备与设备之间进行数据传输的有线接口、还可以是用于设备与设备之间进行数据传输的硬件插入接口(例如USB接口、串口等);可选的,该面向用户的用户接口例如可以是面向用户的控制按键、用于接收语音输入的语音输入设备以及用户接收用户触摸输入的触摸感知设备(例如具有触摸感应功能的触摸屏、触控板等);可选的,上述软件的可编程接口例如可以是供用户编辑或者修改程序的入口,例如芯片的输入引脚接口或者输入接口等;可选的,上述收发信机可以是具有通信功能的射频收发芯片、基带处理芯片以及收发天线等。麦克风等音频输入设备可以接收语音数据。输出设备92可以包括显示器、音响等输出设备。Optionally, the input device 90 may include multiple input devices, for example, at least one of a user-oriented user interface, a device-oriented device interface, a software programmable interface, a camera, and a sensor. Optionally, the device-oriented device interface may be a wired interface for data transmission between the device and the device, or may be a hardware insertion interface (for example, a USB interface, a serial port, etc.) for data transmission between the device and the device. Optionally, the user-oriented user interface may be, for example, a user-oriented control button, a voice input device for receiving voice input, and a touch-sensing device for receiving a user's touch input (eg, a touch screen with touch sensing function, touch Optionally, the programmable interface of the software may be, for example, an input for the user to edit or modify the program, such as an input pin interface or an input interface of the chip; optionally, the transceiver may have Radio frequency transceiver chip, baseband processing chip, and transceiver antenna for communication functions. An audio input device such as a microphone can receive voice data. Output device 92 can include output devices such as displays, stereos, and the like.
在本实施例中,该终端设备的处理器包括用于执行各设备中数据处理装置各模块的功能,具体功能和技术效果参照上述实施例即可,此处不再赘述。In this embodiment, the processor of the terminal device includes functions for executing the modules of the data processing device in each device. The specific functions and technical effects may be referred to the foregoing embodiments, and details are not described herein again.
图10为本申请另一实施例提供的终端设备的硬件结构示意图。图10是对图9在实 现过程中的一个具体的实施例。如图10所示,本实施例的终端设备包括处理器101以及存储器102。FIG. 10 is a schematic structural diagram of hardware of a terminal device according to another embodiment of the present disclosure. Figure 10 is a specific embodiment of the implementation of Figure 9. As shown in FIG. 10, the terminal device of this embodiment includes a processor 101 and a memory 102.
处理器101执行存储器102所存放的计算机程序代码,实现上述实施例中图2至图5的图像硬件编码处理方法。The processor 101 executes the computer program code stored in the memory 102 to implement the image hardware encoding processing method of FIGS. 2 to 5 in the above embodiment.
存储器102被配置为存储各种类型的数据以支持在终端设备的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,例如消息,图片,视频等。存储器102可能包含随机存取存储器(random access memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。The memory 102 is configured to store various types of data to support operation at the terminal device. Examples of such data include instructions for any application or method operating on the terminal device, such as messages, pictures, videos, and the like. The memory 102 may include a random access memory (RAM), and may also include a non-volatile memory such as at least one disk storage.
可选地,处理器101设置在处理组件100中。该终端设备还可以包括:通信组件103,电源组件104,多媒体组件105,音频组件106,输入/输出接口107和/或传感器组件108。终端设备具体所包含的组件等依据实际需求设定,本实施例对此不作限定。Optionally, the processor 101 is disposed in the processing component 100. The terminal device may also include a communication component 103, a power component 104, a multimedia component 105, an audio component 106, an input/output interface 107, and/or a sensor component 108. The components and the like included in the terminal device are set according to actual requirements, which is not limited in this embodiment.
处理组件100通常控制终端设备的整体操作。处理组件100可以包括一个或多个处理器101来执行指令,以完成上述图2至图1方法的全部或部分步骤。此外,处理组件100可以包括一个或多个模块,便于处理组件100和其他组件之间的交互。例如,处理组件100可以包括多媒体模块,以方便多媒体组件105和处理组件100之间的交互。 Processing component 100 typically controls the overall operation of the terminal device. Processing component 100 may include one or more processors 101 to execute instructions to perform all or part of the steps of the methods of Figures 2 through 1 above. Moreover, processing component 100 can include one or more modules to facilitate interaction between component 100 and other components. For example, processing component 100 can include a multimedia module to facilitate interaction between multimedia component 105 and processing component 100.
电源组件104为终端设备的各种组件提供电力。电源组件104可以包括电源管理系统,一个或多个电源,及其他与为终端设备生成、管理和分配电力相关联的组件。 Power component 104 provides power to various components of the terminal device. The power component 104 can include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for the terminal devices.
多媒体组件105包括在终端设备和用户之间的提供一个输出接口的显示屏。在一些实施例中,显示屏可以包括液晶显示器(LCD)和触摸面板(TP)。如果显示屏包括触摸面板,显示屏可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。The multimedia component 105 includes a display screen between the terminal device and the user that provides an output interface. In some embodiments, the display screen can include a liquid crystal display (LCD) and a touch panel (TP). If the display includes a touch panel, the display can be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may sense not only the boundary of the touch or sliding action, but also the duration and pressure associated with the touch or slide operation.
音频组件106被配置为输出和/或输入音频信号。例如,音频组件106包括一个麦克风(MIC),当终端设备处于操作模式,如语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器102或经由通信组件103发送。在一些实施例中,音频组件106还包括一个扬声器,用于输出音频信号。The audio component 106 is configured to output and/or input an audio signal. For example, the audio component 106 includes a microphone (MIC) that is configured to receive an external audio signal when the terminal device is in an operational mode, such as a voice recognition mode. The received audio signal may be further stored in memory 102 or transmitted via communication component 103. In some embodiments, the audio component 106 also includes a speaker for outputting an audio signal.
输入/输出接口107为处理组件100和外围接口模块之间提供接口,上述外围接口模块可以是点击轮,按钮等。这些按钮可包括但不限于:音量按钮、启动按钮和锁定按钮。The input/output interface 107 provides an interface between the processing component 100 and the peripheral interface module, which may be a click wheel, a button, or the like. These buttons may include, but are not limited to, a volume button, a start button, and a lock button.
传感器组件108包括一个或多个传感器,用于为终端设备提供各个方面的状态评估。例如,传感器组件108可以检测到终端设备的打开/关闭状态,组件的相对定位,用户与 终端设备接触的存在或不存在。传感器组件108可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在,包括检测用户与终端设备间的距离。在一些实施例中,该传感器组件108还可以包括摄像头等。 Sensor assembly 108 includes one or more sensors for providing status assessment of various aspects to the terminal device. For example, sensor component 108 can detect the on/off state of the terminal device, the relative positioning of the components, and the presence or absence of contact of the user with the terminal device. The sensor assembly 108 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact, including detecting the distance between the user and the terminal device. In some embodiments, the sensor assembly 108 can also include a camera or the like.
通信组件103被配置为便于终端设备和其他设备之间有线或无线方式的通信。终端设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个实施例中,该终端设备中可以包括SIM卡插槽,该SIM卡插槽用于插入SIM卡,使得终端设备可以登录GPRS网络,通过互联网与服务器建立通信。The communication component 103 is configured to facilitate wired or wireless communication between the terminal device and other devices. The terminal device can access a wireless network based on a communication standard such as WiFi, 2G or 3G, or a combination thereof. In an embodiment, the terminal device may include a SIM card slot for inserting the SIM card, so that the terminal device can log in to the GPRS network and establish communication with the server through the Internet.
由上可知,在图10实施例中所涉及的通信组件103、音频组件106以及输入/输出接口107、传感器组件108均可以作为图9实施例中的输入设备的实现方式。It can be seen from the above that the communication component 103, the audio component 106, the input/output interface 107, and the sensor component 108 involved in the embodiment of FIG. 10 can be implemented as an input device in the embodiment of FIG.
本申请实施例提供了一种终端设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如本申请实施例中一个或多个所述的图像硬件编码处理方法。An embodiment of the present application provides a terminal device, including: one or more processors; and one or more machine-readable media having instructions stored thereon, when executed by the one or more processors, The terminal device performs an image hardware coding processing method as described in one or more of the embodiments of the present application.
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。The various embodiments in the present specification are described in a progressive manner, and each embodiment focuses on differences from other embodiments, and the same similar parts between the various embodiments can be referred to each other.
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the embodiments of the present application can be provided as a method, apparatus, or computer program product. Therefore, the embodiments of the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Moreover, embodiments of the present application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用 于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。In a typical configuration, the computer device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory. The memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory. Memory is an example of a computer readable medium. Computer readable media includes both permanent and non-persistent, removable and non-removable media. Information storage can be implemented by any method or technology. The information can be computer readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include non-persistent computer readable media, such as modulated data signals and carrier waves.
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。Embodiments of the present application are described with reference to flowcharts and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing terminal device to produce a machine such that instructions are executed by a processor of a computer or other programmable data processing terminal device Means are provided for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The instruction device implements the functions specified in one or more blocks of the flow or in a flow or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device such that a series of operational steps are performed on the computer or other programmable terminal device to produce computer-implemented processing, such that the computer or other programmable terminal device The instructions executed above provide steps for implementing the functions specified in one or more blocks of the flowchart or in a block or blocks of the flowchart.
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。While a preferred embodiment of the embodiments of the present application has been described, those skilled in the art can make further changes and modifications to the embodiments once they are aware of the basic inventive concept. Therefore, the appended claims are intended to be interpreted as including all the modifications and the modifications
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。Finally, it should also be noted that in this context, relational terms such as first and second are used merely to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply these entities. There is any such actual relationship or order between operations. Furthermore, the terms "comprises" or "comprising" or "comprising" or any other variations are intended to encompass a non-exclusive inclusion, such that a process, method, article, or terminal device that includes a plurality of elements includes not only those elements but also Other elements that are included, or include elements inherent to such a process, method, article, or terminal device. An element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or terminal device that comprises the element, without further limitation.
以上对本申请所提供的一种图像硬件编码处理方法和装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于 帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。The foregoing describes an image hardware coding processing method and apparatus provided by the present application in detail. The principles and implementation manners of the present application are described in the specific examples. The description of the above embodiments is only used to help understand the present text. The method of application and its core idea; at the same time, for those of ordinary skill in the art, according to the idea of the present application, there will be changes in the specific implementation manner and application scope. In summary, the content of this specification should not be understood. To limit the application.

Claims (26)

  1. 一种图像硬件编码处理方法,其特征在于,所述方法包括:An image hardware coding processing method, the method comprising:
    获取图像数据;Obtain image data;
    至少根据配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理;所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;Performing, at least one of: a size conversion instruction, a format conversion instruction, and an algorithm processing instruction, at least one of a size conversion instruction, a format conversion instruction, and an algorithm processing instruction, according to at least part of the information of the configuration information;
    将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The data processed image data and the hardware coded instructions are sent to the hardware for encoding.
  2. 根据权利要求1所述的方法,其特征在于,所述获取图像数据的步骤包括:The method of claim 1 wherein said step of acquiring image data comprises:
    接收应用程序发送的图像数据。Receive image data sent by the application.
  3. 根据权利要求1所述的方法,其特征在于,所述配置信息还包括图像数据的提取地址,所述获取图像数据的步骤包括:The method according to claim 1, wherein the configuration information further comprises an extraction address of the image data, and the step of acquiring the image data comprises:
    从所述配置信息中获取图像数据的提取地址;Obtaining an extracted address of the image data from the configuration information;
    从所述提取地址中提取图像数据。Image data is extracted from the extracted address.
  4. 根据权利要求3所述的方法,其特征在于,所述图像数据的提取地址为在框架层内的相机数据的存储地址,所述相机数据包括:从硬件层的图像信号处理器输出的数据。The method according to claim 3, wherein the extracted address of the image data is a storage address of camera data within a frame layer, and the camera data comprises data output from an image signal processor of the hardware layer.
  5. 根据权利要求3所述的方法,其特征在于,所述图像数据为多路图像数据,所述获取图像数据的步骤包括:The method according to claim 3, wherein the image data is multiplexed image data, and the step of acquiring image data comprises:
    从获取的多路图像数据中选择至少一路图像数据。At least one image data is selected from the acquired multiplexed image data.
  6. 根据权利要求3所述的方法,其特征在于,所述配置信息还包括拍照指令和拍照参数,从所述配置信息中获取图像数据的提取地址的步骤之前,还包括:The method according to claim 3, wherein the configuration information further includes a photographing instruction and a photographing parameter, and before the step of obtaining the extracted address of the image data from the configuration information, the method further includes:
    根据拍照指令和拍照参数驱动相机拍照。The camera is driven to take photos according to the camera instruction and the camera parameters.
  7. 根据权利要求6所述的方法,其特征在于,所述拍照参数包括拍摄帧数和图像参数。The method according to claim 6, wherein the photographing parameters include a number of photographing frames and image parameters.
  8. 根据权利要求1所述的方法,其特征在于,所述将数据处理后的图像数据和硬件编码指令发送至硬件进行编码的步骤之后,所述方法还包括:The method according to claim 1, wherein after the step of transmitting the data processed image data and the hardware encoding instructions to the hardware for encoding, the method further comprises:
    存储所述硬件编码后的图像;以及Storing the hardware encoded image; and
    发送所述硬件编码后图像的存储地址。Sending the storage address of the hardware encoded image.
  9. 根据权利要求8所述的方法,其特征在于,所述方法还包括:The method of claim 8 further comprising:
    根据内存申请指令提供内存缓存区,供存储所述硬件编码后的图像;Providing a memory buffer according to the memory application instruction for storing the hardware-encoded image;
    所述存储所述硬件编码后的图像的步骤包括:The step of storing the hardware encoded image includes:
    将所述硬件编码后的图像存储至所述内存缓存区。The hardware encoded image is stored to the memory buffer.
  10. 根据权利要求8所述的方法,其特征在于,所述将数据处理后的图像数据和硬件编码指令发送至硬件进行编码的步骤之后,所述方法还包括:The method according to claim 8, wherein after the step of transmitting the data processed image data and the hardware encoding instructions to the hardware for encoding, the method further comprises:
    将多个编码后的图像存储至连续的存储地址。Store multiple encoded images to consecutive storage addresses.
  11. 根据权利要求1所述的方法,其特征在于,所述算法处理处理指令对应的算法包括:The method according to claim 1, wherein the algorithm corresponding to the algorithm processing instruction instruction comprises:
    HDR算法、数码变焦多帧优化、多帧降噪算法、全焦处理算法至少其中一者。At least one of an HDR algorithm, a digital zoom multi-frame optimization, a multi-frame noise reduction algorithm, and a full focus processing algorithm.
  12. 根据权利要求1所述的方法,其特征在于,所述硬件编码指令包括:编码后图像尺寸、图像旋转角度、图像压缩率、输出图像帧数至少其中之一。The method according to claim 1, wherein the hardware coded instruction comprises at least one of an encoded image size, an image rotation angle, an image compression ratio, and an output image frame number.
  13. 一种图像硬件编码处理装置,其特征在于,所述装置包括:An image hardware coding processing device, characterized in that the device comprises:
    图像数据获取模块,用于获取图像数据;An image data acquiring module, configured to acquire image data;
    数据处理模块,用于至少根据配置信息的部分信息,在操作系统的框架层对所述图像数据进行数据处理,所述配置信息包括:尺寸转换指令、格式转换指令和算法处理指令至少其中之一;a data processing module, configured to perform data processing on the image data at a framework layer of the operating system according to at least part of the information of the configuration information, where the configuration information includes: at least one of a size conversion instruction, a format conversion instruction, and an algorithm processing instruction ;
    发送模块,用于将数据处理后的图像数据和硬件编码指令发送至硬件进行编码。The sending module is configured to send the data processed image data and the hardware encoded instruction to the hardware for encoding.
  14. 根据权利要求13所述的装置,其特征在于,所述图像数据处理模块用于接收应用程序发送的图像数据。The apparatus according to claim 13, wherein said image data processing module is operative to receive image data transmitted by an application.
  15. 根据权利要求13所述的装置,其特征在于,所述配置信息还包括图像数据的提取地址,所述图像数据获取模块包括:The device according to claim 13, wherein the configuration information further includes an extraction address of the image data, and the image data acquisition module comprises:
    地址获取子模块,用于从所述配置信息中获取图像数据的提取地址;An address obtaining submodule, configured to obtain an extracted address of the image data from the configuration information;
    提取子模块,用于从所述提取地址中提取图像数据。An extraction submodule for extracting image data from the extracted address.
  16. 根据权利要求15所述的装置,其特征在于,所述图像数据的提取地址为在框架层内的相机数据的存储地址,所述相机数据包括:从硬件层的图像信号处理器输出的数据。The apparatus according to claim 15, wherein the extracted address of the image data is a storage address of camera data within a frame layer, and the camera data includes data output from an image signal processor of the hardware layer.
  17. 根据权利要求15所述的装置,其特征在于,所述图像数据为多路图像数据,所述图像数据获取模块用于:The device according to claim 15, wherein the image data is multiplexed image data, and the image data acquiring module is configured to:
    选择模块,用于从获取的多路图像数据中选择至少一路图像数据。And a selection module, configured to select at least one image data from the acquired multi-path image data.
  18. 根据权利要求15所述的装置,其特征在于,所述配置信息还包括拍照指令和拍照参数,所述图像数据模块还包括:The device according to claim 15, wherein the configuration information further includes a photographing instruction and a photographing parameter, and the image data module further comprises:
    拍照子模块,用于根据拍照指令和拍照参数驱动相机拍照。The photo sub-module is configured to drive the camera to take a photo according to the photographing instruction and the photographing parameter.
  19. 根据权利要求18所述的装置,其特征在于,所述拍照参数包括拍摄帧数和图像参数。The apparatus according to claim 18, wherein said photographing parameters include a number of photographing frames and image parameters.
  20. 根据权利要求13所述的装置,其特征在于,所述装置还包括:The device according to claim 13, wherein the device further comprises:
    存储模块,用于存储所述硬件编码后的图像;以及a storage module, configured to store the hardware encoded image;
    发送模块,用于发送所述硬件编码后图像的存储地址。And a sending module, configured to send a storage address of the hardware encoded image.
  21. 根据权利要求20所述的装置,其特征在于,所述装置还包括:The device of claim 20, wherein the device further comprises:
    内存提供模块,用于根据内存申请指令提供内存缓存区,供存储所述硬件编码后的图像;a memory providing module, configured to provide a memory buffer area according to the memory application instruction, for storing the hardware encoded image;
    所述存储模块用于将编码后的图像存储至所述内存缓存区。The storage module is configured to store the encoded image to the memory buffer.
  22. 根据权利要求20所述的装置,其特征在于,所述装置还包括:The device of claim 20, wherein the device further comprises:
    移动模块,用于将多个编码后的图像存储至连续的存储地址。A mobile module for storing a plurality of encoded images to consecutive storage addresses.
  23. 根据权利要求13所述的装置,其特征在于,所述算法处理指令对应的算法包括:HDR算法、数码变焦多帧优化、多帧降噪算法、全焦处理算法至少其中一者。The apparatus according to claim 13, wherein the algorithm corresponding to the algorithm processing instruction comprises at least one of an HDR algorithm, a digital zoom multi-frame optimization, a multi-frame noise reduction algorithm, and a full focus processing algorithm.
  24. 根据权利要求13所述的装置,其特征在于,所述硬件编码指令包括:编码后图像尺寸、图像旋转角度、图像压缩率、输出图像帧数至少其中之一。The apparatus according to claim 13, wherein the hardware coded instruction comprises at least one of an encoded image size, an image rotation angle, an image compression ratio, and an output image frame number.
  25. 一种终端设备,其特征在于,包括:A terminal device, comprising:
    一个或多个处理器;和One or more processors; and
    其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述终端设备执行如权利要求1-12中一个或多个所述的方法。One or more machine-readable media having stored thereon instructions that, when executed by the one or more processors, cause the terminal device to perform the method of one or more of claims 1-12.
  26. 一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得终端设备执行如权利要求1-12中一个或多个所述的方法。One or more machine-readable medium having stored thereon instructions that, when executed by one or more processors, cause the terminal device to perform the method of one or more of claims 1-12.
PCT/CN2018/109280 2017-10-13 2018-10-08 Image hardware encoding processing method and device WO2019072140A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710952763.X 2017-10-13
CN201710952763.XA CN109672884B (en) 2017-10-13 2017-10-13 Image hardware coding processing method and device

Publications (1)

Publication Number Publication Date
WO2019072140A1 true WO2019072140A1 (en) 2019-04-18

Family

ID=66100371

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/109280 WO2019072140A1 (en) 2017-10-13 2018-10-08 Image hardware encoding processing method and device

Country Status (3)

Country Link
CN (1) CN109672884B (en)
TW (1) TW201923703A (en)
WO (1) WO2019072140A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019484A (en) * 2019-05-31 2020-12-01 阿里巴巴集团控股有限公司 Method for acquiring sound source data and related equipment

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113554718B (en) * 2020-04-24 2023-04-28 Oppo(重庆)智能科技有限公司 Image encoding method, storage medium, and electronic apparatus
CN111447439B (en) * 2020-05-18 2022-08-09 Oppo(重庆)智能科技有限公司 Image coding method, image coding device and mobile terminal
CN111447370B (en) * 2020-05-19 2021-07-27 Oppo广东移动通信有限公司 Camera access method, camera access device, terminal equipment and readable storage medium
CN111930641A (en) * 2020-07-28 2020-11-13 展讯通信(天津)有限公司 Image data processing method and intelligent equipment
CN112188034A (en) * 2020-09-29 2021-01-05 北京小米移动软件有限公司 Image processing method, device, terminal equipment and medium
CN115706849B (en) * 2021-08-05 2024-01-30 北京小米移动软件有限公司 Camera software architecture, platform and terminal equipment
CN116389898B (en) * 2023-02-27 2024-03-19 荣耀终端有限公司 Image processing method, device and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100328325A1 (en) * 2009-06-30 2010-12-30 Sevigny Benoit Fingerprinting of Fragment Shaders and Use of Same to Perform Shader Concatenation
CN102609302A (en) * 2012-01-17 2012-07-25 中兴通讯股份有限公司 Multimedia application concurrent-management method and multimedia application concurrent-management device
CN104702909A (en) * 2014-04-17 2015-06-10 杭州海康威视数字技术股份有限公司 Video data processing method and video data processing device
CN106454186A (en) * 2016-11-02 2017-02-22 深圳瑞芯通智能科技有限公司 Multi-channel video recording and platform interaction method and device based on Android system
CN106657757A (en) * 2015-11-04 2017-05-10 阿里巴巴集团控股有限公司 Image preview method of camera application, apparatus and camera application system thereof
CN106873932A (en) * 2017-02-17 2017-06-20 浙江大学 A kind of android system service end, remote desktop image reorientation method and system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7549154B2 (en) * 2004-11-23 2009-06-16 Microsoft Corporation Extensible architecture for auxiliary displays
US20140328402A1 (en) * 2013-05-06 2014-11-06 Nvidia Corporation Efficient initialization of a reference frame of a bi-predicted/predicted video frame during decoding thereof
CN105338249A (en) * 2015-11-24 2016-02-17 努比亚技术有限公司 Independent camera system-based shooting method and mobile terminal

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100328325A1 (en) * 2009-06-30 2010-12-30 Sevigny Benoit Fingerprinting of Fragment Shaders and Use of Same to Perform Shader Concatenation
CN102609302A (en) * 2012-01-17 2012-07-25 中兴通讯股份有限公司 Multimedia application concurrent-management method and multimedia application concurrent-management device
CN104702909A (en) * 2014-04-17 2015-06-10 杭州海康威视数字技术股份有限公司 Video data processing method and video data processing device
CN106657757A (en) * 2015-11-04 2017-05-10 阿里巴巴集团控股有限公司 Image preview method of camera application, apparatus and camera application system thereof
CN106454186A (en) * 2016-11-02 2017-02-22 深圳瑞芯通智能科技有限公司 Multi-channel video recording and platform interaction method and device based on Android system
CN106873932A (en) * 2017-02-17 2017-06-20 浙江大学 A kind of android system service end, remote desktop image reorientation method and system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019484A (en) * 2019-05-31 2020-12-01 阿里巴巴集团控股有限公司 Method for acquiring sound source data and related equipment

Also Published As

Publication number Publication date
CN109672884A (en) 2019-04-23
TW201923703A (en) 2019-06-16
CN109672884B (en) 2022-05-10

Similar Documents

Publication Publication Date Title
WO2019072140A1 (en) Image hardware encoding processing method and device
EP2757773B1 (en) Method and apparatus for photographing in portable terminal
JP2023511581A (en) Long focus imaging method and electronic device
US8514292B2 (en) Digital photographing apparatus, method of controlling the same, and recording medium storing program to execute the method
US9516234B2 (en) Apparatus and method for transmitting a frame image of a camera
KR101949832B1 (en) Picture displaying method, apparatus and terminal device
JP2006115475A (en) Image processor, image processing method and image processing program
US7847827B2 (en) Method and apparatus for photographing an object to produce still image while recording moving picture
WO2023016039A1 (en) Video processing method and apparatus, electronic device, and storage medium
JP2009268092A (en) Portable imaging apparatus offloading image processing operation
WO2020259250A1 (en) Image processing method, image processor, photographing apparatus, and electronic device
JP2013131878A (en) Image processing device, image processing method, and program
WO2023160295A1 (en) Video processing method and apparatus
CN113329176A (en) Image processing method and related device applied to camera of intelligent terminal
US8947558B2 (en) Digital photographing apparatus for multi-photography data and control method thereof
WO2024041394A1 (en) Photographing method and related apparatus
WO2022166521A1 (en) Cross-device collaborative photographing method, related apparatus, and system
JP2023532815A (en) Photographic methods and electronic devices
US8804028B2 (en) Digital image production method and apparatus
KR20100104013A (en) Apparatus and method for image processing
US20140193083A1 (en) Method and apparatus for determining the relationship of an image to a set of images
TWM519367U (en) Camera system capable of fast switching recording mode
CN117082295B (en) Image stream processing method, device and storage medium
WO2022061723A1 (en) Image processing method, device, terminal, and storage medium
US20240155236A1 (en) Image processing method and electronic device

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: 18866147

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18866147

Country of ref document: EP

Kind code of ref document: A1