WIL説明書(C++)  3.1.0
サンプルコード(極座標変換)

極座標変換の処理例:
回転するCD-ROMをラインセンサで撮像した画像(下図左)を極座標変換して、 元の円形の状態(下図右)に復元する処理例を示します。

【入力画像】   【出力画像】
disk_left.png
arrow.png
PolarTrans.PolarTrans.png

ソースコード:

// $Revision: 1.1 $
void PolarTrans()
{
// 1) インスタンスの準備
// 2) 処理対象画像の取り込み
INT status = FVCL::File::LoadImageFile( _T("disk_left.png"), &src );
if( status != FVCL_ErrorCode::_SUCCESS )
{
_tprintf(_T("%s: Failed to load image file. code=%d\n"), __TFUNCTION__, status);
return;
}
// 3) 処理対象画像の有効性検査
return;
// 4) 画像処理準備
parser.SetSrcImage( 0, &src );
parser.SetDstImage( 0, &dst );
// 5-1) パラメータ設定
parser.SetInvert( false ); // false: 矩形→円形
parser.SetClearBackMode( true );
INT horz, vert;
src.GetWindow( NULL, NULL, &horz, &vert );
param.SetOriginIn( src.GetWindow().st );
param.SetWidth( horz );
param.SetHeight( vert );
param.SetRadius( param.GetWidth() );
// 5-2) 出力画像の有効化
parser.Validate(1); // 有効化
// 6) 画像処理実行
parser.Execute();
// E) 処理結果画像の保存
FVCL::File::SaveImageFile(_T("PolarTrans.PolarTrans.png"), dst);
}

Documentation copyright © 2007 FAST Corporation. [B-001864]
Generated on 2024年10月10日(木) 10時01分27秒 for WIL説明書(C++) by doxygen 1.8.11