CN103970781A - 嵌入式浏览器图片解码装置及方法 - Google Patents

嵌入式浏览器图片解码装置及方法 Download PDF

Info

Publication number
CN103970781A
CN103970781A CN201310037553.XA CN201310037553A CN103970781A CN 103970781 A CN103970781 A CN 103970781A CN 201310037553 A CN201310037553 A CN 201310037553A CN 103970781 A CN103970781 A CN 103970781A
Authority
CN
China
Prior art keywords
decoding
original image
module
pixel
picture
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.)
Pending
Application number
CN201310037553.XA
Other languages
English (en)
Inventor
张敏锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Coship Electronics Co Ltd
Original Assignee
Shenzhen Coship Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Coship Electronics Co Ltd filed Critical Shenzhen Coship Electronics Co Ltd
Priority to CN201310037553.XA priority Critical patent/CN103970781A/zh
Publication of CN103970781A publication Critical patent/CN103970781A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

本发明公开一种嵌入式浏览器图片解码装置及方法,该装置包括:内存检测模块、解码要求查询模块、解码控制模块以及图片解码模块,其中,内存检测模块用于检测当前客户端机器的可用内存;解码要求查询模块用于计算解码原始图片所需要的最小内存;解码控制模块用于比较所述可用内存是否小于所述最小内存,如果是,则计算所述可用内存所能解码的最大分辨率;图片解码模块用于对原始图片按照所述最大分辨率进行解码。本发明最大限度地根据可用内存解码及显示图片,有效地解决了嵌入式浏览器中图片的解码和显示问题。

Description

