我正在尝试实现JPEG压缩(或尽可能接近它),但有些要点我需要明确实际实现 . 我将解释我目前所知道的以及我在哪里看到问题,如果有人能够清除它们那将是非常棒的 .

第一步是将图像分割成8x8块 . 但我不知道最好的方法是这样做,例如,考虑到必须对色度进行色度采样然后应用DCT,哪种维数阵列最适合用于存储所有这些段 . 它是3D阵列(存储图像的2D元素的两个维度,然后是颜色通道的一个维度),然后以8或4D阵列的组(具有用于存储每个8x8组的额外维度)或其他方法进行迭代完全 .

然后,我可能会看到色度下采样的问题,因为一旦色度值的数量减少,阵列的大小就必须改变大小,然后必须将这些大小放入DCT中,这不能真正占用所有的不同大小的阵列同时用于色度和发光 .

同样是DCT的想法,它需要8x8组的所有三个颜色通道,然后将这三个值转换为一个值,从而节省空间或一次一个地采用每个颜色通道(如果是这样我真的不明白如何转换到傅立叶空间使压缩更有效率?另外我注意到我为DCT获得的值远远超出0-255的范围,而是更高 . 据我所知,每个8x8块的这些值将被IJG标准量化矩阵分割,然后是不同的熵编码 .

我意识到这个问题涉及很多方面并且非常混乱,但如果需要我可以提供任何其他信息,我们将非常感谢任何帮助 .

java实现jpeg压缩_JPEG压缩实现问题相关推荐

  1. java 解压与压缩代码_Java实现多文件压缩和解压缩代码详解

    Java实现多文件压缩和解压缩代码 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStre ...

  2. Java 的zip压缩和解压缩

    Java 的zip压缩和解压缩 好久没有来这写东西了,今天中秋节,有个东西想拿出来分享,一来是工作中遇到的问题,一来是和csdn问候一下,下面就分享一个Java中的zip压缩技术,代码实现比较简单,代 ...

  3. java putnextentry_Java对zip格式压缩和解压缩

    Java对zip格式压缩和解压缩 通过使用java的相关类可以实现对文件或文件夹的压缩,以及对压缩文件的解压. 1.1 ZIP和GZIP的区别 gzip是一种文件压缩工具(或该压缩工具产生的压缩文件格 ...

  4. java压缩_Java压缩

    java压缩 在最近的项目中,我们不得不做一些我个人从未真正看过的事情. 压缩. 我们需要拍摄几个文件和图像,将它们压缩并提供给FTP使用,是的,总有一天,感觉确实回到了90年代. 除了过去的FTP之 ...

  5. java图片的导出,并压缩

    java图片的导出,并压缩 java 压缩包jar包使用的是commons-compress-1.6.jar /*** 导出图片* @param request* @param response*/@ ...

  6. java.util.zip_[Java 基础] 使用java.util.zip包压缩和解压缩文件

    Java API中的import java.util.zip.*;包下包含了Java对于压缩文件的所有相关操作. 我们可以使用该包中的方法,结合IO中的相关知识,进行文件的压缩和解压缩相关操作. Zi ...

  7. java 解压到内存,Java GZip 基于内存实现压缩和解压的方法

    欢迎大家关注本博,同时欢迎大家评论交流,可以给个赞哦!!! GZip是常用的无损压缩算法实现,在Linux中较为常见,像我们在Linux安装软件时,基本都是.tar.gz格式..tar.gz格式文件需 ...

  8. java实现linux中gzip压缩解压缩算法:byte[]字节数组,文件,字符串,数据流的压缩解压缩

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java实现gzip压缩解压缩byte[]字节数组,文件,字符串. 测试代码 public static void main(String[] a ...

  9. Java使用winrar压缩和解压缩文件

    Java使用winrar压缩和解压缩文件 2015-08-17| 发布: | 浏览: 740 |保存PDF Winrar可以使用命令行进行压缩和解压缩,如: 将D:/aa.doc 压缩为:aa.rar ...

最新文章

  1. select 统计 没有 为0_sql where 1=1和 0=1 的作用
  2. 自己编写linux系统,自己动手 编写Linux系统的设备驱动程序
  3. 用PHP开发命令行工具
  4. 基于jQuery的AJAX和JSON实现纯html数据模板
  5. Ubuntu 下 redmine 安装配置
  6. mysql踢掉登录用户_centos 强制踢掉某登录用户的方法
  7. jdk的logging我们Logger.getLogger(xxx)jdk都干了啥
  8. ubuntu 命令行命令历史记录存储在哪个文件夹
  9. mysql upload_关于mysql数据库里的 upload子查询问题
  10. X264电影压缩率画质
  11. HDU 1716 排列2
  12. 如何快速开发后台管理系统【未完,待补充,欢迎拍砖】
  13. 服务器安装SSH服务:
  14. 使用MMAction2处理UCF-101数据集
  15. abb机器人编程指令写字_最全的ABB机器人编程指令与函数
  16. flutter ios打包_Flutter 的Android 、iOS 打包
  17. 【Java没基础】关于stream has already been operated upon or closed问题
  18. CAD随机多面体3D 多面体骨料 凸多面体颗粒
  19. Java011-数组及其常见问题
  20. [开题报告+论文+源码]基于Android仿QQ聊天系统

热门文章

  1. STM32CUBEIDE(8)----USART通过DMA收发
  2. MySQL个人学习笔记-仅供参考
  3. 百度为什么不收录、收录慢、收录少?怎么办?
  4. 微信小程序-讲解bindconfirm回车事件及focus自动获取焦点【超级详细】
  5. Java的锁机制--偏向锁、轻量锁、自旋锁、重量锁
  6. R语言使用ggplot2函数可视化需要构建泊松回归模型的计数目标变量的直方图分布并分析构建泊松回归模型的可行性
  7. tf.keras.activations.gelu tensorflow1.15.0
  8. 分布式session详解
  9. python 提取网页正文_小苹果来科普 | 关于python爬虫的那些事儿
  10. MUI(最接近原生APP体验的高性能前端框架)