ビットマップの画像処理について自由度を得る最適方法
以下、長文かつ具体性に欠ける質問で済みません。画像処理についてやりたいことは決まっているのですが、やり方がわからなくて長年困っています。
【やりたいこと】:ビットマップ形式による写真画像があります。その画像上に例えば、何らかのデータに基づいて線を引いたり、写真画像を数値化して計測したり、自由に加工したりするものです。そのためにはビットマップファイルを自由に操作出来なければなりません。
【これまでにやったこと】
○Windows VC++ 6.0, Borland C++, Visual Basicなどの勉強
WindowsAPIなど。
○既成ソフトでの操作(Adobe系,ImageMagik,など)
○科学技術系ソフト(Matlab, Octaveなど)
どれも何となくイメージと違うのです。画像ファイルというのはバイナリで、ヘッダ部とデータがあり、(500×500)などの2次元ラスターファイルに過ぎないと私は考えています(色もあるのでさらにそれが何枚かあるのかも知れませんが、基本構造は同じ?)。WindowsAPIなど勉強していると難しいクラスの説明ばかりですが、もっと簡単に処理できるだろうと思っています。画像処理ソフトでは、感覚に頼って見た目に応じてマウスで処理するので正確ではありません。どうしても数値のデータとして処理したいのです。
テキストとして取り出されたビットマップファイル(500×500)の処理はループを回してアレコレ処理すればよい(自由度無限大、だからいろいろあって難しいが)わけですね。要するにビットマップファイルを数値データとして自由に読み書きできるスキルを最も最速で習得するにはどうしたらよいかということなのです。
前提となる画像フォーマットはWindows Bitmapです。そうでないものはペイントショップなどで(質はともかく)変換できるので、その問題はクリアしています。
やはり、WindowsAPIの勉強が不可欠なのでしょうか。
プログラムのスキルとしてはFortranによる科学技術計算プログラムを10年以上作成しています。Fortran95ぐらいだったらポインタなどもあるようなのでビットマップのエディットはひょっとしたら簡単なのかも知れませんが。
以上、長文で失礼します。よろしくお願いします。
お礼
ありがとうございます。 まさか、回答してくださる人がいるなんて!! 感謝です。