嵌入式浏览器图片解码装置及方法
技术领域
本发明涉及嵌入式浏览器图片显示技术,尤其涉及一种嵌入式浏览器图片解码装置及方法。
背景技术
嵌入式系统通常以手机、电视等作为显示设备,通过嵌入式浏览器动态下载并显示网页内容。网页开发人员为了丰富页面内容,通常在网页中添加大量图片。当网页中含有大图片子资源时,图片解码需要大量的内存。对于32位色的系统,一张分辨率为1024×720的图片,解码需要3M左右的内存,并且是连续内存。普通用户计算机上的浏览器,比如IE,FireFox,百度,Chrome等等,内存都是直接从系统内存中分配,一般来说计算机上的内存相对比较充裕。不会对浏览器做内存使用的限制。
但是,嵌入式系统的内存通常比较小,再加上浏览器由于内存申请频繁,系统运行一段时间后内存不可避免出现大量碎片,导致不能分配到解码图片所需要的较大的连续的可用内存,从而不仅页面中的图片不能正常解码和显示,例如,将图片显示为“?”或“×”等默认的替换图片,而且还容易导致系统因缺少内存而出现异常或死机。
因此,针对现有嵌入式浏览器在浏览包含大量图片的网页时不能正确解码和显示图片的问题,如何提高嵌入式浏览器访问和显示包含大量图片元素的复杂页面的性能,不仅能正确解码显示页面中的大图片,而且不会使系统因缺少内存而异常,成为急待解决的问题。
发明内容
本发明的目的是提供一种嵌入式浏览器图片解码方法及装置,针对现有嵌入式浏览器在浏览包含大图片的网页时,解码和显示图片性能不佳的问题,提高嵌入式浏览器访问和显示包含大量图片元素的复杂页面的性能,不仅能正确解码显示页面中的大图片,而且不会使系统因缺少内存而异常。
为解决本发明的技术问题,本发明公开一种嵌入式浏览器图片解码装置,包括:内存检测模块、解码要求查询模块、解码控制模块、图片解码模块,其中:
内存检测模块,与解码控制模块相连,用于检测当前客户端机器的可用内存,输出至解码控制模块;
解码要求查询模块,与解码控制模块相连,用于计算解码浏览器当前页面中的原始图片所需要的最小内存,输出至解码控制模块;
解码控制模块,分别与内存检测模块、解码要求查询模块和图片解码模块相连,用于接收内存检测模块输出的所述可用内存和解码要求查询模块输出的所述最小内存,比较所述可用内存是否小于所述最小内存,如果是,则计算所述可用内存所能解码的最大分辨率,输出至图片解码模块,控制图片解码模块按照所述最大分辨率对原始图片进行解码;
图片解码模块,与解码控制模块相连,用于在解码控制模块的控制下,对原始图片进行解码,输出解码后得到的目标图片。
为解决本发明的技术问题,本发明还公开一种嵌入式浏览器图片解码方法,包括:
在页面中显示原始图片时,计算解码原始图片所需要的最小内存;
检测当前客户端机器的可用内存;
判断当前客户端机器的可用内存是否小于所述解码原始图片所需要的最小内存,如果是,则计算当前客户端机器的可用内存所能解码的最大分辨率,按照所述最大分辨率对原始图片进行解码。
从上述方案可以看出,由于本发明在对原始图片进行解码前,先检测当前客户端机器的可用内存,根据该可用内存计算当前客户端机器能够正确解码的图片的最大分辨率,依据该最大分辨率对原始图片进行解码,从而避免了现有技术中由于缺少解码原始图片所需要的连续的大内存而导致的原始图片不能正确解码显示及系统异常等一系列问题,本发明能够灵活地根据剩余内存对原始图片进行解码和显示,提高嵌入式浏览器访问和显示包含大量图片元素的复杂页面的性能,不仅能正确解码显示页面中的图片,而且不会使系统因缺少内存而异常,有效地解决了嵌入式浏览器中图片的解码和显示问题,尤其是大图片的解码和显示问题。
附图说明
图1为本发明实施例嵌入式浏览器图片解码装置的结构示意图;
图2为本发明实施例嵌入式浏览器图片解码装置的另一结构示意图;
图3为本发明实施例嵌入式浏览器图片解码方法的流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
为了克服现有技术中嵌入式浏览器在浏览包含图片的网页时不能正确解码及显示网页中的图片的问题,本发明提供了一种嵌入式浏览器图片解码装置,通过检测当前客户端机器的可用内存,推导得出当前可用内存所能解码的图片的最大分辨率,对原始图片按照该最大分辨率进行解码和显示,从而不仅能正确解码和显示页面中的所有图片,而且不会使系统因缺少内存而出现异常或死机,有效地解决了嵌入式浏览器中图片的解码和显示问题。
以下结合具体的实施例对本发明提供的嵌入式浏览器图像解码装置及其方法进行详细说明。
图1为本发明实施例嵌入式浏览器图片解码装置的结构示意图。该装置包括:内存检测模块、解码要求查询模块、解码控制模块、图片解码模块,其中:
内存检测模块,与解码控制模块相连,用于检测当前客户端机器的可用内存,输出至解码控制模块;
解码要求查询模块,与解码控制模块相连,用于计算解码浏览器当前页面中的原始图片所需要的最小内存,输出至解码控制模块;
解码控制模块,分别与内存检测模块、解码要求查询模块和图片解码模块相连,用于接收内存检测模块输出的所述可用内存和解码要求查询模块输出的所述最小内存,比较所述可用内存是否小于所述最小内存,如果是,则计算所述可用内存所能解码的最大分辨率,输出至图片解码模块,控制图片解码模块按照所述最大分辨率对原始图片进行解码;
图片解码模块,与解码控制模块相连,用于在解码控制模块的控制下,对原始图片进行解码,输出解码后得到的目标图片。
图2为本发明实施例嵌入式浏览器图片解码装置的另一结构示意图。参见图2,除包括图1所述的模块外,还包括如下模块。其中,为了图示简明,将与图1相同连接关系的模块省略,只对增加的模块的连接关系进行说明。
本实施例中,解码要求查询模块进一步包括图片信息获取模块和解码要求计算模块,其中,
图片信息获取模块,用于获取原始图片的分辨率和当前客户端系统每像素所占用的字节数,输出至解码要求计算模块;
具体的,网页中每张原始图片在页面中均描述有其原始分辨率等属性信息,通过读取该属性信息即可获取原始图片的分辨率。通过读取当前客户端系统的属性信息即可获取当前客户端系统每像素所占用的字节数。具体的获取方法是本领域技术人员容易实现的,在此不过多赘述。
解码要求计算模块,用于根据接收到的原始图片的分辨率计算得出原始图片的总像素,再将原始图片的总像素和每像素所占用的字节数进行相乘计算,输出计算后得到解码原始图片所需要的最小内存。
举例来说,假设网页中某张原始图片的分辨率为1024×720,表示该图片在水平方向上有1024个像素点,在垂直方向上有720个像素点,则该图片的总像素为1024×720=737280。假设当前客户端系统为32位色的系统,则表示每像素用32位表示,即表示每像素占用4字节。那么,正常解码该图片所需要的最小内存为737280×4字节,即2.8125M字节。
由于本实施例只需要读取原始图片和当前系统的属性信息以及进行简单计算,而不必对原始图片进行解码和显示,因此只需要很小的内存即可完成。
在系统运行一段时间后,很可能分配不到解码原始图片所需要的连续内存块,从而导致原始图片不能正确解码及显示。因此,为了解码和显示原始图片,本实施例中解码控制模块根据当前客户端机器可用内存计算得出当前系统所能解码的最大分辨率,依据该最大分辨率对原始图片进行解码和显示,从而能够最大限度地利用可用内存来显示原始图片。
具体的,本实施例中,解码控制模块通过以下公式计算得出当前客户端机器可用内存所能解码的最大分辨率:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
其中,resolutionH为所述最大分辨率在垂直方向上的像素数,resolutionW为所述最大分辨率在水平方向上的像素数,OriginResolutionH为原始图片在垂直方向上的像素数,OriginResolutionW为原始图片在水平方向上的像素数,Mem为所述当前客户端机器的可用内存,bytePerPixel为当前客户端系统每像素所占用的字节数。
上述公式是针对解码要求查询模块中计算解码图片所需要的最小内存的计算过程的反向推导过程。例如,假设内存检测模块检测到当前客户端机器的可用内存为2.4M,即Mem=2.4M;假设图片信息获取模块获取到原始图片在垂直方向上的像素数为1024,即OriginResolutionH=1024;原始图片在水平方向上的像素数为720,即OriginResolutionW=720;当前客户端系统为32位(4字节)色系统,即bytePerPixel=4字节;那么,按照上面列出的公式计算得出当前客户端机器可用内存能正常解码的最大分辨率(resolutionH×resolutionW)为:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
= ( ( 2.4 * 1024 * 1024 * 1024 ) / ( 720 * 4 ) ) = 946
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
= ( ( 2.4 * 1024 * 1024 * 720 ) / ( 1024 * 4 ) ) = 665
可见,当前客户端机器可用内存能正常解码的图片的最大分辨率为946×665。而原始图片的分辨率为1024×720,超出了当前可用内存所能解码的最大分辨率范围。因此,如果直接对原始图片进行解码显示,则会导致原始图片不能正确显示(如显示为“?”或“×”等),甚至还会导致系统因缺少内存而出现异常或死机。因此,本实施例中为了正常解码和显示原始图片,丢掉原始图片的部分像素,将原始图片按照946×665的分辨率进行解码和显示。从而最大限度地利用了可用内存对图片进行解码,保证浏览器在限定内存情况下图片能被正常解码和显示。
由于对原始图片按照较低的分辨率进行解码,解码过程中会丢掉原始图片的部分像素,解码后得到的目标图片的长度和宽度一般也小于原始图片。而浏览器网页排版时用于显示图片的窗口的大小是与原始图片的大小一致的,这样,如果直接在浏览器窗口中显示目标图片,就会导致目标图片不能填满整个浏览器窗口,视觉效果不佳。因此,本实施例嵌入式浏览器图片解码装置还进一步包括了图片放大模块,用于将目标图片进行拉伸处理,还原成原始图片的大小后,再在浏览器窗口中显示。
具体的,图片放大模块,与图片解码模块相连,用于接收图片解码模块输出的目标图片,将目标图片放大至原始图片的长度和宽度进行输出显示。
网页中的每张原始图片在页面中描述有其原始的长度、宽度等属性,例如,假设网页中某张原始图片描述为:
<img height="1024"width="720"src="../001.jpg">
其中,img表示image元素,对应一张图片;height="1024"表示该图片在网页中显示时,其高度显示为1024;width="720"表示该图片宽度显示为720;src="../001.jpg"表示该图片引用上级目录下的001.jpg文件。则这张图片在网页中会显示成1024×720大小。当对该图片按照较低的分辨率进行解码后,得到的目标图片一般小于原始图片的大小1024×720,因此,在将目标图片在浏览器窗口中输出显示之前,可以对目标图片进行放大处理,将目标图片拉伸还原成原始图片的大小1024×720后再在浏览器窗口中显示,以获得网页原始排版的效果。具体的放大方法可以采用按比例放大或其它放大方法,本发明对此不作具体限制。
在将目标图片进行放大处理后,目标图片像素点之间的空隙变大,因此放大后的目标图片可能会出现模糊、锯齿或者其他失真的情况。为了减小失真,本实施例中,图片放大模块还进一步用于对目标图片放大后产生的新像素点进行填充,以提高目标图片的显示质量。
具体的,本实施例中,图片放大模块还进一步包括放大倍数计算模块、像素点排列模块以及像素点填充模块,其中:
放大倍数计算模块,与像素点排列模块相连,用于获取目标图片和原始图片的长度和宽度,分别计算目标图片与原始图片的长度比例和宽度比例,得到目标图片在水平方向和垂直方向上的放大倍数,输出至像素点排列模块;
具体的,原始图片和目标图片的长度和宽度信息可以从图片的属性信息中读取,如JPG文件是由一个个段(segments)构成的。jpeg从标记为SOF0的段中读取。。
像素点排列模块,分别与放大倍数计算模块和像素点填充模块相连,用于根据接收到的所述放大倍数计算目标图片的像素点在放大后的位置坐标,根据所述放大后的位置坐标重新排列目标图片的像素点,输出至像素点填充模块;
像素点填充模块,与像素点排列模块相连,用于对放大后产生的新像素点进行填充,输出填充后的目标图片。
具体的,在对目标图片进行填充时可以采用最邻近法或双线性插值法或双三次插值法进行填充,当然也可以采用其他插值算法进行填充,本发明对此不作具体限制。
下面举一具体实施例,对本发明嵌入式浏览器图片解码方法流程图进行说明。
图3为本发明实施例嵌入式浏览器图片解码方法的流程图,其包括以下步骤:
步骤101,在页面中显示原始图片时,计算解码原始图片所需要的最小内存;
本步骤中,可以通过将原始图片的总像素和每像素所占用的字节数进行相乘计算,得到解码原始图片所需要的最小内存。具体的,本步骤中计算解码原始图片所需要的最小内存的步骤还可以包括:
获取原始图片的总像素和当前客户端系统每像素所占用的字节数,将原始图片的总像素和每像素所占用的字节数相乘得到解码原始图片所需要的最小内存。
网页中每张原始图片在页面中均描述有其原始分辨率等属性信息,通过读取该属性信息即可获取原始图片的分辨率。通过读取当前客户端系统的属性信息即可获取当前客户端系统每像素所占用的字节数。具体的获取方法是本领域技术人员容易实现的,在此不过多赘述。通过将原始图片的分辨率相乘即可得出原始图片的总像素,再将原始图片的总像素和每像素所占用的字节数相乘,即得出解码原始图片所需要的最小内存。
举例来说,假设网页中某张原始图片的分辨率为1024×720,表示该图片在水平方向上有1024个像素点,在垂直方向上有720个像素点,则该图片的总像素为1024×720=737280。假设当前客户端系统为32位色的系统,则表示每像素用32位表示,即表示每像素占用4字节。那么,正常解码该图片所需要的最小内存为737280×4字节,即2.8125M字节。
由于本步骤只需要读取原始图片和当前系统的属性信息以及进行简单计算,而不必对原始图片进行解码和显示,因此只需要很小的内存即可完成。
步骤103,检测当前客户端机器的可用内存;
在系统运行一段时间后,很可能分配不到解码原始图片所需要的连续内存块,从而导致原始图片不能正确解码及显示。因此,本步骤中先对当前客户端机器可用内存进行检测。
步骤105,判断当前客户端机器的可用内存是否小于所述解码原始图片所需要的最小内存,如果是,则进入步骤107;否则,进入步骤109,正常解码原始图片;
本步骤中,通过比较可用内存和解码所需要的内存的大小从而选择最佳的解码方式。如果可用内存小于解码原始图片所需要的最小内存,则表示原始图片不能被正常解码,需要降低原始图片的分辨率再进行解码;否则,表示原始图片能够被正常解码,则正常解码原始图片。
步骤107,计算当前客户端机器的可用内存所能解码的最大分辨率,按照所述最大分辨率对原始图片进行解码。
本步骤中,计算当前客户端机器的可用内存所能解码的最大分辨率的步骤可以通过以下公式计算得出:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
其中,resolutionH为所述最大分辨率垂直方向上的像素数,resolutionW为所述最大分辨率水平方向上的像素数,OriginResolutionH为所述原始图片在垂直方向上的像素数,OriginResolutionW为所述原始图片在水平方向上的像素数,Mem为当前客户端机器的可用内存,bytePerPixel为当前客户端系统每像素所占用的字节数。
本步骤中,上述公式是对步骤101中计算解码图片所需要的最小内存的计算过程的反向推导过程。例如,假设检测到当前客户端机器的可用内存为2.4M,即Mem=2.4M;假设原始图片在垂直方向上的像素数为1024,即OriginResolutionH=1024;原始图片在水平方向上的像素数为720,即OriginResolutionW=720;当前客户端系统为32位(4字节)色系统,即bypePerPixel=4字节;那么,按照上面列出的公式计算得出当前客户端机器可用内存能正常解码的最大分辨率(resolutionH×resolutionW)为:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
= ( ( 2.4 * 1024 * 1024 * 1024 ) / ( 720 * 4 ) ) = 946
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
= ( ( 2.4 * 1024 * 1024 * 720 ) / ( 1024 * 4 ) ) = 665
可见,当前客户端机器可用内存能正常解码的图片的最大分辨率为946×665。而原始图片的分辨率为1024×720,超出了当前可用内存所能解码的最大分辨率范围。因此,如果直接对原始图片进行解码显示,则会导致原始图片不能正确显示(如显示为“?”或“×”等),甚至还会导致系统因缺少内存而出现异常或死机。因此,本步骤中为了正常解码和显示原始图片,丢掉原始图片的部分像素,将原始图片按照946×665的分辨率进行解码和显示。从而最大限度地利用了可用内存对图片进行解码,保证浏览器在限定内存情况下图片能被正常解码和显示。
由于对原始图片按照较低的分辨率进行解码,解码过程中会丢掉原始图片的部分像素,解码后得到的目标图片的长度和宽度一般也小于原始图片。而浏览器网页排版时用于显示图片的窗口的大小是与原始图片的大小一致的,这样,如果直接在浏览器窗口中显示目标图片,就会导致目标图片不能填满整个浏览器窗口,视觉效果不佳。因此,本步骤中按照所述最大分辨率对原始图片进行解码之后,还可以包括步骤:
将解码后得到的目标图片放大至原始图片的长度和宽度进行输出显示。
网页中的每张原始图片在页面中描述有其原始的长度、宽度等属性,例如,假设网页中某张原始图片描述为:
<img height="1024"width="720"src="../001.jpg">
其中,img表示image元素,对应一张图片;height="1024"表示该图片在网页中显示时,其高度显示为1024;width="720"表示该图片宽度显示为720;src="../001.jpg"表示该图片引用上级目录下的001.jpg文件。则这张图片在网页中会显示成1024×720大小。当对该图片按照较低的分辨率进行解码后,得到的目标图片一般小于原始图片的大小1024×720,因此,在将目标图片在浏览器窗口中输出显示之前,可以对目标图片进行放大处理,将目标图片拉伸还原成原始图片的大小1024×720后再在浏览器窗口中显示,以获得网页原始排版的效果。具体的放大方法可以采用按比例放大或其它放大方法,本发明对此不作具体限制。
在将目标图片进行放大处理后,目标图片像素点之间的空隙变大,因此放大后的目标图片可能会出现模糊、锯齿或者其他失真的情况。为了减小失真,本步骤中,对目标图片放大后还可以进一步对放大后产生的新像素点进行填充,以提高目标图片的显示质量。
具体的,本步骤中,将解码后得到的目标图片放大至原始图片的长度和宽度的步骤还可以包括:
分别获取目标图片和原始图片的长度和宽度,计算目标图片与原始图片的长度比例和宽度比例,得到目标图片在水平方向和垂直方向上的放大倍数;
具体的,原始图片和目标图片的长度和宽度信息可以从图片信息中读取,如JPG文件是由一个个段(segments)构成的。jpeg从标记为SOF0的段中读取。
按照所述放大倍数计算目标图片的像素点在放大后的位置坐标,根据所述放大后的位置坐标重新排列目标图片的像素点;
对于放大后产生的新像素点进行填充,得到放大后的目标图片。
具体的,在对目标图片进行填充时可以采用最邻近法或双线性插值法或双三次插值法进行填充,当然也可以采用其他插值算法进行填充,本发明对此不作具体限制。
从以上实施例可以看出,本发明嵌入式浏览器图片解码装置及方法,在对原始图片进行解码前,先检测当前客户端机器的可用内存,根据该可用内存计算当前客户端机器能够正确解码的图片的最大分辨率,依据该最大分辨率对原始图片进行解码,从而避免了现有技术中由于缺少解码原始图片所需要的连续的大内存而导致的原始图片不能正确解码显示及系统异常等一系列问题,本发明能够灵活地根据剩余内存对原始图片进行解码和显示,提高嵌入式浏览器访问和显示包含大量图片元素的复杂页面的性能,不仅能正确解码显示页面中的图片,而且不会使系统因缺少内存而异常,有效地解决了嵌入式浏览器中图片的解码和显示问题,尤其是大图片的解码和显示问题。
以上举较佳实施例,对本发明的目的、技术方案和优点进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内,本发明所主张的权利范围应以发明申请范围所述为准,而非仅限于上述实施例。

