関数 | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::hilditch::thinning (const array2< T1, Allocator1 > &in, array2< T2, Allocator2 > &out) |
2次元画像に対する細線化アルゴリズム | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::thinning8 (const array2< T1, Allocator1 > &in, array2< T2, Allocator2 > &out) |
ユークリッド距離を用いた2次元画像に対する細線化アルゴリズム | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::shrink_skelton6 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
3次元画像に対する収縮スケルトンアルゴリズム(6連結) | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::shrink_skelton26 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
3次元画像に対する収縮スケルトンアルゴリズム(26連結) | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::thinning6 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
ユークリッド距離を用いた3次元画像に対する細線化アルゴリズム | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::thinning26 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
ユークリッド距離を用いた3次元画像に対する細線化アルゴリズム | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::surface_thinning6 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
ユークリッド距離を用いた3次元画像に対する薄面化アルゴリズム | |
template<class T1 , class T2 , class Allocator1 , class Allocator2 > | |
void | mist::euclidean::surface_thinning26 (const array3< T1, Allocator1 > &in, array3< T2, Allocator2 > &out) |
ユークリッド距離を用いた3次元画像に対する薄面化アルゴリズム |
@code 次のヘッダをインクルードする
#include <mist/filter/thinning.h>
void mist::euclidean::shrink_skelton26 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
3次元画像に対する収縮スケルトンアルゴリズム(26連結)
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::euclidean::shrink_skelton6 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
3次元画像に対する収縮スケルトンアルゴリズム(6連結)
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::euclidean::surface_thinning26 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
ユークリッド距離を用いた3次元画像に対する薄面化アルゴリズム
薄面化結果は26連結となる
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::euclidean::surface_thinning6 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
ユークリッド距離を用いた3次元画像に対する薄面化アルゴリズム
薄面化結果は6連結となる
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::hilditch::thinning | ( | const array2< T1, Allocator1 > & | in, |
array2< T2, Allocator2 > & | out | ||
) |
2次元画像に対する細線化アルゴリズム
細線化結果は8連結となる
Linear Skeleton from Square Cupboards,'' In: Machine Intelligence 6, B. Meltzer and D. Michie eds., Edinburgh Univ. Press, pp.403?420, 1969
鳥脇純一郎,
画像理解のためのディジタル画像処理〔II〕,'' 昭晃堂,pp.56-59,1988[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array2< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array< T, Allocator >::size(), mist::array2< T, Allocator >::size1(), と mist::array2< T, Allocator >::size2().
void mist::euclidean::thinning26 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
ユークリッド距離を用いた3次元画像に対する細線化アルゴリズム
細線化結果は26連結となる
細線化を行う際に,出力画像の要素のデータ型で一度ユークリッド2乗距離変換した後,細線化処理が実行されます. そのため,出力画像のデータ型が unsinged char の場合には,画像のサイズによっては距離変換が最後まで正しく行われません. 細線化を実行する場合は,unsigned short かそれよりも大きい値を表現できるデータ型を利用してください.
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::euclidean::thinning6 | ( | const array3< T1, Allocator1 > & | in, |
array3< T2, Allocator2 > & | out | ||
) |
ユークリッド距離を用いた3次元画像に対する細線化アルゴリズム
細線化結果は6連結となる
細線化を行う際に,出力画像の要素のデータ型で一度ユークリッド2乗距離変換した後,細線化処理が実行されます. そのため,出力画像のデータ型が unsinged char の場合には,画像のサイズによっては距離変換が最後まで正しく行われません. 細線化を実行する場合は,unsigned short かそれよりも大きい値を表現できるデータ型を利用してください.
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array3< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array3< T, Allocator >::reso3(), mist::array< T, Allocator >::size(), mist::array3< T, Allocator >::size1(), mist::array3< T, Allocator >::size2(), と mist::array3< T, Allocator >::size3().
void mist::euclidean::thinning8 | ( | const array2< T1, Allocator1 > & | in, |
array2< T2, Allocator2 > & | out | ||
) |
ユークリッド距離を用いた2次元画像に対する細線化アルゴリズム
細線化結果は8連結となる
細線化を行う際に,出力画像の要素のデータ型で一度ユークリッド2乗距離変換した後,細線化処理が実行されます. そのため,出力画像のデータ型が unsinged char の場合には,画像のサイズによっては距離変換が最後まで正しく行われません. 細線化を実行する場合は,unsigned short かそれよりも大きい値を表現できるデータ型を利用してください.
[in] | in | … 入力画像 |
[out] | out | … 出力画像(0か1の2値) |
参照先 mist::array2< T, Allocator >::resize(), mist::array1< T, Allocator >::reso1(), mist::array2< T, Allocator >::reso2(), mist::array< T, Allocator >::size(), mist::array2< T, Allocator >::size1(), と mist::array2< T, Allocator >::size2().