C言語関係掲示板

過去ログ

No.940 デジカメで撮影した画像から地形の情報を得る

[戻る] [ホームページ]
No.11955

至急、教えて下さい。。
投稿者---モリ(2004/01/19 23:34:58)


デジカメで撮影した島を、パソコンに取り込みphoto shopで二値化しました。ここからビット数をカウントして島の面積や周囲長を知りたいのです。これを求めるプログラムを教えて下さい。。


No.11956

Re:至急、教えて下さい。。
投稿者---おでん(2004/01/20 00:57:13)


>デジカメで撮影した島を、パソコンに取り込みphoto shopで二値化しました。ここからビット数をカウントして島の面積や周囲長を知りたいのです。これを求めるプログラムを教えて下さい。。

ビットマップなら・・・ですが、以下のページが参考になります。
http://www.geocities.co.jp/SiliconValley-Cupertino/1843/bmp.html

No.11965

Re:至急、教えて下さい。。
投稿者---namani(2004/01/20 10:19:03)


まず、環境がよくわかりませんので環境をお願いします。
Macでとかだとちょっと・・・(−−;

ウィンドウズだと仮定して書きます。

2値化してどの形式で保存したのかで、データの入力処理が変わりますね。
(1bitのBitmap形式だったり、24bitのBitmap形式だったり、1bitのTiffだったり・・・意外とJPEGにしちゃってたり)

仮に1ビットのビットマップで保存しているのなら、
ヘッダから必要な情報(横幅、縦幅、画像部分のサイズ、画像部分のデータ、カラーパレット情報)を読んで処理をしましょう。
表示するわけでなければBITMAPINFOなどの構造体はいらないですね。
↓ビットマップのファイル構造はこんな感じです。
http://homepage1.nifty.com/snap/room03/c02/cg/cg02_02.html

島の面積が、たとえば黒の部分のビット数を数えるだけで求められる画像ならば、
純粋に1バイトずつANDをとって見ていくだけでいいですね。

周囲の長さは、輪郭を追跡していかないと無理かな?
↓にやり方は書いてありますので・・・プログラムは考えてみてください。
http://tsugu.no-ip.com:8080/sotuken/ronbun/sec3-2.html#0014