c图像压缩
华科的吧···
B. C语言都有哪些经典的无损压缩算法
C语言经典的无损压缩算法有:哈夫曼算法、LZ。
哈夫曼算法:
哈夫曼编码是David A. Huffman于1952年发明的一种满足对编码算法要求的一种编码算法。
哈夫曼算法是利用频率信息构造一棵二叉树,频率高的离根节点近(编码长度短),频率低的离根节点远(编码长度长),手动构造方法是先将字母按照频率从小到大排序,然后不断选择当前还没有父节点的节点中权值最小的两个,构造新的父节点,父节点的值为这两个节点值的和,直到构造成一棵二叉树。
LZ算法:
LZ算法及其衍生变形算法是压缩算法的一个系列。LZ77和LZ78算法分别在1977年和1978年被创造出来。虽然他们名字差不多,但是算法方法完全不同。这一系列算法主要适用于字母数量有限的信息,比如文字、源码等。流行的GIF和PNG格式的图像,使用颜色数量有限的颜色空间,其压缩就采用了两种算法的灵活变形应用。
C. 怎么压缩图片的大小
用这个在线图片压缩工具,想把图片文件的大小减到多少都行,比如你直接设置一下压缩数值到600kb,马上瞬间就能把图片的文件大小压缩到600kb搞定,你设定压缩到多少kb,他压缩完输出的图片就是多少kb,方便得很。在线智能压缩图片大小,图片压缩体积
在线图片智能压缩使用步骤:
一、首先点击加号添加需要压缩的图片。目前已知支持对jpg、png等多种常见的图片格式进行压缩,如果上传图片并压缩成功,则代表支持该图片格式。
二、可以自行修改图片需要被压缩到的最大宽高尺寸,默认为图片原始的宽高尺寸,且宽高比例是自动锁定的。
三、必须设置图片被压缩后,期望输出的图片文件的最大占用空间。(必填项)
四、选择图片生成的算法。默认为混合优先算法,绝大多数情况下使用默认算法即可。
五、压缩的设定值不能小于1Kb,但图片压缩的最终效果可以小于1Kb。
butterpig
D. 求用C语言写的图像压缩(JPEG)编码中zigzag编程部分
你说的是这段?
还是包括后面的huffman编码部分
static UChar zigzag[64]={ 0, 1, 5, 6,14,15,27,28,
2, 4, 7,13,16,26,29,42,
3, 8,12,17,25,30,41,43,
9,11,18,24,31,40,44,53,
10,19,23,32,39,45,52,54,
20,22,33,38,46,51,55,60,
21,34,37,47,50,56,59,61,
35,36,48,49,57,58,62,63 };
//zigzag reorder
for (i=0;i<=63;i++) DU[zigzag[i]]=DU_DCT[i];
E. 如何压缩图片
1、在【WPS图片】软件中打开需要压缩的培返闷图片后点击右上角的“工具箱”选项。
2、进入后点击需要的“压缩体积”选项。
3、再在压缩体积窗口中,根据自身的需要设置世者输出大小、图片品质等参数,并点击“导出”按钮即配弯可。
F. 上传图片时让我压缩到1M以下,怎样压缩
在线图片压缩工具
一、首先点击加号添加需要压缩的图片。目前已知支持jpg、png等多种常见的图片格式,如果上传图片并压缩成功,则代表支持该格式。
二、可以自行修改图片需要被压缩到的最大宽高尺寸,默认为图片原始的宽高尺寸,且宽高比例是自动锁定的。
三、必须设置图片被压缩后,期望输出的图片文件的最大占用空间。(必填项)
四、选择图片生成的算法。默认为混合优先算法,绝大多数情况下使用默认算法即可。
五、压缩的设定值不能小于1kb,但图片压缩的最终效果可以小于1kb。
butterpig
G. VC++得到图像数据太大,想要压缩后再传输
下载一个CxImage(开源)困雀哗,用它来压缩成jpg或其它格式再传。岁中
也可以使用ijl。
下面是我写的使用CxImage的例子:
#include "xImage.h"
#include "汪行CaptureScreen.h"
#pragma comment(lib,"cximage.lib")
#pragma comment(lib,"jpeg.lib")
#pragma comment(lib,"jasper.lib")
CAPTURESCREEN_API bool __stdcall Capture(char* lpszFile,unsigned int height,unsigned int width,unsigned char jpgQuality)
{
keybd_event(VK_SNAPSHOT,0,0,0);
keybd_event(VK_SNAPSHOT,0,KEYEVENTF_KEYUP,0);
if(!IsClipboardFormatAvailable(CF_DIB))return false;
HANDLE hBitmap = NULL;
if( OpenClipboard( NULL ))
{
hBitmap = GetClipboardData(CF_DIB);
CloseClipboard();
}
if( hBitmap == NULL )return false;
CxImage image;
if( image.CreateFromHANDLE(hBitmap) == false )return false;
image.Resample(width,height,1);
image.SetJpegQuality(jpgQuality);
image.Save(lpszFile,CXIMAGE_FORMAT_JPG);
return true;
}
H. 图像压缩编码详细资料大全
图像压缩编码可分为两类:一类压缩是可逆的 ,即从压缩后的数据可以完全恢复原来的图像 ,信息没有损失 ,称为无损压缩编码;另一类压缩是不可逆的 ,即从压缩后的数据无法完全恢复原来的图像 ,信息有一定损失 ,称为有损压缩编码。
基本介绍
- 中文名 :图像压缩编码
- 性质 :压缩方式
- 编码方式 :MP图像档案格式等
- 来源 :电子领域
定义
在满足一定保真度的要求下,对图像数据的进行变换、编码和压缩,去除多余数据减少表示数字图像时需要的数据量,以便于图像的存储和传输。即以较少的数据量有损或无损地表示原来的像素矩阵的技术,也称图像编码.分类
图像压缩编码可分为两类:一类压缩是可逆的 ,即从压缩后的数据可以完全恢复原来的图像 ,信息没有损失 ,称为无嫌液损肢纯压缩编码;另一类压缩是不可逆的 ,即从压缩后的数据无法完全恢复原来的图像 ,信息有一定损失 ,称为有损压缩编码。基本途径
图像的数据量极大,必须对其数据总量大大压缩,才能够存储在直径12cm的光盘上。在实用技术上,可通过以下途径来压缩图像数据的总量。 1、采用亮度(Y)、色度(C)取样方式 2、将整幅图像分割为小区域进行分割处理 3、采用帧间和帧内数据压缩技术。几种编码比较
BMP图像档案格式 BMP是一种与硬体设备无关的图像档案格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP档案所占用的空间很大。BMP档案的图像深度可选lbit、4bit、8bit及24bit。BMP档案存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。由于BMP档案格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows环境中运行的图形图像软体都支持BMP图像格式。典型的BMP图像档案由三部分组成:点阵图档案头数据结构,它包含BMP图像档案的类型、显示内容等信息;点阵图信息数据结构,它包含有BMP图像的宽、高、压芹饥物缩方法,以及定义颜色等信息。 PCX图像档案格式 PCX这种图像档案的形成是有一个发展过程的。最先的PCX雏形是出现在ZSOFT公司推出的名叫PC PAINBRUSH的用于绘画的商业软体包中。以后,微软公司将其移植到 Windows环境中,成为Windows系统中一个子功能。先在微软的Windows3.1中广泛套用,随着Windows的流行、升级,加之其强大的图像处理能力,使PCX同GIF、TIFF、BMP图像档案格式一起,被越来越多的图形图像软体工具所支持,也越来越得到人们的重视。PCX是最早支持彩色图像的一种档案格式,现在最高可以支持256种彩色,如图4-25所示,显示256色的彩色图像。PCX设计者很有眼光地超前引入了彩色图像档案格式,使之成为现在非常流行的图像档案格式。PCX图像档案由档案头和实际图像数据构成。档案头由128位元组组成,描述版本信息和图像显示设备的横向、纵向分辨率,以及调色板等信息:在实际图像数据中,表示图像数据类型和彩色类型。PCX图像档案中的数据都是用PCXREL技术压缩后的图像数据。 PCX是PC机画笔的图像档案格式。PCX的图像深度可选为l、4、8bit。由于这种档案格式出现较早,它不支持真彩色。PCX档案采用 RLE行程编码,档案体中存放的是压缩后的图像数据。因此,将采集到的图像数据写成PCX档案格式时,要对其进行RLE编码:而读取一个PCX档案时首先要对其进行RLE解码,才能进一步显示和处理。 TIFF图像档案格式 TIFF(TaglmageFileFormat)图像档案是由Als和Microsoft公司为桌上出版系统研制开发的一种较为通用的图像档案格式。TIFF格式灵活易变,它又定义了四类不同的格式:TIFF-B适用于二值图像:TIFF-G适用于黑白灰度图像;TIFF-P适用于带调色板的彩色图像:TIFF-R适用于RGB真彩图像。 TIFF支持多种编码方法,其中包括RGB无压缩、RLE压缩及JPEG压缩等。 TIFF是现存图像档案格式中最复杂的一种,它具有扩展性、方便性、可改性,可以提供给IBMPC等环境中运行、图像编辑程式。 TIFF图像档案由三个数据结构组成,分别为档案头、一个或多个称为IFD的包含标记指针的目录以及数据本身。 TIFF图像档案中的第一个数据结构称为图像档案头或IFH。这个结构是一个TIFF档案中唯一的、有固定位置的部分;IFD图像档案目录是一个位元组长度可变的信息块,Tag标记是TIFF档案的核心部分,在图像档案目录中定义了要用的所有图像参数,目录中的每一目录条目就包含图像的一个参数。 GIF档案格式 GIF(Graphics Interchange Format)的原义是“图像互换格式”,是CompuServe公司在 1987年开发的图像档案格式。GIF档案的数据,是一种基于LZW算法的连续色调的无损压缩格式。其压缩率一般在50%左右,它不属于任何应用程式。目前几乎所有相关软体都支持它,公共领域有大量的软体在使用GIF图像档案。 GIF图像档案的数据是经过压缩的,而且是采用了可变长度等压缩算法。所以GIF的图像深度从lbit到8bit,也即GIF最多支持256 种色彩的图像。GIF格式的另一个特点是其在一个GIF档案中可以存多幅彩色图像,如果把存于一个档案中的多幅图像数据逐幅读出并显示到萤幕上,就可构成一种最简单的动画。 GIF解码较快,因为采用隔行存放的GIF图像,在边解码边显示的时候可分成四遍扫描。第一遍扫描虽然只显示了整个图像的八分之一,第二遍的扫描后也只显示了1/4,但这已经把整幅图像的概貌显示出来了。在显示GIF图像时,隔行存放的图像会给您感觉到它的显示速度似乎要比其他图像快一些,这是隔行存放的优点。 JPEG档案格式 JPEG是Joint Photographic Experts Group(联合图像专家组)的缩写,档案后辍名为“.jpg”或“.jpeg”,是最常用的图像档案格式,由一个软体开发联合会组织制定,是一种有损压缩格式,能够将图像压缩在很小的储存空间,图像中重复或不重要的资料会被丢失,因此容易造成图像数据的损伤。尤其是使用过高的压缩比例,将使最终解压缩后恢复的图像质量明显降低,如果追求高品质图像,不宜采用过高压缩比例。但是JPEG压缩技术十分先进,它用有损压缩方式去除冗余的图像数据,在获得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像品质。而且 JPEG是一种很灵活的格式,具有调节图像质量的功能,允许用不同的压缩比例对档案进行压缩,支持多种压缩级别,压缩比率通常在10:1到40:1之间,压缩比越大,品质就越低;相反地,压缩比越小,品质就越好。比如可以把1.37Mb的BMP点阵图档案压缩至20.3KB。当然也可以在图像质量和档案尺寸之间找到平衡点。JPEG格式压缩的主要是高频信息,对色彩的信息保留较好,适合套用于网际网路,可减少图像的传输时间,可以支持24bit真彩色,也普遍套用于需要连续色调的图像。 JPEG格式是目前网路上最流行的图像格式,是可以把档案压缩到最小的格式,在 Photoshop软体中以JPEG格式储存时,提供11级压缩级别,以0—10级表示。其中0级压缩比最高,图像品质最差。即使采用细节几乎无损的10 级质量保存时,压缩比也可达 5:1。以BMP格式保存时得到4.28MB图像档案,在采用JPG格式保存时,其档案仅为178KB,压缩比达到24:1。经过多次比较,采用第8级压缩为存储空间与图像质量兼得的最佳比例。 JPEG格式的套用非常广泛,特别是在网路和光盘读物上,都能找到它的身影。目前各类浏览器均支持JPEG这种图像格式,因为JPEG格式的档案尺寸较小,下载速度快。 JPEG2000作为JPEG的升级版,其压缩率比JPEG高约30%左右,同时支持有损和无损压缩。JPEG2000格式有一个极其重要的特征在于它能实现渐进传输,即先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图像由朦胧到清晰显示。此外,JPEG2000还支持所谓的“感兴趣区域”特性,可以任意指定影像上感兴趣区域的压缩质量,还可以选择指定的部分先解压缩。 JPEG2000和JPEG相比优势明显,且向下兼容,因此可取代传统的JPEG格式。JPEG2000即可套用于传统的JPEG市场,如扫瞄器、数位相机等,又可套用于新兴领域,如网路传输、无线通讯等等。 TGA格式 TGA格式(Tagged Graphics)是由美国Truevision公司为其显示卡开发的一种图像档案格式,档案后缀为“.tga”,已被国际上的图形、图像工业所接受。 TGA的结构比较简单,属于一种图形、图像数据的通用格式,在多媒体领域有很大影响,是计算机生成图像向电视转换的一种首选格式。TGA图像格式最大的特点是可以做出不规则形状的图形、图像档案,一般图形、图像档案都为四方形,若需要有圆形、菱形甚至是缕空的图像档案时,TGA可就派上用场了! TGA格式支持压缩,使用不失真的压缩算法。 EXIF格式 EXIF的格式是1994年富士公司提倡的数位相机图像档案格式,其实与JPEG格式相同,区别是除保存图像数据外,还能够存储摄影日期、使用光圈、快门、闪光灯数据等曝光资料和附带信息以及小尺寸图像。 FPX图像档案格式 FPX图像档案格式(扩展名为fpx)是由柯达、微软、HP及Live PictureInc联合研制,并于1996年6月正式发表,FPX是一个拥有多重分辨率的影像格式,即影像被储存成一系列高低不同的分辩率,这种格式的好处是当影像被放大时仍可维持影像的质素,另外,当修饰FPX影像时,只会处理被修饰的部分,不会把整幅影像一并处理,从而减小处理器及记忆体的负担,使影像处理时间减少。 SVG格式 SVG是可缩放的矢量图形格式。它是一种开放标准的矢量图形语言,可任意放大图形显示,边缘异常清晰,文字在SVG图像中保留可编辑和可搜寻的状态,没有字型的限制,生成的档案很小,下载很快,十分适合用于设计高分辨率的Web图形页面。 PSD档案格式 这是Photoshop图像处理软体的专用档案格式,档案扩展名是.psd,可以支持图层、通道、蒙板和不同色彩模式的各种图像特征,是一种非压缩的原始档案保存格式。扫瞄器不能直接生成该种格式的档案。PSD档案有时容量会很大,但由于可以保留所有原始信息,在图像处理中对于尚未制作完成的图像,选用PSD格式保存是最佳的选择。 十一、CDR档案格式 CDR格式是着名绘图软体CorelDRAW的专用图形档案格式。由于CorelDRAW是矢量图形绘制软体,所以CDR可以记录档案的属性、位置和分页等。但它在兼容度上比较差,所有CorelDraw应用程式中均能够使用,但其他图像编辑软体打不开此类档案。 十二、PCD档案格式 PCD是Kodak PhotoCD的缩写,档案扩展名是.pod,是Kodak开发的一种Photo CD档案格式,其他软体系统只能对其进行读取。该格式使用YCC色彩模式定义图像中的色彩。YCC和CIE色彩空间包含比显示器和打印设备的RGB色和 CMYK色多得多的色彩。PhotoCD图像大多具有非常高的质量。 十三、DXF档案格式 DXF是Drawing Exchange Format的缩写,扩展名是.dxf,是AutoCAD中的图形档案格式,它以ASCII方式储存图形,在表现图形的大小方面十分精确,可被CorelDraw和3DS等大型软体调用编辑。 十四、UFO档案格式 它是着名图像编辑软体Ulead Photolmapct的专用图像格式,能够完整地记录所有 Photolmapct处理过的图像属性。值得一提的是,UFO档案以对象来代替图层记录图像信息。 十五、EPS档案格式 EPS是Encapsulated PostScript的缩写,是跨平台的标准格式,扩展名在PC平台上是.eps,在Macintosh平台上是.epsf,主要用于矢量图像和光栅图像的存储。EPS格式采用 PostScript语言进行描述,并且可以保存其他一些类型信息,例如多色调曲线、Alpha通道、分色、剪辑路径、挂网信息和色调曲线等,因此EPS 格式常用于印刷或打印输出。Photoshop中的多个EPS格式选项可以实现印刷打印的综合控制,在某些情况下甚至优于TIFF格式。 十六、PNG图像档案格式 PNG(Portable Neorf Graphics)的原名称为“可移植性网路图像”,是网上接受的最新图像档案格式。PNG能够提供长度比GIF小30%的无损压缩图像档案。它同时提供 24位和48位真彩色图像支持以及其他诸多技术性支持。由于PNG非常新,所以目前并不是所有的程式都可以用它来存储图像档案,但Photoshop可以处理PNG图像档案,也可以用PNG图像档案格式存储。
I. 如何用c语言实现压缩图片内存大小
是(row,col,value),这样把所有不为零的值组成一个向量。这种存储方式比二维数组节省了不少空间,当然还可以进一步节省,因为三元组里面row或者col重复存储了,一行或者一列存一次就行了,按这种思路走下去就是行压缩存储了。
那具体什么是行压缩存储呢?行压缩存储的思想就是,把所有不为零的值按行访问的顺序组成一个向量,然后再把每一行值不为0的列的下标存下来,这个两个向量的大小和稀疏矩阵中不为0的值得个数相同,当然要实现对行压缩矩阵的访问,还要把每一行的不为0的列的下标在第二个向量中开始的位置存下来,有人把这个叫做指针。有了这三个向量就可以实现对矩阵实现高效的按行访问了。行压缩存储比三元组优秀的不仅是空间的压缩,还有就是行访问时的高效。三元组如果是有序的,可以二分查找来访问一行,但是行压缩存储按行访问时的时间复杂度是常数级的。 大家可以参考下面这个行压缩矩阵示意图:
J. 怎么压缩照片
压缩照片的方法:
Office软件几乎每个电脑都有安装,使用他们就可以快速有效的压缩图片大小,而且操作非常简单。
就以Word为例(Excel、PPT同样操作),将图片上传到Word空白文档中,接着羡侍知选中图片,然后兄消在工具栏点击【格式】,然后点击【谈圆压缩图片】。
这时候图片上出现图片压缩的弹框,选择【使用默认分辨率】,最后点击【确定】就行。
图片压缩之后,再次选中图片点击鼠标右键,然后【另存为图片......】将图片保存到电脑上就好了。压缩前后文档图片大小的对比,1.5M的文件直接压缩到187K。