【原创】python 字节流操作tga格式图像文件 先码后看,更新中
由于业务需要,tga格式的文件需要在软件系统中被直接调用
但是python目前的库都没有支持tga格式的解码
所以关刀阅读了tga格式的编码文档,决定做出一套解码函数
偏移0x2的字节为0x02 表示本文件是无颜色表RGB图像
偏移0xC - 0xD的字节为0x28 表示图像的宽为2x16 + 8 = 40像素
偏移0xE - 0xF的字节为0x23 表示图像的高为2x16 + 3 = 35像素
偏移0x10的字节为0x20 表示每像素占用32位(bit)
偏移0x11的字节为0x08 这段需要按位划分,先转化为二进制 00001000,从右到左位编号升高
3 - 0位 值为8 代表 TGA 32每像素对应的属性位的位数
4位 必须为0
5位 表示原点在左下角
7 - 6位 表示无交叉
由于无颜色表
偏移0x12 以及之后的字节都是图像数据域 RGBA
以Blue Green Red Alpha的顺序来存RGB二极管的发光强度以及透明通道Alpha
0x15f1 为图像文件的结束,
区间为 5617,而一共只有1400个像素点,其中每个像素点占4字节,则为5600
【原创】python 字节流操作tga格式图像文件 先码后看,更新中相关推荐
- Android Studio 的一些 常用操作和 编译报错 整理(持续更新中...)
Android Studio 的一些 常用操作和 编译报错 整理(持续更新中...) 目录 Android Studio 的一些 常用操作和 编译报错 整理(持续更新中...) 一.Android s ...
- 【Python全栈开发从入门到实战】持续更新中......
本专栏为Python全栈开发系列文章,技术包括Python基础.函数.文件.面向对象.网络编程.并发编程.MySQL数据库.HTML.JavaScript.CSS.JQuery.bootstrap.W ...
- python列表操作——列表嵌套列表,找出嵌套列表中共同的元素
今天在项目中遇到了一个列表嵌套找出共同元素的问题,本来懒得造轮子,直接百度一波,查了一圈不是只有两个list就是使用Intersection这个函数,可能这个功能过于简单了没人写,我试着用Inters ...
- python基础和第三方库 笔记(python基础完结包括高级用法,第三方库持续更新中...)
python基础 注:本笔记面向有一定基础的人 本笔记是本人快速复习python过程中记录的,不适合零基础的人学习python的主工具,可以作为辅工具,本笔记记录了入门阶段常用操作,如有错误的地方,希 ...
- 豆瓣机器人小组自动回复回帖 Python 源码(持续更新中)
最近给朋友做了一个豆瓣小组自动评论机器人,使用 requests 与 lxml 库,在控制刷新频率的情况下,基本能做到头排评论.除了爬虫的这一部分,还很重要的是要能对帖子回复有趣的内容. 基本功能 同 ...
- python 自动复制分类_leetcode python 常见分类问题模板(复制粘贴就能用) 更新中......
排序 插入.希尔.冒泡.选择 def insertSort(arr): for i in range(1,len(arr)): tmp = arr[i] for j in range(i-1,-1,- ...
- 操作的基本原则,每日必读【不断更新中】
2021.9.13 港股 1.竞价阶段,当天下跌趋势时,可以以一个可接受的卖出,不要买入:上涨趋势时,以一个可接受价格买入,不要卖出 2.下跌时不要急着买入,要观察半天的趋势惯性后再买或者收盘时买:上 ...
- Python list 操作
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- word python 域 操作_Python进阶:关于 Word 基本操作
1. 概述 Word 是一个十分常用的文字处理工具,通常我们都是手动来操作它,本节我们来看一下如何通过 Python 来操作. Python 提供了 python-docx 库,该库就是为 Word ...
最新文章
- 卡壳了~~~ 解决了~~~My Site创建成功了.....
- php swoole yii,yii2-swoole
- 冬奥会测试赛,助理裁判竟然是个AI!
- Android的事件分发
- Terrafugia希望在今年夏天带来真正可飞的Airplane
- mysql 定期备份策略,MySQL--3--mysqldump备份策略
- UML应用:业务内涵的分析抽象amp;表达
- spring+hibernate+mysql mvc 配置
- 进制转化进10进制数
- UE4中Component和Subobject的区别
- HTML简洁自适应个人码农主页源码
- c语言数学追赶法编程,计算方法——C语言实现——追赶法求解非线性方程
- 二阶无源低通滤波器幅频特性曲线_一文看懂二阶lc低通滤波器的设计及原理
- 外泌体,顶刊新宠丨一文 get 研究套路!
- python opencv图像叠加/图像融合/mask掩模
- android 仿微信选取相册_Android类似微信图片选择器
- 安焦删除贴 牛人纷纷出现(2)
- Topaz Gigapixel AI 人工智能放大软件
- MATLAB2021b详细安装教程
- TSINGSEE青犀视频构建pion webrtc运行broadcast示例的步骤
热门文章
- 58新媒体担保交易怎么解决商品交易过程中先付钱还是先发货的矛盾?
- HDU3466-排序+背包
- STM32驱动MLX90614红外测温模块
- mp4视频格式转换器工具,万兴优转-多功能视音频处理软件
- 《Nodejs开发加密货币》之三:Nodejs让您的前端开发像子弹飞一样
- Maven项目报错:“Plugin execution not covered by lifecycle configuration”解决过程
- 使用python的kazoo模块连接zookeeper实现最基本的增删改查
- 【论文笔记】3D点云分割-PointNet
- java毕业设计快递代取(附源码、数据库)
- 雷火豊 (易經大意 韓長庚)