数据压缩作业:分析一个图像文件

[数据压缩作业2]TIFF文件格式分析 目录 一. PNG概述 一. TIFF概述 TIFF是Tagged Image File Format的缩写。在现在的标准中,只有TIFF存在, 其他的提法已经舍弃不用了。做为一种标记语言,TIFF与其他文件格式最大的不同在于除了图像数据,它还可以记录很多图像的其他信息。它记录图像数据的方式也比较灵活, 理论上来说, 任何其他的图像格式都能为TIFF所用, 嵌入到TIFF里面。比如JPEG, Lossless JPEG, JPEG2000和任意数据宽度的原始无压缩数据都可以方便的嵌入到TIFF中去 阅读详情

写在最前

这是老师给的一个自由度非常大的作业… 需要我们自己设计问题并回答,然而我好像提不出什么问题(hmmm),不如就按照 PNG 文件的数据顺序把文件读取出来之后进行辨认、识读跟验证吧。

选用图片由苹果官网下载的 .jpg 文件另存为 .png 而来,原图如下
  
在这里插入图片描述
  当我把这张图片放到 Xcode 中打开后我有点后悔了,因为右侧的信息里面并没有我看的参考文章里提到的大部分数据块儿,反而是一些类似网址或索引的东西(如图)。里面提到最多的是 adobe 跟 rdf。Adobe 跟大家都知道 Adobe 是同一个,至于另一个 RDF,我去问了 Google 之后发现是一个用于让电脑读取并理解的一个 「框架」,全称是「Resource Description Framework」,使用 XML 语言书写,是 W3C 的 Semantic Web 活动的一部分,看完网页介绍后大致理解为是为了让数据得以共享的框架。这张图片中出现这些数据应该与图片来源有关。
  
在这里插入图片描述

当然,图片信息中包含了 PNG 文件的必要信息

PNG 文件标识符

前八位为 PNG 文件的标识符,为了防止文件被识别为文本文件,在最开始使用 89 这个超出 ASCII 范围的数值标记
  
在这里插入图片描述

文件头数据块 IHDR

这八个字节的前四字节表示 IHDR 头块的长度为 13,后四个字节即为 IHDR 的 ASCII 码

在这里插入图片描述

图片的宽高信息

在文件中得到了图片的宽高信息为 07 A8 04 50,换算成十进制即为 1960 × 1104

在这里插入图片描述
打开文件的详细信息进行确认,得到的结果与读取结果一致
在这里插入图片描述

图形数据块 IDAT

在右侧区域可以看到从 ASCII 码转换过来的 IDAT 字样,从这里开始一直到最后即为图片的实际内容了,可以尝试自己更改数值(但要一个字节一个字节地更改),因为图片大部分内容相同,所以在这里面看到大量重复数据。【在这里,采用图片是带 Alpha 通道的,所以每个像素提取出来的信息分别是 R、G、B、Alpha(用于控制像素的不透明度)】

在这里插入图片描述

图像结束数据 IEND

文件结尾的 IEND (若误人为加入信息)总为 00 00 00 00 49 45 4E 44 AE 42 60 82
其中,00 00 00 00 为 IEND 数据块的长度,若无人为加入信息其总为 0;49 45 4E 44 为IEND 的 ASCII 码;AE 42 60 82 为 CRC 码(循环冗余码),前面两者总不变,CRC 码也总是不变

在这里插入图片描述

文章参考:

使用图片的下载地址为:https://www.apple.com.cn/newsroom/2020/03/apple-unveils-new-ipad-pro-with-lidar-scanner-and-trackpad-support-in-ipados/
《PNG文件格式》(二)PNG文件格式分析,地址为https://blog.youkuaiyun.com/hherima/article/details/45847043
《What is RDF》,地址为 https://www.w3schools.com/xml/xml_rdf.asp
关于 W3C’s Semantic Web Activity,参考地址为 https://www.w3.org/2001/sw/

