1次元の積分画像を保持し,任意の矩形領域の画素値の総和を高速に計算するためのクラス [詳細]
#include <integral_image.h>
Public 型 | |
typedef image_type::size_type | size_type |
符号なしの整数を表す型.コンテナ内の要素数や,各要素を指定するときなどに利用し,内部的には size_t 型と同じ | |
typedef image_type::difference_type | difference_type |
符号付きの整数を表す型.コンテナ内の要素数や,各要素を指定するときなどに利用し,内部的には ptrdiff_t 型と同じ |
Public メソッド | |
value_type | operator() (const size_type begin, const size_type size) const |
任意の矩形領域内の画素の総和を返す:O(1) | |
value_type | operator() (const difference_type i) const |
任意の位置の積分値を返す | |
value_type | overall () const |
全ての画素値の総和を返す:O(1) | |
size_type | size () const |
画像配列のサイズを返す | |
void | construct_integral_array (const image_type &in) |
Integral Image の構築:O(n) | |
integral_image (const image_type &in) | |
コンストラクタ | |
integral_image () | |
デフォルトコンストラクタ |
1次元の積分画像を保持し,任意の矩形領域の画素値の総和を高速に計算するためのクラス
画素数nに対してO(n)の前計算を行うことにより,任意の矩形領域の画素値の総和をO(1)で算出する 同一の画像配列中の複数の異なる矩形領域に対して、総和を計算する必要がある場合などに有効
mist::array, mist::array1, mist::array2, mist::array3に対応.
T | … 入力のデータ型( double や mist::rgb< unsigned char > など ) |
Allocator | … MISTコンテナで使用するアロケータ |
|
inline |
コンストラクタ
[in] | in | … 画像配列 |
|
inline |
Integral Image の構築:O(n)
[in] | in | … 画像配列 |
参照先 mist::array< T, Allocator >::resize(), と mist::array< T, Allocator >::size().
|
inline |
任意の矩形領域内の画素の総和を返す:O(1)
[in] | begin | … 始点 |
[in] | size | … サイズ |
|
inline |
任意の位置の積分値を返す
[in] | i | … i方向の始点 |
|
inline |
全ての画素値の総和を返す:O(1)
|
inline |
画像配列のサイズを返す