長尾智晴著:「C言語による画像処理プログラミング入門」 (昭晃堂)

掲載プログラム・掲載画像


★ご利用上の注意★


第1章 画像の取り扱い

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
1 サンプル
プログラム
1 copyimage.c 画像のコピー 6
22 brighten.c 画像を明るくする 7
33 leftright.c 画像の左右反転 8
4 演習問題 1 rotate.c 画像を90度回転 9
52 reverse.c 画像の階調を反転 10
63 double.c 画像を縦横2倍にする 11
74 connect.c 画像を連結する 12
8 応用問題 1 average.c 平均画像を作る 13
9 2 average2.c 平均画像を作る(その2) 14
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

各自でSIDBAの画像(Lenna,Barbara など)をご用意の上,フリーソフトなどでバイナリ形式の pgm フォーマットの画像に変換して lenna.pgm,barbara.pgm などをご用意下さい.

第1章の練習問題の解答

 1-1) 1024×1024=1048576 バイト=1024 キロバイト=1 メガバイト.
 1-2) 1024×1024×3=3145728 バイト=3072 キロバイト=3 メガバイト.
 1-3) 0 から 255 まで.2進数では 00000000 から 11111111 まで.
 1-4) 必要な記憶領域=MAX_IMAGESIZE×MAX_IMAGESIZE×MAX_NUM_OF_IMAGESバイト.
   図1.4の例では,1280×1280×5=8192000バイト=8000キロバイト=約8メガバイト.

第2章 階調補正

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
10 サンプル
プログラム
1 histogram.c 濃度ヒストグラム 22
112 trans0.c 階調補正(ひな型) 24
12 演習問題 1 linear.c ヒストグラムの線形変換 26
132 brightness.c 明度の調整 27
143 contrast.c コントラストの調整 29
154 gamma.c ガンマ(γ)補正 30
16 応用問題 1 linear2.c 線形変換(改良型) 31
17 2 trans1.c 曲線による階調補正 32
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
18, 20 図2.2(a)
図2.5(a)
house.pgm house.jpg
26 図2.11(a) fall.pgm fall.jpg
31 図2.16(a) temple.pgm temple.jpg

第2章の練習問題の解答

 2-1) 濃度ヒストグラムを求めた元の画像に含まれる画素の総数.
 2-2) 最初のはブライトネスの調整(図2.7(a)),2番目のはコントラストの調整(図2.7(b))に相当.
 2-3) ある f に対して一意に1つだけの g の値が決まる.すなわち f=K(定数)の直線との交点が1点.
 2-4) 階調が反転される(ネガ・ポジ反転).


第3章 2値化処理

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
18 サンプル
プログラム
1 binarization.c 2値化 39
192 dither1.c ディザ法(Bayer型) 40
202 e_dif.c 誤差拡散法(誤差分散法) 42
21 演習問題 1 decrease.c 階調数削減処理 44
222 dotpattern.c ドットパターン表示 45
233 dither2.c ディザ法(網点) 46
24 dither3.c ディザ法(渦巻) 46
254 e_dif2.c 誤差拡散法(その2) 47
26 応用問題 1 binarization2.c 谷点検出による2値化 48
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
48 図3.17(a) textdata.pgm textdata.jpg

第3章の練習問題の解答

 3-1) 2値化のしきい値を0から255まで移動してそれぞれの場合の黒画素と白画素の数を調べ,等しくなるか,差が最も小さいしきい値を求めれば良い(ヒストグラムの分布を縦線で分けたとき,左側と右側の面積が同じになるような縦線を求めることに相当する).
 3-2) 横方向・縦方向ともに3倍になり,256×3=768 なので 768×768画素になる.
 3-3) 例えばしきい値=100で2値化すると,左上が黒画素,右下が白画素となって明確な境界線(斜め線)が生じる.これに対してディザ法ではそのような明確な境界線が生じない.
 3-4) 例えば図3.14の例のように,分配先の近傍画素と誤差の配分率を決めれば良い.


