8位, 16位,24位,32位图片显示原理及对比

2023-11-08

  我们都知道一张图片可以保存为很多种不同的格式,比如bmp/png/jpeg/gif等等。这个是从文件格式的角度看,我们抛开文件格式,看图片本身,我们可以分为8位, 16位, 24位, 32位等。

  单击右键,属性->详细信息即可查看图片位深度:

8位:  2^8 = 2^2(B) 2^3(G) 2^3(R) = 256  (256色)    可以总共显示256种颜色

16位:2^16 = 2^5(B) 2^6(G) 2^5(R) =  65536    可以总共显示65536种颜色

24位:2^24 = 2^8(B) 2^8(G) 2^8(R) =  16777216    可以总共显示16777216种颜色

32位:Alpha透明度 + 24位

  当8/16位深度时,单个原始颜色 (R/G/B)最大只能表示为(0~2^3)/(0~2^6), 无法满足(0~0xff)的范围,所以显示的颜色范围有限。

  当24位深度时,使用24bit显示一个像素点, 由8bit Red 8bit Green 8bit Blue组合颜色而成,每一个原始颜色(R/G/B)都可以完全显示(0~0xff),所以24位及以上,我们就叫做真彩色

  当32位深度时,与24位相同,可以显示所有的颜色,同时多了一个透明度值。

同一张图片,不用位深度的表现如下:

24位 & 16位:

8位 & 4位:

1位:(只能显示黑白了)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

