CN105718513B - jpg文件的压缩方法及解压缩方法 - Google Patents
jpg文件的压缩方法及解压缩方法 Download PDFInfo
- Publication number
- CN105718513B CN105718513B CN201610022918.5A CN201610022918A CN105718513B CN 105718513 B CN105718513 B CN 105718513B CN 201610022918 A CN201610022918 A CN 201610022918A CN 105718513 B CN105718513 B CN 105718513B
- Authority
- CN
- China
- Prior art keywords
- jpg file
- jpg
- section
- file
- newly
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Abstract
本发明提供一种jpg文件的压缩方法及解压缩方法,jpg文件的压缩方法包括以下步骤:步骤一:读取一组jpg文件;步骤二:简称它们的除压缩数据和以0xFFE0~0xFFEF开始的段以外的段为‘公共段’,比较它们的公共段是否完全相同;如果完全相同,则接着执行步骤三;如果不完全相同,则结束;步骤三:重新构建一个jpg文件,以步骤二中所述的公共段为该jpg文件的段;步骤四:择原jpg文件之一作为主视图,其他jpg文件作为辅助视图;将主视图的压缩数据作为新建jpg文件的压缩数据;如果主视图中存在以0xFFE0为标记的段,则将该段加入新建的jpg文件。本发明节约存储空间,更便于图像的管理和查看。
Description
技术领域
本发明涉及对jpg格式图像的编解码技术,特别涉及一种jpg文件的压缩方法及解压缩方法。
背景技术
jpg格式的图像由各种段构成,每个段开始都是特定的两字节标记码。以jpg格式存放的一组图像里,除了记录图像亮度和色度的压缩数据外,其他的段往往都是相同的。这样就重复存储了这些相同的段,导致了存储空间的浪费。本发明通过合并这些相同的段来实现对一组jpg图像的压缩与合并。
同时,一张张分散开的图像查看起来也不方便。比如说,我们在同样一个地方,对同一个物体拍摄了很多图像,又在另一个地方拍摄了另一个物体的图像。最后我们将所有图像导入电子设备的时候,不同时候,不同地方,不同物体的图片可能会混杂在一起。如果用一般的看图软件查看,顺序可能会颠倒,可能才看到新拍的生活照,紧接着的一张却是几年前的老照片,这样就给我们查看图像造成了不便。而如果建立很多文件夹对图像加以分类,就需要在不同的文件夹之间切换,无法快速直接地浏览全部的图像。
特别的,对于3D图像,包括同一个场景的两个或多个不同角度的图像,如果把每个角度的图像分别作为单独的文件存储,则难以管理和查看。本发明的技术方案,可以作为一种3D图像的存储格式。
发明内容
本发明的目的在于提供一种jpg文件的压缩方法及解压缩方法,其把一组相关的图像存储在一个单一的jpg图像文件中,不仅可以节约存储空间,更便于图像的管理和查看。
为达到上述目的,本发明采用如下的技术方案:一种jpg文件的压缩方法,其特征在于,包括以下步骤:
步骤一:读取一组jpg文件;
步骤二:简称它们的除压缩数据和以0xFFE0~0xFFEF开始的段以外的段为‘公共段’,比较它们的公共段是否完全相同;如果完全相同,则接着执行步骤三;如果不完全相同,则结束;
步骤三:重新构建一个jpg文件,以步骤二中所述的公共段为该jpg文件的段;
步骤四:选择原jpg文件之一作为主视图,其他jpg文件作为辅助视图;将主视图的压缩数据作为新建jpg文件的压缩数据;如果主视图中存在以0xFFE0为标记的段,则将该段加入新建的jpg文件;
步骤五:把辅助视图的压缩数据添加到新建的jpg文件中,依次以0xFFE1~0xFFEF为段标记;在段标记后,首先写入四字节的格式标记,即字符'MVC'的ASCII码,外加一个字节作为辅助视图编号,取值范围是0到254;如果某个辅助视图的压缩数据超过65531字节,则重复相同的段标记和格式标记,直到该辅助视图的压缩数据全部存放到新建的jpg文件中为止;每个段标记后面最多可以存放65535个字节的数据,包括格式标记;
步骤六:关闭新建的jpg文件,关闭原来的全部jpg文件。
新建的jpg文件符合jpg文件格式的规定,可以用任何支持jpg格式的看图软件打开。但是一般的看图软件只能看到其中的主视图,因为它们不能识别存放在以0xFFE1~0xFFEF为标记的段里面的辅助视图。
在新建的jpg文件中,辅助视图的编号由段标记的最后4位(取值从1到15)和格式标记的最后一个字节(取值0到254)共同构成,因此本发明所述的新建的jpg文件中最多可以有15乘以255等于3825个辅助视图。
本发明还提供一种jpg文件的解压缩方法,其特征在于,其包括以下步骤:
步骤一:打开一个jpg文件;
步骤二:查看该jpg文件中是否存在以0xFFE1~0xFFEF为段标记的段,如果不存在,则不是本发明所述的新建jpg文件,采用普通的解压缩方法解压缩;
步骤三:如果存在以0xFFE1~0xFFEF为段标记的段,则查看该段标记后面紧接着的三个字节的值是不是'MVC'的ASCII码,如果不是,则该jpg文件不是本发明所述的新建的jpg文件,采用普通的解压缩方法解压缩;
步骤四:暂时忽略以0xFFE1~0xFFEF为段标记的段,把该jpg文件当成普通的jpg文件解码,呈现主视图;
步骤五:根据用户的要求,即用户通过程序界面的操作,读取用户指定的辅助视图的压缩数据,与公共段构成普通的jpg文件,然后做普通的jpg文件解码,呈现用户指定的辅助视图。
与现有技术相比,本发明具有如下的有益效果:
(1)对一组jpg文件起到了压缩作用,不再需要存储完全相同的公共段;
(2)新建的jpg文件起到了类似文件夹的作用,更便于图像的整理和查看。
(3)新建的jpg文件仍然完全符合jpg图像格式的规定,可以用一般的看图软件查看主视图,具有良好的兼容性;
(4)通过本发明提出的方法,还可以将同一物体不同角度的照片放在一起观看,看的时候连续显示它的多张照片,就好像用户在围绕它旋转一样,可以方便、快捷、全方位地观察物体。
(5)一个新建的jpg文件中最多可以存放3826张图像(包括主视图)。
附图说明
图1是具有完全相同的公共段的3个jpg文件的结构示意图。
图2是新建的jpg文件的结构示意图。
具体实施方式
jpg格式的图像由各种段构成,每个段开始都是特定的两字节标记码。以jpg格式存放的一组图像里,除了记录图像亮度和色度的压缩数据外,其他的段往往都是相同的。这样就重复存储了这些相同的段,导致了存储空间的浪费。本发明通过合并这些相同的段来实现对一组jpg图像的压缩与合并。
同时,一张张分散开的图像查看起来也不方便,如果建立很多文件夹对图像加以分类,就需要在不同的文件夹之间切换,无法快速直接地浏览全部的图像。特别的,对于3D图像,包括同一个场景的两个或多个不同角度的图像,如果把每个角度的图像分别作为单独的文件存储,则难以管理和查看。本发明的技术方案,可以作为一种3D图像的存储格式。
本发明的目的在于提供一种jpg图像的压缩、存储及查看方法,把一组相关的图像存储在一个单一的jpg图像文件中,不仅可以节约存储空间,更便于图像的管理和查看。为达到上述目的,本发明采用了独特的技术方案,包括压缩方法和解压缩方法。
表1按照通常情况下在文件中出现的顺序列举了jpg文件中定义的各种段。
如图1所示,假设有3个jpg格式的图像,它们的公共段完全相同。采用本发明所述的压缩方法对它们进行压缩的流程如下:
步骤一:读取一组jpg文件(3个jpg文件);
步骤二:比较它们的除压缩数据和以0xFFE0~0xFFEF开始的段以外的段(以下简称为‘公共段’)是否完全相同;如果完全相同,则接着执行步骤三;如果不完全相同,则结束。经过比较发现是相同的,继续执行步骤三。
步骤三:重新构建一个jpg文件,以步骤二中所述的公共段为该jpg文件的段;
步骤四:选择原jpg文件之一(比如图片1)作为主视图,其他jpg文件作为辅助视图。将主视图的压缩数据作为新建jpg文件的压缩数据;如果主视图中存在以0xFFE0为标记的段,则将该段加入新建的jpg文件;
步骤五:如图2所示,把辅助视图的压缩数据添加到新建的jpg文件中,依次以0xFFE1~0xFFEF为段标记。在段标记后,首先写入四字节的格式标记,即字符'MVC'的ASCII码,外加一个字节作为辅助视图编号,取值范围是0到254。如果某个辅助视图的压缩数据超过65531字节,则重复相同的段标记和格式标记,直到该辅助视图的压缩数据全部存放到新建的jpg文件中为止。每个段标记后面最多可以存放65535个字节的数据,包括格式标记。本实施例是把两个辅助视图的压缩数据添加到新建的jpg文件中,以0xFFE1为段标记。在段标记后,首先写入四字节的格式标记,即字符'MVC'的ASCII码,外加一个字节作为辅助视图编号,取值范围是0到254。这里第一个辅助视图的辅助视图编号设为0,第二个辅助视图的辅助视图编号设为1。
步骤六:关闭新建的jpg文件,关闭原来的全部jpg文件。
所述的新建的jpg文件的结构如下表2所示:
其中存放辅助视图的段的标记码有从FFE1 'MVC'0到FFEF 'MVC'254,有多少个辅助视图,就用多少个这样的标记码,所以最多有3825个辅助视图。
解压缩的流程与压缩流程相反,本发明jpg文件的解压缩方法包括以下步骤:
步骤一:打开一个jpg文件;本实施例是打开这个新建的jpg文件。
步骤二:查看该jpg文件中是否存在以0xFFE1~0xFFEF为段标记的段,如果不存在,则不是本发明所述的新建jpg文件,采用普通的解压缩方法解压缩;本实施例中所述的新建的jpg文件中是存在所述的段的。
步骤三:如果存在以0xFFE1~0xFFEF为段标记的段,则查看该段标记后面紧接着的三个字节的值是不是'MVC'的ASCII码,本实施例是'MVC'的ASCII码,如果不是,则该jpg文件不是本发明所述的新建的jpg文件,采用普通的解压缩方法解压缩;
步骤四:暂时忽略以0xFFE1~0xFFEF为段标记的段,把该jpg文件当成普通的jpg文件解码,呈现主视图,即图片1;
步骤五:根据用户的要求(用户通过程序界面的操作),读取用户指定的辅助视图的压缩数据,与公共段构成普通的jpg文件,然后做普通的jpg文件解码,呈现用户指定的辅助视图,即图片2和图片3。
Claims (2)
1.一种jpg文件的压缩方法,其特征在于,包括以下步骤:
步骤一:读取一组jpg文件;
步骤二:简称所述步骤一中读取的一组jpg文件的除压缩数据和以0xFFE0~0xFFEF开始的段以外的段为‘公共段’,比较它们的公共段是否完全相同;如果完全相同,则接着执行步骤三;如果不完全相同,则结束;
步骤三:重新构建一个jpg文件,以步骤二中所述的公共段为该jpg文件的段;
步骤四:选择原jpg文件之一作为主视图,其他jpg文件作为辅助视图;将主视图的压缩数据作为新建jpg文件的压缩数据;如果主视图中存在以0xFFE0为标记的段,则将该段加入新建的jpg文件;
步骤五:把辅助视图的压缩数据添加到新建的jpg文件中,依次以0xFFE1~0xFFEF为段标记;在段标记后,首先写入四字节的格式标记,即字符'MVC'的ASCII码,外加一个字节作为辅助视图编号,取值范围是0到254;如果某个辅助视图的压缩数据超过65531字节,则重复相同的段标记和格式标记,直到该辅助视图的压缩数据全部存放到新建的jpg文件中为止;每个段标记后面最多可以存放65535个字节的数据,包括格式标记;
步骤六:关闭新建的jpg文件,关闭原来的全部jpg文件。
2.一种jpg文件的解压缩方法,其特征在于,其包括以下步骤:
步骤一:打开一个jpg文件;
步骤二:查看该jpg文件中是否存在以0xFFE1~0xFFEF为段标记的段,如果不存在,则不是新建jpg文件,采用解压缩方法解压缩;jpg文件的除压缩数据和以0xFFE0~0xFFEF开始的段以外的段为‘公共段’;
步骤三:如果存在以0xFFE1~0xFFEF为段标记的段,则查看该段标记后面紧接着的三个字节的值是不是'MVC'的ASCII码,如果不是,则该jpg文件不是新建的jpg文件,采用解压缩方法解压缩;
步骤四:忽略以0xFFE1~0xFFEF为段标记的段,把该jpg文件当成jpg文件解码,呈现主视图;
步骤五:根据用户的要求,即用户通过程序界面的操作,读取用户指定的辅助视图的压缩数据,与公共段构成普通的jpg文件,然后做jpg文件解码,呈现用户指定的辅助视图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610022918.5A CN105718513B (zh) | 2016-01-14 | 2016-01-14 | jpg文件的压缩方法及解压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610022918.5A CN105718513B (zh) | 2016-01-14 | 2016-01-14 | jpg文件的压缩方法及解压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105718513A CN105718513A (zh) | 2016-06-29 |
CN105718513B true CN105718513B (zh) | 2019-11-15 |
Family
ID=56147059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610022918.5A Expired - Fee Related CN105718513B (zh) | 2016-01-14 | 2016-01-14 | jpg文件的压缩方法及解压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105718513B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1078841A (zh) * | 1991-12-20 | 1993-11-24 | 安佩克斯系统公司 | 使用混合的亮度/色度码对图象数据进行压缩的方法和装置 |
CN101061514A (zh) * | 2004-08-31 | 2007-10-24 | 法国电信公司 | 可见性数据压缩方法、解压缩方法、解码器、压缩系统 |
CN101563926A (zh) * | 2006-12-18 | 2009-10-21 | 皇家飞利浦电子股份有限公司 | 图像压缩与解压缩 |
CN101707713A (zh) * | 2005-09-20 | 2010-05-12 | 三菱电机株式会社 | 图像编码装置和图像编码方法以及图像解码方法 |
CN104112286A (zh) * | 2014-08-01 | 2014-10-22 | 桂林电子科技大学 | 基于几何结构特征和自相似性的图像压缩感知重构方法 |
CN104506752A (zh) * | 2015-01-06 | 2015-04-08 | 河海大学常州校区 | 一种基于残差压缩感知的相似图像压缩方法 |
-
2016
- 2016-01-14 CN CN201610022918.5A patent/CN105718513B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1078841A (zh) * | 1991-12-20 | 1993-11-24 | 安佩克斯系统公司 | 使用混合的亮度/色度码对图象数据进行压缩的方法和装置 |
CN101061514A (zh) * | 2004-08-31 | 2007-10-24 | 法国电信公司 | 可见性数据压缩方法、解压缩方法、解码器、压缩系统 |
CN101707713A (zh) * | 2005-09-20 | 2010-05-12 | 三菱电机株式会社 | 图像编码装置和图像编码方法以及图像解码方法 |
CN101563926A (zh) * | 2006-12-18 | 2009-10-21 | 皇家飞利浦电子股份有限公司 | 图像压缩与解压缩 |
CN104112286A (zh) * | 2014-08-01 | 2014-10-22 | 桂林电子科技大学 | 基于几何结构特征和自相似性的图像压缩感知重构方法 |
CN104506752A (zh) * | 2015-01-06 | 2015-04-08 | 河海大学常州校区 | 一种基于残差压缩感知的相似图像压缩方法 |
Non-Patent Citations (1)
Title |
---|
"JPG图像压缩的编码和解码的设计与实现";李智;《中国优秀硕士学位论文全文数据库·信息科技辑》;20120615;I138-1893 * |
Also Published As
Publication number | Publication date |
---|---|
CN105718513A (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102930522B (zh) | 一种实现图片拼接的装置和方法 | |
CN102930523B (zh) | 图片处理系统和图片拼接实现方法 | |
TWI480745B (zh) | 具有超過一個操作模式之資料檔案 | |
US20100114985A1 (en) | Managing the content of shared slide presentations | |
CN105446946B (zh) | 版式文档的重排方法、系统及电子阅读终端 | |
US10146802B2 (en) | Generating device specific thumbnails | |
US11249665B2 (en) | Object synthesis | |
US11079987B2 (en) | Creation of component templates | |
CN105488839A (zh) | 三维场景交互式操作系统及其操作方法 | |
CN104765849A (zh) | 一种获取拷贝数据来源信息的方法和系统 | |
RU2005120385A (ru) | Система и способ для представления элементов, сохраненных на компьютере | |
JP2008003669A (ja) | 画像表示装置及び表示方法 | |
CN105718513B (zh) | jpg文件的压缩方法及解压缩方法 | |
JP2017084304A (ja) | 画像表示装置、画像表示方法 | |
CN107220201B (zh) | Vr设备的识别方法及其系统 | |
US20200334785A1 (en) | Methods and devices of picture processing and user interface display | |
CN106127838B (zh) | 基于Powerpoint的多媒体资源存储方法及其系统 | |
US20150154213A1 (en) | Information processing method and electronic device | |
CN112700555A (zh) | 高可配组态化3d数据可视化实现方法、电子设备、存储介质 | |
CN107943987B (zh) | 快速调阅图形的方法和系统 | |
CN113010129A (zh) | 虚拟演播厅全流程多终端板书提取方法和装置 | |
JP6704680B2 (ja) | 表示装置、情報処理プログラムおよび情報処理方法 | |
KR20190130959A (ko) | 크로마 서브 샘플링된 이미지들에 대한 빠른 참조 객체 저장 형식에 대한 방법 | |
CN107704367A (zh) | 一种资源周期信息展示方法和装置 | |
JP2009157470A (ja) | 電子文書処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191115 Termination date: 20220114 |