Claims (10)

1.一种嵌入式浏览器图片解码装置,其特征在于,包括:内存检测模块、解码要求查询模块、解码控制模块以及图片解码模块,其中:
内存检测模块,与解码控制模块相连,用于检测当前客户端机器的可用内存,输出至解码控制模块;
解码要求查询模块,与解码控制模块相连,用于计算解码浏览器当前页面中的原始图片所需要的最小内存,输出至解码控制模块;
解码控制模块,分别与内存检测模块、解码要求查询模块和图片解码模块相连,用于接收内存检测模块输出的所述可用内存和解码要求查询模块输出的所述最小内存,比较所述可用内存是否小于所述最小内存,如果是,则计算所述可用内存所能解码的最大分辨率,输出至图片解码模块,控制图片解码模块按照所述最大分辨率对原始图片进行解码;以及
图片解码模块,与解码控制模块相连,用于在解码控制模块的控制下,对原始图片进行解码,输出解码后得到的目标图片。
2.如权利要求1所述的嵌入式浏览器图片解码装置,其特征在于,所述解码要求查询模块包括图片信息获取模块和解码要求计算模块,其中,
图片信息获取模块,用于获取原始图片的分辨率和当前客户端系统每像素所占用的字节数,输出至解码要求计算模块;
解码要求计算模块,用于根据接收到的原始图片的分辨率计算得出原始图片的总像素,再将原始图片的总像素和每像素所占用的字节数进行相乘计算,输出计算后得到解码原始图片所需要的最小内存。
3.如权利要求1所述的嵌入式浏览器图片解码装置,其特征在于,所述解码控制模块通过以下公式计算得出所述可用内存所能解码的最大分辨率:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
其中,resolutionH为所述最大分辨率在垂直方向上的像素数,resolutionW为所述最大分辨率在水平方向上的像素数,OriginResolutionH为所述原始图片在垂直方向上的像素数,OriginResolutionW为所述原始图片在水平方向上的像素数,Mem为所述当前客户端机器的可用内存,bytePerPixel为当前客户端系统每像素所占用的字节数。
4.如权利要求1所述的嵌入式浏览器图片解码装置,其特征在于,所述装置还包括图片放大模块,与图片解码模块相连,用于接收图片解码模块输出的目标图片,将目标图片放大至原始图片的长度和宽度进行输出显示。
5.如权利要求4所述的嵌入式浏览器图片解码装置,其特征在于,所述图片放大模块包括放大倍数计算模块、像素点排列模块以及像素点填充模块,其中:
放大倍数计算模块,与像素点排列模块相连,用于获取目标图片和原始图片的长度和宽度,分别计算目标图片与原始图片的长度比例和宽度比例,得到目标图片在水平方向和垂直方向上的放大倍数,输出至像素点排列模块;
像素点排列模块,分别与放大倍数计算模块和像素点填充模块相连,用于根据接收到的所述放大倍数计算目标图片的像素点在放大后的位置坐标,根据所述放大后的位置坐标重新排列目标图片的像素点,输出至像素点填充模块;
像素点填充模块,与像素点排列模块相连,用于对放大后产生的新像素点采用最邻近法或双线性插值法或双三次插值法进行填充,输出填充后的目标图片。
6.一种嵌入式浏览器图片解码方法,其特征在于,该方法包括:
在页面中显示原始图片时,计算解码原始图片所需要的最小内存;
检测当前客户端机器的可用内存;
判断当前客户端机器的可用内存是否小于所述解码原始图片所需要的最小内存,如果是,则计算当前客户端机器的可用内存所能解码的最大分辨率,按照所述最大分辨率对原始图片进行解码。
7.如权利要求1所述的嵌入式浏览器图片解码方法,其特征在于,所述计算解码原始图片所需要的最小内存的步骤包括:
获取原始图片的总像素和当前客户端系统每像素所占用的字节数,将原始图片的总像素和每像素所占用的字节数相乘得到解码原始图片所需要的最小内存。
8.如权利要求6所述的嵌入式浏览器图片解码方法,其特征在于,所述计算当前客户端机器的可用内存所能解码的最大分辨率的步骤通过以下公式计算得出:
resolutionH = ( ( Mem * OriginResolutionW ) / ( OriginResolutionH * bytePerPixel ) )
resolutionW = ( ( Mem * OriginResolutionH ) / ( OriginResolutionO * bytePerPixel ) )
其中,resolutionH为所述最大分辨率垂直方向上的像素数,resolutionW为所述最大分辨率水平方向上的像素数,OriginResolutionH为所述原始图片在垂直方向上的像素数,OriginResolutionW为所述原始图片在水平方向上的像素数,Mem为当前客户端机器的可用内存,bytePerPixel为当前客户端系统每像素所占用的字节数。
9.如权利要求6所述的嵌入式浏览器图片解码方法,其特征在于,所述按照所述最大分辨率对原始图片进行解码的步骤之后,还包括步骤:
将解码后得到的目标图片放大至原始图片的长度和宽度进行输出显示。
10.如权利要求9所述的嵌入式浏览器图片解码方法,其特征在于,所述将解码后得到的目标图片放大至原始图片的长度和宽度的步骤包括:
分别获取目标图片和原始图片的长度和宽度,计算目标图片与原始图片的长度比例和宽度比例,得到目标图片在水平方向和垂直方向上的放大倍数;
按照所述放大倍数计算目标图片的像素点在放大后的位置坐标,根据所述放大后的位置坐标重新排列目标图片的像素点;
对于放大后产生的新像素点采用最邻近法或双线性插值法或双三次插值法进行填充,得到放大后的目标图片。
CN201310037553.XA 2013-01-30 2013-01-30 嵌入式浏览器图片解码装置及方法 Pending CN103970781A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310037553.XA CN103970781A (zh) 2013-01-30 2013-01-30 嵌入式浏览器图片解码装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310037553.XA CN103970781A (zh) 2013-01-30 2013-01-30 嵌入式浏览器图片解码装置及方法

