|
Toshihiro Shimizu |
890ddd |
#ifndef igs_gaussian_blur_hv_h
|
|
Toshihiro Shimizu |
890ddd |
#define igs_gaussian_blur_hv_h
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#ifndef IGS_GAUSSIAN_BLUR_HV_EXPORT
|
|
Toshihiro Shimizu |
890ddd |
#define IGS_GAUSSIAN_BLUR_HV_EXPORT
|
|
Toshihiro Shimizu |
890ddd |
#endif
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
namespace igs
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
namespace gaussian_blur_hv
|
|
Toshihiro Shimizu |
890ddd |
{
|
|
Toshihiro Shimizu |
890ddd |
IGS_GAUSSIAN_BLUR_HV_EXPORT const int int_radius(
|
|
Toshihiro Shimizu |
890ddd |
const double real_radius);
|
|
Toshihiro Shimizu |
890ddd |
IGS_GAUSSIAN_BLUR_HV_EXPORT const int buffer_bytes(
|
|
Toshihiro Shimizu |
890ddd |
const int height_with_margin, const int width_with_margin, const int int_radius);
|
|
Toshihiro Shimizu |
890ddd |
IGS_GAUSSIAN_BLUR_HV_EXPORT void convert(
|
|
Toshihiro Shimizu |
890ddd |
/* 入出力画像 */
|
|
Toshihiro Shimizu |
890ddd |
const void *in_with_margin, void *out_no_margin
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const int height_with_margin, const int width_with_margin, const int channels, const int bits
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
/* Pixel毎に効果の強弱 */
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const unsigned char *ref /* 求める画像(out)と同じ高、幅、ch数 */
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const int ref_bits /* refがゼロのときはここもゼロ */
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const int ref_mode /* 0=R,1=G,2=B,3=A,4=Luminance,5=Nothing */
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
/* 計算バッファ */
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
void *buffer, int buffer_bytes
|
|
Toshihiro Shimizu |
890ddd |
// Must be igs::gaussian_blur_hv::buffer_bytes(-)
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
/* Action Geometry */
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const int int_radius // margin
|
|
Toshihiro Shimizu |
890ddd |
// Must be igs::gaussian_blur_hv::int_radius(real_radius)
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
,
|
|
Toshihiro Shimizu |
890ddd |
const double real_radius, const double sigma = 0.25);
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#endif /* !igs_gaussian_blur_hv_h */
|