对于TGA格式文件的分析
一、TGA格式文件概述
TGA格式图片文件(Tagged Graphics)是由美国Truevision公司为其显示卡开发的一种图像文件格式,文件后缀为".tga",已被国际上的图形、图像工业所接受。TGA的结构比较简单,属于一种图形、图像数据的通用格式,在多媒体领域有很大影响,是计算机生成图像向电视转换的一种首选格式。
TGA图像格式最大的特点是可以做出不规则形状的图形、图像文件,一般图形、图像文件都为四方形,若需要有圆形、菱形甚至是缕空的图像文件时,TGA可就派上用场了! TGA格式支持压缩,使用不失真的压缩算法。
新的TGA文件包含5个区域:
(1)TGA文件头(TGA File Header):
由图像描述信息字段长度、颜色表类型、图像类型、颜色表说明和图像说明五个字段组成,总计18字节,描述了图像存储的基本信息,应用程序可依据该部分字段值读写图像数据。
(2)图像/颜色表数据(Image/Color Map Data):
由图像描述信息(可选)、颜色表数据和图像数据三部分组成,用于存储图片的图像信息。
(3)开发者区域(Developer Area):
包含开发者定义字段列表和开发者字典(用于存储开发者定义字段的值),该区域为开发者扩展该文件格式提供接口,以便存储额外的信息。
(4)拓展区域(Extension Area):
由扩展区域大小、作者姓名、作者注释、日期/时间、工作名称/ID、工作累计耗时、编辑软件的名称、编辑软件的版本、关键颜色、像素宽高比、灰度值、颜色校正表偏移量、缩略图偏移量、扫描线表偏移量、alpha通道类型、扫描线表、缩略图图像数据和颜色校正表组成,为Truevision公司定义的标准扩展功能,以提供更多的图像附加信息。
(5)TGA文件注脚(TGA File Footer):
由扩展区域偏移量、开发者目录偏移量和TGA文件扩展格式签名三部分组成,用于验证TGA文件扩展格式,并可以确定扩展区域和开发者字典的位置。
最后3个区域是在1980年9月以前增加的,所以1989年9月以前的TGA文件格式称为旧生版本TGA文件格式,1989年9月以后的则称为新版本的TGA文件格式。
二、使用二进制编辑软件分析tga文件
使用以下图片:
TGA文件头:
字节长度 | 1byte 图像信息字段长度(ID length) |
---|---|
1byte | 图像信息字段长度(ID length) |
1byte | 颜色表类型(Color Map Type) |
1byte | 图像类型(Image Type) |
5byte | 颜色表规约(Color Map Specification) |
10byte | 图像规约(Image Specification) |
用FLEXHEX解析TGA文件:
1、文件头:
(1)第一个字节(ID length)=00:该文件的image ID段不存在,没有图像信息字段;
(2)第二个字节(color map type)=00:不包含颜色表
(3)第三个字节(image type)=02:图像类型为未压缩的真彩图像
(4)第四-第八字节均为00:因为图像不含颜色表
(5)第九-第十二字节均为00:说明图像x位置和Y位置的起始位置均为0,即图像起始位置为原点
(6)第十三、第十四字节07D0:说明了图像的宽度。低位在后,高位在前,换算成十进制为:2000
(7)第十五、第十六字节05DC:说明了图像的高度。低位在前,高位在后,换算成十进制为:1500
(8)第十七字节18:每个像素占用的位数为24位
(9)第十八字节20:转换为二进制:00100000。0-3位均为0,说明每个像素属性位为0;第五位和第四位为10,说明像素数据从文件发送到屏幕的顺序为从上到下,从左到右。
查看转换前的jpg图像,与该信息相符:
图像部分占2000×1500×24÷8=9000000字节,文件头占18个字节,总共9000018字节。查看tga文件属性:
对于TGA格式文件的分析相关推荐
- 数据压缩作业2——TGA格式文件分析
1 TGA格式简介 TGA是由美国Truevision公司为其显示卡开发的一种图像文件格式,已被国际上的图形.图像工业所接受.现已成为数字化图像,以及运用光线跟踪算法所产生的高质量图像的常用格式. T ...
- 数据压缩作业二 TGA格式文件分析
1 TGA格式简介 TGA(Targa)格式是计算机上应用最广泛的图象格式.在兼顾了BMP的图象质量的同时又兼顾了JPEG的体积优势.并且还有自身的特点:通道效果.方向性.在CG领域常作为影视动画的序 ...
- TGA格式文件转化为YUV文件
因为之前分析的PNG格式文件数据有压缩,不太好提取数据,所以这一次尝试将TGA格式的文件转化为YUV格式的文件. TGA文件的文件头中包括图片类型.图片的宽高数据.每像素占用的bit位数等数据,本次的 ...
- PNG格式文件的分析
文章目录 PNG格式文件分析 PNG格式简介 PNG文件结构如何 FILEHEAD的组成 PNG Chunk Critical Chunk Ancillary Chunk 如何获取PNG的元数据信息 ...
- linux elf格式文件详细分析
ELF(Executable and Linkable Format)是一种对象文件的格式,用于定义不同类型的对象文件(Object files)中都放了什么东西.以及都以什么样的格式去放这些东西. ...
- ELF格式文件详细分析
ELF(Executable and Linkable Format)是一种对象文件的格式,用于定义不同类型的对象文件(Object files)中都放了什么东西.以及都以什么样的格式去放这些东西. ...
- CSV逗号分隔值格式文件(示例分析)
CSV全称Comma Separated Values是"逗号分隔值"的英文缩写.通常是纯文本文件,可以被文本编辑软件,Excel或WPS表格打开. 基本规则 开头不留空,以行为单 ...
- 【数据压缩2】TGA格式图片文件分析
一.TGA文件概述 1.什么是TGA格式图像? tga是由美国Truevision公司为其显示卡开发的一种图像文件格式,已被国际上的图形.图像工业所接受.现已成为数字化图像,以及运用光 ...
- 生信笔记 | 自定义GSEA分析中的gmt格式文件
在GSEA分析中,在MSigDB(Molecular Signatures Database)数据库中定义了很多基因集,下载的基因集是gmt格式文件.下载的gmt格式文件,打开后可以看见是下面这个样子 ...
最新文章
- JavaWEB开发21——综合项目(图书商城)
- Extjs prompt 显示密码框
- PEAR简介:用PEAR来写你的下一个php程序
- Linux进程管理+内存管理:进程切换的TLB处理(ASID-address space ID、PCID-process context ID)
- php携程 线程,携程api开发解决方法
- java web启动socket_javaweb启动时启动socket服务端代码实现
- 添加ejs后页面空白解决办法
- operator() error
- 数据库JDBCUtil 工具类 增加连接池操作
- Ring Buffer 实现原理
- C#winform连接Access数据库方式
- VC6 Tips 002: WndTabs 插件
- 关于OMC链接LANSWITCH
- Mac怎么读写NTFS格式?
- 磁盘阵列服务器安装操作系统,板载RAID功能制作磁盘阵列并安装操作系统
- labview如何加载库_LabVIEW如何方便地调用DLL文件
- java实现一台电脑控制多台手机_一台电脑控制多部手机怎么实现?
- mysql int 11 最大多少_MySQL中int(11)最大长度是多少?
- idea Translation翻译插件详细讲解
- 一分钟看懂外卖O2O:小心!别掉入这三个坑里
热门文章
- 中国移动支付全球领先!成中国“新四大发明“
- 最强大的Docker插件 fabric8io/docker-maven-plugin
- 【愚公系列】2022年04月 密码学攻击-RSA之暴力分解N
- 用pymysql批量导入数据
- matlab分类算法代码,实现几种经典的分类算法(ID3,C4.5等)
- 【产品经理三节课】第2章 用户分析入门
- python打包二进制文件(pyd\dll\exe)
- 安卓Tablayout自定义文字、指示器长度和颜色
- (静态,动态,文件)三个版本的通讯录
- FPGA - 7系列 FPGA内部结构之CLB -01- CLB资源概述