DCT(离散余弦变换)压缩方法是现代最先进的图片压缩编码方式之一,查找了很多资料,看了几部分代码,我就来说一下我对用matlab使用DCT的理解。

DCT是用8*8的小矩阵块将灰度图分割成许多小块,当然也可以不用非得分成8*8的小模块,可以整体去DCT转换编码;当我们拿到了一个图片,我们要将其压缩并且我们使用8*8的模块去分割;根据数学知识我们知道,如果我们想要用8*8分割并且不留剩余的部分,图片必须得是8的倍数,所以第一步我们读取完图片之后转化为灰度图,读取灰度图的行与列,将行与列都转为8的倍数,这样我们就可以完全分割出来,然后DCT转换我们可以使用系统自带的函数,也可以自己写(自己写就是将用for循环将所以8*8的小矩阵进行转换)。

picture2=zeros(x,y);
for i=1:8:xfor j=1:8:ytransition1=picture1(i:i+7,j:j+7);transition2=dct2(transition1);picture2(i:i+7,j:j+7)=transition2;end
end

然后我们得到整体的DCT系数,下一步我们就是将DCT反转换,自己写的话也是for循环来写;反转换之后就得到了压缩的图片;

行程编码压缩方式运算相对简单,而且解压相对较快;其原理是,将相连着相同的像素,分为两个数,第一个数是有多少个相连着相同的像素,第二个数是该像素在像素索引表中是多少;如0506的意思就是有连着的五个相同像素,其像素在像素索引表中的位置是在06;这样就大大减少了图片的大小;但是这样压缩了好像形成不了图片,只能是一维数据的形式;但却大大降低了图片的大小;先将图片读取并创建成一维数据,用一维数据进行计算,然后再用转化转为二维数据;

matlab的图片压缩两种方法(DCT方法与行程编码压缩方法)相关推荐

  1. python 学习系列(3) 读取并显示图片的两种方法

    python 读取并显示图片的两种方法 在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片.本人偏爱 matpoltlib,因为它的语法更像 mat ...

  2. 浏览器访问云服务器上图片的两种方法

    浏览器访问云服务器上图片的两种方法 1. Tomcat方式 打开tomcat的conf目录下配置文件server.xml 添加以下内容: <Context docBase="/home ...

  3. word涂改涂掉图片_怎么在word中修改图片的两种方法

    有时我们插入的图片只有一部分是我们想要的,那就需要我们将这一部分裁剪出来,word本身就可以方便快捷的对图片进行裁剪,那么下面就由学习啦小编给大家分享下在word中修改图片的技巧,希望能帮助到您. 在 ...

  4. 怎么给README.md添加图片(两种方法,图文教程)?

    当你想要更好的介绍自己的项目的时候,发现别人的readme都是下面很多花里胡哨的图片介绍,而自己只能写字 其实添加图片有两种方式: 第一种: 在README.MD文件中写入 如果这样写的话png就得放 ...

  5. 移动Web开发图片自适应两种常见情况解决方案

    本文主要说的是Web中图片根据手机屏幕大小自适应居中显示,图片自适应两种常见情况解决方案.开始吧 在做配合手机客户端的Web wap页面时,发现文章对图片显示的需求有两种特别重要的情况,一是对于图集, ...

  6. ImGui添加背景图片的两种方式

    给ImGui添加背景图片的两种方式 最近在使用ImGui做客户端程序,想给窗口添加背景图片,但是作者的文档里面好像并没有讲如何添加背景图片,研究了下找到了两种方式. 第一种 创建一个和窗口一样大的Im ...

  7. 如何给html文件夹密码,怎样给文件夹加上密码_分享两种给文件夹设密码的方法...

    现在大家习惯把重要的文件或比较隐私的文件存放在电脑上,出于安全考虑,大家会选择给文件夹设密码.但是问题来了,怎样给文件夹加密码呢?估计大多数的人都还不太清楚该怎么设置吧,别着急,这里小编分享两种给文件 ...

  8. 计算机提取干涉条纹原理,两种提取Fabry-Perot干涉条纹圆心的新方法

    摘要本文介绍两种提取Fabry-Perot干涉条纹圆心点坐标的新方法.首先对干涉图像依次进行二值化处理,对所得到的条纹强度曲线进行均平滤波和自适应滤波,根据条纹灰度值强度余弦函数分布的特点,对条纹灰度 ...

  9. 文章目录 图片元素 img元素 显示图片的两种写法: alt 属性 与a元素连用 map元素 和figure元素 figcaption 联用

    文章目录 图片元素 img元素 显示图片的两种写法: alt 属性 与a元素连用 map元素 和figure元素 figcaption 联用 图片元素 img元素 image 缩写,空元素 src属性 ...

  10. 设置背景图片的两种方式,并解决手机端背景图片高度自适应问题

    设置背景图片的两种方式,并解决手机端背景图片高度自适应问题 参考文章: (1)设置背景图片的两种方式,并解决手机端背景图片高度自适应问题 (2)https://www.cnblogs.com/Dark ...

最新文章

  1. Function Component 与 Class Component 有何不同?
  2. 【Unity技巧】制作一个简单的NPC
  3. CentOS6中怎样将jdk1.7升级到1.8
  4. x-requested-with 请求头 区分ajax请求还是普通请求
  5. pythonshell画图_Python3使用plotly模块保存图片与shell下生成表格
  6. 使用 dotnet-monitor 分析.NET 应用程序
  7. ajax on ture,细数Ajax请求中的async:false和async:true的差异
  8. 心情随笔(六):金秋十月备考之路亦别有一番风味
  9. linux命令详解之df(6/19)
  10. c语言间接寻址运算符,间接寻址运算符:*
  11. MyBatis 的一级缓存与二级缓存
  12. salt returner mysql_saltstack mysql returner
  13. Vue 项目中各种痛点问题及解决方案
  14. lightgbm可视化后的threshold和leaf_value是什么意思?
  15. vuepress-theme-reco自动生成侧边栏
  16. 测设面试题笔试题总结
  17. (4)[Tensorflow]L2正则化和collection【tf.GraphKeys】
  18. 最小熵原理(四):“物以类聚”之从图书馆到词向量
  19. krpano相关笔记
  20. 3.4.3 Electric Fence电网 USACO(毕克定理) USACO

热门文章

  1. Execl单元格图片锁定----一定能
  2. 概率统计13——二项分布与多项分布
  3. macbookwps excel颜色填充快捷键_Excel VBA 实例(31) 为VBA代码自定义快捷键
  4. hadoop3.3.0集群搭建(详细教程)
  5. 2021年Qt路线图
  6. 微信小程序 flex:1表示什么
  7. 关于CSS中背景图片透明度问题
  8. 微信小程序笔记 -- 数据库
  9. PCA、PCoA、NMDS、Anosim学习
  10. art-记一次提取mmd模型到max和unity