8位, 16位,24位,32位图片显示原理及对比 的相关文章

  • MFC中基于OpenCV实现Picture Control控件成像方法

    MFC中基于OpenCV实现Picture Control控件成像方法有两种 xff0c 一种是OpenCV2 2以前版本的绘制 xff0c 另外一种是OpenCV2 2以后版本的绘制 xff08 1 xff09 在OpenCV2 2之前的
  • 【Verilog】通过任务(task)完成3个8bit数据的冒泡排序

    题目 xff1a 设计一个模块 xff0c 通过任务完成3个8位2进制输入数据的冒泡排序 要求 xff1a 时钟触发任务的执行 xff0c 每个时钟周期完成一次数据交换的操作 Verilog代码 xff1a module sort inpu
  • 在MFC的picture控件中如何显示Mat图

    首先 xff0c 要进行输入检查 xff0c 看Mat数据是否是有效的 xff0c 如下图中所示 定义位图数据结构 xff0c 用以方便在图形设备接口 GraphicsDeviceInterface 上显示 xff0c 也就是windows
  • 廉价16bit音频DAC芯片TM8211(PT8211、TDA1311)

    推荐低成本高性能两路16位DAC 数模转换 芯片TM8211 xff08 PT8211 TDA1311 xff09 一 概述 xff1a TM8211是两路16位数模转换集成 电路 xff0c 可广泛应用于数字音频 多媒体系统 芯片采用CM
  • 8位, 16位,24位,32位图片显示原理及对比

    我们都知道一张图片可以保存为很多种不同的格式 比如bmp png jpeg gif等等 这个是从文件格式的角度看 我们抛开文件格式 看图片本身 我们可以分为8位 16位 24位 32位等 单击右键 属性 gt 详细信息即可查看图片位深度 8
  • CScrollView嵌入对话框中无法响应WM_MOUSE WHEEL 消息

    1 问题描述 当使用CScrollView来显示图像时 往往需要将它嵌入到对话框中 当嵌入对话框之后 显示图像 使用放大镜查看图像时 发现使用WM MOUSE WHEEL消息来放大和缩小放大镜 结果消息未响应 2 分析原因 跟着调试发现 C
  • 如何将 24 位 RGB 转换为 8 位 RGB

    我想知道将 24 位 RGB 颜色 每种颜色 8 位 转换为 8 位颜色 2 位蓝色 3 位绿色 3 位红色 的最佳方法是什么 我想要执行此操作的 C 代码 8 位 RGB 通常是索引 调色板 颜色格式 请参阅调色板 计算 不过 按照您描述
  • 无法在 16 位实模式汇编中清除整个屏幕

    我正在尝试在简单的 16 位实模式操作系统中清除屏幕 下面是代码 clearScreen pusha mov ah 0x7 mov al 0 int 0x10 popa ret 我读了那个设置al为 0 并调用滚动屏幕中断会清理屏幕 但它似
  • 替换颜色图中的颜色

    我使用一条简单的线将 256 色索引图像分解为调色板 import numpy as np from PIL import Image im Image open palette np array im getpalette dtype n
  • C# - 转换 8 位或 16 位灰度原始像素数据

    我需要能够将 8 位或 16 位灰度像素数据转换为 NET 框架可以支持的文件格式 我拥有的可用数据是宽度 高度 方向 左下角 和像素格式 即 4096 级灰度 12 位分辨率 每个像素封装为 2 个字节 例如每个像素的范围是 0 到 40
  • 写入 16 位 BufferedImage TYPE_USHORT_GRAY

    我正在尝试使用 BufferedImage TYPE USHORT GRAY 将 16 位灰度图像数据写入 png 通常我会像这样写入图像 BufferedImage image new BufferedImage width height
  • 32位应用程序是什么意思?

    我不确定 16 位或 32 位应用程序是什么意思 16 位应用程序是不需要超过 2 16 字节内存空间的应用程序吗 这个16位是指应用程序的最大大小吗 这意味着应用程序已针对具有 16 位内存寻址或 32 位内存寻址的处理器进行编译 64
  • 将 16 位灰度 PNG 转换为 HEVC/x265

    我想将 12 位图像信号转换为 HEVC 以进行有效压缩 因为我需要能够重建原始 12 位信号 所以压缩需要是无损可逆的 目前我的数据为 16 位 PNG 文件 我的第一次尝试是使用 ffmpeg ffmpeg y framerate 1
  • 为什么没有 2 字节浮点并且已经存在实现?

    假设我真的内存不足并且想要更小的范围 类似于short vs int 着色器语言已经支持half对于半精度的浮点类型 不仅仅是来回转换使值在 1 和 1 之间 即返回一个像这样的浮点数 shortComingIn maxRangeOfSho
  • 如何在 .net x64 中保存/加载 16 位图像?

    以前 当我使用win32时 我使用自由图像 http freeimage sourceforge net 为了加载和保存位深度大于 8 位的位图 这就是我处理的每张图像 因为我正在做医学成像 在任何人说什么之前 是的 我和我的客户已经花了很
  • 如何在32位Linux上运行16位代码?

    我编写了一个小型 16 位汇编程序 该程序在某些内存位置写入一些值 有没有办法可以在 Linux 上的 32 位保护模式下测试它 qemu http wiki qemu org Main Page dosbox http www dosbo
  • GCC 裸机内联汇编 SI 寄存器与指针不能很好地配合

    嗯 这显然是一个初学者的问题 但这是我第一次尝试制作操作系统C 实际上 我几乎完全陌生C 我已经习惯了asm 那么 为什么这实际上是无效的呢 据我所知 一个pointer in C只是一个uint16 t用于指向内存中的某个区域 右 或ui
  • 如何设置 BufferedImage 中的 RGB 像素以显示 16 位深度的 PNG?

    我正在尝试读取并显示 PNG 文件 我处理 8 位深度的图像没有问题 我按如下方式进行 BufferedImage result new BufferedImage width height BufferedImage TYPE INT R
  • 在 x86 程序集中将整数打印到控制台

    当我在 16 位汇编中添加两个值时 将结果打印到控制台的最佳方法是什么 目前我有这个代码 CODE START mov ax 1 put 1 into ax add ax 2 add 2 to ax current value mov ah
  • 为什么没有 2 字节浮点并且已经存在实现?

    假设我真的内存不足并且想要更小的范围 类似于short vs int 着色器语言已经支持half对于半精度的浮点类型 不仅仅是来回转换使值在 1 和 1 之间 即返回一个像这样的浮点数 shortComingIn maxRangeOfSho

