博客
关于我
c# 数字图像处理 基础
阅读量:694 次
发布时间:2019-03-16

本文共 953 字,大约阅读时间需要 3 分钟。

Bitmap类

Bitmap类是GDI+中的一个核心对象,它封装了系统中的位图资源。一个位图由像素数据和相关属性组成,允许开发者通过像素操作进行图像处理。

Bitmap类的主要方法与属性

  • GetPixel 和 SetPixel

    • 通过这些方法可以获取和设置指定像素的颜色,允许对图像进行局部修改。
  • PixelFormat属性

    • 返回图像的像素格式,决定了如何解释像素的颜色信息。
  • Palette属性

    • 如果图像是索引色彩图( Palette '), 这个属性可以返回对应的调色板信息。
  • Height和Width属性

    • 表示图像的高度和宽度。
  • LockBits 和 UnlockBits 方法

    • LockBits用于锁定位图所占用的系统内存,允许对位图像素进行批量操作。 UnlockBits则负责解锁内存以释放资源。
    • locks于指定矩形区域的位图内存,允许开发者逐行或逐列处理像素数据,提高了处理效率。

  • BitmapData类

    BitmapData类是一个与Bitmap类相关的辅助类,它提供了有关位图的详细属性信息。

    BitmapData的主要属性

  • Height和Width

    • 表示被锁定位图的高度和宽度。
  • PixelFormat

    • 指定被锁定位图的像素格式。
  • Scan0

    • 表示被锁定内存中的第一个字节的起始地址。
  • Stride

    • 也称为扫描宽度,表示每行的字节数。由于系统要求每行的字节数必须是4的倍数,Stride的值会根据图像尺寸和像素格式进行计算。

  • Graphics类

    Graphics类是GDI+中最核心的绘图对象之一。它允许开发者向画布上绘制图形、填充颜色和进行其他图形操作。

    使用Graphics对象的示例

    Graphics g = pic1.CreateGraphics();g.DrawLine(Pens.Blue, point1, point2);

    关键点总结

    • Bitmap类封装了位图资源,提供了像素级别的控制。
    • BitmapData类定义了位图的详细属性,例如高度宽度、像素格式和锁定的内存布局。
    • LockBits/UnlockBits方法允许对位图内存进行高效操作。
    • Graphics类是绘图核心,允许创建和操作绘图上下文。

    通过合理利用这些类和方法,开发者可以高效地进行图像处理和绘图操作。

    转载地址:http://lglqz.baihongyu.com/

    你可能感兴趣的文章
    OpenCV与AI深度学习 | 十分钟掌握Pytorch搭建神经网络的流程
    查看>>
    OpenCV与AI深度学习 | 基于GAN的零缺陷样本产品表面缺陷检测
    查看>>
    OpenCV与AI深度学习 | 基于OpenCV和深度学习预测年龄和性别
    查看>>
    OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch实现Faster RCNN目标检测
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch语义分割实现洪水识别(数据集 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLO11的车体部件检测与分割
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8 + BotSORT实现球员和足球检测与跟踪 (步骤 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8的停车对齐检测
    查看>>
    OpenCV与AI深度学习 | 基于机器视觉的磁瓦表面缺陷检测方案
    查看>>
    OpenCV与AI深度学习 | 基于深度学习的轮胎缺陷检测系统
    查看>>
    OpenCV与AI深度学习 | 实战 | OpenCV传统方法实现密集圆形分割与计数(详细步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实战 | OpenCV实现扫描文本矫正应用与实现详解(附源码)
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
    查看>>
    OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 实践教程|旋转目标检测模型-TensorRT 部署(C++)
    查看>>
    OpenCV与AI深度学习 | 干货 | 深度学习模型训练和部署的基本步骤
    查看>>
    OpenCV与AI深度学习 | 手把手教你用Python和OpenCV搭建一个半自动标注工具(详细步骤 + 源码)
    查看>>
    OpenCV与AI深度学习 | 深度学习检测小目标常用方法
    查看>>