CN108537729B - 图像无级缩放方法、计算机装置及计算机可读存储介质 - Google Patents
图像无级缩放方法、计算机装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108537729B CN108537729B CN201810257297.8A CN201810257297A CN108537729B CN 108537729 B CN108537729 B CN 108537729B CN 201810257297 A CN201810257297 A CN 201810257297A CN 108537729 B CN108537729 B CN 108537729B
- Authority
- CN
- China
- Prior art keywords
- scaling
- horizontal
- window
- image
- vertical
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 239000000872 buffer Substances 0.000 claims abstract description 64
- 238000004364 calculation method Methods 0.000 claims description 81
- 238000004590 computer program Methods 0.000 claims description 18
- 238000009825 accumulation Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 9
- 230000009467 reduction Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000012935 Averaging Methods 0.000 description 6
- 230000000903 blocking effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明公开图像无级缩放方法及计算机装置、计算机可读存储介质,该方法包括将原始图像划分为多个图像块,并确定水平缩放窗口的窗口长度,对当前图像块进行水平缩放时,计算每一个水平缩放窗口缩放后的每一个像素点的像素值:判断当前水平缩放窗口是否跨越两个图像块,如是,将水平缩放窗口在当前图像块下所计算的水平中间缓存值存储至水平缓存器中,否则,将水平缩放窗口缩放后的像素点的像素值存储至水平结果存储器中;确定当前图像块水平方向最后一点位于当前水平缩放窗口的结束点时,将当前水平缩放窗口缩放后的最后一个像素点的像素值存储至水平缓存器中。本发明能减小图像缩放电路所占用的面积。
Description
技术领域
本发明涉及图像处理领域,尤其涉及一种用于对图像进行无级缩放的方法,还涉及实现这种方法的计算机装置,以及实现这种方法的计算机可读存储介质。
背景技术
随着电子设备的广泛使用,人们对电子设备所显示的图像的要求也越来越高,不但要求图像显示更加清晰,还要求能够对图像进行任意的缩小或者放大,并且要求图像缩放以后的清晰度尽可能高。目前普遍对图像进行缩放都是预先设定图像的缩放级别,对图像进行缩放时,按照预设的整数比例对图像进行缩放。然而,按照预设的整数比例对图像进行缩放已经不能满足人们对图像缩放的要求,人们开始最求图像的无级缩放。
图像的无级缩放属于计算机图像处理的图像缩放领域,是指对数字图像进行大小调整的过程。在现在的电子设备中,无级缩放是图像缩放领域经常使用的技术,以实现原始图像的平滑缩小或放大。由于图像的无级缩放不同于一般的整数比例缩放,相对而言,无级缩放对图像的缩小或放大具有更高的保真率,其高保真率的特点导致了目前视频图像缩放处理越来越趋于使用无级缩放替代固定整数比例缩放。另外,由于游戏领域对缩放图像高视觉表现力的追求,图形中也在推动无级缩放技术的应用。
图像的无级缩放对图像数据的连续性处理要求较高,常规图像无级缩放方法为采用逐行扫描的方式进行处理,例如申请号为CN201010206811的中国发明专利申请就公开了一种图像无级缩放的方法,该方法主要是以行扫描的方式对整幅图像进行缩放处理,而对于水平、垂直方向缩放分块处理的通用处理方法,为保证缩放过程数据的连贯性,需要使用线缓存器(line buffer)进行原始图像数据的加载及缓存缩放中间结果。然而,由于线缓存器受图像宽度的制约,普遍使用性较差,并且一般而言,线缓存器均需消耗较大的存储资源,导致集成电路上需要设置较大面积的线缓存器以存储大量的数据,从经济价值上而言,硬件实现代价较高,导致图像处理芯片的价格较高,并且不利于电子设备的小型化。
发明内容
本发明的主要目的是提供一种电路面积小且数据存储量较少的图像无级缩放方法。
本发明的另一目的是提供一种实现上述图像无级缩放方法的计算机装置。
本发明的再一目的是提供一种实现上述图像无级缩放方法的计算机可读存储介质。
为了实现上述的主要目的,本发明提供的图像无级缩放方法包括将原始图像划分为多个图像块,并确定水平缩放窗口的窗口长度,水平缩放窗口的窗口长度小于一个图像块的宽度,并且,对当前图像块进行水平缩放时,计算每一个水平缩放窗口缩放后的每一个像素点的像素值,在计算水平缩放窗口缩放后每一个像素点的像素值时,判断当前水平缩放窗口是否跨越两个图像块,如是,将水平缩放窗口在当前图像块下所计算的水平中间缓存值存储至水平缓存器中,否则,将水平缩放窗口缩放后的像素点的像素值存储至水平结果存储器中;确定当前图像块水平方向最后一点位于当前水平缩放窗口的结束点时,将当前水平缩放窗口缩放后的最后一个像素点的像素值存储至水平缓存器中;对下一图像块进行水平缩放时,在确定该图像块第一个水平缩放窗口为跨越两个图像块的水平缩放窗口时,从水平缓存器中获取水平中间缓存值,并应用中间缓存值计算该水平缩放窗口在缩放后的第一个像素点的像素值。
由上述方案可见,对图像块进行缩放时,使用水平缓存器存储一个中间结果,例如一个水平缩放窗口在图像块下的水平中间缓存值或者最后一个像素点的像素值,而不会存储整一行的所有像素点的像素值,从而实现了对图像块内、图像块之间缩放窗口处的像素点处理,对于当前主要的视频图像分块处理技术,有良好的衔接能力,实际应用中可以省去对缩放数据源的重排或再存取操作,减小了硬件处理时的实现难度及带宽需求。同时,本发明的方法不需要使用线缓存器存储数据,对硬件资源要求较低并且由于不用图像宽度的约束而具有较强的普遍适应性。
一个优选的方案是,在对当前图像块进行垂直缩放前,确定垂直缩放窗口的窗口长度,垂直缩放窗口的窗口长度小于一个图像块的高度;对当前图像块进行垂直缩放时,计算每一个垂直缩放窗口在缩放后的每一个像素点的像素值,在计算垂直缩放窗口缩放后每一个像素点的像素值时,判断当前垂直缩放窗口是否跨越两个图像块,如是,将垂直缩放窗口在当前图像块下所计算的垂直中间缓存值存储至垂直缓存器中,并将垂直缓存器的数据写入至外部存储器;否则,将垂直缩放窗口缩放后的像素点的像素值存储至垂直缓存器中;对当前图像块下方的图像块进行垂直缩放时,在确定该图像块第一个垂直缩放窗口为跨越两个图像块的垂直缩放窗口时,从外部存储器中获取垂直中间缓存值,并应用垂直中间缓存值计算该垂直缩放窗口在缩放后的第一个像素点的像素值。
由此可见,对图像块进行垂直缩放时,也是使用垂直缓存器来缓存中间数据,并且每一个垂直缩放窗口完成缩放后都需要将所计算的像素值存储到垂直缓存器中,并且在完成图像块最后一行的计算后,将垂直缓存器的数据存储至外部存储器,以便于在当前图像块的下方的图像块进行垂直缩放时,从外部存储器中获取垂直缩放窗口对应的像素值。由于垂直缩放过程中所需要缓存的数据量不多,也不需要使用线缓存器,能够有效的减小集成电路的面积。
进一步的方案是,计算图像块的垂直缩放窗口缩放后的像素点的像素值时,应用该图像块水平缩放窗口在水平缩放后的像素值进行计算。
可见,使用水平缩放后的像素值进行垂直缩放的计算,可以直接获得水平以及垂直缩放后的像素值,垂直缩放窗口所对应的缩放后的像素值即为输出的像素值。
更进一步的方案是,确定当前图像块垂直方向最后一点位于当前垂直缩放窗口的结束点时,将当前垂直缩放窗口缩放后的最后一个像素点的像素值存储至垂直缓存器中,并写入至外部存储器中。
更进一步的方案是,图像缩放操作为图像缩小操作,计算水平缩放窗口缩放后每一个像素点的像素值时,使用每一原始像素点的像素值进行水平方向的加权平均计算;计算垂直缩放窗口缩放后每一个像素点的像素值时,使用水平缩放后的像素点的像素值进行垂直方向的加权平均计算。
可见,在图像缩小操作过程中,通过对缩放窗口内的多个像素进行加权平均值的计算,可以快速的通过硬件电路实现,从而减小软件运算的时间,图像缩放处理效率更高。
可选的方案是,图像缩放操作为图像放大操作,计算水平缩放窗口缩放后每一个像素点的像素值时,使用原始像素点的像素值进行水平插值计算;计算垂直缩放窗口缩放后每一个像素点的像素值时,使用水平缩放后像素点的像素值进行垂直插值计算。
由此可见,通过插值操作可以简单、快速实现图像的放大操作,并且垂直插值操作使用水平插值操作后的数据,可以快速的实现图像的放大操作。
更进一步的方案是,确定当前水平缩放窗口跨越两个图像块时,设定当前水平缩放窗口的水平跨块标志;确定当前垂直缩放窗口跨越两个图像块时,设定当前垂直缩放窗口的垂直跨块标志。
由此可见,在缩放窗口跨越两个图像块时,设置水平跨块标志或者垂直跨块标志,解决了现有图像缩放过程中,确定图像块之间的数据处理的问题,为解决图像块之间的缩放计算提供了技术支撑,确保图像无级缩放的实现。
更进一步的方案是,在当前图像块的一行图像缩放后的最后一个像素点的像素值计算完毕后,产生完成信号,并进行当前图像块下一行的缩放计算;在当前图像块的一列图像缩放后的最后一个像素点的像素值计算完毕后,产生完成信号,并进行当前图像块下一列的缩放计算。
可见,在图像最后一个像素的缩放计算完毕以后,通过产生计算完成信号,可以及时启动下一行或者下一列的像素点的像素值的计算,从而减小图像缩放的运算时间,提高图像缩放的运算效率。
为了实现上述的另一目的,本发明还提供的计算机装置包括处理器以及存储器,存储器存储有计算机程序,计算机程序被处理器执行时实现上述图像无级缩放方法的各个步骤。
为了实现上述的再一目的,本发明还提供的计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述图像无级缩放方法的各个步骤。
附图说明
图1是本发明图像无级缩放方法实施例的流程图。
图2是本发明图像无级缩放方法实施例中有效缩放区域与丢弃区域的示意图。
图3是本发明图像无级缩放方法实施例中一个缩放窗口的窗口长度的示意图。
图4是应用本发明图像无级缩放方法实施例缩放窗口跨越两个图像块的示意图。
图5是本发明图像无级缩放方法实施例中图像块内各个像素使用的顺序示意图。
图6是本发明图像无级缩放方法实施例图像块内各个像素点缩放的示意图。
图7是本发明图像无级缩放方法实施例中间结果缓存的示意图。
图8是本发明图像无级缩放方法实施例中缩放运算结束信号产生的示意图。
图9是应用本发明图像无级缩放方法实施例的硬件原理框图。
以下结合附图及实施例对本发明作进一步说明。
具体实施方式
本发明的图像无级缩放方法用于图像的无级缩放,应用在具有电子显示屏的电子设备上,尤其是具有图像缩放功能的电子设备上,例如,应用在智能手机、平板电脑或者电子书阅读器等电子设备上。本发明的计算机装置可以是上述电子设备的处理器,而本发明的计算机可读存储介质是电子设备上用于存储计算机程序的介质,例如ROM或者FLASH等存储器。
此外,本发明的方法还可以通过硬件电路与软件程序相结合的方法实现,例如,用于计算图像加权平均值的步骤可以使用专用的集成电路模块实现。
图像无级缩放方法实施例:
本实施例对图像进行缩放时,需要对图像进行分块处理,例如将图像划分成多个预设大小的图像块,然后对每一个图像块进行缩放处理,从而获得缩放后的图像。对图像进行缩放处理包括对图像进行缩小处理,也包括对图像进行放大处理,下面以对图像进行缩小处理为例对本发明进行详细说明。
参见图1,对图像进行缩放时,首先将原始图像划分为多个图像块,即执行步骤S1。例如,原始图像的大小是640像素×640像素,对原始图像进行缩放时,将原始图像划分为多个图像块,每一个图像块的像素大小是64像素×64像素,因此,这种情况下,原始图像被划分为100个图像块,且每一个图像块的大小相等。
当然,由于原始图像的大小并不固定,因此原始图像不一定被完整的划分成完全相等的多个图像块,例如,原始图像的大小是750像素×690像素,如果划分的图像块大小仍然是64像素×64像素,则水平方向上最后的一个图像块的宽度只有46个像素,垂直方向上最后一个图像块的高度只有50个像素。因此,这种情况下,原始图像被划分成的多个图像块的大小并不是完全相等。
图像块的大小可以预先设定,例如预先设定多种规格的图像块,如64像素×64像素、32像素×32像素、64像素×32像素等,然后根据原始图像的大小选择合适的图像块并且对原始图像进行划分。
对原始图像划分成多个图像块后,执行步骤S2,确定水平缩放窗口以及垂直缩放窗口的窗口长度。本实施例中,根据原始图像的像素大小以及缩放比例确定水平缩放窗口以及垂直缩放窗口的长度。例如,水平缩放比例是缩小4倍,则水平缩放窗口可以是4个像素或者是8个像素的大小,如果水平缩放比例是缩小2.6倍,则水平缩放窗口可以是3个像素或者是5个像素的大小。相应的,垂直缩放窗口的长度也是根据垂直缩放比例的大小以及原始图像的高度确定。
接着,执行步骤S3,获取一个图像块。本实施例中,对多个图像块进行缩放时,按照自左向右、自上而下的顺序对多个图像块依次进行缩放操作,因此,最先获取位于原始图像左上角的图像块。在获取一个图像块以后,执行步骤S4,判断是否需要对图像块进行缩放操作,例如根据缩放的参数判断图像的缩放比例,如果图像的缩放比例为1,表示不需要对图像块进行缩放操作,此时执行步骤S5,输出原始图像块,否则,执行步骤S6,对图像块执行相应的操作。本实施例中,对图像块的操作包括:仅执行水平缩放、仅执行垂直缩放、同时执行水平缩放以及垂直缩放。
在执行相对应的缩放操作以后,执行步骤S7,判断当前缩放操作的图像块是否为原始图像中的最后一个图像块,如果是最后一个图像块,则结束图像的缩放操作,并且输出缩放后的像素值,如果不是最后一个图像块,则执行步骤S3,获取下一个图像块,并再次判断是否需要对图像块进行缩放操作,直至所有的图像块均执行缩放操作完毕为止。
下面结合图2至图8详细说明本实施例对原始图像进行缩放的具体方法。
参见图2,原始图像被划分为多个图像块,如图像块B0、B1、B2等,对图像块进行缩放时,先从左至右进行缩放,如先进行图像块B0的缩放,然后进行图像块B1的缩放,在第一行图像块缩放完毕以后,再进行第二行图像块的缩放,如从第二行的第一个图像块B2开始进行缩放。由于原始图像的宽度不一定是图像块宽度的整数倍,因此最后一列的图像块的宽度往往较短。相同的,最后一行的图像块的高度也很可能比其他行的图像块的高度较小。因此,并不是每一个图像块的大小都是相等的。
将原始图像划分为多个图像块以后,确定水平缩放窗口的窗口长度,即根据缩放比例以及原始图像的宽度确定水平缩放窗口的窗口长度。然而,如果仅仅使用原始图像的宽度除以缩放比例,往往获得的结果是一个小数,此时,水平缩放窗口难免会出现小数的情况,为保证水平缩放窗口的起始点、结束点为整数值,采用四舍五入的方法进行计算。
如图3所示,在确定水平缩放窗口的窗口长度以后,标记每一个水平缩放窗口的起始位置以及结束位置,并且,上一个水平缩放窗口结束点即为下一个水平缩放窗口起始点位置,本实施例中,记水平、方向的水平缩放窗口的起始点、结束点分别为x_start、x_stop,如x_stop(i)为第一个水平缩放窗口的结束点,x_start(i+1)为下一个水平缩放窗口的起始点,如此类推。
相同的,垂直缩放窗口的起始点、结束点可以分别记为y_start、y_stop,如y_stop(i)为第一个垂直缩放窗口的结束点,y_start(i+1)为下一个垂直缩放窗口的起始点。
然而,对于整幅图像而言,由于缩放倍数的随机性以及不确定性,并且由于缩放后所输出图像的宽度、高度预先设定好,在图像的右侧边界以及下侧边界存在最后几个像素点不满足一个缩放窗口的窗口长度的概率极大。如图2所示的,假设原始图像水平方向上的像素宽度为258个像素,而水平缩放窗口的窗口长度为5个像素,则在原始图像的最右侧,将会有3个像素点的剩余,本实施例中,将这3个像素点所在的列进行丢弃处理,即图2中区域11中的3列像素将被丢弃。相同的,在垂直方向上也很可能出现最下侧的若干行像素点不在一个垂直窗口上,如图2中的下侧区域12的像素点将被丢弃。本实施例中,区域11以及区域12以外的区域被称为有效缩放区域。
如果对图像块中的像素点的像素值计算是通过硬件计算的话,则硬件计算图像块的像素点的像素值的过程中,可以不直接通过输出图像边界判断,而是采用图像右、下边界块内结束标志判断、抛弃这些类像素点的策略,实现有效缩放区域的缩放操作。
本实施例中,计算每一个图像块缩放后的图像的像素点的像素值,是以每一个缩放窗口为单位进行的,因此在确定缩放窗口的窗口长度,即可以计算每一个缩放窗口下每一个像素点的像素值。本实施例是图像缩小的操作,例如,图像的缩小倍率为4倍,则水平缩放窗口的窗口长度为4个像素点,因此,计算水平缩放后的缩放窗口的像素点就是计算缩放后所对应的1个像素点的像素值。
本实施例采用加权求平均的方式进行计算,缩放计算公式为:
其中,式1中H(s,k)表示缩放后的图像中第k行第s列的像素点的像素值,s和k表示缩放后的图像中像素点所在的列数与行数,H(i,j)表示原始图像的第j行第i列的像素点的像素值,i和j表示原始图像中像素点所在的列数与行数,x_start、x_end分别表示原始图像中水平方向,即x方向上一个像素点以及最后一个像素点,y_start、y_end分别表示原始图像中垂直方向,即y方向上一个像素点以及最后一个像素点,weight表示像素点的宽度值。
为了方便通过硬件实现缩放操作,如通过硬件的计算电路实现加权计算,可以将式1拆分成水平、垂直两个方向分别进行计算,即
其中式2用于对图像块进行水平方向的加权平均值的计算,式3用于对图像块进行垂直方向上的加权平均值的计算,H’(i,k)表示水平缩放后的像素点的像素值,H”(k,j)表示垂直缩放后的像素点的像素值。
由于图像无级缩放的缩放倍率具有不确定性,而图像的缩放是按照图像块进行的,因此,出现一个缩放窗口跨越两个图像块的情况的概率极大。由于缩放窗口没有跨越两个图像块与跨越两个图像块时,缩放计算过程中数据的存储方式不相同,因此,需要设置一个无级缩放的跨块标志,以便于在当前缩放窗口跨越两个图像块时执行相应的缩放操作。
假设sc_blk_x、sc_blk_y分别表示当前图像块左上角相对于原始图像左上角的坐标,而span_blk_x、span_blk_y分别表示缩放过程中当前图像块水平、垂直方向最后一个缩放窗口是否跨越两个图像块的标志信号,如图4所示,一个水平缩放窗口跨越两个左右布置的图像块,如跨越图像块B0以及图像块B1,而一个垂直缩放窗口跨越上下布置的图像块,如跨越图像块B0以及图像块B2。
当某一个水平缩放窗口跨越两个图像块时,将该水平缩放窗口的跨块标志span_blk_x置1,当某一个垂直缩放窗口跨越两个图像块时,将该垂直缩放窗口的跨块标志span_blk_y置1,水平缩放窗口的跨块标志span_blk_x、垂直缩放窗口的跨块标志span_blk_y成立的条件为:
span_blk_x=x_stop>(sc_blk_x+当前图像块宽度-1);
span_blk_y=y_stop>(sc_blk_y+当前图像块高度-1)。
缩放窗口的跨块标志是否存在,对该缩放窗口的计算中间结果的存储有很大的影响。在水平缩放过程中,由于缩放后的图像块的像素点的像素值是通过水平缩放窗口内的多个像素点逐点加权平均计算获得,并且,本实施例中,每一水平缩放窗口的结束点是下一水平缩放窗口的起始点,还需要考虑到图像块的边界的情况,因此,本实施例中,需要进行如下处理以保证流水操作的正常进行:首先,利用当前水平缩放窗口结束点的像素值提前进行下一水平缩放窗口起始点权重值的计算;第二,增加数据缓存逻辑进行两类水平缩放中间结果的缓存,两类水平缩放中间结果包括:a)当前图像块的水平方向最后一像素点未处于当前水平缩放窗口的结束点时,表示当前水平缩放窗口跨越两个图像块,当前水平缩放窗口的“中间结果”表示加权累加的中间结果,即式2中的累加结果,但此时并不进行除法运算。需要说明的是,累加的中间结果包括像素值的累加结果,也包括权重值的累加结果,也就是式2中分子的累加结果以及分母的累加结果,上述两种累加结果被称为水平中间缓存值,被存储至水平缓存器中,如存储在先进先出缓存器FIFO中。b)当前图像块水平方向最后一个像素点处于当前水平缩放窗口的结束点时,表示当前水平缩放窗口完全位于当前图像块内,该“中间结果”表示当前图像块水平方向的最后一像素点的像素值,也就是经过加权平均计算后获得的缩放后的像素值,并且该中间结果也是使用水平缓存器进行存储。
进行水平缩放时,像素点均按照光栅扫描的顺序输入,缩放过程依序获取像素点进行缩放运算,如图5所示,光栅从左至右逐点扫描并获取每一个像素点的像素值。而本申请的方案中,在进行垂直缩放计算时,是使用水平缩放后的像素值作为数据源,因此同样涉及对应边界问题的处理。
进行垂直缩放时与水平缩放类似,也需要处理下一垂直缩放窗口起始像素点的权重值的计算以及块内和块边界“中间结果”的问题。首先,如果当前垂直缩放窗口完全位于一个图像块内,进行垂直缩放计算时,每一个垂直缩放窗口的最后一行均需进行如类似于水平缩放两类缩放“中间结果”的缓存,如使用先进先出的缓存器进行缓存,以保证垂直缩放的正常进行。需要强调的是,水平缩放时,“中间结果”出现在当前图像块的右边界,而垂直缩放的中间结果则出现在当前图像块内的每一个垂直缩放窗口的最后一行中。其次,由于垂直缩放以图像块为基本单位,按光栅扫描的顺序进行解析,垂直缩放进行至图像块的边界时,需要将其对应的“中间结果”缓存至外部存储器,如双倍速率同步动态随机存储器(DDR)。
而为有效利用“图像块内中间结果”的缓存逻辑,进行当前图像块进行缩放过程中,一旦遇到图像块下边界的缩放窗口时,暂时将对应的“中间结果”缓存至垂直缓存器,该垂直缓存器也是一个先进先出的缓存器,在当前图像块垂直缩放结束时,将垂直缓存器中的数值写入外部存储器中。
上述“中间结果”的使用严格按照先进先出的原则进行,水平缩放时在进行到当前图像块的左边界处,将进行先进先出的方式读取以获取对应“中间结果”进行后续缩放运算。在垂直缩放时,由于每一个垂直缩放窗口都需从垂直缓存器中读取中间结果的数据,也就是需要执行先进先出的读操作,获取“中间结果”进行后续缩放运算,而对于图像块的第一个垂直缩放窗口,还需要先从外部存储器中读取对应“中间结果”至垂直缓存器,再从垂直缓存器获取“中间结果”进行后续缩放运算。
可见,不管是水平缩放还是垂直缩放,都需要处理缩放窗口跨越两个图像块的问题,而缩放窗口是否跨越两个图像块,所存储的中间结果也是截然不同的。因此,本实施例中设置了跨块标志,通过判断某一缩放窗口是否存在跨块标志信号,便于在当前新的图像块中决定需要使用何种缩放“中间结果”进行连续的缩放操作:例如,跨块标志为1时,在新的图像块左边界或上边界使用加权累加中间结果继续进行未完成的缩放窗口的缩放计算;在跨块标志为0时,在新的图像块左边界或上边界时,使用其上一图像块右边界或下边界的像素点归类至当前缩放窗口继续进行缩放操作。
为了清楚记录当前的缩放窗口的像素点的缩放计算是否完成,需要设定每一个缩放窗口的缩放计算完成信号。例如,在水平缩放或者垂直缩放时记录当前缩放窗口对应的水平缩放或者垂直缩放行列坐标,分别记为:sc_coor_x、sc_coor_y,通过这两个坐标的信号实现水平、垂直缩放窗口缩放计算完成信号的生成,并且通过上述两个信号的传递,触发垂直缩放的进行或指示缩放操作的结束。同时,在该信号有效时,即触发水平或垂直缩放时下一缩放窗口起始权重值的计算,保证下一缩放窗口缩放操作正确、流畅的进行。水平缩放窗口、垂直缩放窗口的缩放完成完成信号为sc_stop_x、sc_stop_y,则有:
sc_stop_x=(sc_coor_x==x_stop);
sc_stop_y=(sc_coor_y==y_stop)。
下面结合图6与图7介绍图像块的缩放计算过程以及中间结果的存储过程。
如果图像块仅需要进行水平方向缩放时,则按照水平缩放窗口对每一个缩放窗口内的多个像素点进行加权平均值的计算,如果当前水平缩放窗口没有跨越两个图像块,则在每一个水平缩放窗口的像素点的像素值计算完毕后,将计算获得的结果存储到水平结果存储器中,例如存储至一个静态存储器SRAM中,本实施例中,该静态存储器记为sc_sram。如果当前的水平缩放窗口跨越两个图像块,例如,计算图像块最右侧的水平缩放窗口的数据时,将水平缩放中间缓存值存储至水平缓存器中,图7中的hor_fifo即为水平缓存器。从图6可见,当水平缩放窗口并未到达图像的右侧边界时,水平缩放窗口所产生的计算结果为水平缩放结果,并且被存储至静态存储器中,只有到达图像右侧边界时,水平缩放窗口的计算结果才会被存储至水平缓存器中。
如果水平缩放窗口没有跨越两个图像块,则存储至水平缓存器的数据就是当前缩放窗口经过缩放计算后的像素点的像素值,如果当前水平缩放窗口跨越两个图像块,则需要将水平缩放中间缓存值存储至水平缓存器中。
对下一个图像块进行水平缩放时,如对当前图像块右侧的图像块进行水平缩放时,可以使用水平缓存器中所存储的中间结果,例如,如果下一个图像块的第一个水平缩放窗口跨越两个图像块,表示该水平缩放窗口的一部分位于上一个图像块中,此时从水平缓存器中获取的中间结果就是上一个图像块中最后一个水平缩放窗口所计算的像素值的累加值,然后在将当前图像块第一个水平缩放窗口的像素值进行累加,加上上一个像素块中的像素值的累加值,可以实现一个完整的水平缩放窗口的像素点的像素值的加权平均值的计算。
如果仅存在垂直方向缩放时,按行依次进行如图6中所示每一个点的加权平均值的运算,并把运算结果存储在垂直缓存器中,图7中的ver_fifo为垂直缓存器。如果当前垂直缩放窗口未到达图像块的下边界,则存储到垂直缓存器的数据为经过缩放计算后的像素点的像素值,也就是经过加权平均计算的结果。如果当前垂直缩放窗口跨越上下两个图像块,则存储到垂直缓存器的数据为累加结果,也就是像素值的累加结果以及权重的累加结果,并且将垂直缩放中间缓存值输出值外部存储器,如DDR中。
当读取到垂直方向下一个图像块的第一行像素点时,需要将外部存储器所存储的上一个图像块的垂直缩放中间缓存值读取值垂直缓存器中,并且继续使用上一个图像块的垂直缩放中间缓存值进行第一行像素点的缩放计算。垂直方向缩放结束后,便可以将缩放结果输送至缩放结果存储器中,如静态存储器SRAM中,供其他模块使用。
如果水平方向与垂直方向均需要执行缩放操作,本实施例采用先进行水平缩放,并且每一个水平方向缩放窗口的缩放完成后,触发一次垂直缩放计算,此时需要同时兼顾水平、垂直方向上缩放窗口跨越当前图像块的情况。因此,在进行垂直缩放计算时,可以使用水平缩放以后获得的数据进行垂直缩放的计算,因此,如式3所示的,计算垂直方向上的像素值时,使用水平缩放计算后的像素值进行计算,从而实现水平、垂直方向上的缩放计算。
需要说明的是,水平缓存器地址由小到大依次对应图像块首行至尾行所有水平缩放中间结果存储的位置,由于水平缩放在图像块内按行进行,可以利用水平缓存器先进先出的特点在随着水平缩放逐行进行时逐渐取出对应在水平缓存器中的中间结果。
垂直缓存器的最大深度等于当前图像块的宽度,由于水平缩放的存在,很多情况都存在垂直缓存器不填满的情况,这是因为经水平缩放后的图像块宽度小于缩放前的图像块宽度,但由于同一图像块内水平缩放后的宽度一致,故在图像块内垂直缩放时从左到右依次取出垂直缓存器中的垂直缩放中间缓存值进行后续运算即可。
在缩放计算到达当前图像块最后一行时,需要将该行对应的垂直缩放中间缓存值存放至外部存储器中,该过程根据实际存在的中间结果个数发出对应指令对外部存储器进行写入操作即可。需要说明的是,需要记录当前图像块垂直方向缩放结束时水平方向有效缩放的个数,以便于能从外部存储器中取出正确个数的中间结果个数,便于后续垂直缩放的进行。
为了清楚记录当前的缩放窗口是否到达图像块的边界,如水平缩放窗口是否到达图像的右侧边界,或者垂直缩放窗口是否到达图像块的下侧边界,本实施例中,设定了多个信号,以确定当前缩放窗口到达图像块的右侧边界或者下侧边界,以启动下一行或者下一列的图像缩放计算。
图8示出了当前图像块水平方向最后一个缩放窗口跨越至下一图像块情形时,当前图像块水平方向缩放运算结束的判断方法。在这种情况下,当前图像块水平方向最后一个像素点在对应的缩放窗口内完成加权计算后,将产生完成脉冲sc_blk_end_x_pul,并且,当前图像块水平方向最后一个像素点缩放加权运算完成电平sc_blk_end_x在该像素点完成其对应缩放窗口内加权操作后置1,同时当与其最邻近的水平缩放窗口的缩放运算,即加权求平均计算结束标志信号sc_ss_end_flag_x有效时,触发产生当前图像块当前行缩放结束脉冲blk_line_end_pul,指示开始进行当前图像块下一行缩放窗口开始执行缩放计算。
当然,以上是缩放加权运算完成电平sc_blk_end_x先于加权求平均计算结束标志信号sc_ss_end_flag_x到达的情况,实际操作中存在加权求平均计算结束标志信号sc_ss_end_flag_x比缩放加权运算完成电平sc_blk_end_x晚到达或者两者同时翻转为1的情况,但无论何种情况,只要缩放加权运算完成电平sc_blk_end_x、加权求平均计算结束标志信号sc_ss_end_flag_x均为高电平,即触发当前图像块当前行缩放结束脉冲blk_line_end_pul产生,同时缩放加权运算完成电平sc_blk_end_x与加权求平均计算结束标志信号sc_ss_end_flag_x均同时清零,即同时变为低电平。
相同的,垂直方向缩放运算结束信号的产生与水平方向类似,但由于缩放顺序的限制,当前垂直缩放窗口的结束点将位于同一水平行的位置,即在垂直缩放的过程中,在某一水平行会出现多次当前缩放窗口的垂直缩放结束标志信号。鉴于此,并且为了保证当前行水平缩放结束判断的正确进行,在水平方向缩放加权运算完成后若处于当前图像块垂直缩放进行的下边界位置时,在该点垂直缩放加权运算完成后立即触发产生一高电平sc_blk_end_y,当与sc_blk_end_y最邻近的一次垂直缩放窗口运算完成时(记为sc_ss_end_flag_y有效)指示当前图像块垂直缩放结束脉冲blk_col_end_pul置1,指示当前图像块有效的缩放运算完成。
当然,上面介绍的方法是以图像缩小为例进行说明的,如果对图像进行放大操作,则需要对图像块进行插值计算,也是先进行水平放大的插值计算,然后使用水平放大后的插值计算结果执行垂直方向上的插值计算。与缩小操作相同的,在完成一个图像块的水平插值操作以后,使用水平缓存器存储水平插值以后获得的中间结果,这个中间结果可以是水平方向上最后一个像素点的像素值,也可以是水平缩放中间缓存值。在垂直插值计算的过程中,使用水平插值获得的数据进行垂直插值计算,并且在每一个垂直缩放窗口插值完成后,将插值结果的数据写入到一个垂直缓存器中,在到达图像最后一行时,将垂直缓存器的数据写入到外部存储器中。相同的,图像插值计算过程中也需要确定当前的缩放窗口是否到达图像的边界,判断方法与图像缩小时的判断方向相同,不再赘述。
本发明的方案是通过对原始图像划分成多个图像块,并且对图像块进行水平、垂直缩放,并且提供了在出现缩放窗口跨越两个图像块时的解决方案,还提出判断缩放窗口是否达到图像块边界的方案。本发明的方法可以通过软件程序实现,也可以是软件结合硬件实现。如果全部由软件程序实现,则在电子设备中设置处理器,并且由处理器运行实现上述方法的应用程序。如果由软件以及硬件实现,则可以设置一个硬件电路,即专用的集成电路模块,如图9所示。
图9中,外部配置信息以及原始图像数据均由处理器等设备提供,也就是缩放电路外部的设备提供原始的数据,其中,原始图像数据为无级缩放提供数据源,外部配置信息为无级缩放过程所需的配置参数,包括原始图像宽高、缩放窗口长度、缩放方向等。
本实施例中,缩放电路包括缩放控制单元31、边界无效缩放窗口丢弃单元32、水平苏佛昂运算单元33、垂直缩放运算单元34、水平缓存器35以及垂直缓存器36。缩放控制单元31为无级缩放计算的控制模块,除了控制数据源读取、控制缩放计算过程进等基本操作外,还涉及上述涉及的边界问题,包括“中间结果”缓存与读取、“不满足一个缩放窗口的像素点”丢弃的协调控制。边界无效缩放窗口丢弃单元32用于接收缩放控制单元31发出的控制信号,实现上述“不满足一个缩放窗口的像素点”的丢弃操作。水平缩放单元33、垂直缩放单元34为水平、垂直缩放主要计算模块,其除完成水平、垂直方向的缩放运算外,还配合缩放控制单元31完成与水平缓存器35、垂直缓存器36进行水平、垂直缩放过程中间结果的交互。而垂直缓存器36还需要与外部的存储器37进行数据交换,如与DDR存储器进行数据交互,将垂直缓存器的数据写入到外部存储器中。
相比起现有的图像缩放技术,本发明解决了图像分块时无级缩放处理的难点问题,即图像块内、图像块间、图像边界等边界问题,相对于当前主要的视频图像分块处理技术,本发明具有良好的衔接能力,实际应用中可以省去对缩放数据源的重排列或再存取操作,减小了硬件处理时的实现难度及带宽需求,同时,本发明无需使用线缓存器,对硬件资源要求较低并且由于不受图像宽度的约束而具有较强的普遍适应性。此外,本发明的方案经过RTL逻辑仿真、IC充分验证、FPGA原型验证、综合后仿验证并已实施,所有功能、性能指标均与PC仿真结果一致,证明可行。
计算机装置实施例:
本实施例的计算机装置包括有处理器、存储器以及存储在存储器中并可在处理器上运行的计算机程序,例如用于实现上述信息处理方法的信息处理程序。处理器执行计算机程序时实现上述图像无级缩放方法的各个步骤。
例如,计算机程序可以被分割成一个或多个模块,一个或者多个模块被存储在存储器中,并由处理器执行,以完成本发明的各个模块。一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在终端设备中的执行过程。
需要说明的是,终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,本发明的示意图仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端设备还可以包括输入输出设备、网络接入设备、总线等。
本发明所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
计算机可读存储介质实施例:
终端设备集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个图像无级缩放方法的各个步骤。
其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
当然,上述的方案只是本发明优选的实施方案,实际应用是还可以有更多的变化,例如,图像块大小的变化、缩放窗口长度的变化等,这些改变都不影响本发明的实施,也应该包括在本发明的保护范围内。
Claims (10)
1.图像无级缩放方法,包括:
将原始图像划分为多个图像块,并确定水平缩放窗口的窗口长度,所述水平缩放窗口的窗口长度小于一个所述图像块的宽度;
其特征在于:
对当前图像块进行水平缩放时,计算每一个所述水平缩放窗口缩放后的每一个像素点的像素值,在计算所述水平缩放窗口缩放后每一个像素点的像素值时,判断当前水平缩放窗口是否跨越两个图像块,如是,将所述水平缩放窗口在当前图像块下所计算的水平中间缓存值存储至水平缓存器中,否则,将所述水平缩放窗口缩放后的像素点的像素值存储至水平结果存储器中;
其中,所述水平中间缓存值包括当前水平缩放窗口在水平方向上各像素值的累加结果以及水平方向上的各像素点权重值的累加结果;
确定当前图像块水平方向最后一点位于当前水平缩放窗口的结束点时,将当前水平缩放窗口缩放后的最后一个像素点的像素值存储至所述水平缓存器中;
对下一图像块进行水平缩放时,在确定该图像块第一个水平缩放窗口为跨越两个图像块的水平缩放窗口时,从所述水平缓存器中获取所述水平中间缓存值,并应用所述水平中间缓存值计算该水平缩放窗口在缩放后的第一个像素点的像素值:将下一图像块第一个水平缩放窗口的像素值进行累加,加上当前图像块最后一个水平缩放窗口的水平方向的像素值的累加值,计算该水平缩放窗口的像素点的像素值的加权平均值。
2.根据权利要求1所述的图像无级缩放方法,其特征在于:
在对当前图像块进行垂直缩放前,确定垂直缩放窗口的窗口长度,所述垂直缩放窗口的窗口长度小于一个所述图像块的高度;
对当前图像块进行垂直缩放时,计算每一个所述垂直缩放窗口在缩放后的每一个像素点的像素值,在计算所述垂直缩放窗口缩放后每一个像素点的像素值时,判断当前垂直缩放窗口是否跨越两个图像块,如是,将所述垂直缩放窗口在当前图像块下所计算的垂直中间缓存值存储至垂直缓存器中,并将所述垂直缓存器的数据写入至外部存储器;否则,将所述垂直缩放窗口缩放后的像素点的像素值存储至所述垂直缓存器中;其中,所述垂直中间缓存值包括当前垂直缩放窗口在垂直方向上各像素值的累加结果以及垂直方向上的各像素点权重值的累加结果;
对当前图像块下方的图像块进行垂直缩放时,在确定该图像块第一个垂直缩放窗口为跨越两个图像块的垂直缩放窗口时,从所述外部存储器中获取所述垂直中间缓存值,并应用所述垂直中间缓存值计算该垂直缩放窗口在缩放后的第一个像素点的像素值:将下一图像块第一个垂直缩放窗口的像素值进行累加,加上当前图像块最后一个垂直缩放窗口的垂直方向的像素值的累加值,计算该垂直缩放窗口的像素点的像素值的加权平均值。
3.根据权利要求2所述的图像无级缩放方法,其特征在于:
计算图像块的垂直缩放窗口缩放后的像素点的像素值时,应用该图像块水平缩放窗口在水平缩放后的像素值进行计算。
4.根据权利要求3所述的图像无级缩放方法,其特征在于:
确定当前图像块垂直方向最后一点位于当前垂直缩放窗口的结束点时,将当前垂直缩放窗口缩放后的最后一个像素点的像素值存储至所述垂直缓存器中,并写入至所述外部存储器中。
5.根据权利要求2至4任一项所述的图像无级缩放方法,其特征在于:
所述图像缩放操作为图像缩小操作,计算所述水平缩放窗口缩放后每一个像素点的像素值时,使用每一原始像素点的像素值进行水平方向的加权平均计算;计算所述垂直缩放窗口缩放后每一个像素点的像素值时,使用水平缩放后的像素点的像素值进行垂直方向的加权平均计算。
6.根据权利要求2至4任一项所述的图像无级缩放方法,其特征在于:
所述图像缩放操作为图像放大操作,计算所述水平缩放窗口缩放后每一个像素点的像素值时,使用原始像素点的像素值进行水平插值计算;计算所述垂直缩放窗口缩放后每一个像素点的像素值时,使用水平缩放后像素点的像素值进行垂直插值计算。
7.根据权利要求2至4任一项所述的图像无级缩放方法,其特征在于:
确定当前水平缩放窗口跨越两个图像块时,设定当前水平缩放窗口的水平跨块标志;
确定当前垂直缩放窗口跨越两个图像块时,设定当前垂直缩放窗口的垂直跨块标志。
8.根据权利要求2至4任一项所述的图像无级缩放方法,其特征在于:
在当前图像块的一行图像缩放后的最后一个像素点的像素值计算完毕后,产生完成信号,并进行当前图像块下一行的缩放计算;
在当前图像块的一列图像缩放后的最后一个像素点的像素值计算完毕后,产生完成信号,并进行当前图像块下一列的缩放计算。
9.计算机装置,其特征在于,包括处理器以及存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任意一项所述图像无级缩放方法的各个步骤。
10.计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1至8中任意一项所述图像无级缩放方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810257297.8A CN108537729B (zh) | 2018-03-27 | 2018-03-27 | 图像无级缩放方法、计算机装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810257297.8A CN108537729B (zh) | 2018-03-27 | 2018-03-27 | 图像无级缩放方法、计算机装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108537729A CN108537729A (zh) | 2018-09-14 |
CN108537729B true CN108537729B (zh) | 2022-03-04 |
Family
ID=63485222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810257297.8A Active CN108537729B (zh) | 2018-03-27 | 2018-03-27 | 图像无级缩放方法、计算机装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108537729B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109934762B (zh) * | 2019-02-27 | 2024-05-14 | 珠海亿智电子科技有限公司 | 一种可伸缩线缓存电路实现方法 |
CN111093045B (zh) * | 2019-12-10 | 2021-03-26 | 北京佳讯飞鸿电气股份有限公司 | 一种缩放视频序列分辨率的方法及装置 |
CN111105356B (zh) * | 2019-12-26 | 2023-06-02 | Tcl华星光电技术有限公司 | 图像处理方法、装置及计算机可读存储介质 |
CN111860694A (zh) * | 2020-07-31 | 2020-10-30 | 地平线(上海)人工智能技术有限公司 | 图像处理方法、用于图像处理的指令的生成方法及装置 |
CN115546614B (zh) * | 2022-12-02 | 2023-04-18 | 天津城建大学 | 一种基于改进yolov5模型的安全帽佩戴检测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101359465A (zh) * | 2008-09-19 | 2009-02-04 | 成都九洲电子信息系统有限责任公司 | 改善图象缩放画质的方法 |
CN102456214A (zh) * | 2010-10-21 | 2012-05-16 | 珠海全志科技股份有限公司 | 图像缩放中线缓存的使用方法和装置 |
CN107679164A (zh) * | 2017-09-28 | 2018-02-09 | 上海交通大学 | 基于四叉树虚拟显示的超大容量图像的浏览方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8989437B2 (en) * | 2011-05-16 | 2015-03-24 | Microsoft Corporation | Salient object detection by composition |
-
2018
- 2018-03-27 CN CN201810257297.8A patent/CN108537729B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101359465A (zh) * | 2008-09-19 | 2009-02-04 | 成都九洲电子信息系统有限责任公司 | 改善图象缩放画质的方法 |
CN102456214A (zh) * | 2010-10-21 | 2012-05-16 | 珠海全志科技股份有限公司 | 图像缩放中线缓存的使用方法和装置 |
CN107679164A (zh) * | 2017-09-28 | 2018-02-09 | 上海交通大学 | 基于四叉树虚拟显示的超大容量图像的浏览方法及系统 |
Non-Patent Citations (2)
Title |
---|
Stepless digital zoom for high definition camera;Huinan Guo等;《https://doi.org/10.1117/12.2245155》;20160829;全文 * |
基于双极偏好的滑动窗口参数优化方法;邱飞岳 等;《计算机科学》;20140331;第41卷(第3期);第297-300页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108537729A (zh) | 2018-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108537729B (zh) | 图像无级缩放方法、计算机装置及计算机可读存储介质 | |
EP2997539B1 (en) | Method and device for processing input image data | |
CN103702032A (zh) | 图像处理方法、装置和终端设备 | |
CN108346131A (zh) | 一种数字图像缩放方法、装置及显示设备 | |
US20240282109A1 (en) | Method and apparatus for tensor processing | |
CN105787898A (zh) | 基于fpga的平台直方图均衡化实现方法及其装置 | |
US20200327638A1 (en) | Connected component detection method, circuit, device and computer-readable storage medium | |
CN107888970A (zh) | 视频处理方法、装置、嵌入式设备及存储介质 | |
CN115209145A (zh) | 一种视频压缩方法、系统、装置及可读存储介质 | |
CN110443751B (zh) | 基于绘画线条的图像变形方法、装置、设备及存储介质 | |
CN114598893A (zh) | 文字的视频实现方法及系统、电子设备、存储介质 | |
US9171227B2 (en) | Apparatus and method extracting feature information of a source image | |
CN105427235B (zh) | 一种图像浏览方法及系统 | |
CN110211022A (zh) | 一种图像处理方法、装置及电子设备 | |
US8549420B1 (en) | Method and apparatus for displaying a graphical object within a grid of a graphical user interface | |
CN106780291B (zh) | 一种实时畸变图像处理加速装置 | |
CN107977923B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
US10387997B2 (en) | Information processing device, information processing method, and storage medium | |
JPH08305625A (ja) | 演算処理機能付き半導体メモリ及びそれを用いた処理装置 | |
CN110769299A (zh) | 一种视频帧的写入方法、装置、电子设备及存储介质 | |
US10152766B2 (en) | Image processor, method, and chipset for increasing intergration and performance of image processing | |
US7457470B2 (en) | Image processing apparatus | |
JP3154741B2 (ja) | 画像処理装置及びその方式 | |
US11972504B2 (en) | Method and system for overlapping sliding window segmentation of image based on FPGA | |
JP6326914B2 (ja) | 補間装置及び補間方法 |
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 |