C#读取灰度图

问题描述

png格式的灰度图,是8位格式的。为什么在C#中用指针读取(PixelFormat)的时候会显示为32位的?

解决方案

解决方案二:
你用PixelFormat读到多少就是多少,这是后续计算的依据当然这也和你LockBits时指定的格式有关
解决方案三:
可是我看图片属性的时候确实是八位,BitmapDatabmpData=CurBitmap.LockBits(rect,ImageLockMode.ReadOnly,CurBitmap.PixelFormat);这个是LockBits指定的格式
解决方案四:
灰度图的话,应该是PixelFormat.Alpha
解决方案五:
用ulteaedit等工具实际看下,是什么格式的。

时间: 2024-08-23 04:05:30

C#读取灰度图的相关文章

图像处理-用C语言将bmp 8位灰度图的灰度值缩小16倍,调色板中数值由255行变成16行调

问题描述 用C语言将bmp 8位灰度图的灰度值缩小16倍,调色板中数值由255行变成16行调 用C语言将bmp 8位灰度图的灰度值缩小16倍,由0-255变成0-16,调色板中数值由255行变成16行,同时调色板rgbBlue rgbRed rgbGreen数值范围由0-255变成0-1.我用c语言实现后,为什么图片不再是灰度图,有了其他颜色??? ```#pragma once #ifndef BMP_H_INCLUDED #define BMP_H_INCLUDED #include #in

Android提高之使用NDK把彩图转换灰度图的方法_Android

一般而言在Android上使用JAVA实现彩图转换为灰度图,与J2ME上的实现方法类似,不过遇到频繁地转换或者是大图转换时,就必须使用NDK来提高速度了.本文主要通过JAVA和NDK这两种方式来分别实现彩图转换为灰度图,并给出速度的对比,供大家参考. 先来简单地介绍一下Android的NDK使用步骤: 以NDK r4为例,或许以后新版的NDK的使用方法略有不同. 1.下载支持C++的android-ndk-r4-crystax,支持C++的话可玩性更强. 2.下载cygwin,选择ftp://m

Android提高之使用NDK把彩图转换灰度图的方法

一般而言在Android上使用JAVA实现彩图转换为灰度图,与J2ME上的实现方法类似,不过遇到频繁地转换或者是大图转换时,就必须使用NDK来提高速度了.本文主要通过JAVA和NDK这两种方式来分别实现彩图转换为灰度图,并给出速度的对比,供大家参考. 先来简单地介绍一下Android的NDK使用步骤: 以NDK r4为例,或许以后新版的NDK的使用方法略有不同. 1.下载支持C++的android-ndk-r4-crystax,支持C++的话可玩性更强. 2.下载cygwin,选择ftp://m

指针-opencv学习灰度图锐化的两个函数的差别不理解

问题描述 opencv学习灰度图锐化的两个函数的差别不理解 下面是一个灰度图锐化的函数,我有两种方式实现,方式1,和方式2,居然得到的结果不一样,图片数据也不一样,请高手看一下,可能是C语言的知识掌握的不好. void my_sharpen(const cv::Mat &image, cv::Mat &result) { result.create (image.size(), image.type ()); for(int j=1; j<image.rows-1; j++) { u

图片-matlab中灰度图转彩色图的问题

问题描述 matlab中灰度图转彩色图的问题 我将两张彩色图片通过rgd2gray转化成灰度图后,通过算法融合两张图片,如何在转回彩色图,就大神解答 解决方案 彩色图转灰度图彩色图转灰度图彩色图转灰度图的原理和注意事项

img-平均值法求图像灰度图 运行够调试错误

问题描述 平均值法求图像灰度图 运行够调试错误 double *original_gray(double *R_original_img, double *G_original_img, double *B_original_img) { unsigned long height = 0; unsigned long width = 0; height = srcBI.biHeight; width = srcBI.biWidth; unsigned long h_B = 0; unsigned

vc++-怎么建立一个与原图大小相同的25色灰度图或怎么定义newdib

问题描述 怎么建立一个与原图大小相同的25色灰度图或怎么定义newdib 解决方案 http://wenku.baidu.com/link?url=Wzboi69LR2Qhx-OzcRHSIEvcMqxqri4QztXVp-KuMcb3Lm5_6O_8k1oXcu0tDHX_9fdyZPFrw8pLfSh5RuQXFy8-bnzw8GS3HBGT09kYFba 解决方案二: 这个建议你去做一个 bmp图的表格 分析图片的结构

图像处理-要将一张512*512的图片转换为灰度图出了问题

问题描述 要将一张512*512的图片转换为灰度图出了问题 代码如下 private void memory_Click(object sender, EventArgs e) { if (curBitmap != null) { Rectangle rect = new Rectangle(0, 0, curBitmap.Width, curBitmap.Height); System.Drawing.Imaging.BitmapData bmpData = curBitmap.LockBit

qt-Qt QImage 怎样把16位的灰度图数据拷贝到内存中

问题描述 Qt QImage 怎样把16位的灰度图数据拷贝到内存中 Qt QImage 怎样把16位的灰度图数据拷贝到内存中.请知道的大神说一下吧,谢谢啦