して以下のコードでシャープ化を行った。以下のソースコードを「DnpImageConvolution.h」のファイル名で保存する。0,CONV_EMBOSS01,CONV_EMBOSS02,CONV_EMBOSS03,CONV_EMBOSS04,CONV_EMBOSS05,CONV_EMBOSS06,CONV_EMBOSS07,CONV_EMBOSS08,CONV_EMBOSS09,CONV_SOBEL01,CONV_PREWITT01,CONV_KIRSH01,CONV_EDGE01,CONV_EDGE02,CONV_EDGE03,CONV_EDGE04,CONV_EDGE05,CONV_EDGE06,CONV_EDGE07,CONV_EDGEENHANCE01,CONV_AVRREMOVE01,CONV_SHARP01,CONV_SHARP02,CONV_SHARP03,CONV_SHARP04,CONV_SOFT01,CONV_SOFT02,CONV_SOFT03,CONV_SOFT04,CONV_SOFT05,CONV_SOFT06,CONV_SOFT07,CONV_SOFT08,CONV_LAPLACIAN01,CONV_LAPLACIAN02,CONV_DUMMY_END};////コンボリューション処理パラメータの対称度チェック////例えば下の2つのパラメータは"同じ処理を角度を変えて行うもの"//と考えることができる(左を45度回転したものが右になるため)。//この行列の場合、45度回転を8回繰り返すと元と同じ形になる。//この関数はこの8回から1つ引いた"7"という値を返す。0)returni;}ATLASSERT(0);return8;}////コンボリューション処理パラメータの回転//////例えば下の2つのパラメータは"同じ処理を角度を変えて行うもの"//と考えることができる(左を45度回転したものが右になるため)。//この行列の場合、45度回転を8回繰り返すと元と同じ形になる。nHeight);deletepNewTmp;returntrue;}};前に作成した「DnpImage.h」に変更を加える。コンボリューション処理関連関数を追加する。CDnpImageConvolution::Convolution(GetWidth(),GetHeight(),pData,nStrideBytes,pnOperate,bNotDivide);UnlockBits();returnret;}////コンボリューション処理////指定したコンボリューション処理を行う。nRotateは処理パラメータ行列の右45度回転//を何度行うかの指定。エンボスなどの非対称パラメータの場合は結果が変わる。