1.介绍

JPEG2000是图像压缩界最常用的压缩算法,目前用深度学习的图像压缩都需要以JPEG2000为标杆,所以不得不了解。而kakadu是jpeg2000最高效的实现,也是最常用的。

2.下载安装

kakadu在windows、Mac、linux(centos和ubuntu)上都有安装包,但是经过验证,Windows上安装包只能在win7及更低的系统上用,win10无法安装,所以本文在ubuntu16.04上安装使用。
下载网址
ubuntu系统上的文件无需安装,直接解压即可。

3.使用

主要参考Usage_Examples.txt,
将所要压缩的图像放入软件目录下,以bmp格式为例,假设图像名称为orig.bmp。

压缩阶段:

在终端中输入:

chmod +x kdu_compress
./kdu_compress -i orig.bmp -o out.j2c -rate 0.4

目录下产生一个out.j2c的文件,这就是压缩后的文件。
上述命令中,rate代表压缩比率,即每个像素压缩到rate个bit,一般情况下原图都是8bit的,所以压缩倍数=8/rate,上述命令中,压缩倍数为8/0.4=20倍。

解压缩阶段

在终端中输入:

./kdu_expand -i out.j2c -o recon.bmp

得到重建图recon.bmp。

4.注意事项

在压缩的这一步中:

./kdu_compress -i orig.bmp -o out.j2c -rate 0.4

很可能会产生报错:

error while loading shared libraries:libkdu_v7AR.so:cannot open shared object file: No such file or directory

这表示系统不知道libkdu_v7AR.so在哪里。一般而言,大多数的so文件会存放在/usr/local/lib这个目录底下,而kakadu里的这个so文件显然就是在你解压的地方。在我这里它的位置是home/kakadu.
解决方法如下:
终端输入:

sudo gedit etc/ld.so.conf.d/libc.conf

打开了libc.conf文件,添加kakadu的目录,如下:

# libc default configuration
/usr/local/lib
/home/kakadu

保存该文件之后,运行下面的命令来更新配置:

/sbin/ldconfig –

接着便可以正常使用kakadu。

c语言图像压缩算法实现_kakadu——JPEG2000图像压缩软件的安装和使用相关推荐

  1. kakadu——JPEG2000图像压缩软件的安装和使用

    1.介绍 JPEG2000是图像压缩界最常用的压缩算法,而kakadu是jpeg2000最高效的实现,也是最常用的. 2.下载安装 kakadu在windows.Mac.linux(centos和ub ...

  2. 图像压缩算法动态规划c语言,图像压缩算法  动态规划

    图片在计算机存储的是图片中的一个一个像素,也就是像素的灰度值.灰度值的范围是0~255.有灰白图像和彩色图像,它们每个像素的通道数量不同.灰白图像是单通道的,而彩色图像是3个通道的(BGR),也就是彩 ...

  3. 基于开源CNN的图像压缩算法

    基于开源CNN的图像压缩算法 压缩的含义 图像压缩从直观上看就是压缩图像,这里的压缩其实包括多个维度:一是直观上的大小:二是信息压缩,这里的信息包括空间和视觉等多个方向. 压缩的原理及分类 关于压缩的 ...

  4. 压缩减小图像大小技巧:8个最佳 JPEG 图像压缩软件

    如果您必须压缩以减小特定图像的大小,Jpeg 图像压缩软件可能会有很大用处.您无需自己动手,只需将图像上传到各种软件,等待工作完成即可.然而,大多数人通常对他们应该选择哪种软件感到困惑,因为可供选择的 ...

  5. 图像压缩算法构造最优解c语言,基于Handel-C的CCSDS图像压缩算法实现研究

    基于Handel-C的CCSDS图像压缩算法实现研究 [摘要]:伴随着航天遥感技术的迅猛发展,采集空间图像的需求也日益增长.为了解决有限的卫星通信信道容量和海量数据下传的矛盾,应用卫星数传系统在图像数 ...

  6. c语言图像压缩编码,基于C语言的图像压缩算法

    摘要:该文借鉴静态图像压缩标准JPEG的理论研究成果,将其与DCT快速变换相结合,采用霍夫曼编码方法,用C语言编程实现灰度图像的压缩.最后,计算了基于DCT快速变换的图像压缩算法的压缩比.同时,分析了 ...

  7. 【老生谈算法】matlab实现图像压缩算法源码——图像压缩

    matlab图像压缩算法详解 1.文档下载: 本算法已经整理成文档如下,有需要的朋友可以点击进行下载 序号 文档(点击下载) 本项目文档 [老生谈算法]图像压缩试验matlab.doc 2.算法详解: ...

  8. c 数据压缩算法_CCSDS图像压缩算法之我见(一)

    点击上方蓝字关注我们! CCSDS图像压缩算法之我见 CCSDS:Consultative Committee for Space Data System,国际空间数据系统咨询委员会,于1982年NA ...

  9. 理解JPEG图像压缩算法,DCT变换

    理解JEPG原理 JEPG不是一种文件格式,而是一类图像压缩算法. 1.彩色图像 灰度图像 灰度,一个pixel取值0-255. 彩色图像 需要比灰度图像更多的存储空间, 事实上, 所有颜色都可以用红 ...

最新文章

  1. 《Adobe AIR权威指南》——《Flex 3权威指南》作者新作
  2. Analysis of the Clustering Properties of the Hilbert Space-Filling Curve 论文笔记
  3. 小白教你一步一步安装Scrapy(西瓜皮)(带图带资源)
  4. 【置顶】方立勋JavaWeb学习地址
  5. 这些是实际面试中遇到的面试题
  6. RabbitMQ 安装和监控[原,转]
  7. CTO 说了,如果发现谁用 SELECT * 查询直接开除
  8. 浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码
  9. 用java数组实现栈
  10. Web API 源码剖析之默认消息处理程序链之路由分发器(HttpRoutingDispatcher)
  11. AI上推荐 之 xDeepFM模型(显隐性高阶特征交互的组合策略)
  12. 获取目标服务器c盘下flag文件信息,公开课基础演练靶场 第六章 webshell控制目标详细解题思路...
  13. 社区分享 | 从零开始学习 TinyML(一)
  14. Visual Studio 2015(C#)编写实现TCP调试助手(服务端+客户端一体)-新手
  15. html li 点图片,html中ul li前面小黑点样式 ul li一些样式
  16. 在Excel表格中隐藏行或列
  17. [Python|生信]从Fasta文件出发获取序列的基本信息
  18. C语言向有序数组中插入一个数使该数组仍保持有序
  19. 为什么VDI(桌面虚拟化)对于硬核UNIX/Linux工程应用程序是有意义的?
  20. 教你如何更改U盘图标

热门文章

  1. php面试题9(看的时候就应该随手截图做笔记的)
  2. spring mvc 思想
  3. 采用keepalived施工可用性MySQL-HA
  4. [Craftor整理]PCB设计参考和建议
  5. 通向KDE4之路(十一):Amarok2开辟起步
  6. (篇十)用结构体数组处理学生成绩、结构体类型函数求平均值
  7. js获取session_学习后端鉴权系列: 基于Cookie, Session认证
  8. 董老师又双叒叕送书啦,6本《Python程序设计实用教程》
  9. Python+pandas你可能不知道的排序技巧
  10. Python“制作”midi音乐“两只老虎”