Release_note_ver1.4
サンプルプログラムwinnリリースノートver.1.4
大島正毅
初版 1999.10.13
最終改訂日2001.10.29
winnは画像処理の初心者がなるべく早くプログラムできるようにするためのサ
ンプルプログラムです。使いたい人は誰でも自由に使って下さい。
このサンプルプログラムのあり場所は私のホームページ
(http://carrot.isl.tosho-u.ac.jp/)の教育活動のページです。
(学内の人への情報)
同じ内容をzeus:~oshima/EX/REIDAI/winnにも置いています。
ラスターファイルのサンプルがzeus:~oshima/Video_dataにあります。
(研究室内の人への情報)
同じ内容をtitan:~oshima/EX/REIDAI/winnにも置いています。
ラスターファイルのサンプルがtitan:~oshima/Video_dataにあります。
改訂があるときホームページに出るまで多少の遅れがありますから、更新時は
こちらの方が数日早い場合があります。
(ここまでのメッセージは、新しくユーザになった人向けです)。
2001.10.29
Makefile_titanについて、最近ダウンロードしてmakeしてみたらうまく動かな
い(無限ループとなる?)現象がありcc→gccで直りましたので、このように
改訂しました。インストールの仕方(winn版)を加えました。
2001.06.14 ver1.4
・Windowが他のWindowに隠された場合、それが終わっても画像は壊されたまま
となっていて、操作性を損なっていましたがイベント処理を加えることにより
正しく処理するようにしました。この処理をサンプルプログラムwinn.cに加え
たことにより、簡潔さが少し減っています。従来put_imageというルーチン
で表示していましたが、そのためのimageデータを作る部分をmk_imageとして
分離しました。今回はwinn.cだけの変更としますが、今後他のサンプルプログ
ラムも同様の対応を行う予定です。
・winn-m.cをベースに閾値プログラムを作る場合、入力画像のダイナミックレ
ンジが低い場合は、2値化桔果を表そうとしてもその最大値までしか表示でき
ませんでした(color mapに255等に相当する値が存在しないため)。このため
一律の0-255をcolor mapに入れるためのルーチンmono_cmpを作りました。この
使い方はwinn-th.cなるサンプルプログラムで提供しました。
・Makefile_ioに代えてMakefile_zeusを提供します。
・変更のあったものは、visio.c、visio.h、winn.c、新規はwinn-th.c、
Makefile_zeusです。
2001.01.26
Makefile_unixserverを改訂し、Makefile_eduを追加しました。
2001.01.09
カラーデータを読み取ってこれをモノクロデータに直して表示するサンプル
プログラムをwinn-cmとして提供しました(新保雅俊氏作)。非ダイレクト形
式8ビットカラーデータを(前言を翻して)サポートしました。
2000.10.11
下記の変更を行い、8ビットカラーへの対応を明確化しました。winn-acで8ビ
ットカラーデータに対してサポートしない旨のメッセージを出して終了するよ
うにしました。全般に、8ビットカラーはあまり推奨できません。また処理の
対象とする場合、画素値から、カラーマップにアクセスしてrgb値を得ること
はできますが、面倒な割にメリットが感じられないため、特別の要望がない限
りサポートしないことにします。
2000.09.12
要請(カラーデータをモノクロ表示したい)により、mk_nrmcmp
を改造しました。従来はディスクから読んだrasterfileのカラーマップ情報
(r,g,bが分れて入っている)からXcolorを作っていて、読み込みとXcolor
の作成が入り交じっていました。これを分離し、mo_cmpを新設しました。これ
を単独で呼ぶことにより要請に応えられるようにしました。
2000.09.04
提供形態の改良: 今まで、webページから実際にダウンして試しはしていま
せんでしたが、やってみると問題が多いことが分ったので対処しました。
参考までに内容は:ソースの行が長く、入力時に折り返しが発生するとトラブル
が多い(特に変数が分断するとき)、不等号がHTTPのタグと誤認される。
2000.09.01
トラブルシューティングを追加しました。
2000.08.31 ver1.3.1
Sun rasterfileで1ビットデータ(例~/Video_data/gazou/clock0.ras)に
アクセスできるようにしました。24ビット等と同じ形式でルーチンを呼べば何も
意識しなくても使えるように関係ルーチンに対応部分を加えました(ソースプ
ログラムは見づらくなっていますが)。対応のため、set_cmap等に引数rasinを
加えました。
2000.08.23
インストールの仕方を加えました。
2000.08.10
Sun rasterfileで32ビットダイレクトカラー形式のデータにアクセスできるよ
うにしました。ピクセル当たりのバイト数をrasin->pix_span、無視する先頭バイ
ト数(24ビットでは0、32ビットでは1)をrasin->pix_offset、r,g,bの相対位
置をrasin->r_offset, rasin->g_offset, rasin->b_offsetとして、
get_headerでセットの上、ほかの所でもこれを使うことにしました。f_xycマクロ
もこれを用いるようにしました。構造体rasin(visio.hで定義)に関連するパ
ラメータを増やしました。winn-ac.c関連の関数では引数rasinが増えました。
2000.08.10 ver1.3
XWindowのカラーマップの設定関係を改善し、計算機によっては正しく出なかっ
た階調が出るようになりました。関連して、ウインドウの設定、カラーマップ
の設定に関し、win_set、set_cmapの順で呼ぶこととしていましたが、順序を
変えました。call時のパラメータも変わりました。put_imageの最後の引数
(bwrev)を廃止しました。winn.c,winn-m.c,winn-c.c,winn-ac.c, loopwin.c
等で呼び出し方を一斉に変えています。前回改訂時(ver1.2.3)枝番一つだけ
版番号を変えましたが、コーディング量は少なかったものの外部仕様は増えた
ので、2番目の番号を変えるべきでした。この段階で版番号の一つ上の桁を変
えます。
2000.07.06 ver1.2.3
visio.cを改訂。ディスクに画像データを書き込むwrt_image関数をサポートし
ました。そのテスト用サンプルプログラムwrtds.cを作りました。visio.hも改
訂しました。画像入力用構造体rasinでカラーマップ関係の部分を改訂しました。
visio.c内部の一部のルーチンしかこの情報を使っていないので、影響は少な
いです。
visio.cとvisio.hは同じ版のものを使う必要があります。
2000.07.03
visio.cを改訂。パソコン系ではワード内のバイト順が逆転する場合があり
raster.ras_magicで判定できます。従来、これに対してサポートしていません
でしたがサポートするようにしました。visio.c, visio.hを更新
2000.03.07
winn概要を一部修正(データのあり場所)。同じ主旨でこのリリースノートも
書き換え。
2000.01.05
各ソースプログラムは、表示形式のみ改訂(インデントなし→インデントあり)
しました。
1999.11.22 ver1.2.1
カラーデータのタイプras_type 3(標準とrgbの並び順が逆)をサポート対象
に加えました。このため、visio.c、visio.h、winn.c、winn-c.c、winn-ac.c
を微修正しました。data_to_dispの引数にrasinが加わりました。2次元アク
セスマクロ、f_xycはras_type 3の場合これに変えてf_xycrを使います。
1999.11.12 ver1.2
カラー画像をディザ処理で表示するための関数dith_dataを作りました。これ
を含む版をver1.2とします。従来のカラー処理サンプルwinn-cのほかに
winn-ac(acはadvanced colorのつもり)を作りました。これはwinn-cをそのま
まに、dith_dataを呼ぶ部分を加えたものです。ヒストグラムの平坦化により
カラー表示を改善する意図でhomo_histなる関数を作りましたが、形式的には
動いています(ものすごく時間が掛かる)が、未完成品です。新規関数は
visio.cに含まれています。
次のマイナーな変更があります:
put_imageの引数にbwrevを入れた。data_to_dispの引数にpixsを加えた。
f_xyc(2次元類似アクセスマクロ)にf_xyc(x, y, i)の形式(iは0-2)を追
加f_xyc2と名付ける。また、f_xycにバグがあったのを取りました。各関数ご
とに変更日を入れるようにしました。
1999.10.26 ver1.1.1
put_imageにint grayなる引き数を加えました。モノクロデータのとき間接参照を不
要にしてput_imageの高速化をはかるためです。
カラー画像で圧縮されたデータになっているもの(raster.ras_type=2 byte_encoded)
を読めるようにしました。このためdecode_vdataという関数がvisio.cに加わりました。
ver1.1.1で実質変更されたのはvisio.c, visio.hだけです。
1999.10.13 ver 1.1
各ソースプログラムにはリリース日を付けるようにしたので、バグレポート等の
ときはいつの版か教えて下さい。
1999.10.13位にリリースした版ではloopwin.cという名前で、時系列データ等に繰り
返してアクセスするサンプルが加わっています。winn-m.c、winn-c.cという名前の、
モノクロデータおよびカラーデータに特化して、各点のデータを処理するサンプルが
加わりました。またバグも修正されています。以前にリリースされた版で問題がなけ
れば、そのまま使っても構いませんが、なるべく新しい版をお使い下さい。
古い版(〜1999.10.08位)と現在版では関数の呼び方が変わっているものがあ
るので混在させて使うと問題があります。
----------
makeするときメッセージが沢山出るかも知れませんが、警告だけであれば実害はあ
りません。
不具合があるときは面倒を見ますので申し出て下さい。また要望があればなるべく
応じるようにしたいと思います。連絡先 oshima@ipc.tosho-u.ac.jp
大島正毅
戻る
Home > プログラム公開のページ > 画像処理サンプルプログラムwinn > リリースノート