第4章 空間フィルタリング

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
27 サンプル
プログラム
1 laplacian.c 8近傍ラプラシアン 58
282 forsen.c Forsenフィルタ 60
29 演習問題 1 sobel_h.c Sobelフィルタ(水平) 61
302 diffvalue.c 微分値の大きさ 61
313 range.c レンジフィルタ 62
32 smooth.c 線形平滑化フィルタ 62
334 expattern.c パターン抽出フィルタ 62
34 応用問題 1 median.c メディアンフィルタ 63
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
55 図4.5(a) char-noise.pgm char-noise.jpg
55 図4.6(a) kanji-noise.pgm kanji-noise.jpg
56 図4.8(a) edge.pgm edge.jpg
62 図4.12(a) pattern.pgm pattern.jpg

第4章の練習問題の解答

 4-1) 計算結果が最小になるのは注目画素の階調値が255,4近傍の画素の階調値が全て0のときで,255×(-4)=-1020となる.一方,最大になるのは注目画素の階調値が0,4近傍の画素の階調値が全て255のときで,255×4=1020となる.よって,範囲は[-1020, 1020].
 4-2) 近傍が3×3画素の場合,画像の周囲1画素については近傍が画像の外にはみ出してしまうという問題が生じる.同様に,近傍が5×5画素や7×7画素などの場合も画像の周囲については近傍が画像の外にはみ出す.
 4-3) ゴマ塩状ノイズの場合は,ノイズ画素の階調値が近傍の中央値になる確率が低いため.


第5章 周波数フィルタリング

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
35 サンプル
プログラム
1 sinwave1.c 正弦波の付加 70
362 freq_filter1.c フィルタリング(ひな型) 72
37 演習問題 1 sinwave2a.c 正弦波の付加1 75
38 sinwave2b.c 正弦波の付加2 75
39 sinwave2c.c 正弦波の付加3 75
402 sinwave3.c 2つの正弦波の和 75
413 sinwave4.c 原画像への正弦波の付加 75
424 freq_filter2.c 低域通過フィルタリング 76
435 freq_filter3.c 特定の周波数の付加 77
44 応用問題 1 savefreq.c 振幅スペクトルの保存 77
- - - pgmlib.h 階調画像用ライブラリ 付録B
- - - fft.h フーリエ変換のライプラリ 付録C

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
69 図5.7(a) a.pgm a.jpg
78 図5.16(a) 64x64.pgm 64x64.jpg

第5章の練習問題の解答

 5-1) (a)は Nx=256, Ny=0, (b)は Nx=128, Ny=128, (c)は Nx=64, Ny=128.


第6章 画像の圧縮符号化

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
45 サンプル
プログラム
1 runlength.c ランレングス符号長計算 86
462 vq.c ベクトル量子化(VQ)法 88
47 演習問題 1 calcrunlength.c ランレングス符号化法 92
482 vq2.c VQ法(データ量計算) 93
493 vqcode.c VQ法(符号化) 93
504 vqdecode.c VQ法(復号) 95
51 応用問題1 fftcode.c FFTによるデータ圧縮 95
- - - pgmlib.h 階調画像用ライブラリ 付録B
- - - fft.h フーリエ変換のライプラリ 付録C

画像

 なし

第6章の練習問題の解答

 6-1) 1000×1000画素,256階調(1バイト)の階調画像のデータ量は,1000000バイト.これを10000バイトに圧縮した場合のデータ圧縮率は,10000/1000000=0.01=1[%].
 6-2 移動物体が回転したり,加速したりする場合,分裂したり,ものの陰に入って消滅したりする場合,あるいは新たな移動物体が出現するような場合などは動きを正確に予測することが困難であるため,予測結果と真の次フレームとの誤差が大きくなる.
 6-3 例えば,4-->011(3ビット),8-->10111(5ビット), 16-->1101111(7ビット), 32-->111011111(9ビット)など.
 6-4 ランレングスの出現確率に応じて区切り符号を割り当てる方法(ハフマン符合化法など)が有効である.それらの方式では,出現確率が高いランレングスほど短い区切り符号を割り振ることで全体の符号長を短くする.
 6-5 実際に試して確認してみると良い.なお,どの程度の画質を“充分”とみなすかは画像や目的によって異なり,単純な誤差以外の画質の定量的な評価は難しい問題である.
 6-6 ルックアップテーブルを無視すれば,4×4画素のブロック(画像)64枚分のデータによって代表ベクトルの情報を記録することができる.すなわち,1×4×4×64=1024バイト=1キロバイトとなる.原画像のデータ量は1×512×512=262144バイト=256キロバイトであるから,データ圧縮率は1/256=0.0039…となる.