Publications (1)

Publication Number Publication Date
CN103970781A true CN103970781A (zh) 2014-08-06

Family

ID=51240294

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310037553.XA Pending CN103970781A (zh) 2013-01-30 2013-01-30 嵌入式浏览器图片解码装置及方法

Country Status (1)

Country Link
CN (1) CN103970781A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106204668A (zh) * 2016-07-01 2016-12-07 腾讯科技(深圳)有限公司 图片解码方法和装置
CN106575304A (zh) * 2015-05-19 2017-04-19 广州市动景计算机科技有限公司 用于在设备上加载网页中的资源的方法和装置
CN106919303A (zh) * 2017-02-17 2017-07-04 上海斐讯数据通信技术有限公司 一种图标的调整方法及系统
CN107094241A (zh) * 2017-04-28 2017-08-25 北京无线电测量研究所 一种机载sar的实时成像显示方法及系统

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153230A (ja) * 1997-08-04 1999-02-26 N T T Ido Tsushinmo Kk データ保管方法、移動端末およびファイル作成方法
CN1233132A (zh) * 1998-03-20 1999-10-27 佳能株式会社 图像传输系统及其方法,图像发送装置和图像接收装置
CN1503958A (zh) * 2001-04-19 2004-06-09 艾利森电话股份有限公司 自适应存储器分配
CN1734498A (zh) * 2004-08-10 2006-02-15 奥林巴斯株式会社 图像处理装置
CN1764229A (zh) * 2004-10-20 2006-04-26 奥林巴斯株式会社 图像处理装置
CN1956507A (zh) * 2001-09-28 2007-05-02 索尼公司 电视接收设备
CN101026760A (zh) * 2007-04-13 2007-08-29 威盛电子股份有限公司 联合图像专家组影像的像素数据的输出缓冲方法
CN101572827A (zh) * 2009-06-12 2009-11-04 清华大学 合成立体图像的方法和装置
CN101615191A (zh) * 2009-07-28 2009-12-30 武汉大学 海量点云数据的存储与实时可视化方法
CN101777040A (zh) * 2010-03-10 2010-07-14 中国科学院计算技术研究所 一种文本光圈的实现方法及装置
CN101794567A (zh) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 图片加载的方法及终端
CN101980289A (zh) * 2010-10-25 2011-02-23 上海大学 基于频域配准和凸集投影的多帧图像超分辨率重建方法
CN102123259A (zh) * 2010-12-28 2011-07-13 四川长虹电器股份有限公司 一种在电视机上显示超大分辨率图片的方法
CN102650946A (zh) * 2012-03-22 2012-08-29 杭州梵艺科技有限公司 在手持终端加载显示图形界面的方法
CN102663672A (zh) * 2012-05-03 2012-09-12 杭州朗和科技有限公司 一种图片验证码生成方法和装置

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153230A (ja) * 1997-08-04 1999-02-26 N T T Ido Tsushinmo Kk データ保管方法、移動端末およびファイル作成方法
CN1233132A (zh) * 1998-03-20 1999-10-27 佳能株式会社 图像传输系统及其方法,图像发送装置和图像接收装置
CN1503958A (zh) * 2001-04-19 2004-06-09 艾利森电话股份有限公司 自适应存储器分配
CN1956507A (zh) * 2001-09-28 2007-05-02 索尼公司 电视接收设备
CN1734498A (zh) * 2004-08-10 2006-02-15 奥林巴斯株式会社 图像处理装置
CN1764229A (zh) * 2004-10-20 2006-04-26 奥林巴斯株式会社 图像处理装置
CN101026760A (zh) * 2007-04-13 2007-08-29 威盛电子股份有限公司 联合图像专家组影像的像素数据的输出缓冲方法
CN101572827A (zh) * 2009-06-12 2009-11-04 清华大学 合成立体图像的方法和装置
CN101615191A (zh) * 2009-07-28 2009-12-30 武汉大学 海量点云数据的存储与实时可视化方法
CN101794567A (zh) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 图片加载的方法及终端
CN101777040A (zh) * 2010-03-10 2010-07-14 中国科学院计算技术研究所 一种文本光圈的实现方法及装置
CN101980289A (zh) * 2010-10-25 2011-02-23 上海大学 基于频域配准和凸集投影的多帧图像超分辨率重建方法
CN102123259A (zh) * 2010-12-28 2011-07-13 四川长虹电器股份有限公司 一种在电视机上显示超大分辨率图片的方法
CN102650946A (zh) * 2012-03-22 2012-08-29 杭州梵艺科技有限公司 在手持终端加载显示图形界面的方法
CN102663672A (zh) * 2012-05-03 2012-09-12 杭州朗和科技有限公司 一种图片验证码生成方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106575304A (zh) * 2015-05-19 2017-04-19 广州市动景计算机科技有限公司 用于在设备上加载网页中的资源的方法和装置
CN106204668A (zh) * 2016-07-01 2016-12-07 腾讯科技(深圳)有限公司 图片解码方法和装置
CN106919303A (zh) * 2017-02-17 2017-07-04 上海斐讯数据通信技术有限公司 一种图标的调整方法及系统
CN107094241A (zh) * 2017-04-28 2017-08-25 北京无线电测量研究所 一种机载sar的实时成像显示方法及系统
CN107094241B (zh) * 2017-04-28 2019-05-24 北京无线电测量研究所 一种机载sar的实时成像显示方法及系统