随机推荐

  • python解决一元二次方程

    题目 求一元二次方程ax x b x c 0的解 从键盘输入a b c的值 分多种情况输出解 a等于0 b也等于0时 输出 方程无解 a等于0 b不等于0时 输出 方程有1个解 x 表示方程的解 a不等于0时 计算判别式d b b 4 a
  • Java启动参数、调优及分析

    java启动参数共分为三类 其一是标准参数 所有的JVM实现都必须实现这些参数的功能 而且向后兼容 其二是非标准参数 X 默认jvm实现这些参数的功能 但是并不保证所有jvm实现都满足 且不保证向后兼容 其三是非Stable参数 XX 此类
  • Linux系统运维常见面试题汇总

    一 填空题 1 在Linux 系统 中 以文件方式访问设备 2 Linux 内核引导时 从文件 etc fstab中读取要加载的文件系统 3 Linux 文件系统中每个文件用indoe节点来标识 4 全部磁盘块由四个部分组成 分别为引导块
  • 心态:晋升的为什么不是你--架构师之道

    2011年底的时候 在网上看了一篇文章 能让你少奋斗10年的工作经验 其中大部分条目与工作态度相关 有实例 可操作 故有此感慨 职场纵横 如果下面8条 你也符合部分状态 或许 这就是 晋升的为什么不是你 的答案了 一 心灵停留在舒适区是不可
  • 第二章——递归

    递归的定义 递归算法 递归模型 递归栈 递归树 在数学和计算机科学中 递归是指在在一个过程或函数的定义时出现调用本过程或本函数的成分 若在函数中调用函数自身或者在过程的子部分中调用子部分自身的内容 称之为直接递归 又称自递归 若不同的函数和
  • mock静态方法指引

    mock静态方法指引 mockito 在3 4 0版本开始支持mock static method 文档 https wttech blog blog 2020 mocking static methods made possible in
  • 爬取实时航班信息 - 从航班信息网站获取实时航班信息

    目录 1 选择目标航班信息网站 2 分析网站结构 3 准备工具和库 4 编写爬虫程序
  • 软件测试功能到自动化学习路线图,2022年最新版技术栈

    2022年全新版软件测试技术栈 零基础入行必备 高质量免费在线课程 笔记 讲义分享 适合零基础 功能测试 即将面试回顾知识点的各位伙伴 文章目录 前言 第一阶段 功能测试 1 软件测试入门到精通 2 Linux系统2天快速入门 3 软件测试
  • L2-001紧急救援_最短路径

    PTA 程序设计类实验辅助教学平台千名教师建设 万道高质量题目 百万用户拼题的程序设计实验辅助教学平台https pintia cn problem sets 994805046380707840 problems 994805073643
  • spyder使用过程记录

    Ctrl F5 以Debug模式运行文件 在debug之前记得用 reset 指令清空一下ipython工作空间中的变量 以免影响debug中变量值的查看 无论你是否打断点 都会在第一行语句执行之前中断一次 python语句 可以在pdb提
  • Blender学习笔记(建模#2:线操作)

    建模 2 线操作 x ray模式 边操作 1 边的细分 基本同面一样 2 边的滑移 3 溶解 dissolve 4 倒角 5 环切 6 循环边 7 并排边 8 循环面 9 切变 10 法相切割 11 偏移边线并滑移 12 桥接循环边 13
  • 2020年高教社杯全国大学生数学建模竞赛 C题思路

    2020年高教社杯全国大学生数学建模竞赛 C题 中小微企业的信贷决策 本文旨在为广大热爱建模的朋友们提供2020年数学建模C题的思路和解法 问题回顾 在实际中 由于中小微企业规模相对较小 也缺少抵押资产 因此银行通常是依据信贷政策 企业的交
  • C运行时库(C Run-time Library)详解

    http blog csdn net wqvbjhc article details 6612099
  • 网络安全应急响应是什么?需要做什么?

    在网络安全体系中 我们除了要了解渗透测试 代码审计 风险评估 等级保护外 应急响应也是非常重要的部分 那么什么是应急响应 网络安全应急响应需要做什么 以下是具体的内容介绍 什么是应急响应 应急响应是指组织为了应对突发事件或重大信息安全事件的
  • 【LeetCode刷题】145 二叉树的后序遍历 java

    题目 给你一棵二叉树的根节点 root 返回其节点值的 后序遍历 示例 方法一 递归 class Solution public List
  • Vite 基本配置及原理

    Vite 基本配置及原理 介绍 vite config js optimizeDeps exclude 不同环境的 vite 配置 css配置 Vite 对 css 的处理 Vite 对 cssmodule 的处理和配置 Vite 对预处理
  • 深入学习jquery源码之查询选择插件的实现

    深入学习jquery源码之上传查询选择插件的实现 function var defaults url fieldCode multi false area 40 80 code code name 注意顺序 先是code 再是name fu
  • linux vscode 下开发

    linux vscode 下开发 java jdk 插件 查看调用层次 java jdk 各种JAVA JDK的镜像分发 编程宝库 技术改变世界 jdk 镜像 ubuntu22 04 安装 Linux x64 64位 jdk 8u351 l
  • 用递归实现输入一系列整数后逆序输出

    对于输入 一系列整数的逆序输出 最容易想到是用堆栈来实现 但是如果是自己去定义堆栈抽象结构 实现堆栈的初始化 Push Pop 以及堆栈的释放等操作 给人以 杀机用牛刀 的感觉 但是 堆栈的想法还是给我们以启迪 要知道 我们可以用堆栈来实现
  • 8位, 16位,24位,32位图片显示原理及对比

    我们都知道一张图片可以保存为很多种不同的格式 比如bmp png jpeg gif等等 这个是从文件格式的角度看 我们抛开文件格式 看图片本身 我们可以分为8位 16位 24位 32位等 单击右键 属性 gt 详细信息即可查看图片位深度 8