2010.05.06

【正誤情報】『[詳解]画像処理プログラミング』

詳解 画像処理プログラミング

 『[詳解]画像処理プログラミング』をご購入していただきまして、誠にありがとうございます。
 本書の内容について、下記の誤りがありました。


初版第一刷/第二刷


P.31 リスト1-7 説明
【誤】リスト1-7 BMPファイルの読み込み処理(list1_07.cより)
【正】リスト1-7 BMPファイルの書き出し処理(list1_07.cより)


P.41 式2-5 / P.268 式5-14
【誤(第一刷)】Po = M * (Pi/M)
【誤(第二刷)】Po = M * (Pi/M)^-γ
【正】Po = M * (Pi/M)^γ


当初、初版第一刷の修正として、
【正】Po = M * (Pi/M)^-γ
とお知らせしましたが、その後の確認により上記のように修正いたします。
なお、本文中にも解説がありますが、ガンマ値の補正としては、
 Po = M * (Pi/M)^1/γ
が正しいものとなります。分母が0となることを防ぐため、このように実装しております。


P.49 式2-13
【誤】Po = 255 * (Pi-param1)/(param2+param1)
【正】Po = 255 * (Pi-param1)/(param2-param1)


P.154 リスト3-21の続き 22~25行目
【誤】
ggx+= rr*sobel1[sadr];
ggy+= rr*sobel2[sadr];
bbx+= rr*sobel1[sadr];
bby+= rr*sobel2[sadr];
【正】
ggx+= gg*sobel1[sadr];
ggy+= gg*sobel2[sadr];
bbx+= bb*sobel1[sadr];
bby+= bb*sobel2[sadr];


P.253 11行目
【誤】YCrCb表色系は、輝度と、赤の色差成分・青の色差成分で色を表現する方法です。
【正】YCrCb表色系は、輝度と、赤の色差成分・青の色差成分で色を表現する方法です。YCrCb表色系はYUV表色系とも呼ばれます。


P.258 式5-7
【誤】
・Rが最大のとき…H=(G-B)*255/m
・Gが最大のとき…H=(B-R)*255/(m + 4*256)
・Bが最大のとき…H=(R-G)*255/(m + 4*256)
【正】
・Rが最大のとき…H=(G-B)*255/m
・Gが最大のとき…H=(B-R)*255/m + 2*256
・Bが最大のとき…H=(R-G)*255/m + 4*256


たとえばGの場合、「(B-R)*255/m」と「2*256」の加算の式となります。


P.283 リスト5-9
掲載リストが間違っておりました。正しくは
ipplist5_09.txt
となります。
これは、ダウンロードで入手できる「list5_09.c」と同一のものです。



初版第一刷のみ


P.17 19行目
【誤】value=(temp>>(8*(7-x1)))&1
【正】value=(temp>>(1*(7-x1)))&1


P.17 注1-7
【誤】第★章
【正】第2章


P.19 リスト1-4 16行目
【誤】
if(y >= img->height){
  x = img->height – 1;
  ret = 0;
}
【正】
if(y >= img->height){
  y = img->height – 1;
  ret = 0;
}


P.20 リスト1-5
1行目~9行目(関数correctValue)はリスト1-4の一部となります。


P.23 表1-4
biSizeのバイト数
【誤】BITMAPCOREHEADER 12、BITMAPINFOHEADER 40
【正】BITMAPCOREHEADER 4、 BITMAPINFOHEADER 4


P.23 2行目

【誤】BITMAPCOREHEADERの場合は12バイト、BITMAPCOREHEADERの場合は40バイトとなります。
【正】BITMAPCOREHEADERの場合は12、BITMAPINFOHEADERの場合は40となります。


P.56 画面2-1
【誤】(f)シグモイド関数による変換(γ=0.3)
【正】(f)シグモイド関数による変換(α=1)

【誤】(g)シグモイド関数による変換(γ=0.3)
【正】(g)シグモイド関数による変換(α=10)


P.72 画面2-2
(a)~(f)の画像は、正しくは
cap2_2.zip
となります。


P.81 図3-5 (b)y方向
【誤】
-1 -2 -1
 0  0  0
-1 -2 -1

【正】
-1 -2 -1
 0  0  0
 1  2  1


P.81 図3-6 (b)y方向
【誤】
-1/√2 -1  1/√2
   0   0   0
 1/√2  1  1/√2

【正】
-1/√2 -1 -1/√2
   0   0   0
 1/√2  1  1/√2


P.138 式3-32
【誤】(Aωsin(ωD).x.(1/D),Aωsin(ωD).y.(1/D),-1)
【正】(Aωsin(ωD)・x・(1/D),Aωsin(ωD)・y・(1/D),-1)


上記「y」部分を修正しました。(2008.7.14)


P.344 画面5-10
【誤】(c)隣画素のみへの分散
【正】(c)Floyd&Steinberg型


P.421 画面7-5
キャプションが抜けていました。
上部中央:(a)元画像
下部左:(b)骨格化
下部右:(c)細線化


P.489 1行目
説明が途中で抜けていました。

 データ値の局所的に変化の激しい部分(エッジ部分など)と滑らかに変化する部分に分離したものです。変化が激しいほど高周波成分に現れ、変化が滑らかなほど低周波成分に現れます。

となります。


以上、訂正させていただくとともに、ご迷惑をおかけしたことお詫び申し上げます。


(2008/9/19追加)


なお、サンプルプログラムについては、

  • ・Fedora 8+gcc 4.0.x
  • ・Windows XP SP3+Visual Studio 2005
  • ・Windows XP SP3+Visual Studio 2008

にて動作を確認しております。
開発環境固有のお問い合わせに関しては、それぞれの参考資料をご参照ください。

ダウンロード

ipplist5_09.txt