第7章 電子透かし

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
52 サンプル
プログラム
1 dotpattern-w.c ドットパターン法(符号化) 101
532 bitplane-w.c ビットプレーン法(符号化) 104
54 演習問題 1 dotpattern-r.c ドットパターン法(復号) 107
552 bitplane-r.c ビットプレーン法(復号) 107
563 bitplane-w2.c ビットプレーン法(符号化2) 108
574 bitplane-r2.c ビットプレーン法(復号2) 109
58 応用問題 1 dotpattern-w2.c ドットパターン法(符号化2) 109
58 2 bitplane-w3.c ビットプレーン法(符号化3) 110
58 bitplane-r3.c ビットプレーン法(復号3) 110
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
106
110
図7.7(b)
図7.10(b)
flower.pgm flower.jpg

第7章の練習問題の解答

 7-1) ドットパターンの特定の階調の画素が原画像になければデータを埋め込むことができない.例えば全体が一定階調の画像などにも,当然ながら埋め込むことができない.
 7-2) MSB(most significant bit)が変更されると階調値が大きく変化してしまうため,埋め込まれる画像が大きく変化してしまい,不自然な埋め込み画像になる.
 7-3) ヒストグラムの曲線がギザギザになる(実際に試して確認して欲しい).
 7-4) 座標と階調値に応じて埋め込むべきプレーンと座標を選ぶ方法を工夫し,ビットプレーンごとに分解された場合でも画像として認識しづらくなるようにすれば良い.具体的には,ヒントにあるような別の情報(乱数表や鍵になる情報)を用意し,受信者にあらかじめ渡しておくなどの方法が考えられる.走査方法をラスタ走査ではなくヒルベルトスキャン(ジグザグの平面充填曲線の例)にすることなども考えられる.


第8章 2値画像処理

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
61 サンプル
プログラム
1 boundary.c 輪郭線追跡 117
622 dilatation.c 膨張処理 120
633 labeling.c ラベリング 122
64 演習問題 1 load_boundary.c 輪郭線データの読み込み 124
652 closing.c closing処理 125
663 areafilter.c 面積による図形の抽出 126
674 shapefilter.c 縦横比による図形の抽出 126
68 応用問題 1 curve1.c 曲線の偏角差分関数 127
69 2 curve2.c 曲線の折れ線近似 128
- - - pgmlib.h 階調画像用ライブラリ 付録B
- - - labeling.h ラベリングのライブラリ 付録D

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
114 図8.2(b) ABC.pgm ABC.jpg
114 図8.2(c) ABC2.pgm ABC2.jpg
116 図8.5(a) figure.pgm figure.jpg
119 図8.8(a) binary.pgm binary.jpg
121 図8.8(a)
(再出)
char-noise.pgm char-noise.jpg
124 図8.10(a) a-i-u.pgm a-i-u.jpg
125 図8.12(a) figures.pgm figures.jpg
126 図8.13(a) chars.pgm chars.jpg
127 図8.14(a) label.pgm label.jpg
128 図8.15(a) shape1.pgm shape1.jpg
128 図8.15(b) shape2.pgm shape2.jpg

