0

ピクセルあたり 24 ビット (Rgb) int ピクセルあたり 8 ビットの tiff 画像を変換したい 変換するコードはありますか 共有するか、c シャープのアルゴを教えてください

4

3 に答える 3

1

RGB画像をどのようにグレースケール画像に変えるのですか?単純な知覚ベースの方法は、それをYIQ色空間に変換し、彩度情報を破棄することです。次の式で輝度部分を生成できます。

 l = (0.299*r) + (0.583*g) + (0.114*b)
于 2010-01-05T09:23:57.453 に答える
1

C# コードを使用した優れたチュートリアルを次に示します。

http://www.switchonthecode.com/tutorials/csharp-tutorial-convert-a-color-image-to-grayscale

免責事項: 私は Atalasoft で働いています。

商用ソリューションに興味がある場合は、DotImageでこれを行うことができます。単一のフレーム化された tiff を変換するコードは次のとおりです。

AtalaImage img = new AtalaImage("file.tif");
img = img.GetChangedPixelFormat(PixelFormat.Pixel8bppGrayscale);
img.Save("gray.tif", new TiffEncoder(), null);

複数ページの TIFF がある場合は、それらをループするだけです。

于 2010-01-06T02:41:30.843 に答える
1

24 ビットのカラー画像から 8 ビットのカラー画像に変換したいということであれば、ディザリング アルゴリズムを調べる必要があります。

非常に単純なディザリング アルゴリズムについては、次のページで説明されています

その後、Floyd-Steinberg ディザリング アルゴリズムを試してみてください。 http://en.wikipedia.org/wiki/Floyd%E2%80%93Steinberg_dithering

于 2010-01-06T03:05:48.493 に答える