PNG图像文件格式结构分析 PNG图像结构分析 目录PNG图像结构分析一、PNG图像格式介绍1、概述2、PNG图像特性二、PNG图像格式介绍1、文件结构构成(1)文件署名域(2)数据块(一)关键数据块① IHDR(Image Header chunk,文件头数据块)② PLTE(Palette chunk,调色板数据块)③ IDAT(Image data chunk,图像数据块)④ IEND(Image data chunk,图像数据块)(二)辅助数据块三、总结 一、PNG图像格式介绍 1、概述 PNG(Portable Networ 阅读详情

相关推荐

数据压缩实验二——图像文件的读写和转换

一、           实验基本原理 1.   BMP文件的组成结构          BMP(全称 Bitmap)是 Windows 操作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB),使用非常广。它采用位映射存储格式,除了图像深度可选以外,在绝大多数应用中不采用其他任何压缩,因此,BMP 文件所占用的空间很大。BMP 文件的图像深度可选1b

willshant的博客 1363

文件头文件尾全面总结

文件头文件尾汇总: 文件类型 文件头 文件尾 特征 JPEG (jpg) FFD8FF FF D9 ÿØÿà PNG (png) 89504E47 AE 42 60 82 .PNG... GIF (gif) 474...

Ahuuua的博客 2万+

大模型训练显存瘦身全记录:从ZeRO-3参数分区到CPU Offload的硬件协奏曲

本文详细解析了如何通过ZeRO-3参数分区与CPU/NVMe卸载技术优化大模型训练的显存使用。结合bf16混合精度与梯度累积等策略,实现在消费级GPU上高效训练百亿参数模型,显著提升硬件利用率与训练效率。

weixin_29051245的博客 435

数据压缩的两种方法

  方法一: 将整型数据存在字节里面 参考了  http://www.cnblogs.com/chencheng/archive/2012/07/01/2572251.html     方法二: 对二进制码流进行压缩 举例:000011111000111111 压缩后:40513061 (4个0 - 5个1 - 3个0 - 6个1)...

Oliver King 的小窝 3058

WIFI基础入门--802.11g--增强速率物理层ERP--15

WIFI基础入门--802.11--增强速率物理层--191.802.11g的组件保护机制 1.802.11g的组件 802.11g其实是将好几种物理层规范合而为一。虽然统称为增强速率物理层(Extended Rate PHY简称ERP),但是实际上ERP有好几种不同的方式: ERP-DSSS与ERP-CCK 这两种模式向下兼容于原始直接序列规范(1Mbps与2Mbps),以及所提到的802.11...

香蕉一号 4619

思科—OSPF多区域配置实验

实验目的:配置OSPF多区域,使得不同网段的PC互相ping通。 网络拓扑如下: R0的配置 Router>en Router#conf t Router(config)#int g0/1 Router(config-if)#ip add 192.168.1.1 255.255.255.0 Router(config-if)#no shut Router(config-if)#exit Router(config)#int g0/0 Router(config-if)#ip add 192.168.

m0_46237205的博客 1万+

常见图像压缩方法

一、行程长度压缩 原理是将一扫描行中的颜色值相同的相邻像素用一个计数值和那些像素的颜色值来代替。例如:aaabccccccddeee,则可用3a1b6c2d3e来代替。对于拥有大面积,相同颜色区域的图像,用RLE压缩方法非常有效。由RLE原理派生出许多具体行程压缩方法: 1.PCX行程压缩方法: 该算法实际上是位映射格式到压缩格式的转换算法,该算法对于连续出现1次的字节Ch,若Ch>0xc0则压缩

Foxmail★Blog 1万+

飞书日历同步Outlook翻车?我踩过的坑和最终用Google Calendar成功的完整配置记录

本文详细记录了从Outlook日历同步到飞书时遇到的常见问题及解决方案,特别是通过Google Calendar实现稳定同步的完整配置流程。文章揭示了Outlook同步方案易翻车的原因,并提供了Google Calendar的避坑指南、高级技巧和企业级部署建议,帮助用户高效实现日历同步。

weixin_33724046的博客 313

数据压缩实验:JPEG文件分析

