画像処理をしていると、画像の輝度値をCSVファイルに保存したいという要望はよくあります。
C#で画像の輝度値にアクセスしやすいようにしたImageDataクラスを作成しました。
(Pythonで画像の輝度値をCSVファイルに保存したい場合はこちらの記事を参照ください。)
このImageDataクラスではSave()メソッドに拡張子がCSVのファイルにも対応したので、輝度値をCSVファイルに保存するには
var img = new ImagingSolution.Imaging.ImageData("Mandrill.BMP");
img.Save("Mandrill.csv");
というコード量だけで、CSVファイルに保存できます。
ちなみに、CSVファイルに保存したいだけであれば、こちらで公開しているサンプルプログラムでも輝度値をCSVファイルに保存できるので、お試しください。
例えば、マンドリルのこの画像↓をCSVファイルに保存すると、
下図のように画像の左上から画像の輝度値がカンマ区切りで保存されます。
このCSVファイルをエクセルで表示すると、
エクセルにはセルの値に連動してセルの色を変える条件付き書式というのがあるのですが、この機能を使うとセルに画像を表示することができます。(ただし、モノクロ画像のみ)
やり方は、条件付き書式→カラースケール→その他のルールと選択します。
すると、最小値の種類の部分を数値にして値を0、色を黒
同様に、最大値の種類の部分を数値にして値を255、色を白に設定します。
すると、エクセル上に、こんな感じ↓で画像が表示されます。
コメント
[…] 3/19 【ImageDataクラス】画像の輝度値のCSVファイル保存 […]