第8章の練習問題の解答

 8-1) 0個:孤立点,1個:端点,1〜7個:境界点,8個:内部点.なお,境界点をさらに端点・交差点などに分類することも可能である.
 8-2) 長方形の場合はピークが4つ,円の場合はピークがなく一定値となる.
 8-3) 外接四角形の横幅をw,縦幅をhとしたとき,w と h がほぼ等しく,面積が π×(w/2)×(w/2)に近いかどうかで粗く調べることができる.すなわち,図形の面積を S とするとき,S をこの値で割って 1 に近いかどうかを調べる.なお,この条件は必要条件ではあるが十分条件ではない.真円度をさらに正確に求めるためには,図形の中心点から各方向に伸ばした直線上の図形の長さ(みなし半径)が一定値に近いことを調べる必要がある.
 8-4) まずアスキー形式ではなくバイナリ形式で保存することでデータ量を削減できる.さらに,フリーマンのチェーンコード列に対して第6章で扱ったランレングス符号化と同様な考え方で符号化を行うことなどが考えられる(ただし,同一のコードが続かない場合はデータ圧縮効率が良くなる保証はない).
 8-5) 図形が白画素の場合の膨張処理.あるいは図形が黒画素の場合の収縮処理になる.


第9章 立体・3次元環境認識

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
70 サンプル
プログラム
1 region_growing.c 領域成長法 134
712 extract_marker.c 特定図形の抽出 136
723 stereo.c ステレオマッチング 139
73 演習問題 1 extract_region.c 立体領域の抽出 143
742 merge_figure.c 仮想物体の合成表示 143
753 stereo2.c 距離画像の生成 145
68 応用問題 1 stereo3.c ブロック単位の距離計測 145
- - - pgmlib.h 階調画像用ライブラリ 付録B
- - - labeling.h ラベリングのライブラリ 付録D

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
136 図9.7(c) green.pgm green.jpg
139
144
図9.8(a)
図9.11(a)
desk1.pgm desk1.jpg
139
144
図9.8(d)
図9.11(b)
desk2.pgm desk2.jpg
142
145
図9.9(a)
図9.14(a)
left.pgm left.jpg
142
145
図9.9(b)
図9.14(b)
right.pgm right.jpg
143 図9.10(a) box.pgm box.jpg
144 図9.11(c) penguin.pgm penguin.jpg
146 図9.15 desk3.pgm desk3.jpg

第9章の練習問題の解答

 9-1) カメラで物体を撮影するときの角度が未知の場合でも対応できるようにするためには,物体を様々な角度から撮影したときの多数の画像を用意しておかなければならない点が欠点である.また,見る角度によって“見え”が大きく変わる物体の認識は一般的に困難である.
 9-2) 領域の境界が不明瞭なために,領域成長をどの段階で停止すれば良いかを明確に決めることができないことに注意する必要がある.
 9-3) 詳細は省略するが,ワールド座標系の原点(0,0,0)とPL(xL,yL,f)の2点を通る直線と,(d,0,f)とPR(d+xR,yR,f)の2点を通る直線の交点が計測点(xp,yp,zp)になることから導出することができる.
 9-4) 一方の画像中で見えている点が他方の画像中にはないため対応点を決定することができない点.
 9-5) 領域中に模様などによる階調変化やエッジ成分があると,領域成長がそこで止まってしまい,領域全体まで広げることができなくなるので領域成長法はあまり有効ではない.そのような場合は模様の周期性や周波数特性を利用して領域を分割する“テクスチャ解析”と呼ばれる手法が有効である.
 9-6) ステレオカメラで撮影した物体の正確な奥行き情報を得ることができれば,その物体が何であるかの認識を行ったり,物体領域を切り分けたりする際に役立つ.例えばステレオカメラによる監視カメラを用いれば,画像中の人物の切り出しなども単眼のカメラの場合よりはるかに容易になる.


第10章 動画像処理

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
77 サンプル
プログラム
1 rw_serial.h 連続ファイル用ヘッダ 152
782 make_bgd.c 背景画像の作成 153
793 get_vector.c 動きベクトルの決定 155
80 演習問題 1 extract_motion1.c 差分画像の生成 158
812 extract_motion2.c closing で移動領域抽出 159
823 extract_motion3.c 移動領域の連続抽出 160
83 応用問題 1 get_vector2.c 速度で移動領域抽出 161
- - - pgmlib.h 階調画像用ライブラリ 付録B

動画像(静止画像列)