目录解码输出YUV文件理解程序设计的框架--以三个关键结构体为补充框架三个结构体分析huffman_tablecomponentjdec_private理解在视音频编解码调试中TRACE的目的和含义 解码输出YUV文件 在loadjpeg中找到usage()提示, 命令行参数设置为 (可选模式 )<文件名 ><输出文件格式>< 输出文件名> 之后修改write_yuv即可,原函数单独输出了y,u,v三个分量 添加代码后如下 static void write_yuv(c

pzp49666的博客 436

从0到1用OpenClaw打造酒店收益管理系统:数据整合→AI策略迭代全链路落地实战

本文基于三亚某连锁海景酒店真实项目落地经验编写,系统上线3个月,酒店平均入住率从62%提升至80%,RevPAR(平均可售房收入)提升26%,淡季空置率降低46%,完全覆盖中小酒店全场景收益管理需求。本文配套OpenClaw全量Skill代码、工作流配置文件,可直接复用落地。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 492

YOLOv11的流形学习压缩:局部线性嵌入(LLE)引导的特征降维,实现在CSP模块中嵌入流形结构保持约束

摘要 本文探讨了流形学习在YOLOv11目标检测模型中的应用,重点研究局部线性嵌入(LLE)方法对CSP模块的特征压缩优化。针对深度学习模型的高维特征冗余问题,LLE通过三个关键步骤实现非线性降维:寻找k近邻、计算重构权重和低维嵌入,相比传统PCA方法能更好地保持数据的局部结构。文章详细分析了LLE的数学原理和参数选择策略,并提出在YOLOv11的CSP模块中嵌入流形约束的创新设计。通过特征分割前、处理过程和融合阶段引入流形一致性损失函数,该方法能在降低特征维度的同时保持原始流形结构,从而提升模型的计算效率

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1380

数据压缩第二次实验报告——用C语言实现bmp to yuv的图片格式转化

实验目标实验主要要求将图片格式从BMP到YUV的转化,并生成含有至少五幅图片不少于200帧的图像流。

lee96的博客 1634

基于ROS2 Humble和VGR数据集完整部署GADEN气体分散仿真环境及模型替换实践

文章摘要 本文详细介绍了基于ROS2 Humble和VGR数据集部署GADEN气体分散仿真环境的方法。GADEN是一款专为移动机器人嗅觉研究设计的3D仿真框架,能够精确模拟气体扩散过程并集成多种环境传感器。文章从系统配置开始,逐步指导读者完成ROS2 Humble环境的搭建、GADEN框架的编译部署,以及VGR数据集的使用。VGR数据集包含120个基于真实房屋模型的CFD仿真案例,为研究提供高度真实的测试环境。教程涵盖了常见问题的解决方案,并深入探讨了气体扩散模型参数的修改方法,为机器人嗅觉算法的开发和验证

huanghm88的专栏 276

数据压缩作业——PNG图像文件格式分析

数据压缩作业——PNG图片文件格式分析

Bingyeshinvwang的博客 2338

Spring AI提示词模板应用

本文介绍了使用SpringAI提示词模板的配置方法,主要步骤包括:1)在JDK17和SpringBoot3.4.4环境下引入spring-ai-alibaba1.0.0.2依赖;2)配置application.yml文件;3)创建测试控制器类处理提示词模板(.st文件);4)通过模板变量动态生成AI回复内容。演示了如何通过@RequestParam设置默认参数,实现无需前端传参即可测试AI回复功能,最终完成了一个SpringAI提示词模板的应用Demo。

wjianwei666的专栏 198

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

数据压缩第二周作业——图片TIFF格式分析

TIFF格式概述,什么是TIFF格式,TIFF的文件如何读写? TIFF(Tagged Image File Format):标记文件格式,是一种灵活的位图格式,

Adore11的博客 8912

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

作业4:分析一个格式的图像文件

选择png格式文件进行分析 问题与解答: 1png基本信息 png即Portable Network Graphics–便携式网络图形,是一种无损压缩的位图片形格式,其设计目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。PNG使用从LZ77派生的无损数据压缩算法,一般应用于JAVA程序、网页或S60程序中,原因是它压缩比高,生成文件体积小。 2png有哪些特点 ...

weixin_45432000的博客 271

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

数据压缩作业二:PNG文件分析