Similar Documents

Publication Publication Date Title
US10319115B2 (en) Image compression device
US8648858B1 (en) Hybrid text and image based encoding
US8570347B2 (en) Electronic device and method for image editing
US10834424B2 (en) Method and device for compressing image, and electronic device
KR102348766B1 (ko) 데이터 처리 방법 및 장치
US20160063672A1 (en) Electronic device and method for generating thumbnail picture
US20150042878A1 (en) Methods for selecting resolution with minimum distortion value and devices performing the methods
CN105335925A (zh) 一种图片的裁剪方法和浏览器装置
US9754350B2 (en) Systems and methods of automatic image sizing
CN103970781A (zh) 嵌入式浏览器图片解码装置及方法
US20160314560A1 (en) Image displaying method, apparatus, and device, and computer program product
CN104616263A (zh) 图片处理方法和图片处理装置
CN110929197A (zh) 一种网页图片的预览加载方法和装置
CN106126760A (zh) 一种web网页图片优化的方法
JP2019528627A (ja) パノラマビデオ圧縮方法および装置
CN111443974A (zh) Android设备屏幕适配方法、相关设备及可读存储介质
US20140079339A1 (en) System and method for zooming different regions in image at different scales
US11176634B2 (en) Methods and devices of picture processing based on external storage device and user interface display
US20150106689A1 (en) Web server system, web server and web provding method
CN105791524B (zh) 一种调整页面字体的方法及装置
CN110968385A (zh) 比例显示方法和装置
US9438795B1 (en) Real time feature extraction
US20140176395A1 (en) Method and apparatus for sharing content
CN102402546A (zh) 一种网页内容的显示方法及系统
CN103544221A (zh) 一种Android系统中视频缩略图的生成方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140806

WD01 Invention patent application deemed withdrawn after publication