CN113596581B - 一种图像格式转换方法、装置、计算机设备和存储介质 - Google Patents
一种图像格式转换方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113596581B CN113596581B CN202110875659.1A CN202110875659A CN113596581B CN 113596581 B CN113596581 B CN 113596581B CN 202110875659 A CN202110875659 A CN 202110875659A CN 113596581 B CN113596581 B CN 113596581B
- Authority
- CN
- China
- Prior art keywords
- information
- color
- sub
- image
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 61
- 208000009115 Anorectal Malformations Diseases 0.000 claims description 46
- 238000012545 processing Methods 0.000 claims description 43
- 238000011161 development Methods 0.000 claims description 33
- 238000004364 calculation method Methods 0.000 claims description 28
- 238000000605 extraction Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 20
- 229910052754 neon Inorganic materials 0.000 description 18
- GKAOGPIIYCISHV-UHFFFAOYSA-N neon atom Chemical compound [Ne] GKAOGPIIYCISHV-UHFFFAOYSA-N 0.000 description 18
- 230000008901 benefit Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440236—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by media transcoding, e.g. video is transformed into a slideshow of still pictures, audio is converted into text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
- G06T3/4007—Interpolation-based scaling, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Abstract
本公开提供了一种图像格式转换方法、装置、计算机设备和存储介质,其中,该方法包括:获取待转换图像的第一颜色编码信息;第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,待转换图像的每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;基于第一颜色编码信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,并行提取多组第一色彩信息,得到第二信息序列;基于一组第一色彩信息对应的第一亮度信息的第一数量、第二信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息;基于每个像素点对应的颜色编码子信息,生成待转换图像对应于目标格式的目标图像。
Description
技术领域
本公开涉及图像处理技术领域,具体而言,涉及一种图像格式转换方法、装置、计算机设备和存储介质。
背景技术
图像格式转换是视频编码的预处理操作,在视频编码之前需要将输入图像转换为特定格式的图像,比如NV12格式的图像。现有的开源图像格式转换方案,一般为基于X86-64平台的软件库OpenCV、FFmpeg中的图像格式转换工具,借助图形处理器GPU或者指令集的性能优势加速图像格式转换的速度。但是在ARM开发板的QNX平台下,由于ARM开发板算力不足,且不能使用GPU等外部图像处理设备的性能优势加速图像格式转换,导致图像格式转换的耗时较高,超高的耗时导致基于ARM开发板的图像格式转换方式无法在实时性要求高的应用中使用。
发明内容
本公开实施例至少提供一种图像格式转换方法、装置、计算机设备和存储介质。
第一方面,本公开实施例提供了一种图像格式转换方法,应用于ARM开发板,包括:
获取待转换图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
基于所述第一颜色编码信息中所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像。
本方面中,利用ARM开发板能够并行处理数据的功能,例如利用ARM开发板中的Neon扩展结构以及CPU自带的寄存器,能够从寄存器中存储的第一颜色编码信息中并行提取多个第一亮度信息和多组第一色彩信息,由于并行提取能够成倍提高信息获取速度,因此能够实现在CPU上成倍加速图像格式转换,能够满足实时性图像格式转换的需求。与现有技术相比,其不依赖于GPU等图像处理设备,能够降低图像格式转换的硬件成本;另外,本方面为实时图像格式转换提供了ARM开发板通用的图像格式转换方法,同时,与X86-64平台相比,ARM开发板的功耗和硬件成本较低。
一种可选的实施方式中,所述基于所述第一颜色编码信息中所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,包括:
基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息;
基于所述ARM中寄存器的存储容量,确定所述ARM开发板的并行处理性能信息;
基于所述第一排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多个第一亮度信息,得到所述第一信息序列;
所述基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列,包括:
基于所述第一排序顺序,确定所述第一色彩信息在所述第一颜色编码信息中的第二排序特征信息;
基于所述第二排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多组第一色彩信息,得到所述第二信息序列。
该实施方式,由于第一亮度信息和第一色彩信息在第一颜色编码信息中的排列方式符合一定的排序特征,比如位于奇数位或偶数位,因此,可以利用Neon扩展结构从第一颜色编码信息中分别并行提取出第一排序特征信息对应的第一亮度信息,以及第二排序特征信息对应的第一色彩信息,通过并行处理性能信息并行加速对第一亮度信息和第一色彩信息的提取,能够快速得到待转换图像中的多个像素点对应的第一信息序列和第二信息序列,进而提高待转换图像中的多个像素点的图像格式转换的效率。
一种可选的实施方式中,所述并行处理性能信息包括所述并行提取的信息的目标条数;所述第一色彩信息包括第一色彩子信息和第二色彩子信息;第一排序顺序包括所述第一色彩子信息和所述第二色彩子信息之间排列有所述第一亮度信息;所述第一排序特征信息包括多个所述第一亮度信息的多个第一排序次序;
所述基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息,包括:
基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序次序;
所述基于所述第一排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多个第一亮度信息,得到所述第一信息序列,包括:
基于所述多个第一排序次序,从所述第一颜色编码信息中并行提取所述目标条数的第一亮度信息,并基于提取到的多个第一亮度信息,确定所述第一信息序列。
该实施方式,利用并行处理性能信息,确定利用Neon扩展结构从第一颜色编码信息中一次并行提取的第一亮度信息的信息条数,之后,利用第一排序特征信息所指示的第一亮度信息的多个第一排序次序,定位该次提取的第一亮度信息的位置,能够准确提取到多个第一亮度信息,进一步加快并行提取的速度,进而提高图像格式转换的效率。
一种可选的实施方式中,所述第一色彩信息包括第一色彩子信息和第二色彩子信息;
所述基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息,包括:
基于所述第一色彩子信息和所述第二色彩子信息在所述第二信息序列中的第二排序顺序,确定所述第一色彩子信息对应的第三信息序列和所述第二色彩子信息对应的第四信息序列;
基于一组所述第一色彩信息对应的第一亮度信息的第一数量、所述第三信息序列、所述第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
该实施方式,利用一组第一色彩信息与第一亮度信息之间的对应关系,能够确定第一信息序列中的第一亮度信息与第三信息序列中的第一色彩子信息之间的对应关系,以及确定第一信息序列中的第一亮度信息与第四信息序列中的第二色彩子信息之间的对应关系,之后,基于上述对应关系,能够准确的得到待转换图像中的每个像素点对应的颜色编码子信息。另外,由于并行提取第一亮度信息和第一色彩信息,因此,能够同时确定出待转换图像中的多个像素点对应的颜色编码子信息,进而提高确定每个像素点对应的颜色编码子信息的效率。
一种可选的实施方式中,所述基于一组所述第一色彩信息对应的第一亮度信息的第一数量、所述第三信息序列、第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息,包括:
在两个第一亮度信息对应一组所述第一色彩信息的情况下,在所述第三信息序列中的每个第一色彩子信息的相邻位置处添加所述第一色彩子信息,得到新的第三信息序列;
在所述第四信息序列中的每个第二色彩子信息的相邻位置处添加所述第二色彩子信息,得到新的第四信息序列;
基于新的第三信息序列、新的第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
该实施方式,在确定了第一信息序列中的两个第一亮度信息对应一组第一色彩信息的情况下,基于上述实施方式,能够准确得到第一信息序列中每个第一亮度信息与第三信息序列中的第一色彩子信息之间的对应关系,并为第一色彩子信息赋值,能够得到精准的与第一信息序列相对应的新的第三信息序列,该新的第三信息序列中的第一色彩子信息与第一信息序列中的第一亮度信息一一对应。同时,基于上述实施方式,能够准确得到第一信息序列中每个第一亮度信息与第四信息序列中的第二色彩子信息之间的对应关系,并为第二色彩子信息赋值,能够得到精准的与第一信息序列相对应的新的第四信息序列,该新的第四信息序列中的第二色彩子信息与第一信息序列中的第一亮度信息一一对应。
一种可选的实施方式中,所述目标格式包括第一子格式;所述目标图像包括第一目标子图像;
所述基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像,包括:
基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一子格式的第二颜色编码信息;
基于每个像素点对应的所述第二颜色编码信息,生成所述待转换图像对应于所述第一子格式的第一目标子图像。
该实施方式,由于上述实施方式中能够同时确定出待转换图像中的多个像素点对应的颜色编码子信息,因此,能够同时确定出多个像素点对应于第一子格式的第二颜色编码信息,进而能够同时转换待转换图像中多个像素点的图像格式,提高了待转换图像到第一目标子图像的图像格式转换的效率。
一种可选的实施方式中,所述目标格式还包括第二子格式;所述目标图像还包括第二目标子图像;所述第二子格式对应第三颜色编码信息;所述第三颜色编码信息中包括第二亮度信息和第二色彩信息;所述第二目标子图像的每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
在确定所述第二颜色编码信息之后,还包括:
基于所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二亮度信息;
基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息;
基于所述第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,生成与所述第二子格式对应的第二目标子图像。
该实施方式,基于ARM开发板中的寄存器存储的多个像素点对应的第二颜色编码信息,能够并行计算得到该多个像素点的第二亮度信息,基于ARM开发板中的寄存器存储的多个像素点对应的第二颜色编码信息,能够并行计算得到该多个像素点的第二色彩信息,相比较依次计算每个像素点的第二亮度信息和第二色彩信息,本实施方式能够成倍提高第二亮度信息和第二色彩信息的计算效率,进而提高图像格式转换的效率。
一种可选的实施方式中,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息,包括:
基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息;所述目标像素点包括用于确定所述第二色彩信息的像素点;
基于所述第三排序特征信息和所述待转换图像中每个像素点对应的第二颜色编码信息,确定所述目标像素点对应的第二颜色编码信息;
基于所述目标像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
该实施方式中一组第二色彩信息对应的第二亮度信息的第二数量表示第二数量第二亮度信息共享的一组第二色彩信息,由于第二子格式的图像格式特点,在确定第二色彩信息之前,需要预先确定目标像素点的排序特征信息,即利用第二数量,确定目标像素点的第三排序特征信息,基于该第三排序特征信息所指示的多个目标像素点对应的第二颜色编码信息,能够并行提取到多个目标像素点对应的第二色彩信息。之后,由于第二数量第二亮度信息共享一组第二色彩信息,因此,能够得到第二目标子图像中的每个像素点对应的第二色彩信息。
一种可选的实施方式中,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息,包括:
在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于偶数行并且位于偶数列;或者,
在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于奇数行并且位于奇数列。
本实施方式中在确定四个第二亮度信息共享一组第二色彩信息的情况下,即第二子格式为四个第二亮度信息共享一组第二色彩信息,按照像素点的排序特点,能够确定出第三排序特征信息为偶数行、偶数列;或者为,奇数行、奇数列。
一种可选的实施方式中,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息,包括:
基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;
利用所述第三数量的寄存器存储所述第二颜色编码信息,并基于所述寄存器存储所述第二颜色编码信息进行并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
该实施方式,利用第三数量的寄存器所存储的多个像素点的第二颜色编码信息,能够并行计算得到该多个像素点的第二色彩信息,提高第二色彩信息的计算效率。另外,在并行计算的基础上,第三数量的寄存器越多,提高第二色彩信息的计算效率越显著。
第二方面,本公开实施例还提供一种图像格式转换装置,包括:
信息获取模块,用于获取待转换图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
信息提取模块,用于基于所述第一颜色编码信息中所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
信息确定模块,用于基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
第一图像转换模块,用于基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像。
一种可选的实施方式中,所述信息提取模块,用于基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息;基于所述ARM中寄存器的存储容量,确定所述ARM开发板的并行处理性能信息;基于所述第一排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多个第一亮度信息,得到所述第一信息序列;以及,基于所述第一排序顺序,确定所述第一色彩信息在所述第一颜色编码信息中的第二排序特征信息;基于所述第二排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多组第一色彩信息,得到所述第二信息序列。
一种可选的实施方式中,所述并行处理性能信息包括所述并行提取的信息目标条数;所述第一色彩信息包括第一色彩子信息和第二色彩子信息;第一排序顺序包括所述第一色彩子信息和所述第二色彩子信息之间排列有所述第一亮度信息;所述第一排序特征信息包括多个所述第一亮度信息的多个第一排序次序;
所述信息提取模块,用于基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序次序;基于所述多个第一排序次序,从所述第一颜色编码信息中并行提取所述目标条数的第一亮度信息,并基于提取到的多个第一亮度信息,确定所述第一信息序列。
一种可选的实施方式中,所述第一色彩信息包括第一色彩子信息和第二色彩子信息;
所述信息确定模块,用于基于所述第一色彩子信息和所述第二色彩子信息在所述第二信息序列中的第二排序顺序,确定所述第一色彩子信息对应的第三信息序列和所述第二色彩子信息对应的第四信息序列;基于一组所述第一色彩信息对应的第一亮度信息的第一数量、所述第三信息序列、所述第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
一种可选的实施方式中,所述信息确定模块,用于在两个第一亮度信息对应一组所述第一色彩信息的情况下,在所述第三信息序列中的每个第一色彩子信息的相邻位置处添加所述第一色彩子信息,得到新的第三信息序列;在所述第四信息序列中的每个第二色彩子信息的相邻位置处添加所述第二色彩子信息,得到新的第四信息序列;基于新的第三信息序列、新的第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
一种可选的实施方式中,所述目标格式包括第一子格式;所述目标图像包括第一目标子图像;
所述第一图像转换模块,用于基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一子格式的第二颜色编码信息;基于每个像素点对应的所述第二颜色编码信息,生成所述待转换图像对应于所述第一子格式的第一目标子图像。
一种可选的实施方式中,所述目标格式还包括第二子格式;所述目标图像还包括第二目标子图像;所述第二子格式对应第三颜色编码信息;所述第三颜色编码信息中包括第二亮度信息和第二色彩信息;所述第二目标子图像的每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述装置还包括第二图像转换模块,用于在确定所述第二颜色编码信息之后,基于所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二亮度信息;基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息;基于所述第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,生成与所述第二子格式对应的第二目标子图像。
一种可选的实施方式中,所述第二图像转换模块,用于基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息;所述目标像素点包括用于确定所述第二色彩信息的像素点;基于所述第三排序特征信息和所述待转换图像中每个像素点对应的第二颜色编码信息,确定所述目标像素点对应的第二颜色编码信息;基于所述目标像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
一种可选的实施方式中,所述第二图像转换模块,用于在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于偶数行并且位于偶数列;或者,在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于奇数行并且位于奇数列。
一种可选的实施方式中,所述第二图像转换模块,用于基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;利用所述第三数量的寄存器存储所述第二颜色编码信息,并基于所述寄存器存储所述第二颜色编码信息进行并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的图像格式转换方法的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的图像格式转换方法的步骤。
关于上述图像格式转换装置、计算机设备和存储介质的效果描述参见上述图像格式转换方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种图像格式转换方法的流程图;
图2示出了本公开实施例所提供的生成第二子格式对应的第二目标子图像的流程图;
图3示出了本公开实施例所提供的从第一目标子图像中确定出的目标像素点的示意图;
图4示出了本公开实施例所提供的一种图像格式转换装置的示意图;
图5示出了本公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
另外,本公开实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
经研究发现,图像格式转换是视频编码的预处理操作,在视频编码之前需要将输入图像转换为特定格式的图像,比如NV12格式的图像。现有的开源图像格式转换方案,一般为基于X86-64平台的OpenCV,FFmpeg库中的图像格式转换工具,借助图形处理器GPU或者指令集的性能优势加速图像格式转换的速度。但是在ARM开发板的QNX平台下,由于ARM开发板算力不足,且不能使用GPU等外部图像处理设备的性能优势加速图像格式转换,导致图像格式转换的耗时较高,超高的耗时导致基于ARM开发板的图像格式转换方式无法在实时性要求高的应用中使用。
基于上述研究,本公开提供了一种图像格式转换方法,利用ARM开发板中的Neon扩展结构以及CPU自带的寄存器,能够从寄存器中存储的第一颜色编码信息中并行提取多个第一亮度信息和多组第一色彩信息,由于并行提取能够成倍提高信息获取速度,因此能够实现在CPU上成倍加速图像格式转换,能够满足实时性图像格式转换的需求。与现有技术相比,其不依赖于GPU等图像处理设备,能够降低图像格式转换的硬件成本;另外,本方面为实时图像格式转换提供了ARM开发板通用的图像格式转换方法,同时,与X86-64平台相比,ARM开发板的功耗和硬件成本较低。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
下面对本公开实施例中涉及到的特定名词进行介绍:
1、ARM处理器(Advanced RISC Machines,ARM),是一种低功耗成本的RISC微处理器。
2、ARM开发板,即以ARM的内核芯片作为CPU,同时附加其他外围功能的嵌入式开发板,用于评估内核芯片的功能和研发各类科技类企业的产品。
3、中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
4、图形处理器(Graphics Processing Unit,GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。
5、精简指令集计算机(RISC:Reduced Instruction Set Computing,RISC)是一种执行较少类型计算机指令的微处理器。
6、OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效,由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
7、FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。
8、Neon是适用于ARM处理器的一种128位SIMD(Single Instruction,MultipleData,单指令、多数据)扩展结构。
9、YUV,是一种颜色编码方法,常使用在各个视频处理组件中。YUV在对照照片或视频编码时,考虑到人类的感知能力,允许降低色度的带宽。其中,Y表示明亮度,U和V表示色度。可以包括UYVU格式和NV12格式。
10、pack,一种用于管理添加信息的排序方法,只有上下左右的关系,每个添加信息按照添加顺序进行排列。
11、线性插值是指插值函数为一次多项式的插值方式,其在插值节点上的插值误差为零。
12、QNX,一种商用的遵从POSIX规范的类Unix实时操作系统。是一种基于优先级抢占的硬实时操作系统。
13、BGR,OpenCV默认的通道。其中B表示蓝色,G表示绿色,R表示红色。
14、X86-64,即英文词64-bit extended,64位拓展的简写,是X86架构的64位拓展。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种图像格式转换方法进行详细介绍,本公开实施例所提供的图像格式转换方法的执行主体为ARM开发板中的ARM处理器。这里的ARM开发板可以存储有经过QNX系统编译后的计算机可读指令。在一些可能的实现方式中,该图像格式转换方法可以通过ARM处理器调用存储器中存储的计算机可读指令的方式来实现。
下面以执行主体为ARM处理器为例对本公开实施例提供的图像格式转换方法加以说明。
参见图1所示,为本公开实施例提供的一种图像格式转换方法的流程图,所述方法包括步骤S101~S104,其中:
S101:获取待转换图像的第一颜色编码信息;第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,待转换图像的每个像素点对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息。
本步骤中,待转换图像可以为获取到的拍摄设备拍摄到的图像,其第一颜色编码信息可以包括以UYVY格式对待转换图像进行编码的编码信息,其中,UYVY格式为YUV格式中的其中一种水平取样,垂直完全采样格式。或者,还可以为以NV12格式对待转换图像进行编码的编码信息,其中,NV12格式为YUV格式中的其中一种水平取样,垂直2:1采样格式。或者,还可以为以AYUV格式对待转换图像进行编码的编码信息,其中,AYUV格式为YUV格式中的其中一种完全取样格式。
示例性的,以待转换图像为UYVY格式图像为例,第一颜色编码信息中包括多个第一亮度信息,即多个Y;以及,多组第一色彩信息,即多组UV。待转换图像的每个像素点对应一个Y,每两个第一亮度信息对应一组第一色彩信息。
在一些实施例中,还获取待转换图像的图像尺寸,包括待转换图像的宽度和高度。
S102:基于第一颜色编码信息中第一亮度信息和第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列。
本步骤中,第一颜色编码信息的第一排序顺序可以为pack排序顺序,即按照添加顺序进行排列。
例如,UYVY格式按照添加顺序进行排列,得到第一颜色编码信息的第一排序顺序为UYVYUYVY……。其中,的Y、U、V即为像素点的元素。另外,可以基于上述获取到的待转换图像的图像尺寸,确定第一排序顺序UYVYUYVY……中每个元素的地址,按照地址并行提取对应位置的元素。
具体实施时,在确定了第一颜色编码信息的第一排序顺序之后,可以确定待转换图像的首个元素地址。基于第一颜色编码信息的第一排序顺序,从首个元素地址开始,依次并行提取第一排序顺序中的多个第一亮度信息,得到第一信息序列;以及基于第一颜色编码信息的第一排序顺序,从首个元素地址开始,依次并行提取第一排序顺序中的多组第一色彩信息,得到第二信息序列。
这里,由于每个元素占8bit,在图像格式转换过程中元素计算附带有8bit的符号(包括正“+”、负“-”等),因此,每个元素需要占16bit内存,即一个128bit寄存器能够存储有8个16bit带符号的元素。可以利用Neon并行提取第一排序顺序中的8个元素,并存储到128bit寄存器中。
示例性的,以待转换图像为UYVU格式图像为例,从首个元素地址开始,并行提取八个元素,得到UYVYUYVY,其中,根据第一亮度信息的地址,确定第一信息序列,即YYYY,根据第二色彩信息的地址,确定第二信息序列,即UVUV。
S103:基于一组第一色彩信息对应的第一亮度信息的第一数量、第二信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息。
本步骤中,一组第一色彩信息对应的第一亮度信息的第一数量可以表示第一亮度信息共享一组第一色彩信息的数量。例如,针对UYVY格式,一组第一色彩信息对应两个第一亮度信息,即两个第一亮度信息共享一组第一色彩信息;针对NV12格式,一组第一色彩信息对应四个第一亮度信息,即四个第一亮度信息共享一组第一色彩信息;针对AYUV格式,一组第一色彩信息对应一个第一亮度信息,即一个第一亮度信息共享一组第一色彩信息。
每个像素点对应的颜色编码子信息包括第一亮度信息Y、第二色彩信息UV。由于每个像素点对应一个第一亮度信息,因此,在确定每个像素点对应的颜色编码子信息的过程中,需要先确定与每个第一亮度信息对应的一组第一色彩信息。之后,可以根据对应关系、多个第一亮度信息、以及多组第一色彩信息,可以确定出每个像素点对应的颜色编码子信息。
示例性的,针对UYVY格式的待转换图像,可以确定一组第一色彩信息UV对应两个第一亮度信息Y,即第一数量为2。在第一信息序列为YYYY,第二信息序列为UVUV的情况下,第一信息序列对应的第一个第一亮度信息Y,对应第一组第一色彩信息UV;第一信息序列对应的第二个第一亮度信息Y,对应第一组第一色彩信息UV;第一信息序列对应的第三个第一亮度信息Y,对应第二组第一色彩信息UV;第一信息序列对应的第四个第一亮度信息Y,对应第二组第一色彩信息UV。进而,可以确定待转换图像中的第一个像素点对应的颜色编码子信息为第一个第一亮度信息Y和第一组第一色彩信息UV;可以确定待转换图像中的第二个像素点对应的颜色编码子信息为第二个第一亮度信息Y和第一组第一色彩信息UV;可以确定待转换图像中的第三个像素点对应的颜色编码子信息为第三个第一亮度信息Y和第二组第一色彩信息UV;可以确定待转换图像中的第四个像素点对应的颜色编码子信息为第四个第一亮度信息Y和第二组第一色彩信息UV。同理,按照上述过程,循环利用Neon并列提取的其他多个第一亮度信息和其他多组第一色彩信息,可以确定出待转换图像中的每个像素点的颜色编码子信息。
S104:基于每个像素点对应的颜色编码子信息,生成待转换图像对应于目标格式的目标图像。
本步骤中,目标格式可以包括但不仅限于BGR格式、NV12格式、UYVY格式等。在确定待转换图像为UYVY格式的图像的情况下,目标格式的目标图像则可以为BGR格式的图像;或者,目标格式的目标图像则还可以为NV12格式的图像。可以根据不同的应用场景进行设置,本公开实施例不进行具体限定。
在一些实施例中,目标格式可以包括第一子格式,比如BGR格式。基于每个像素点对应的颜色编码子信息,生成待转换图像对应于第一子格式的第一目标子图像。具体实施时,首先,可以基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一子格式的第二颜色编码信息;之后,基于每个像素点对应的第二颜色编码信息,生成待转换图像对应于第一子格式的第一目标子图像。
这里,确定每个像素点对应于第一子格式的第二颜色编码信息,可以利用线性插值函数计算出待转换图像中的每个像素点对应的第一子格式的第二颜色编码信息。
这里,第二颜色编码信息包括元素B,元素G元素R。
示例性的,以将UYVY格式的待转换图像转换为BGR格式的第一目标子图像为例,针对一个像素点对应的颜色编码子信息,即Y1、U1、V1,利用线性插值函数f(Y,U,V),确定该像素点的对应的BGR格式的第二颜色编码信息,记为B=αf(Y1,U1,V1),G=βf(Y1,U1,V1),R=γf(Y1,U1,V1),其中,α表示计算该像素中的B元素对应的在线性插值函数中的固定系数;β表示计算该像素中的G元素对应的在线性插值函数中的固定系数;γ表示计算该像素中的R元素对应的在线性插值函数中的固定系数。上述α、β、γ可以按照实际应用场景和经验值进行设定,本公开实施例不进行具体限定。在确定了该像素点的第二颜色编码信息B、G、R之后,确定该像素点从UYVY格式转换为BGR格式。同理,针对待转换图像中的每个像素点,按照上述像素点的格式转换方式,最终生成待转换图像对应于第一子格式的第一目标子图像,即BGR格式的BGR图像。
另外,在计算出每个像素点的BGR元素之后,可以按照每个像素点的先后顺序,从BGR图像中首个元素的地址开始,将每个像素点对应的元素存入内存中。
上述S101~S104,利用了ARM开发板中的Neon扩展结构以及CPU自带的寄存器,能够从寄存器中存储的第一颜色编码信息中并行提取多个第一亮度信息和多组第一色彩信息,由于并行提取能够成倍提高信息获取速度,因此能够实现在CPU上成倍加速图像格式转换,能够满足实时性图像格式转换的需求。与现有技术相比,其不依赖于GPU等图像处理设备,能够降低图像格式转换的硬件成本;另外,本方面为实时图像格式转换提供了ARM开发板通用的图像格式转换方法,同时,与X86-64平台相比,ARM开发板的功耗和硬件成本较低。
针对S102中基于第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,由于第一亮度信息在第一颜色编码信息中的排列方式符合一定的排序特征,比如位于奇数位或者偶数位。因此,可以利用Neon扩展结构从第一颜色编码信息中并行提取出第一排序特征信息对应的第一亮度信息,通过并行处理性能信息并行加速第一亮度信息的提取,即同时提取多个第一亮度信息,能够快速得到待转换图像中的多个像素点对应的第一信息序列。
具体实施时,可以基于第一排序顺序,确定第一亮度信息在第一颜色编码信息中的第一排序特征信息;基于ARM中寄存器的存储容量,确定ARM开发板的并行处理性能信息;基于第一排序特征信息和并行处理性能信息,从第一颜色编码信息中并行提取多个第一亮度信息,得到第一信息序列。
这里,并行处理性能信息可以包括并行提取的信息的目标条数,例如,ARM中寄存器的存储容量可以为128bit,其并行处理性能信息可以包括一次并行提取不带符号的16个元素,或者,是带符号的8个元素。
第一排序顺序可以包括第一色彩子信息和第二色彩子信息之间排列有第一亮度信息,比如,UYVY格式的排序顺序。第一排序特征信息可以包括第一亮度信息的多个第一排序次序,例如,在第一排序特征信息为奇数位的情况下,多个第一排序次序可以分别为1、3、5、7、……;在第一排序特征信息为偶数位的情况下,多个第一排序次序可以分别为0、2、4、6、……。
在一些实施例中,可以基于第一排序顺序,确定第一亮度信息在第一颜色编码信息中的第一排序次序,之后,基于多个第一排序次序,从第一颜色编码信息中并行提取目标条数的第一亮度信息,并基于提取到的多个第一亮度信息,确定第一信息序列。
示例性的,以待转换图像为UYVY格式的图像为例,第一排序顺序为UYVYUYVY……,对应地址可以为0、1、2、3、4、5、6、7、……,进而可以确定出第一亮度信息在第一颜色编码信息中的第一排序特征信息为奇数位,其包括的第一亮度信息的多个第一排序次序可以为1、3、5、7、……,之后,利用Neon每次并行提取奇数位的8个第一亮度信息,即地址1、3、5、7、9、11、13、15对应的Y,之后,循环执行提取过程,不断获取第一亮度信息,再基于得到的多个第一亮度信息,确定第一信息序列为YYYYYYYY……。
针对S102中基于第一颜色编码信息的第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列,由于第一色彩信息在第一颜色编码信息中的排列方式符合一定的排序特征,比如位于奇数位或偶数位,因此,可以利用Neon扩展结构从第一颜色编码信息中并行提取出第二排序特征信息对应的第一色彩信息,通过并行处理性能信息并行加速第一色彩信息的提取,即同时提取多组第一色彩信息,能够快速得到待转换图像中的多个像素点对应的第二信息序列。
具体实施时,基于所述第一排序顺序,确定第一色彩信息在第一颜色编码信息中的第二排序特征信息;基于ARM中寄存器的存储容量,确定ARM开发板的并行处理性能信息;基于第二排序特征信息和并行处理性能信息,从第一颜色编码信息中并行提取多组第一色彩信息,得到第二信息序列。
第二排序特征信息可以包括第一色彩信息的多个第二排序次序,例如,在第二排序特征信息为奇数位的情况下,多个第二排序次序可以分别为1、3、5、7、……;在第二排序特征信息为偶数位的情况下,多个第二排序次序可以分别为0、2、4、6、……。
在一些实施例中,基于第二排序顺序,确定第一色彩信息在第一颜色编码信息中的第二排序次序;基于多个第二排序次序,从第一颜色编码信息中并行提取信息数量个第一色彩信息,并基于提取到的多个第一色彩信息,确述第二信息序列。
延续上例,第一排序顺序为UYVYUYVY……,对应地址可以为0、1、2、3、4、5、6、7、……,进而可以确定出第一色彩信息在第一颜色编码信息中的第二排序特征信息为偶数位,其包括的第一色彩信息的多个第二排序次序可以为0、2、4、6、……,之后,利用Neon每次并行提取偶数位的4组第一色彩信息,分别为4个第一色彩子信息U和4个第二色彩子信息V,即地址0、4、8、12对应的U和地址2、6、10、14对应的V,之后,循环执行提取过程,不断获取第一色彩信息,再基于得到的多组第一色彩信息,确定得到第二信息序列为UVUVUVVV……。
上述通过并行处理性能信息并行加速对第一亮度信息和第一色彩信息的提取,能够快速得到待转换图像中的多个像素点对应的第一信息序列和第二信息序列,进而提高待转换图像中的多个像素点的图像格式转换的效率。
针对S103中基于一组第一色彩信息对应的第一亮度信息的第一数量、第二信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息。这里,第一色彩信息可以包括第一色彩子信息和第二色彩子信息,具体的,比如第一色彩信息为UV,则第一色彩子信息可以为U,第二色彩子信息可以为V。
由于第一数量的数值可以为大于1的整数,因此,存在第一亮度信息共享一组第一色彩子信息和第二色彩子信息分的情况,即UYVY格式的待转换图像的第一颜色编码信息中,两个第一亮度信息Y共享一组第一色彩子信息U和第二色彩子信息V。因此,确定每个像素点对应的颜色编码子信息,具体实施时,可以为基于第一色彩子信息和第二色彩子信息在第二信息序列中的第二排序顺序,确定第一色彩子信息对应的第三信息序列和第二色彩子信息对应的第四信息序列;基于一组第一色彩信息对应的第一亮度信息的第一数量、第三信息序列、第四信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息。
这里,第二排序顺序可以为U和V间隔排列。第一色彩子信息对应的第三信息序列可以为从第二信息序列中筛选出的第一色彩子信息按照每个元素地址的排列顺序,顺序组成的信息序列;第二色彩子信息对应的第四信息序列可以为从第二信息序列中筛选出的第二色彩子信息按照每个元素地址的排列顺序,顺序组成的信息序列。示例性的,以待转换图像为UYVY格式的图像为例,第二信息序列可以为UVUV……,第三信息序列可以为UU……,第四信息序列可以为VV……。这里,第二信息序列中元素数量为第三信息序列中元素U数量的两倍,也为第四信息序列中元素V数量的两倍。
之后,确定每个像素点对应的颜色编码子信息,具体的,可以分别确定第一信息序列中的每个第一亮度信息对应的第三信息序列中的第一色彩子信息,以及第四信息序列中的第二色彩子信息,进而确定出每个像素点对应的第一亮度信息、第一色彩子信息和第二色彩子信息,即确定出每个像素点对应的颜色编码子信息。
在一些实施例中,在两个第一亮度信息对应一组第一色彩信息的情况下,在第三信息序列中的每个第一色彩子信息的相邻位置处添加第一色彩子信息,可以得到新的第三信息序列;在第四信息序列中的每个第二色彩子信息的相邻位置处添加第二色彩子信息,可以得到新的第四信息序列;基于新的第三信息序列、新的第四信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息。
这里,每个像素点对应的颜色编码子信息包括第一亮度信息Y,第一色彩子信息U和第二色彩子信息V。
延续上例,第三信息序列为U1 U2......,在每个第一色彩子信息的相邻位置处添加第一色彩子信息,得到新的第三信息序列为U1 U1 U2 U2......,其中,新的第三信息序列中的元素数量与第二信息序列中的元素数量相同,并且新的第三信息序列中的第一色彩子信息与第一信息序列中的第一亮度信息一一对应。第四信息序列为V1 V2......,在每个第二色彩子信息的相邻位置处添加第二色彩子信息,得到新的第四信息序列为V1 V1 V2V2......,其中,新的第四信息序列中的元素数量与第二信息序列中的元素数量相同,并且新的第四信息序列中的第二色彩子信息与第一信息序列中的第一亮度信息一一对应。这里,分别利用一一对应的第一亮度信息、第一色彩子信息额第二色彩子信息,能够准确的得到每个像素点对应的颜色编码子信息。
在一些实施例中,针对S104,目标格式还可以包括第二子格式。基于上述S104中确定出的每个像素点对应于第一子格式的第二颜色编码信息,这里,还可以将第二目标子图像转换为第二子格式的第二目标子图像,其中,第二子格式对应第三颜色编码信息,第三颜色编码信息中包括第二亮度信息,第二色彩信息。第二目标子图像的每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息。
示例性的,第二子格式可以包括但不仅限于NV12格式和UYVY格式等。针对4×4的NV12格式图像,其对应的第三颜色编码信息可以为YYYYYYYYYYYYYYYYUVUVUVUV。第三颜色编码信息中包括第二亮度信息Y,第二色彩信息UV。NV12格式图像的每个像素点对应一个第二亮度信息,四个第二亮度信息对应一组第二色彩信息。
将第一目标子图像转换为第二子格式的第二目标子图像,具体实施时,可以参见图2所示,其为生成第二子格式对应的第二目标子图像的流程图,包括以下步骤S201~S203:
S201:基于待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到第二目标子图像的每个像素点对应的第二亮度信息。
具体实施时,可以基于上述确定的每个像素点对应于BGR格式的第二颜色编码信息,即B=αf(Y,U,V),G=βf(Y,U,V),R=γf(Y,U,V),利用线性插值函数进行并行计算,得到第二目标子图像的每个像素点对应的第二亮度信息,即Y=δf(B,G,R),其中,δ表示计算该像素中的第二亮度信息Y对应的在线性插值函数中的固定系数,可以根据经验值定义,本公开实施例不进行具体限定。
这里,并行计算可以为利用Neon从三个寄存器分别并行提取存储的8个8bit的第二颜色编码信息中的元素B,8个8bit的第二颜色编码信息中的元素G,8个8bit的第二颜色编码信息中的元素R,得到8组第二颜色编码信息BGR,即8个像素点,之后,利用线性插值函数Y=δf(B,G,R)并行计算8组BGR,得到其中每组BGR(每个像素点)对应的第二亮度信息。循环调用Neon并行计算,直到得到第一目标子图像对应的每个像素点格式转换后的第二亮度信息。
S202:基于一组第二色彩信息对应的第二亮度信息的第二数量和待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到第二目标子图像的每个像素点对应的第二色彩信息。
本步骤中,一组第二色彩信息对应的第二亮度信息的第二数量可以表示第二亮度信息共享一组第二色彩信息的数量。
具体实施时,基于一组第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息;目标像素点包括用于确定第二色彩信息的像素点;基于第三排序特征信息和待转换图像中每个像素点对应的第二颜色编码信息,确定目标像素点对应的第二颜色编码信息;基于目标像素点对应的第二颜色编码信息,并行计算,得到第二目标子图像的每个像素点对应的第二色彩信息。
这里,由于第二数量不同,则确定的目标像素点的个数不同。例如,在第二数量为1的情况下,即一个第二亮度信息共享一组第二色彩信息,则第一目标子图像中的每个像素点即为目标像素点。在第二数量为4的情况下,即四个第二亮度信息共享一组第二色彩信息,则第一目标子图像中的四个像素点,确定一个目标像素点,即目标像素点的个数为第一目标子图像中像素点个数的四分之一。具体的可以参见图3所示,其为从第一目标子图像中确定出的目标像素点的示意图。其中,31表示4×4的第一目标子图像;32表示第一目标子图像中的像素点,共有16个像素点;33表示目标像素点,共有4个,即为16个第一目标子图像中的像素点的数量的四分之一。
在第二数量为1的情况下,目标像素点的第三排序特征信息为每个第一目标子图像中的像素点的位置信息。在第二数量为4的情况下,目标像素点的第三排序特征信息为偶数行、偶数列第一目标子图像中的像素点的位置信息,如图3中的,第0行、第0列,第0行、第2列,第2行、第0列,第2行、第2列。
这里,并行计算可以是利用Neon从三个寄存器分别并行提取存储的第三排序特征信息对应的行、列所在位置处的元素B、元素G和元素R,确定至少一组第二颜色编码信息BGR,即至少一个像素点,之后,利用线性插值函数U=εf(B,G,R),V=θf(B,G,R),并行计算提取到的BGR,得到每组BGR(每个像素点)对应的第二色彩信息U和V。其中,ε表示计算该像素中的第二色彩信息U对应的在线性插值函数中的固定系数,θ表示计算该像素中的第二色彩信息V对应的在线性插值函数中的固定系数,可以根据经验值定义,本公开实施例不进行具体限定。之后,循环调用Neon并行计算,直到得到第一目标子图像对应的每个像素点格式转换后的第二色彩信息。
在一些实施例中,在四个第二亮度信息对应一组第二色彩信息的情况下,确定目标像素点的第三排序特征信息包括目标像素点位于偶数行并且位于偶数列;或者,在四个第二亮度信息对应一组第二色彩信息的情况下,确定目标像素点的第三排序特征信息包括目标像素点位于奇数行并且位于奇数列。
示例性的,在第二目标子图像为NV12格式图像的情况下,第二数量为4。则确定目标像素点的第三排序特征信息,即为从第一目标子图像中筛选偶数行、偶数列,或者奇数行、奇数列的像素点为目标像素点,即四个第二亮度信息共享一组第二色彩信息。
S203:基于第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,生成与第二子格式对应的第二目标子图像。
具体的,基于第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,确定每个像素点对应的第三颜色编码信息;基于第三颜色编码信息生成与第二子格式对应的第二目标子图像。
这里,一个像素点对应一个第二亮度信息,根据一组第二色彩信息对应的第二亮度信息的第二数量,确定第二数量像素点共享一组第二色彩信息。
示例性的,在第二子格式为NV12格式的情况下,确定4×4的第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,即YYYYYYYYYYYYYYYY和UVUVUVUV,则每个像素点对应的第三颜色编码信息可以为YYYYYYYYYYYYYYYY UVUVUVUV,即生成NV12格式的第二目标子图像为YYYYYYYYYYYYYYYY UVUVUVUV。
在计算出每个像素点的第二亮度信息和第二色彩信息之后,将生成的第二目标子图像中的第一个第二亮度信息存入预先设置的第二亮度信息首地址中,并按照顺序依次存储其余的第二亮度信息;将生成的第二目标子图像中的第一组第二色彩信息存入预先设置的第二色彩信息首地址,并按照顺序依次存储其余的第二色彩信息,以使后续基于第二亮度信息首地址和第二色彩信息首地址从内存中调用第二目标子图像。
上述S201~S203,基于ARM开发板中的一个寄存器存储的多个像素点对应的第二颜色编码信息,能够并行计算得到该多个像素点的第二亮度信息,基于ARM开发板中的一个寄存器存储的多个像素点对应的第二颜色编码信息,能够并行计算得到该多个像素点的第二色彩信息,相比较依次计算每个像素点的第二亮度信息和第二色彩信息,本实施方式能够成倍提高第二亮度信息和第二色彩信息的计算效率,进而提高图像格式转换的效率。
在一些实施例中,针对S202,基于一组第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;利用第三数量的寄存器存储第二颜色编码信息,并基于寄存器存储第二颜色编码信息进行并行计算,得到第二目标子图像的每个像素点对应的第二色彩信息。
示例性的,针对BGR格式图像转换为NV12格式图像,四个第二亮度信息共享一组第二色彩信息,在并行计算第二色彩信息时,利用Neon并行计算提取第二颜色编码信息BGR时,一次仅能提取出4组BGR,即偶数行、偶数列,或者,奇数行、奇数列的BGR,利用Neon并行计算最多能同时处理8组BGR,如果仅利用并行提取出的4组BGR将浪费Neon算力,因此,可以同时调用两个寄存器(即第三数量为2)存储的第二颜色编码信息,同时提取8组BGR,利用线性插值函数,能够同时并行计算出16个像素点对应的第二色彩信息,提高了第二色彩信息的计算效率,进而提高了BGR格式图像转换为NV12格式图像的图像转换效率。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与图像格式转换方法对应的图像格式转换装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述图像格式转换方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图4所示,为本公开实施例提供的一种图像格式转换装置的示意图,所述装置包括:信息获取模块401、信息提取模块402、信息确定模块403和第一图像转换模块404;其中,
信息获取模块401,用于获取待转换图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
信息提取模块402,用于基于所述第一颜色编码信息中第一亮度信息和第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
信息确定模块403,用于基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
第一图像转换模块404,用于基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像。
一种可选的实施方式中,所述信息提取模块402,用于基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息;基于所述ARM中寄存器的存储容量,确定所述ARM开发板的并行处理性能信息;基于所述第一排序特征信息,从所述第一颜色编码信息中并行提取多个第一亮度信息和所述并行处理性能信息,得到所述第一信息序列;以及,基于所述第一排序顺序,确定所述第一色彩信息在所述第一颜色编码信息中的第二排序特征信息;基于所述第二排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多组第一色彩信息,得到所述第二信息序列。
一种可选的实施方式中,所述并行处理性能信息包括所述并行提取的信息的目标条数;所述第一色彩信息包括第一色彩子信息和第二色彩子信息;第一排序顺序包括所述第一色彩子信息和所述第二色彩子信息之间排列有所述第一亮度信息;所述第一排序特征信息包括所述第一亮度信息的多个第一排序次序;
所述信息提取模块402,用于基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序次序;基于所述多个第一排序次序,从所述第一颜色编码信息中并行提取所述目标条数的第一亮度信息,并基于提取到的多个第一亮度信息,确定所述第一信息序列。
一种可选的实施方式中,所述第一色彩信息包括第一色彩子信息和第二色彩子信息;
所述信息确定模块403,用于基于所述第一色彩子信息和所述第二色彩子信息在所述第二信息序列中的第二排序顺序,确定所述第一色彩子信息对应的第三信息序列和所述第二色彩子信息对应的第四信息序列;基于一组所述第一色彩信息对应的第一亮度信息的第一数量、所述第三信息序列、所述第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
一种可选的实施方式中,所述信息确定模块403,用于在两个第一亮度信息对应一组所述第一色彩信息的情况下,在所述第三信息序列中的每个第一色彩子信息的相邻位置处添加所述第一色彩子信息,得到新的第三信息序列;在所述第四信息序列中的每个第二色彩子信息的相邻位置处添加所述第二色彩子信息,得到新的第四信息序列;基于新的第三信息序列、新的第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
一种可选的实施方式中,所述目标格式包括第一子格式;所述目标图像包括第一目标子图像;
所述第一图像转换模块404,用于基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一子格式的第二颜色编码信息;基于每个像素点对应的所述第二颜色编码信息,生成所述待转换图像对应于所述第一子格式的第一目标子图像。
一种可选的实施方式中,所述目标格式还包括第二子格式;所述目标图像还包括第二目标子图像;所述第二子格式对应第三颜色编码信息;所述第三颜色编码信息中包括第二亮度信息和第二色彩信息;所述第二目标子图像的每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
所述装置还包括第二图像转换模块405,用于在确定所述第二颜色编码信息之后,基于所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二亮度信息;基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息;基于所述第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,生成与所述第二子格式对应的第二目标子图像。
一种可选的实施方式中,所述第二图像转换模块405,用于基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息;所述目标像素点包括用于确定所述第二色彩信息的像素点;基于所述第三排序特征信息和所述待转换图像中每个像素点对应的第二颜色编码信息,确定所述目标像素点对应的第二颜色编码信息;基于所述目标像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
一种可选的实施方式中,所述第二图像转换模块405,用于在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于偶数行并且位于偶数列;或者,在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于奇数行并且位于奇数列。
一种可选的实施方式中,所述第二图像转换模块405,用于基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;利用所述第三数量的寄存器存储所述第二颜色编码信息,并基于所述寄存器存储所述第二颜色编码信息进行并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
关于图像格式转换装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述图像格式转换方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本申请实施例还提供了一种计算机设备。参照图5所示,为本申请实施例提供的计算机设备的结构示意图,包括:
处理器51、存储器52和总线53。其中,存储器52存储有处理器51可执行的机器可读指令,处理器51用于执行存储器52中存储的机器可读指令,所述机器可读指令被处理器51执行时,处理器51执行下述步骤:S101:获取待转换图像的第一颜色编码信息;第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;S102:基于第一颜色编码信息中第一亮度信息和第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;S103:基于一组第一色彩信息对应的第一亮度信息的第一数量、第二信息序列和第一信息序列,确定每个像素点对应的颜色编码子信息;S104:基于每个像素点对应的颜色编码子信息,生成待转换图像对应于目标格式的目标图像。
上述存储器52包括内存521和外部存储器522;这里的内存521也称内存储器,用于暂时存放处理器51中的运算数据,以及与硬盘等外部存储器522交换的数据,处理器51通过内存521与外部存储器522进行数据交换,当计算机设备运行时,处理器51与存储器52之间通过总线53通信,使得处理器51在执行上述方法实施例中所提及的执行指令。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述图像格式转换方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现上述的像格式转换方法的步骤。其中,计算机程序产品可以是任何能实现上述像格式转换方法的产品,该计算机程序产品中对现有技术做出贡献的部分或全部方案可以以软件产品(例如软件开发包(Software Development Kit,SDK))的形式体现,该软件产品可以被存储在一个存储介质中,通过包含的计算机指令使得相关设备或处理器执行上述像格式转换方法的部分或全部步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种图像格式转换方法,其特征在于,应用于ARM开发板,包括:
获取待转换图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
基于所述第一颜色编码信息中所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像;
所述第一色彩信息包括第一色彩子信息和第二色彩子信息;所述基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息,包括:
基于所述第一色彩子信息和所述第二色彩子信息在所述第二信息序列中的第二排序顺序,确定所述第一色彩子信息对应的第三信息序列和所述第二色彩子信息对应的第四信息序列;
在两个第一亮度信息对应一组所述第一色彩信息的情况下,在所述第三信息序列中的每个第一色彩子信息的相邻位置处添加所述第一色彩子信息,得到新的第三信息序列;
在所述第四信息序列中的每个第二色彩子信息的相邻位置处添加所述第二色彩子信息,得到新的第四信息序列;
基于新的第三信息序列、新的第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一颜色编码信息中的所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,包括:
基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息;
基于所述ARM中寄存器的存储容量,确定所述ARM开发板的并行处理性能信息;
基于所述第一排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多个第一亮度信息,得到所述第一信息序列;
所述基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列,包括:
基于所述第一排序顺序,确定所述第一色彩信息在所述第一颜色编码信息中的第二排序特征信息;
基于所述第二排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多组第一色彩信息,得到所述第二信息序列。
3.根据权利要求2所述的方法,其特征在于,所述并行处理性能信息包括所述并行提取的信息的目标条数;所述第一色彩信息包括第一色彩子信息和第二色彩子信息;第一排序顺序包括所述第一色彩子信息和所述第二色彩子信息之间排列有所述第一亮度信息;所述第一排序特征信息包括多个所述第一亮度信息的多个第一排序次序;
所述基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序特征信息,包括:
基于所述第一排序顺序,确定所述第一亮度信息在所述第一颜色编码信息中的第一排序次序;
所述基于所述第一排序特征信息和所述并行处理性能信息,从所述第一颜色编码信息中并行提取多个第一亮度信息,得到所述第一信息序列,包括:
基于所述多个第一排序次序,从所述第一颜色编码信息中并行提取所述目标条数的第一亮度信息,并基于提取到的多个第一亮度信息,确定所述第一信息序列。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述目标格式包括第一子格式;所述目标图像包括第一目标子图像;
所述基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像,包括:
基于每个像素点对应的颜色编码子信息,分别确定每个像素点对应于第一子格式的第二颜色编码信息;
基于每个像素点对应的所述第二颜色编码信息,生成所述待转换图像对应于所述第一子格式的第一目标子图像。
5.根据权利要求4所述的方法,其特征在于,所述目标格式还包括第二子格式;所述目标图像还包括第二目标子图像;所述第二子格式对应第三颜色编码信息;所述第三颜色编码信息中包括第二亮度信息和第二色彩信息;所述第二目标子图像的每个像素点对应一个第二亮度信息,至少一个第二亮度信息对应一组第二色彩信息;
在确定所述第二颜色编码信息之后,还包括:
基于所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二亮度信息;
基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息;
基于所述第二目标子图像的每个像素点对应的第二亮度信息和第二色彩信息,生成与所述第二子格式对应的第二目标子图像。
6.根据权利要求5所述的方法,其特征在于,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息,包括:
基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息;所述目标像素点包括用于确定所述第二色彩信息的像素点;
基于所述第三排序特征信息和所述待转换图像中每个像素点对应的第二颜色编码信息,确定所述目标像素点对应的第二颜色编码信息;
基于所述目标像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
7.根据权利要求6所述的方法,其特征在于,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定目标像素点的第三排序特征信息,包括:
在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于偶数行并且位于偶数列;或者,
在四个所述第二亮度信息对应一组所述第二色彩信息的情况下,确定所述目标像素点的第三排序特征信息包括所述目标像素点位于奇数行并且位于奇数列。
8.根据权利要求5所述的方法,其特征在于,所述基于一组所述第二色彩信息对应的第二亮度信息的第二数量和所述待转换图像中每个像素点对应的第二颜色编码信息,并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息,包括:
基于一组所述第二色彩信息对应的第二亮度信息的第二数量,确定寄存器的第三数量;
利用所述第三数量的寄存器存储所述第二颜色编码信息,并基于所述寄存器存储所述第二颜色编码信息进行并行计算,得到所述第二目标子图像的每个像素点对应的第二色彩信息。
9.一种图像格式转换装置,其特征在于,包括:
信息获取模块,用于获取待转换图像的第一颜色编码信息;所述第一颜色编码信息中包括多个第一亮度信息和多组第一色彩信息,所述待转换图像的每个像素点分别对应一个第一亮度信息,至少一个第一亮度信息对应一组第一色彩信息;
信息提取模块,用于基于所述第一颜色编码信息中的所述第一亮度信息和所述第一色彩信息的第一排序顺序,并行提取多个第一亮度信息,得到第一信息序列,以及,基于所述第一排序顺序,并行提取多组第一色彩信息,得到第二信息序列;
信息确定模块,用于基于一组第一色彩信息对应的第一亮度信息的第一数量、所述第二信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息;
第一图像转换模块,用于基于每个像素点对应的颜色编码子信息,生成所述待转换图像对应于目标格式的目标图像;
所述第一色彩信息包括第一色彩子信息和第二色彩子信息;所述信息确定模块,具体用于:
基于所述第一色彩子信息和所述第二色彩子信息在所述第二信息序列中的第二排序顺序,确定所述第一色彩子信息对应的第三信息序列和所述第二色彩子信息对应的第四信息序列;
在两个第一亮度信息对应一组所述第一色彩信息的情况下,在所述第三信息序列中的每个第一色彩子信息的相邻位置处添加所述第一色彩子信息,得到新的第三信息序列;
在所述第四信息序列中的每个第二色彩子信息的相邻位置处添加所述第二色彩子信息,得到新的第四信息序列;
基于新的第三信息序列、新的第四信息序列和所述第一信息序列,确定每个像素点对应的颜色编码子信息。
10.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一项所述的图像格式转换方法的步骤。
11.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至8任一项所述的图像格式转换方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875659.1A CN113596581B (zh) | 2021-07-30 | 2021-07-30 | 一种图像格式转换方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875659.1A CN113596581B (zh) | 2021-07-30 | 2021-07-30 | 一种图像格式转换方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113596581A CN113596581A (zh) | 2021-11-02 |
CN113596581B true CN113596581B (zh) | 2023-10-27 |
Family
ID=78253151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110875659.1A Active CN113596581B (zh) | 2021-07-30 | 2021-07-30 | 一种图像格式转换方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596581B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115348432A (zh) * | 2022-08-15 | 2022-11-15 | 上海壁仞智能科技有限公司 | 数据处理方法及装置、图像处理方法、电子设备及介质 |
CN115661325A (zh) * | 2022-12-21 | 2023-01-31 | 麒麟软件有限公司 | 一种基于neon指令的纹理格式转换优化方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011097279A (ja) * | 2009-10-28 | 2011-05-12 | Seiko Epson Corp | データ処理回路、集積回路装置及び電子機器 |
CN102868871A (zh) * | 2012-10-24 | 2013-01-09 | 广东威创视讯科技股份有限公司 | 一种视频图像格式的转换方法和装置 |
CN107341835A (zh) * | 2017-07-07 | 2017-11-10 | 武汉斗鱼网络科技有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN108053452A (zh) * | 2017-12-08 | 2018-05-18 | 浙江理工大学 | 一种基于混合模型的数字图像色彩提取方法 |
CN111079669A (zh) * | 2019-12-20 | 2020-04-28 | 京东方科技集团股份有限公司 | 一种图像处理方法、装置及存储介质 |
CN111147857A (zh) * | 2019-12-06 | 2020-05-12 | Oppo广东移动通信有限公司 | 一种图像处理方法、图像处理装置、电子设备和存储介质 |
CN112188280A (zh) * | 2019-07-03 | 2021-01-05 | 北京嗨动视觉科技有限公司 | 图像处理方法、装置及系统和计算机可读介质 |
CN112509072A (zh) * | 2020-11-24 | 2021-03-16 | 北京三快在线科技有限公司 | 一种图像格式的检测以及转换方法及装置 |
CN112995664A (zh) * | 2021-04-20 | 2021-06-18 | 南京美乐威电子科技有限公司 | 图像采样格式转换方法、计算机可读存储介质和编码器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3980261B2 (ja) * | 2000-10-26 | 2007-09-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 映像再生装置及びその方法 |
-
2021
- 2021-07-30 CN CN202110875659.1A patent/CN113596581B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011097279A (ja) * | 2009-10-28 | 2011-05-12 | Seiko Epson Corp | データ処理回路、集積回路装置及び電子機器 |
CN102868871A (zh) * | 2012-10-24 | 2013-01-09 | 广东威创视讯科技股份有限公司 | 一种视频图像格式的转换方法和装置 |
CN107341835A (zh) * | 2017-07-07 | 2017-11-10 | 武汉斗鱼网络科技有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN108053452A (zh) * | 2017-12-08 | 2018-05-18 | 浙江理工大学 | 一种基于混合模型的数字图像色彩提取方法 |
CN112188280A (zh) * | 2019-07-03 | 2021-01-05 | 北京嗨动视觉科技有限公司 | 图像处理方法、装置及系统和计算机可读介质 |
CN111147857A (zh) * | 2019-12-06 | 2020-05-12 | Oppo广东移动通信有限公司 | 一种图像处理方法、图像处理装置、电子设备和存储介质 |
CN111079669A (zh) * | 2019-12-20 | 2020-04-28 | 京东方科技集团股份有限公司 | 一种图像处理方法、装置及存储介质 |
CN112509072A (zh) * | 2020-11-24 | 2021-03-16 | 北京三快在线科技有限公司 | 一种图像格式的检测以及转换方法及装置 |
CN112995664A (zh) * | 2021-04-20 | 2021-06-18 | 南京美乐威电子科技有限公司 | 图像采样格式转换方法、计算机可读存储介质和编码器 |
Also Published As
Publication number | Publication date |
---|---|
CN113596581A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113596581B (zh) | 一种图像格式转换方法、装置、计算机设备和存储介质 | |
CN108322722B (zh) | 基于增强现实的图像处理方法、装置及电子设备 | |
US10922785B2 (en) | Processor and method for scaling image | |
US9251732B2 (en) | Method and system for image dithering | |
CN111683251A (zh) | 一种视频数据存储方法、装置和计算机可读存储介质 | |
CN109845282B (zh) | 图像数据处理方法及传输装置、图像显示方法及存储介质 | |
US20200242810A1 (en) | Method and system for improving compression ratio by difference between blocks of image file | |
CN113613071B (zh) | 一种图像处理方法、装置、计算机设备和存储介质 | |
DK2504814T3 (en) | DECODING SYSTEM AND PROCEDURE TO USE ON CODED TEXTURE ELEMENT BLOCKS | |
US20200327638A1 (en) | Connected component detection method, circuit, device and computer-readable storage medium | |
KR20020052199A (ko) | 데이터 전송 방법 및 그 회로 장치 | |
KR20230141408A (ko) | 애니메이션 렌더링 방법, 장치, 전자 기기 및 저장 매체 | |
CN109375952B (zh) | 用于存储数据的方法和装置 | |
CN116170599B (zh) | 一种同步实时图像压缩方法、系统、介质及终端 | |
CN114626969A (zh) | 一种应用于图形处理器的数据处理方法、装置及电子设备 | |
CN111882482A (zh) | 图形分块数据读写方法、装置、设备及存储介质 | |
JP2006094225A (ja) | 画像処理装置、画像処理方法、およびそのプログラム | |
CN115456858B (zh) | 图像处理方法、装置、计算机设备及计算机可读存储介质 | |
CN116152043B (zh) | 一种基于图像处理的内存管理方法及装置、电子设备 | |
CN108833872B (zh) | 一种yuy2颜色空间快速缩放或放大的方法 | |
CN111105342B (zh) | 视频图像的处理方法及装置、电子设备、存储介质 | |
CN111080508B (zh) | 一种基于dma的gpu子图像处理方法 | |
CN111541901B (zh) | 图片解码的方法和装置 | |
CN113610223B (zh) | 乘法电路、卷积运算方法、介质、片上系统和电子设备 | |
CN111369422B (zh) | 数据压缩方法及装置、设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |