图像的缩放方法技术

技术编号:2948644 阅读:191 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种图像的缩放方法,首先确定源图像到目标图像的缩放倍数,并根据该缩放倍数确定源图像中的像素在该目标图像中的相应坐标,逐行扫描该源图像,同时将具有相同像素值的相邻像素合并成像素块,然后根据该像素块在该目标图像中的坐标,确定该像素块的中间格式信息,再根据该中间格式信息,将相应的像素挂网成网点图(Halftone),生成相应的位图图像。

【技术实现步骤摘要】

本专利技术涉及一种图像处理方法,特别涉及指图像的缩放的方法。
技术介绍
像素图像弥补了向量式图像的缺陷,它能够制作出色彩和色调变化丰富的图像,可以逼真地表现自然界的景象,同时也可以很容易地在不同软件之间交换文件,但是像素图像无法制作真正的3D图像,而且图像缩放和旋转时会产生失真的现象,同时文件较大,对内存和硬盘空间容量的需求也较高。位图方式就是将图像的每一像素点转换为一个数据。随着分辨率以及颜色数的提高,图像所占用的磁盘空间也就相当大,由于在放大图像的过程中,其图像势必要变得模糊而失真,放大后的图像像素点实际上变成了像素“方格”。JPEG、GIF和PNG文件都通过压缩的方式减少文件大小,然而压缩带来的帮助是有限度的,位图依然比向量图形大很多。事实上当将像素网格的直径扩大两倍,获得的像素数量就是原来的四倍。公知将像素图像放大的方法是根据生成目标图像的大小,预先从系统中分配到一大块连续内存,用于存储还原生成的位图信息,对图像的每个像素按比例缩放,经平滑Halftone处理之后,直接生成位图信息,并存储到内存中。这样的处理方法通常处理速度较慢,而且会占用大量的系统内存,有时需要做压缩处理来节省内存,在系统存在内存碎片或没有足够大的内存时,常常会因为不能申请到所需的大块内存而无法进行处理。
技术实现思路
本专利技术为解决上述问题而提出一种,主要的目的在于提高图像处理速度的同时,降低系统内存的消耗。所以为达到上述目的,本专利技术提供一种,首先确定源图像到目标图像的缩放倍数,并根据该缩放倍数确定源图像中的像素在该目标图像中的相应坐标,然后逐行扫描该源图像,同时将具有相同像素值的相邻像素合并成像素块,根据该像素块在该目标图像中的坐标,确定该像素块的中间格式信息,最后根据该中间格式信息,将相应的像素挂网成网点图(Halftone),生成相应的位像。本专利技术提出了一种,该方法使用像素合并技术,来提高图像处理速度,并使用存储技术,来降低系统内存消耗,取消对系统大块连续内存的应用需求,在系统存在内存碎片时,仍可以进行大块图像处理,对于不同的色彩空间本专利技术可作相同的处理,并可最终生成各色彩平面的位图信息。有关本专利技术的详细内容及技术,配合附图说明如下。附图说明图1为本专利技术所提出的的总体流程图;图2为本专利技术确定处理方式的流程图;图3为本专利技术的中间格式信息的示意图;图4为本专利技术Symbolic command的流程图;及图5为本专利技术Bitmap Rendering的流程图。其中,图中步骤110确定源图像到目标图像的缩放倍数,并根据该缩放倍数确定源图像中的像素在该目标图像中的相应坐标步骤120逐行扫描该源图像,同时将具有相同像素值的相邻像素合并成像素块步骤130根据该像素块在该目标图像中的坐标,确定该像素块的中间格式信息步骤140根据该中间格式信息,将相应的像素挂网成网点图生成相应的位像步骤210获得源图像的宽度与高度步骤220获得目标图像的宽度与高度步骤230分别计算图像的宽度与高度的缩放比例步骤240根据该宽度与高度的缩放比例计算整体缩放倍数步骤250大于缩放倍数阈值? 步骤260选择Symbolic command图像处理方式步骤270选择Bitmap Rendering图像处理方式310命令标识320像素值330像素块左上角X坐标值340像素块左上角Y坐标值350像素右下角X坐标值360像素右下角Y坐标值步骤410根据缩放倍数确定源图像中的像素在该目标图像中的相应坐标步骤420逐行扫描图像点步骤430将具有相同像素值的相邻像素合并成像素块步骤440根据像素块确定中间格式信息步骤450获取图像的各行像素块的中间格式信息步骤460逐行根据中间格式信息对图像作Halftone Rendering处理步骤470将生成的位图,直接存储到系统视频缓冲区中步骤510根据目标图像大小分配出系统内存步骤520根据缩放倍数确定源图像中的像素在该目标图像中的相应坐标步骤530逐行扫描图像点步骤540将具有相同像素值的相邻像素合并成像素块步骤550确定像素块的中间格式信息步骤560对像素块作Halftone rendering处理步骤570将生成的目标位图存储在分配到的相应内存块中具体实施方式本专利技术为一种,首先由图1中说明本专利技术的方法,说明如下首先确定源图像到目标图像的缩放倍数,并根据该缩放倍数确定源图像中的像素在该目标图像中的相应坐标(步骤110),然后逐行扫描该源图像,同时将具有相同像素值的相邻像素合并成像素块(步骤120),根据该像素块在该目标图像中的坐标,确定该像素块的中间格式信息(步骤130),根据该中间格式信息,将相应的像素挂网成网点图(Halftone),生成相应的位像(步骤140)。对于一幅待处理的图像其像素色彩空间可能是RGB,CMYK,Gray等,因而会有不同的色彩平面,本专利技术提供的方法,对不同的色彩平面可作相同的处理,并可最终生成各色彩平面的Bitmap信息。请参见图2,首先根据获得源图像的宽度与高度(步骤210),再获得目标图像的宽度与高度(步骤220),然后根据放大倍数确定图像在X及Y方向上的缩放比例(步骤230),从而得出目标区域中相应像素的坐标位置。具体方法为设第一行第一个像素的左上角X,Y坐标值为(X0,Y0),根据图像在X及Y方向上的缩放比例,经计算后,在目标系统设备坐标系行进步长分别为ΔX,ΔY。设源图像宽为SrcWidth,高为SrcHeight,目标图像宽为DesWidth,高为DesHeight,图像在X及Y方向上的缩放比例为xScale,yScale,整体缩放比例为ScaleRate,因此有ΔX=xScale=DesWidth/SrcWidthΔY=yScale=DesHeight/SrcHeight可得出整体缩放比例ScaleRate=xScale*yScale(步骤240)然后将整体放大倍数与放大倍数阈值相比较(步骤250),如果大于该阈值,则选择Symbolic command图像处理方式(步骤260),否则选择BitmapRendering图像处理方式(步骤270)。下面以8x8灰度单平面像素图像为例对本专利技术进行详细说明,首先设定放大倍数阈值,本实施例的放大倍数阈值为96。(用户可根据系统内存配置大小,设定放大倍数阈值)。8x8灰度像素图像的灰度值如下图所示 首先计算图像的整体放大倍数,原8x8灰度像素图像将在X及Y方向上的放大比例分别为12,10,因此整体放大倍数为12*10=120,然后将整体放大倍数120与放大倍数阈值96相比较,由于大于该阈值,因此选择Symboliccommand图像处理方式,Symbolic command处理方式的像素块中间格式信息,如图3所示,该命令格式占用3个“long”,共计96Bits;第一个long存放“命令标识310及像素灰度值320”信息,第二个long存放“该像素左上角X坐标值330及Y坐标值340”信息,第三个long存放“该像素右下角X坐标值350及Y坐标值360”信息。若用公知的处理方法,将8x8灰度像素图像放大120倍数,需用内存(8*12)*(8*10)/8=960Bytes.若用本专利技术的Symbolic command图像处理本文档来自技高网...

【技术保护点】
一种图像的缩放方法,其特征在于,包括如下步骤:确定源图像到目标图像的缩放倍数,并根据该缩放倍数确定源图像中的像素在该目标图像中的相应坐标;逐行扫描该源图像,同时将具有相同像素值的相邻像素合并成像素块;根据该像素块在该 目标图像中的坐标,确定该像素块的中间格式信息;及根据该中间格式信息,将相应的像素挂网成网点图(Halftone),生成相应的位图图像。

【技术特征摘要】

【专利技术属性】
技术研发人员:何军
申请(专利权)人:致伸科技股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1