Bitmap位图数据排列方式
读取dicom
C# 使用fo-dicom操作dicom文件-CSDN博客
创建位图
通过读取dicom得到像素内存,本例单指彩色图像。
Bitmap dataBmp = new Bitmap(imageWidth, imageHeight, stride, PixelFormat.Format24bppRgb, dstBmp);
当像素的内存按照RGB的排列模式时,颜色不对;
但是转换像素格式为BGR的排列模式时,颜色正确。经过查询Bitmap位图数据显示方式知道了原因。记录一下
Bitmap位图数据
该域的大小取决于压缩方法及图像的尺寸和图像的位深度,它包含所有的位图数据字节,这些数据可能是彩色调色板的索引号, 也可能是实际的RGB值,这将根据图像信息头中的位深度值来决定。
如果是8位色图,则每个像素用1个字节表示,取出每个字节,显示到相应的设备上就可以了。
如果是24位色图,则按照BGR的顺序排列,32位色图按照BGRAlpha排列。
-
对于8位色图,每个像素确实只用1个字节表示,这个字节代表的是一个索引值,这个索引值指向一个调色板,调色板中存储了实际的颜色值。所以,显示这些像素时,需要根据索引查找调色板中的颜色信息,而不是直接显示字节值。
-
对于24位色图,每个像素由3个字节组成,代表红、绿、蓝三个颜色通道的信息。传统上在计算机内存和文件存储中,这通常遵循BGR顺序,尤其是当涉及到一些特定的库(如OpenCV)处理图像时。但是,从概念上讲,人们常说的“24位色”是指RGB信息,只是在具体实现时可能按BGR排列。
-
对于32位色图(通常指的是带有透明度通道的图像),每个像素由4个字节组成,这些字节按照BGRAlpha顺序排列,分别代表蓝色、绿色、红色的颜色分量以及一个Alpha透明度分量。Alpha通道用于表示像素的透明度,值范围通常是0(完全透明)到255(完全不透明)。
注意:
位图数据排列还有一个规则,就是对齐。Windows默认的扫描的最小单位是4字节,如果数据对齐满足这个值的话对于数据的获取速度等都是有很大的增益的。因此,BMP图像顺应了这个要求,要求每行的数据的长度必须是4的倍数,如果不够需要进行比特填充(以0填充),这样可以达到按行的快速存取。这样的话,位图数据的大小就不一定是宽x高x每像素字节数了,因为每行还可能有0填充。填充后的每行数据如下:
BPP :每像素的比特数(Bits Per Pixel)
对于上图 BPP=24,Width=256。为32的倍数,所以没有填充。但是54个字节的文件头应该填充为56。
参照链接
关于BMP文件格式的详解_bmp是hex文件吗-CSDN博客
大语言模型
相关文章:
Bitmap位图数据排列方式
读取dicom C# 使用fo-dicom操作dicom文件-CSDN博客 创建位图 通过读取dicom得到像素内存,本例单指彩色图像。 Bitmap dataBmp new Bitmap(imageWidth, imageHeight, stride, PixelFormat.Format24bppRgb, dstBmp); 当像素的内存按照RGB的排列模式时,…...
重磅消息:ONLYOFFICE8.1版本桌面编辑器发布:功能完善的 PDF 编辑器、幻灯片版式、改进从右至左显示、新的本地化选项等
目录 ONLYOFFICE介绍 PDF 编辑器 功能全面的 PDF 编辑器 文本编辑 页面处理 (添加、旋转、删除) 插入和调整各种对象,例如表格、形状、文本框、图像、TextArt、超链接、方程等。 此外 PDF 表单 文本文档编辑器更新内容 页面颜色 页面…...
16进制数按位修改
16进制数需要按位修改,特别是在修改寄存器的时候 16进制数转换为2进制 #16进制数转换为2进制 def hex_to_binary(hex_value):return bin((hex_value))二进制数转换为列表 def bin_to_array(bin_str):integer = int(bin_str, 2)array...
深度神经网络——什么是小样本学习?
引言 小样本学习是指使用极少量的训练数据来开发人工智能模型的各种算法和技术。小样本学习致力于让人工智能模型在接触相对较少的训练实例后识别和分类新数据。小样本训练与训练机器学习模型的传统方法形成鲜明对比,传统方法通常使用大量训练数据。小样本学习是 主…...
送物机器人电子方案定制
这是一款集娱乐、教育和互动于一身的高科技产品。 一、它的主要功能包括: 1. 智能对话:机器人可以进行简单的对话,回答用户的问题,提供有趣的互动体验。 2. 前进、后退、左转、右转、滑行:机器人可以通过遥控器或AP…...
chatgpt: linux 下用纯c 编写一按钮,当按钮按下在一新窗口显示本机主目录下图片子目录中的1.jpg图片
tmd,这chatgpt太强大了。 从下面的c程序与python程序对比,纯c的ui编程也不是太复杂。 再说一次,要想学好编程必须要用上这个chatgpt工具。 在 Linux 环境下使用纯 C 语言编写一个按钮,当按钮按下时,在一个新窗口中显示本机主目…...
SherlockChain:基于高级AI实现的智能合约安全分析框架
关于SherlockChain SherlockChain是一款功能强大的智能合约安全分析框架,该工具整合了Slither工具(一款针对智能合约的安全工具)的功能,并引入了高级人工智能模型,旨在辅助广大研究人员针对Solidity、Vyper和Plutus智…...
MySQL中Explain执行计划各参数的含义
EXPLAIN 语句输出的各个列的作用先大致罗列一下: 列名 描述 id 在一个大的查询语句中每个SELECT关键字都对应一个唯一的id select_type SELECT关键字对应的那个查询的类型 table 表名 partitions 匹配的分区信息 type 针对单表的访问方法 possible_keys…...
Redis队列自研组件
背景 年初的时候设计实践过一个课题:SpringBootRedis实现不重复消费的队列,并用它开发了一个年夜饭下单和制作的服务。不知道大家还有没有印象。完成这个课题后,我兴致勃勃的把它运用到了项目里面,可谁曾想,运行不久后…...
ArchLinux挑战安装(ZFS、Wayland、KDE、xero)
目录 0. 前言: 1. 先期准备 1.1 引导ArchLinx光盘。 1.2 禁用 reflector 服务 1.3 防止网卡禁用 1.4 wifi设置 1.5 测试网络是否连接 1.6 更新系统时间 1.7 更换源 1.8 下载ZFS模块 1.9 加载ZFS模块 2. 磁盘处理 2.1 查看磁盘分区 2.2 清除与整个磁盘…...
纯css写一个动态圣诞老人
效果预览 在这篇文章中,我们将学习如何使用CSS来创建一个生动的圣诞老人动画。通过CSS的魔力,我们可以让圣诞老人在网页上摇摆,仿佛在向我们招手庆祝圣诞节和新年。 实现思路 实现这个效果的关键在于CSS的keyframes动画规则以及各种CSS属性…...
百度Apollo的PublicRoadPlanner一些移植Ros2-foxy的思路(持续更新)
如今的PublicRoadPlanner就是之前耳熟能详的EM planner 计划 —— ROS2与CARLA联合仿真 结构化场景: 规划算法:EM-planner 控制算法:MPC和PID 非结构化场景: 规划算法采用Hybrid A* (1)小车模型搭建(计划参考Github上Hybrid上的黑车,比较炫酷) (2)车辆里程计: 位…...
Linux内存管理(七十三):cgroup v2 简介
版本基于: Linux-6.6 约定: 芯片架构:ARM64内存架构:UMACONFIG_ARM64_VA_BITS:39CONFIG_ARM64_PAGE_SHIFT:12CONFIG_PGTABLE_LEVELS :31. cgroup 简介 术语: cgroup:control group 的缩写,永不大写(never capitalized); 单数形式的 cgroup 用于指定整个特性,也用…...
c++习题01-ljc的暑期兼职
目录 一,题目描述 二,思路 三,伪代码 四,流程图 五,代码 一,题目描述 二,思路 1,根据题目要求需要声明4个变量:a,b,c,d ;牛奶价格a,活动要求b&…...
有哪些方法可以恢复ios15不小心删除的照片?
ios15怎么恢复删除的照片?在手机相册里意外删除了重要的照片?别担心!本文将为你介绍如何在iOS 15系统中恢复已删除的照片。无需专业知识,只需要按照以下步骤操作,你就能轻松找回宝贵的回忆。 一、从iCloud云端恢复删除…...
nacos漏洞汇总
1 nacos介绍 1.1 nacos是啥 Alibaba Nacos是阿里巴巴推出来的一个新开源项目,是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。致力于帮助发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,可以快速实现动态服务发现、服…...
React Antd ProTable 如何设置类似于Excel的筛选框
React Antd ProTable 如何设置类似于Excel的筛选框 目标:在web页面的table表格中完成类似于EXCEL的Filter筛选功能。 示例图:点击标题列上方的漏斗状图标,即可对数据进行筛选。 ProTable 前景提要 ProTable API中有说明,是有…...
句法分析概述
第1关:句法分析概述 任务描述 本关任务:通过对句法分析基本概念的学习,完成相应的选择题。 相关知识 为了完成本关任务,你需要掌握: 句法分析的基础概念; 句法分析的数据集和评测方法。 句法分析简介…...
简单了解css的基本使用
CSS 一、基础认知 1、CSS引入方式 1.1、内嵌式(CSS写在style标签中) style标签虽然可以写在页面的任意位置,但是通常约定写在head标签中 2.2、外联式(CSS写在一个单独的.css文件中) 需要通过link标签在网页中引入…...
构建网络图 (JavaScript)
前序:在工作中难免有一些千奇百怪的需求,如果你遇到构建网络图,或者学习应对未来,请看这边文章,本文以代码为主。 网络图是数据可视化中实用而有效的工具,特别适用于说明复杂系统内的关系和连接。这些图表…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...