※ 個人情報保護の観点から人物の顔が明確に写っていない部分を利用しています.
No. フォルダ名 内容
pgm 形式 jpg 形式
1 motion01(pgm)
(フォルダへ)
motion01(jpg)
(フォルダへ)
動画像データ1(500枚)
2 motion02(pgm)
(フォルダへ)
motion02(jpg)
(フォルダへ)
動画像データ2(300枚)

静止画像(上の動画像中の画像)

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
158 図10.6(a)
(motion01の
01_00129.pgm)
f1.pgm f1.jpg
158 図10.6(b)
(motion01の
01_00130.pgm)
f2.pgm f2.jpg
- motion01の
01_00131.pgm
f3.pgm f3.jpg
- motion01の
01_00132.pgm
f4.pgm f4.jpg
- motion01の
01_00133.pgm
f5.pgm f5.jpg
159 図10.7(a)
(motion01の
01_00185.pgm)
frame.pgm frame.jpg
159 図10.7(b)
(motion01の
01_00467.pgm)
bgd.pgm bgd.jpg

第10章の練習問題の解答

 10-1) 工場などで機械の稼動範囲の危険領域に人が立ち入った際に警報をならす処理,など何でも可.
 10-2) 移動物体が背景と同じ色の場合や,背景が時間的に変化する場合など.
 10-3) 移動領域どうしが重なって同じ色になっているとその部分も差分が0になってしまう.また,カメラが動いていると,至る所で差分が0ではなくなってしまい,移動領域と背景を区別することができない.


第11章 文字・図形の認識

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
84 サンプル
プログラム
1 shape_recog1.c 文字・図形の分類処理 167
852 shape_recog2.c テンプレートマッチング 169
863 shape_recog3.c 教師なし学習の図形分類 171
87 k-means.h k-means 法のヘッダ 172
88 演習問題 1 recog1.c 特徴量を用いた図形認識 175
892 recog2.c 平仮名の認識 175
903 recog3.c 階調画像中の図形抽出 176
91 応用問題 1 recog4.c 図形特徴量の算出 177
- - - pgmlib.h 階調画像用ライブラリ 付録B
- - - labeling.h ラベリングのライブラリ 付録D

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
163
169
図11.2(a)
図11.7(a)
abc.pgm abc.jpg
170 図11.8(a) ri.pgm ri.jpg
170 図11.8(b) sentence.pgm sentence.jpg
174 図11.9(a) 123.pgm 123.jpg
175 図11.10(a) figures.pgm figures.jpg
176 図11.11(a) hiragana.pgm hiragana.jpg
176 図11.12(a) display.pgm display.jpg
176 図11.12(b) desk.pgm desk.jpg

第11章の練習問題の解答

 11-1) 解は多数考えられる.例えば,正方形の各辺が画像上で水平・垂直である場合,図形面積/外接四角形の面積が1に近いなら正方形であるとみなすことで,正方形と円(楕円)を分類することができる.
 11-2) 自動車のナンバープレートに使用されている文字や数字のフォント及び縦横比などは規格により統一されているので,それらを辞書画像(テンプレート画像)として用意し,それらの画像と各図形領域を1対1で比較することによって認識することができる.ただし,画像からナンバープレートの文字や数字の領域を良好に抽出する必要がある.
 11-3) 既に書かれてしまった文字の認識(オフライン認識)とは異なり,筆記途中の筆順の情報を利用することで,認識対象の文字が何であるかを段階的(階層的)に絞り込むことができるため.例えば始めに“にんべん”を書けば,認識対象の文字を“にんべん”を部首としてもつ漢字に限定することができる.
 11-4) 手書き文字は印刷文字とは異なり文字の変形が大きいため.人間でも,他の人の手書き文字を認識することが困難な場合も多いことからも困難さがうかがえる.


