Tag: 灰度

将RGB图像转换为灰度

我是编程新手。 我是一名大学生。 是否可以使用visual studio将RGB图像转换为使用C#的灰度图像? 有一个特定的文件夹,包括RGB jpeg图像,每天它也有新的jpg文件。 我需要制作一个exe文件,将它们转换为灰度。 我是否必须为此工作安装新库,或者VS2013的标准库是否足够?

将24bpp位图转换为1bpp

我试图转换一个小位图图像。 我想任何不是100%白色的像素都可以转换成黑色。 我试过了 Bitmap output = sourceImage.Clone(new Rectangle(0, 0, sourceImage.Width, sourceImage.Height), PixelFormat.Format1bppIndexed); 在1bpp输出中仍然有一些较亮的像素保持白色。 实现此转换的最快方法是什么? 我可以修改Clone()调用的强度阈值吗?

C# – 转换8位或16位灰度原始像素数据

我需要能够将8位或16位灰度像素数据转换为.NET框架可以支持的文件格式。 我可用的数据是宽度,高度,方向(左下角)和像素格式,以每像素2个字节打包的4096灰度(12位分辨率)。 因此,例如,每个像素的范围从0到4096,并且每个像素是2个字节。 我已经尝试将PixelFormat.Format16bppGrayScale与Bitmap构造函数一起使用,并抛出GDI +exception。 我读过的所有内容都说不支持这种格式,并且MSDN错误。 我想将此像素缓冲区转换为.NET位图格式(如Format32bppArgb),尽可能减少图像质量损失。 谁知道怎么样?

C#将灰度数据转换为彩色图像

我想使用C#将灰度数据转换为彩色图像。 我尝试2D并转换1D数据并显示位图,但我想显示彩色图像。

如何在C#或VB.NET中确定图像是否为灰度?

首先 首先,请注意,此问题中给出的答案对所有灰度图像都不起作用,并且还注意到在另一个问题中接受的答案根本没有解释如何确定图像是否为灰度图像,但无论如何它不符合我的需求,因为它似乎只涵盖JPEG和TIFF图像,并假设它们将具有EXIF元数据及其中的必需字段。 (我无法理解为什么人们确定我链接的第一个问题是我所链接的第二个问题的“重复”……) 最后, 这个最后接受的答案缺乏一个工作和演示的代码示例,但无论如何都无济于事,因为作者使用Bitmap.GetPixel()函数引用了缓慢且弃用的方法,但我们应该使用Bitmap.LockBits()函数而是为了获得更高的性能优势。 情景 我有一些GIF,JPG,BMP和PNG图像,我需要确定它们是灰度图像还是不是灰度图像。 对于GIF文件,我只关心分析第一帧。 我对图像的数据结构,像素颜色位和那些东西没有多少经验/意识,我只知道非常基础。 所以,如果我错过了重要的信息,我应该提供我将要测试的图像的任何信息,那么请问我,但无论如何要考虑到我想为“所有”类型的图像创建一个通用的解决方案,好吧,不是全部,但至少这些格式:BMP,JPG,GIF和PNG。 在提到的那些图像格式中,我的最高优先级是GIF图像,我将意味着如果能够确定GIF图像是否为灰度的方法不能用于分析其他类型图像的方法,那么我将接受仅涵盖GIF图像像素处理的答案。 题 我认为我的需求很明确:我如何确定图像是否为灰度? 如果它根本不清楚,为了避免我可以做到你可以浪费你的时间: 该解决方案必须至少适用于GIF图像。 (记住,我只关心GIF中的第一帧),但如果提供的解决方案对BMP,JPG和PNG也有效,那么它当然总是更好。 该解决方案必须关注PixelFormat.Format32bppRgb灰度图像。 解决方案一定不能使用Bitmap.GetPixel()函数,而必须使用Bitmap.LockBits() 。 我不是要求解释,伪代码也没有关于图像结构/格式/像素等文档的外部链接,我要求一个有效的代码示例(当然,如果作者覆盖图像结构/像素技术,总是更好提供除代码之外的基本解释)。 在C#或VB.NET中,选择并不重要。 研究 这是我到目前为止所做的。 我试图理解确定图像是否为灰度的点,我也不确定我的条件是否与bytesPerPixel变量一致,以及我的RGB值分配是否正确,因为我从一开始就说我不是图像处理专家所以我可能错过了重要的事情…… VB.NET Public Shared Function IsImageGrayScale(ByVal img As Image) As Boolean Select Case img.PixelFormat Case PixelFormat.Format16bppGrayScale Return True Case Else Dim pixelCount As Integer = (img.Width * img.Height) Dim bytesPerPixel As Integer […]

将动态BitmapImage转换为Windows Phone应用程序中的灰度BitmapImage

我想将BitmapImage转换为Grayscale BitmapImage:我从一个方法得到的因此 – 我不知道宽度和高度。 我已经尝试过查看诸如WritableBitmapEx和静态扩展方法之类的选项,但它们对我没有帮助,因为我希望返回数据类型是BitmapImage,然后我需要将它添加到List。 这在使用C#的Windows Phone应用程序中是否可行? 如果有人能对此有所了解,我将非常感激。 谢谢。

使用Aforge.Net将灰度图像转换为黑白图像

我是Aforge.Net的新手,我正在寻找一种将灰度图像转换为黑白图像的方法。 我真的找不到任何支持吗? 我设法通过应用灰度滤镜将普通图像转换为GrayScale。 但我无法找到关于黑白转换的任何信息 请有人帮我一把。

在C#中使用emguCV转换为灰度

我是EmguCV的新手。 我想将rgb图像转换为灰度图像。 对于转换,我使用了代码 Image grayImage = ColordImage.Convert(); 现在,当我在C#中编译此代码时,它没有给出任何错误,但是当我运行它时,几秒钟之后,它在这行代码中给出了exception,OpenCV不支持这种类型的转换。 现在任何人都可以帮我解决这个问题。 关心Amal