图片格式PGM缩写
PGM是Portable Gray Map的缩写。它是灰度图像格式中一种最简单的格式标准。另外两种与之相近的图片格式是PBM和PPM。它们分别相应着黑白图像和彩色图像。
PGM的数据存放方式相比于JPG来说是非常easy的,由于它不进行数据压缩。自然的PGM的图片的大小也就比較大了。一个120*128 8-bit的灰度图像,PGM的大小是44kb,而将这个图片转化为JPG格式后。大小仅为4kb。
所以。在日常各种网络应用中你是非常难见到PGM图片的,它太浪费流量了。
PGM的数据格式就像上面说的,PGM是不进行数据压缩的,那么自然的。它的格式就非常直观了。你能够直接用一个记事本打开它,只是记事本打开后换行没了。不好看,以下是打开的格式:
P5
数据格式的解析:
首先。以一个“Magic Number”来标识图片格式,这个magic number是P5,不能是p5。或者P 5;
然后。第二行是图片宽度、图片高度,在上图中是24和7。
第三行是这个图片数据的最大值。上图中是15;
最后,就是图片的像素数据值了。这些数据是以“row-major order”存放的,即是说按行存放的。当然,你认真看上图的话会发现,从第4行開始,每行都仅仅有16个数据,默认情况下。每行长度不能超过70个字符,可是详细几个并没有要求,一种安全的做法是每行存放一个像素。
在有些PGM图片你可能会看到以#开头的行。这个是comment,比方说用#linjianmin.pgm来表示图片名称。
图片格式PGM缩写的更多相关文章
- PGM图片格式与代码
这两天在搞神经网络,里面的一个人脸数据库的图片格式是PGM,事实上之前早就知道了这个图片格式,可是没去深究这个图片格式的数据究竟是什么安排的.搜索了下百度百科,发现介绍的真是简单,以下就自己来系统地整 ...
- PPM图片格式及其C读写代码
PPM图像格式介绍 PPM图像格式是由Jef Poskanzer 大叔,在我出生那一年,也就是1991年所创造的,碰巧的是PPM也是天蝎座. PPM(Portable Pixmap Format)还有 ...
- Souerce 之 图片格式
一.基本概念 1.矢量图与位图 1)矢量图-完美的几何图形 矢量图是通过组成图形的一些基本元素,如点.线.面,边框,填充色等信息通过计算的方式来显示图形的.就好比我们在几何学里面描述一个圆可以通过它的 ...
- DirectX - dds图片格式(DDSURFACEDESC2)
DDS是DirectDraw Surface的缩写,它是DirectX纹理压缩(DirectX Texture Compression,简称DXTC)的产物. DXTC减少了纹理内存消耗的50%甚至更 ...
- 【VC++技术杂谈007】使用GDI+进行图片格式转换
本文主要介绍如何使用GDI+对图片进行格式转换,可以转换的图片格式为bmp.jpg.png. 1.加载GDI+库 GDI+是GDI图形库的一个增强版本,提供了一系列Visual C++ API.为了使 ...
- JS验证图片格式和大小并预览
用于上传图片的js验证: <%@ page language="java" contentType="text/html; charset=UTF-8"p ...
- PNG和Gif及JPEG图片格式比较
Gif格式特点 透明性Gif是一种布尔透明类型,既它可以是全透明,也可以是全不透明,但是它并没有半透明(alpha 透明). 动画Gif这种格式支持动画. 无损耗性Gif是一种无损耗的图像格式,这也意 ...
- JavaScript校验图片格式及大小
<!DOCTYPE html> <html> <head> <title>JavaScript校验图片格式及大小</title> <s ...
- 前端工程师技能之photoshop巧用系列第四篇——图片格式
× 目录 [1]图片格式 [2]保存设置 前面的话 对于前端来说,图片格式是需要重要掌握的知识.本文是photoshop巧用系列第四篇——图片格式 图片格式 目前在前端的开发中常用的图片格式有jpg. ...
随机推荐
- 用grunt对css代码进行压缩
1.先安装Node.js环境 Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器.Node.js的下载链接 安装完后进行验证 2.安装grunt及插件 通 ...
- Python之路(第三十二篇) 网络编程:udp套接字、简单文件传输
一.UDP套接字 服务端 # udp是无链接的,先启动哪一端都不会报错 # udp没有链接,与tcp相比没有链接循环,只有通讯循环 server = socket.socket(socket.AF_I ...
- oo第八次作业
oo第八次作业 第五次作业分析: 1.度量图: 2.类图: 第五次作业由于是第一次接触多线程,所以导致自己的经验不足,因此最终也没有完成作业,到最后任然不能实现三部电梯的有效调度,所以导致了这次作业的 ...
- 基于xposed实现android注册系统服务,解决跨进程共享数据问题
昨花了点时间,参考github issues 总算实现了基于xposed的系统服务注入,本文目的是为了“解决应用之间hook后数据共享,任意app ServiceManager.getService就 ...
- robotframework+selenium搭配chrome浏览器,web测试案例(搭建篇)
这两天发布版本 做的事情有点多,都没有时间努力学习了,先给自己个差评,今天折腾了一天, 把robotframework 和 selenium 还有appnium 都研究了一下 ,大概有个谱,先说说we ...
- Atcoder Beginner Contest 070 D - Transit Tree Path
题意:n个点,n-1条边,组成一个无向的联通图,然后给出q和k,q次询问,每次给出两个点,问这两个点之间的最短距离但必须经过k点. 思路:我当时是用优化的Dijkstra写的(当天刚学的),求出k点到 ...
- rem 原理与简介
一.rem 原理与简介 字体单位: 值根据 html 根元素大小而定,同样可以作为宽度,高度等单位 适配原理: 将 px 替换为 rem,动态修改 HTML 根元素的 font-siz ...
- spring实现一个简单的事务管理
前两天给公司的数据库操作加了事务管理,今天博客就更一下这个吧. 先说明:本文只是简单得实现一下事务,事务的具体内容,比如事务的等级,事务的具体实现原理等等... 菜鸟水平有限,暂时还更不了这个,以后的 ...
- 阿里云服务器搭建SS代理教程!!!
二.搭建教程 1.环境介绍 阿里云服务器ECS(香港): 配置:cpu 1核心.内存 1GB.出网带宽 10Mbps. 系统:CentOS 7.4 64位 2.服务器端搭建 1)使用root用户,分别 ...
- python之路(五)-文件操作
文件操作无非两个,即:读.写 python 2.x: 文件句柄 = file('文件路径', '模式') python3.x: 文件句柄 = open('文件路径', '模式') 打开文件的模式有: ...