第12章 画像の認識

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
92 サンプル
プログラム
1 feature_ext1.c 画像特徴量の算出 185
932 feature_ext2.c エッジヒストグラム算出 186
943 feature_ext3.c 階調画像の縮小 189
- 演習問題 1 - 人工物/自然物 の分類 191
952 image_recog1.c 缶/not 缶 の分類 192
963 image_recog2.c 縮小画像による分類 193
- - - pgmlib.h 階調画像用ライブラリ 付録B

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
189 図12.6(a) human.pgm human.jpg
掲載頁 図番 画 像
182
191
図12.3
表12.2
人工物
artificial01.pgm artificial02.pgm artificial03.pgm artificial04.pgm artificial05.pgm
artificial01.jpg artificial02.jpg artificial03.jpg artificial04.jpg artificial05.jpg
artificial06.pgm artificial07.pgm artificial08.pgm artificial09.pgm artificial10.pgm
artificial06.jpg artificial07.jpg artificial08.jpg artificial09.jpg artificial10.jpg
自然物
natural01.pgm natural02.pgm natural03.pgm natural04.pgm natural05.pgm
natural01.jpg natural02.jpg natural03.jpg natural04.jpg natural05.jpg
natural06.pgm natural07.pgm natural08.pgm natural09.pgm natural10.pgm
natural06.jpg natural07.jpg natural08.jpg natural09.jpg natural10.jpg
190
192
図12.7(a)
図12.8(b)
can01.pgm can02.pgm can03.pgm can04.pgm can05.pgm
can01.jpg can02.jpg can03.jpg can04.jpg can05.jpg
can06.pgm
can06.jpg
not 缶
not_can01.pgm not_can02.pgm not_can03.pgm not_can04.pgm not_can05.pgm
not_can01.jpg not_can02.jpg not_can03.jpg not_can04.jpg not_can05.jpg
not_can06.pgm
not_can06.jpg

第12章の練習問題の解答

 12-1) 25632×32=21024個の点(ものすごく多くの点であることがわかる).
 12-2) 直線性のエッジの量,階調数を削減したときの領域の面積(自然物の方は細かくなる?),周波数解析をしたときに人工物の方が特定の周波数の振幅スペクトルが大きくなる?など,自由に発想して議論すると良い.なお,正解は“やってみなければ分からない”ので厳密に議論する必要はない.
 12-3) FN (False Negatives)はいわゆる“見落とし”なので,限りなく 0 に近づける必要がある.また,FP (False Positive)は“過検出”と呼ばれ,FP が多過ぎると最終的にチェックする医師の負担が増大するので医療診断支援としては適さなくなる.


第13章 カラー画像処理

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
97 - - ppmlib.h カラー画像入出力ヘッダ 197
98 サンプル
プログラム
1 reverse2.c カラー画像の色反転 201
992 divide_col.c カラー画像の色分解 202
1003 color_histogram.c カラー画像のヒストグラム 203
101 演習問題 1 ext_red.c 赤色領域の抽出 205
1022 ext_face.c 肌色領域の抽出 206
1033 labeling2.h カラー画像用ラベリングヘッダ 206
1043 ext_face2.c 顔候補領域の抽出 207
105 応用問題 1 ext_face3.c 顔候補領域の抽出2 207
106 2 painting.c 絵画風画像への変換 208

画像

掲載頁 図番 ファイル名 内容
pgm 形式 jpg 形式
205
209
図13.5(a)
図13.9(a)
rose.ppm rose.jpg
205 図13.6(a) puzzles.ppm puzzles.jpg
206
207
図13.7(a)
図13.8(a)
faces.ppm faces.jpg

第13章の練習問題の解答

 13-1) (128,128,128)は灰色,(256,256,0)は赤と緑の加法混色で黄色,など.


付録A 階調画像のフォーマット

プログラム

 なし

画像

 なし

付録B 階調画像用ライブラリ

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
107 - - pgmlib.h 階調画像用ライブラリ 214

画像

 なし

付録C フーリエ変換のライブラリ

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
108 - - fft.h フーリエ変換のライブラリ 222

画像

 なし

付録D ラベリングのライブラリ

プログラム

通し番号 分類 No. ファイル名 機能 掲載頁
109 - - labeling.h ラベリングのライブラリ 228

画像

 なし
このページのトップへ