• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 10
    • 下载费用:30 金币  

    重庆时时彩后二高手: 一种安卓平台中的图片处理方法和装置.pdf

    关 键 词:
    一种 平台 中的 图片 处理 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201210592714.7

    申请日:

    2012.12.30

    公开号:

    CN103916550A

    公开日:

    2014.07.09

    当前法律状态:

    驳回

    有效性:

    无权

    法律详情: 发明专利申请公布后的驳回IPC(主分类):H04N 1/00申请公布日:20140709|||实质审查的生效IPC(主分类):H04N 1/00申请日:20121230|||公开
    IPC分类号: H04N1/00; G06T9/00 主分类号: H04N1/00
    申请人: 北京新媒传信科技有限公司
    发明人: 刘良平; 耿洪超
    地址: 100089 北京市海淀区万泉庄路28号万柳新贵大厦A座6层602室
    优先权:
    专利代理机构: 北京市隆安律师事务所 11323 代理人: 权鲜枝;齐辉
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201210592714.7

    授权公告号:

    ||||||

    法律状态公告日:

    2017.09.08|||2014.08.06|||2014.07.09

    法律状态类型:

    发明专利申请公布后的驳回|||实质审查的生效|||公开

    摘要

    本发明公开了一种安卓平台中的图片处理方法和装置。本发明实施例提供的一种安卓平台中的图片处理方法包括:对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;利用安卓平台中的BitmapFactory类获取所述初始图片的初始宽度和初始高度;获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系;根据所述缩小比例和初始宽度得到期望宽度,以及根据相同的缩小比例和初始高度得到期望高度;利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;根据所述缩略图片利用安卓平台进行相应的图片处理。

    权利要求书

    权利要求书
    1.  一种安卓平台中的图片处理方法,其特征在于,所述方法包括:
    对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;
    利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度;
    获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系;
    根据所述缩小比例和初始宽度得到期望宽度,以及根据相同的缩小比例和初始高度得到期望高度;
    利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;
    根据所述缩略图片利用安卓平台进行相应的图片处理。

    2.  根据权利要求1所述的方法,其特征在于,所述利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度包括:
    将位图工厂设置类BitmapFactory.Options中的解码绑定inJustDecodeBounds字段的属性设置为真;
    利用位图工厂解码文件方法获取所述初始图片的初始宽度和初始高度。

    3.  根据权利要求1所述的方法,其特征在于,所述根据所述缩小比例和初始宽度得到期望宽度,以及,根据所述缩小比例和初始高度得到期望高度包括:
    将所述初始宽度除以缩小比例得到的商值,作为所述期望宽度;以及,
    将所述初始高度除以缩小比例得到的商值,作为所述期望高度。

    4.  根据权利要求1所述的方法,其特征在于,所述方法还包括:将需要的缩小比例配置在位图工厂设置类的属性值中,所述属性值为样本大小inSampleSize,
    所述获取需要的缩小比例包括:
    对所述属性值的内容进行解析,得到所述缩小比例。

    5.  根据权利要求1所述的方法,其特征在于,所述方法还包括:
    将所述位图工厂设置类中的清除inPurgeable属性值设置为真;以及,
    将所述位图工厂设置类中的输入共享inInputShareable属性值设置为真。

    6.  根据权利要求1所述的方法,其特征在于,所述方法还包括:
    将所述位图工厂设置类中的优选配置inPreferredConfig属性值设置为指示每个像素占用2byte内存。

    7.  一种安卓平台中的图片处理装置,其特征在于,所述装置包括:
    初始图片获取单元,用于对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;
    初始大小获取单元,用于利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度;
    缩小比例获取单元,用于获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系;
    期望大小获取单元,用于根据所述缩小比例和初始宽度得到期望宽度,以及,根据相同的缩小比例和初始高度得到期望高度;
    缩略图片提取单元,用于利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;
    图片处理单元,用于根据所述缩略图片利用安卓平台进行相应的图片处理。

    8.  根据权利要求7所述的装置,其特征在于,所述装置还包括属性配置单元,用于将位图工厂设置类BitmapFactory.Options中的解码绑定inJustDecodeBounds字段的属性设置为真;
    所述初始大小获取单元,用于利用位图工厂解码文件方法获取所述初始图片的初始宽度和初始高度。

    9.  根据权利要求7所述的装置,其特征在于,所述属性配置单元,还用于将所述位图工厂设置类中的清除inPurgeable属性值设置为真;以及,将所述位图工厂设置类中的输入共享inInputShareable属性值设置为真;
    所述属性配置单元,还用于将所述位图工厂设置类中的优选配置inPreferredConfig属性值设置为指示每个像素占用2byte内存。

    10.  根据权利要求7所述的装置,其特征在于,
    所述缩小比例获取单元,用于对位图工厂设置类的样本大小inSampleSize属性值的内容进行解析,得到所述缩小比例。

    说明书

    说明书一种安卓平台中的图片处理方法和装置
    技术领域
    本发明涉及安卓平台开发技术领域,特别涉及一种安卓平台中的图片处理方法和装置。
    背景技术
    随着安卓(android)系统的不断发展以及安卓平台的使用越来越广泛,同时个人在相互沟通时要求沟通方式更加形象,在相互沟通的过程中发送图片显得更加的普及,则图片在安卓平台中的处理问题显得尤为重要。
    现有安卓平台在处理图片时,仍存在有不足之处,例如,安卓平台在处理图片时,大多都限制图片的长宽,或是限制图片占用内存的大小。在进行图片呈现时,对所有图片按照预定大小呈现,对超出预定大小的图片部分直接去除掉,按照预定大小截取局部图进行展示。然而,随着摄像头像素越来越高,拍出的图片像素越来越大,导致图片普遍过大,则预定大小偏小时,对图片的截取会造成图像信息丢失过多;而当预定大小偏大时,由于安卓平台对图片处理时所能使用的内存是有限制的,加载的图片过大很容易导致OOM(Out Of Memory,内存溢出)问题。
    发明内容
    本发明提供了一种安卓平台中的图片处理方法和装置,以解决现有安卓平台处理大图片时导致信息丢失过多或者易于导致OOM的问题等。
    为达到上述目的,本发明实施例采用了如下技术方案:
    本发明一个实施例提供的一种安卓平台中的图片处理方法,包括:
    对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;
    利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度;
    获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系;
    根据所述缩小比例和初始宽度得到期望宽度,以及根据相同的缩小比例和初始高度得到期望高度;
    利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;
    根据所述缩略图片利用安卓平台进行相应的图片处理。
    本发明又一个实施例提供的一种安卓平台中的图片处理装置,包括:
    初始图片获取单元,用于对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;
    初始大小获取单元,用于利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度;
    缩小比例获取单元,用于获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系;
    期望大小获取单元,用于根据所述缩小比例和初始宽度得到期望宽度,以及,根据相同的缩小比例和初始高度得到期望高度;
    缩略图片提取单元,用于利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;
    图片处理单元,用于根据所述缩略图片利用安卓平台进行相应的图片处理。
    由上所述,本发明实施例选用位图格式实现安卓平台中图片的处理,并利用安卓平台中位图工厂设置类获取图片的实际大小,根据当前图片的实际大小和缩小比例获取将当前图片缩小后的数据量较小的缩略图片,当前图片的大小不同时得到的缩略图片的大小也不同,从而提高了图片处理的灵活性,并能够解决OOM的问题,满足内存容量限制的要求。并且,本实施例通过采用同一缩小比例对图片宽度和长度进行缩小,以及对位图工厂设置类进行相应配置的技术手段,能够使缩略图片相对于初始图片不变形,避免了局部 截图造成的图像信息丢失过多的问题,提高了缩略图片中承载的信息量。
    附图说明
    为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
    图1为本发明一个实施例提供的一种安卓平台中的图片处理方法流程图;
    图2为本发明又一个实施例提供的一种安卓平台中的图片处理装置的结构图。
    具体实施方式
    为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
    本发明一个实施例提供了一种安卓平台中的图片处理方法,参见图1,该方法包括:
    S100:获取初始图片。
    本步骤中对需要处理的图片数据进行格式转换得到位图(Bitmap)格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片。
    本实施例中的安卓平台可以设置在客户端设备中,上述需要处理的图片数据可以为在客户端设备本地拍摄并保存在客户端侧的图片数据,或者为客户端设备接收到的通过网络传输来的图片数据。
    当客户端存储的原始图片数据不是位图格式时,需要通过格式转换,将图片数据转换为位图格式的图片,当存储的原始图片数据已经是位图格式时,直接将该数据对应的图片作为初始图片即可。
    本实施例选用位图格式实现安卓平台中图片的处理,以便于基于安卓平 台中的相应类对图片进行处理,如长宽的提取、缩小图片等,无需再在平台中增加额外的图片处理能力,充分利用了平台资源,简化了图片处理操作。
    S101:获取初始图片的初始宽度和高度。
    利用安卓平台中的位图工厂(BitmapFactory)类获取初始图片的初始宽度和初始高度。具体的,位图工厂解码文件方法(BitmapFactory.decodeFile)获取初始图片的初始宽度和初始高度,BitmapFactory.decodeFile(String path,Options opts)能够读取一个资源文件得到一个位图。如果位图数据不能被解码,或者opts参数只请求大小信息时,则返回NuLL,其中path指示资源文件的地址,opts指示设置类Options中相应属性值。
    在工厂类的设置类Options中,即位图工厂设置类BitmapFactory.Options中,存在解码绑定(inJustDecodeBounds)字段。本实施例将BitmapFactory.Options类的inJustDecodeBounds字段的属性设置为真(true)。
    一方面,当inJustDecodeBounds字段为真时,BitmapFactory.decodeFile将不返回实际的位图,不给其分配内存空间,而只返回一些解码边界信息即图片大小信息。通过设置inJustDecodeBounds为true,可以获取到outHeight(图片初始高度)和outWidth(图片初始宽度);另一方面,当inJustDecodeBounds字段为真时,有助于降低图片处理中对图片造成的损耗,保证图片不变形。
    S102:获取需要的缩小比例。该缩小比例指示缩略图片与初始图片的大小关系。
    将需要的缩小比例配置在位图工厂设置类BitmapFactory.Options的属性值样本大小(inSampleSize)中,则在获取到图片的初始宽度和高度后,对属性值inSampleSize的内容进行解析,即可得到缩小比例。缩小比例的数值可以根据实际需要进行选取。inSampleSize表示缩略图大小为初始图片大小的几分之一,即如果这个值为2,则取出的缩略图片的宽和高都是初始图片的1/2,图片大小就为原始大小的1/4。
    S103:获取缩略图片的期望宽度和期望高度。
    根据所述缩小比例和初始宽度得到期望宽度,以及,根据相同的缩小比例和初始高度得到期望高度。
    可选的,将初始宽度除以缩小比例得到的商值作为期望宽度;以及,将初始高度除以缩小比例得到的商值作为期望高度。对初始图片的高度和宽度进行缩小时,采用同一个缩小比例,以保证图片不变形。
    S104:利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片。
    在获取到期望宽度和期望高度后,由BitmapFactory.decodeFile执行图片提取操作,在图片不变形的前提下,从初始图片中提取出满足期望宽度和期望高度的缩略图片。缩略图片相对于初始图片整体进行了缩小,缩略图片的图像中各物体的方位和形状等相对于初始图片是不变的。
    S105:根据缩略图片利用安卓平台进行相应的图片处理。例如,利用安卓平台将缩略图片显示在客户端设备上,或者,将缩略图片上传至网络中,通过网络传输至接收端。由于缩略图片包含的数据量较小,从而在进行图片处理时,降低了内存的占用率,避免了OOM的发生以及上传大图片时,浪费网络流量的问题。
    为了进一步的节省内存,本实施例还对安卓平台进行如下配置:
    1)将所述位图工厂设置类中的优选配置inPreferredConfig属性值设置为指示每个像素占用2byte内存。该配置可以代码表示为:
    options.inPreferredConfig=Bitmap.Config.ARGB_4444;
    安卓平台默认的颜色模式为ARGB_8888,ARGB_8888指示每个像素占用4byte内存。这个颜色模式色彩最细腻,显示质量最高。但同样的,占用的内存也最大。本实施例采用ARGB_4444,ARGB_4444指示每个像素占用2byte内存,降低了内存要求,并且,对于大多数图片,ARGB_8888和ARGB_4444的区别对人眼视觉来说是很难区分的,不影响向用户的展示效果。
    2)将所述位图工厂设置类中的清除(inPurgeable)属性值设置为真,并将所述位图工厂设置类中的输入共享(inInputShareable)属性值设置为真。inPurgeable和inInputShareable两个属性值通常配合使用。
    当inPurgeable设为True,表示使用BitmapFactory创建的位图用于存储 像素(Pixel)的内存空间在系统内存不足时可以被回收,在应用需要再次访问位图的Pixel时(如绘制Bitmap或是调用getPixel),系统会再次调用BitmapFactory decoder重新生成位图的Pixel数组。为了能够重新解码图像,bitmap要能够访问存储Bitmap的原始数据。
    当inPurgeable设为false时,表示创建的位图的Pixel内存空间不能被回收,这样BitmapFactory在不停decodeByteArray创建新的位图对象,不同设备的内存不同,因此能够同时创建的位图个数可能有所不同,200个位图足以使大部分的设备发生OOM错误。
    本实施例将inPurgable设为true时,则系统中内存不足时,可以回收部分Bitmap占据的内存空间,从而避免了出现OOM错误。
    inInputShareable配合inPurgeable一起使用,当inPurgeable设置成true时,这个字段确定的位图可以共享一个参考输入数据(InputStream中、数组等),或作为一个位图的副本。
    本发明又一个实施例提供了一种安卓平台中的图片处理装置,参见图2,所述装置包括:
    初始图片获取单元200,用于对需要处理的图片数据进行格式转换得到位图格式的初始图片,和/或将需要处理的具有位图格式的图片作为初始图片;
    初始大小获取单元201,用于利用安卓平台中的位图工厂BitmapFactory类获取所述初始图片的初始宽度和初始高度;
    缩小比例获取单元202,用于获取需要的缩小比例,所述缩小比例指示缩略图片与初始图片的大小关系,如缩小比例获取单元202用于对位图工厂设置类的inSampleSize属性值的内容进行解析,得到所述缩小比例。
    期望大小获取单元203,用于根据所述缩小比例和初始宽度得到期望宽度,以及,根据相同的缩小比例和初始高度得到期望高度;
    缩略图片提取单元204,用于利用位图工厂类按照所述期望宽度、期望高度对所述初始图片进行提取,得到缩略图片;
    图片处理单元205,用于根据所述缩略图片利用安卓平台进行相应的图片处理。
    进一步的,上述装置还包括属性配置单元,用于将位图工厂设置类BitmapFactory.Options中的inJustDecodeBounds字段的属性设置为真;
    初始大小获取单元201用于利用位图工厂解码文件BitmapFactory.decodeFile方法获取所述初始图片的初始宽度和初始高度。
    其中,属性配置单元,还用于将所述位图工厂设置类中的inPurgeable属性值设置为真;以及,将所述位图工厂设置类中的inInputShareable属性值设置为真;并且,属性配置单元,还用于将所述位图工厂设置类中的优选配置inPreferredConfig属性值设置为指示每个像素占用2byte内存。
    本发明装置实施例中各单元的具体工作方式可以参见本发明的方法实施例在此,不再赘述。
    由上所述,本发明实施例选用位图格式实现安卓平台中图片的处理,并利用安卓平台中位图工厂设置类获取图片的实际大小,根据当前图片的实际大小和缩小比例获取将当前图片缩小后的数据量较小的缩略图片,当前图片的大小不同时得到的缩略图片的大小也不同,从而提高了图片处理的灵活性,并能够解决OOM的问题,满足内存容量限制的要求。并且,本实施例通过采用同一缩小比例对图片宽度和长度进行缩小,以及对位图工厂设置类进行相应配置的技术手段,能够使缩略图片相对于初始图片不变形,避免了局部截图造成的图像信息丢失过多的问题,提高了缩略图片中承载的信息量。
    以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的?;し段?。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的?;し段?。

    关于本文
    本文标题:一种安卓平台中的图片处理方法和装置.pdf
    链接地址://www.4mum.com.cn/p-6130462.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 微信公众号写短篇小说赚钱 网上娱乐城 琼崖海南麻将技巧 非公开发行股票 山东群英会走势图最新 我爱山西麻将外挂 海南彩票七星论坛图规 pk10计划专家在线计划 乒乓球胶皮价格 单机捕鱼游戏 湖北快三推荐号三连号推荐号 星空清墩下载大厅 nba总决赛 足球单场app 股票分析之量价关系 贵州十一选五任五遗漏