dポイントプレゼントキャンペーン実施中!

ある顕微鏡で取得した画像が12bitのグレースケールデータとして保存されています。このファイルのフォーマットは特殊なので専用ソフトでデータを読むことはできますが、一般の画像処理ソフトでは読むことができません。専用ソフトは機能が少ないので、一般の画像処理ソフトで読み込みたいのですが、それができず困っています。

現在、c言語でプログラムを組み、各ピクセルの数値データ(0-4095)を読むところまではできています。しかし、それを再度画像としてアウトプットすることができない状態です。Bitmap形式ではグレースケール8bitしか対応しておらず、他のフォーマットにしないとならないようなのですが、8bit以上のピクセルデータの場合、どのような画像形式で保存するのが一般的なのでしょうか?
また、c言語やc#(.net)でその形式で画像を作成する方法を解説したページなどありましたら併せて教えて下さい。

よろしくお願い致します。

A 回答 (5件)

8bitを超える画像は一般的ではありませんので、どのような画像形式も一般的でないです。


あえて言えばTIFFですね。非圧縮にできるので作成が楽だと思います。PNGは圧縮形式のみなので自力で書くのは困難です。
なお、出力できたとして、一般の画像処理ソフトで読み込めるとは限りません。普通は8bitしか対応していませんし、Photoshopなど対応しているソフトでも8bit画像のように様々な処理ができるわけではないようです。
    • good
    • 0
この回答へのお礼

どうもありがとうございます。なるほど8bit以上は一般的でないのですね。
BitmapでもC言語で書くとなかなか大変だったので、素人がpngの圧縮まで手を出すのはやめた方が良さそうです。まずは非圧縮のTIFF形式を勉強してみます。

お礼日時:2016/04/29 14:06

> 数値データを4で割って8bit bitmapにして対応しています。



12bitを4で割っても10bitになるだけですよ。


> せっかくのデータ量が減ってしまうので12bitのまま解析したいと考えています。

下位の方には、撮影時の各種ノイズが乗っています。
12bit使ったところで、8bitに比べて0.5%以下程度の差です。
そこまでシビアなのでしょうか?



PNGですが、 libpng を使うと比較的簡単にPNGファイルが作れます。
16bitにも対応しています。

ImageJというツールは、16bitグレースケールに対応しています。
データも、ちゃんとした画像以外にも、RAWデータやCSVでも取り込めます。
https://imagej.nih.gov/ij/
    • good
    • 0
この回答へのお礼

16で割らないとダメですね。
そこまでシビアかと言われる微妙ですが、せっかくの実験データの階調を落とすというのはなんとなく気持ち悪いといった感じです。
ImageJのようなソフトで解析したく、12bitの画像データを作成したいというのが動機です。
libpng、RAWやCSVについて調べてみます。

大変勉強になります。
どうもありがとうございました。

お礼日時:2016/04/30 22:31

まず、方針を決めましょう。


・12bitを縮小して8bitにする。
 これなら、Bitmap等でも対応しています。
・12を拡張して16bitにする
 PNGが16bitに対応しています。(16bitPNGに対応しているソフトが少ないのがちょっと問題ですが)
    • good
    • 0
この回答へのお礼

どうもありがとうございます。
現在、数値データを4で割って8bit bitmapにして対応しています。
ただ、せっかくのデータ量が減ってしまうので12bitのまま解析したいと考えています。
まずはpngの16bitについて調べてみます。

お礼日時:2016/04/29 13:47

ttp://www.geocities.jp/iooiau/picturefan_history.html


PictureFan の更新履歴
    • good
    • 0

12ビットグレースケールというとRAW画像フォーマットだろうか。


これは一般的な24ビットカラーの画像ソフトでは扱えません。
(Mac OS Xでは標準で表示可能です)

PhotoshopならRAW画像をそのまま扱えたと思います。
ただし、モニタが24ビットカラー表示しかできないと面倒ですよ。
    • good
    • 0
この回答へのお礼

どうもありがとうございます。
photoshopは持っているのでRAW画像フォーマットについて調べてみます。

お礼日時:2016/04/29 13:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!