PNG概述 PNG 是 20 世纪 90 年代中期开始开发的图像文件存储格式,其目的是替代 GIF和TIFF文件格式,同时增加一些GIF 文件格式所不具备的特性。流式网络图形格式 (Portable Network Graphic Format , PNG) 名称来源于非官方的 “PNG's Not GIF” ,是一种位图文件 (bitmap file) 存储格式,读成 “ping” 。 PNG 用来存储灰度图像时,灰度图像的深度可多到 16 位,存储彩色图像时,彩色图像的深度可多到 48...

m0_52105369的博客 541

实验二:Tiff图像文件格式浅略分析

实验二:Tiff图像文件格式浅略分析

weixin_47590942的博客 1566

【数据压缩(四)】PNG图像文件格式分析

PNG图像文件格式分析一、PNG格式简介二、PNG文件详解1、文件署名域2、数据块 一、PNG格式简介 png是一种采用无损压缩算法的位图格式,其设计目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。PNG使用从LZ77派生的无损数据压缩算法,一般应用于JAVA程序、网页或S60程序中,原因是它压缩比高,生成文件体积小。 以上来自百度百科 二、PNG文件详解 PNG图像格式文件由一个8字节的PNG文件署名和按照特定结构组织的3个以上的数据(chunk)组成。PNG定义了两种类

zyzcuczyu的博客 921

数据压缩作业二——分析tga文件

数据压缩作业二——分析tga文件 文章目录数据压缩作业二——分析tga文件TGA格式文件二、使用二进制编辑软件分析tga文件1.TGA文件头(TGA FILE HEADER)2.读入数据总结 TGA格式文件 TGA是由美国Truevision公司为其显示卡开发的一种图像文件格式,已被国际上的图形、图像工业所接受。现已成为数字化图像,以及运用光线跟踪算法所产生的高质量图像的常用格式。TGA文件的扩展名为.tga,该格式支持压缩,使用不失真的压缩算法,可以带通道图,另外还支持行程编码压缩。 新的TGA文件包

m0_52405563的博客 389

【数据压缩4】Lab2图像文件的读写和转换

基于C++实现BMP序列转YUV文件

yaoyaxuan的博客 1008

数据压缩作业 图像文件分析

1.PNG文件头可获取哪些信息? PNG文件用二进制编辑器打开后,文件开头为“89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52”共16个字节,可用这一串字符判断是否为PNG文件。 “00 00 02 3F”为文件的宽,转为十进制为575,“00 00 02 8E”为文件的高,转为十进制为654,可在文件属性中验证。 “08”为位深度,说明为索引图像。 ...

Tangent_Chase的博客 554

【数据压缩】第二次作业——PNG图像格式分析

PNG图像文件分析 概述 PNG格式是一种采用无损压缩算法的位图格式,支持索引、灰度、RGB三种颜色方案以及alpha通道等特性。 PNG能够支持256色调色板技术,产生文件的体积小,最高支持24位真彩色图像以及8位灰度图像,支持存在附加文本信息,以保留图像名称、作者、著作权、创作时间、注释等,支持无损压缩,适合在网络传输中快速显示预览效果后再显示全貌。 图片 本文借助所选PNG图片的二进制表示来加深对PNG图像文件的理解,所选图片为: 在vs2019中使用二进制格式打开上面的图片,就可以看到用十六进制显

QKKKKathy的博客 5115

数据压缩作业四——分析PNG图像文件格式

一、简介 png是一种无损压缩的位图片形格式[1]。其设计目的是为了替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。 二、文件结构 PNG图像格式文件(或者称为数据流)由一个8字节的PNG文件署名域(PNG file signature)和按照特定结构组织的3个以上的数据块(chunk)组成。 PNG定义了两种类型的数据块,关键数据块(critical chunk)和辅助数...

m0_46338411的博客 348

数据压缩作业2-1|分析TGA文件

实验:分析一个图像文件 实验目的:能够分析图像文件,并提出问题和解答 实验内容 1.选定一个文件格式(这里选择TGA) 2.根据图像所解析出来的数据进行分析 提出问题: 解答问题 实验结果 解析图片 结果 实验总结 ...

m0_55764256的博客 212
上一篇: 数据压缩试验一:色彩空间转换实验(RGB、YUV)
下一篇: 数据压缩试验二:TGA 文件转 YUV 文件的 C++ 实现方法
ZACH( ???)
博客等级 码龄7年 11粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值