Main Page | Files | Data Structures | Functions | Global Variables |
gpiv-imgproc.h
Go to the documentation of this file.
1/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4 c-style: "K&R" -*- */
2
3/*-----------------------------------------------------------------------------
4
5 libgpiv - library for Particle Image Velocimetry
6
7 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Gerber van der Graaf
8
9 This file is part of libgpiv.
10
11 Libgpiv is free software; you can redistribute it and/or modify
12 it under the terms of the GNU General Public License as published by
13 the Free Software Foundation; either version 2, or (at your option)
14 any later version.
15
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License for more details.
20
21 You should have received a copy of the GNU General Public License
22 along with this program; if not, write to the Free Software Foundation,
23 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
25-------------------------------------------------------------------------------
26FILENAME: imgproc.h
27LIBRARY: libgpiv:
28EXTERNAL FUNCTIONS:
29SOURCE: imgproc_par.c
30 gpiv_imgproc_parameters_set
31 gpiv_imgproc_default_parameters
32 gpiv_imgproc_fscan_parameters
33 gpiv_imgproc_read_parameters
34 gpiv_imgproc_check_parameters
35 gpiv_imgproc_test_parameters
36 gpiv_imgproc_print_parameters
37 gpiv_imgproc_fprint_parameters
38 gpiv_imgproc_cp_parameters
39
40SOURCE: imgproc.c
41 gpiv_imgproc_mktestimg
42 gpiv_imgproc_subtractimg
43 gpiv_imgproc_smooth
44 gpiv_imgproc_highlow
45 gpiv_imgproc_clip
46 gpiv_imgproc_getbit
47 gpiv_imgproc_fft
48 gpiv_imgproc_lowpass
49 gpiv_imgproc_highpass
50 gpiv_imgproc_correlate
51 gpiv_imgproc_convolve
52
53-----------------------------------------------------------------------------*/
64#ifndef __LIBGPIV_IMGPROC_H__
65#define __LIBGPIV_IMGPROC_H__
66
67#define GPIV_IMGPROCPAR_MAX__THRESHOLD 255
68#define GPIV_IMGPROCPAR_MAX__WINDOW 50
69
70#define GPIV_IMGPROCPAR_KEY "IMGPROC"
91
102
103
105
132
133
134
135
143void
145 const gboolean flag
146 );
147
148
149
157void
159 const gboolean force
160 );
161
162
163
173void
175 GpivImageProcPar *image_proc_par,
176 const gboolean print_par
177 );
178
179
180
190gchar *
192 const GpivImageProcPar *image_proc_par_default
193 );
194
195
196
203gchar *
205 );
206
207
208
217void
219 const GpivImageProcPar *image_proc_par
220 );
221
222
231 );
232
233
242GpivImage *
244 const GpivImageProcPar *image_proc_par
245 );
246
247
257gchar *
259 GpivImage *image_out
260 );
261
262
271gchar *
273 const GpivImageProcPar *image_proc_par
274 );
275
276
285gchar *
287 const GpivImageProcPar *image_proc_par
288 );
289
290
299gchar *
301 const GpivImageProcPar *image_proc_par
302 );
303
304
312gchar *
314 const GpivImageProcPar *image_proc_par
315 );
316
317
326gchar *
328 const GpivImageProcPar *image_proc_par
329 );
330
331
339gchar *
341 const GpivImageProcPar *image_proc_par
342 );
343
344
345#ifndef USE_FFTW3
355gchar *
357 GpivImageProcPar image_proc_par,
358 guint16 **img
359 );
360
361
362
373gchar *
375 GpivImageProcPar image_proc_par,
376 guint16 **img1_in,
377 guint16 **img2_in,
378 guint16* **img_out
379 );
380
381
382
394gchar *
396 GpivImageProcPar image_proc_par,
397 guint16 **img1_in,
398 guint16 **img2_in,
399 guint16* **img_out
400 );
401
402#endif /* USE_FFTW3 */
403
404
414gchar *
416 const GpivPivData *piv_data
417 );
418
419
420#endif /* __LIBGPIV_IMGPROC_H__ */
421
GpivImgFilter
Image filter type.
@ GPIV_IMGFI_HIGHPASS
High pass filter.
@ GPIV_IMGFI_INVFFT
Inverse FFT image.
@ GPIV_IMGFI_SMOOTH
Smooth filter.
@ GPIV_IMGFI_CONV
Convolve.
@ GPIV_IMGFI_MKTESTIMG
Generate test image.
@ GPIV_IMGFI_CLIP
Clipping.
@ GPIV_IMGFI_FFT
FFT image.
@ GPIV_IMGFI_HILO
High-low filter.
@ GPIV_IMGFI_CORR
Correlate.
@ GPIV_IMGFI_GETBIT
Pointer operation to get the N least significant bits.
@ GPIV_IMGFI_LOWPASS
Low pass filter.
@ GPIV_IMGFI_SUBACK
Subtract background image.
void gpiv_imgproc_print_parameters(FILE *fp, const GpivImageProcPar *image_proc_par)
Prints image processing parameters to file.
GpivImageProcPar * gpiv_imgproc_cp_parameters(const GpivImageProcPar *imgproc_par)
Copies image processing parameters.
gchar * gpiv_imgproc_subtractimg(const GpivImage *image_in, GpivImage *image_out)
Subtracts image intensities of img_in from img_out.
void gpiv_imgproc_parameters_set(GpivImageProcPar *image_proc_par, const gboolean flag)
Sets flag for image_proc_par__set.
gchar * gpiv_imgproc_deform(GpivImage *image, const GpivPivData *piv_data)
Image shifting and deformation routine for a single exposed, double frame PIV image pair with magnitu...
void gpiv_imgproc_default_parameters(GpivImageProcPar *imgproc_par_default, const gboolean force)
Sets default parameter values.
gchar * gpiv_imgproc_convolve(GpivImagePar image_par, GpivImageProcPar image_proc_par, guint16 **img1_in, guint16 **img2_in, guint16 ***img_out)
Convolves two images.
gchar * gpiv_imgproc_getbit(GpivImage *image, const GpivImageProcPar *image_proc_par)
Pointer operation to get the N least significant bits and moves them to most the significant bits.
gchar * gpiv_imgproc_highlow(GpivImage *image, const GpivImageProcPar *image_proc_par)
High-low filter to maximize contrast by stretching pixel values to local max and min within window x ...
gchar * gpiv_imgproc_highpass(GpivImage *image, const GpivImageProcPar *image_proc_par)
Highpass filter on an image passing data from M - window,..,M/2, N - window,..,N/2.
void gpiv_imgproc_read_parameters(FILE *fp_h, GpivImageProcPar *image_proc_par, const gboolean print_par)
Reads image processing parameters.
GpivImage * gpiv_imgproc_mktestimg(const GpivImagePar *image_par, const GpivImageProcPar *image_proc_par)
Genarates test image for image processing.
gchar * gpiv_imgproc_correlate(GpivImagePar image_par, GpivImageProcPar image_proc_par, guint16 **img1_in, guint16 **img2_in, guint16 ***img_out)
Correlates two images.
gchar * gpiv_imgproc_test_parameters(const GpivImageProcPar *image_proc_par)
Tests image processing parameters on validity.
gchar * gpiv_imgproc_lowpass(GpivImagePar image_par, GpivImageProcPar image_proc_par, guint16 **img)
Lowpass filter on an image.
gchar * gpiv_imgproc_fft(GpivImage *image, const GpivImageProcPar *image_proc_par)
Fast Fourier Transformation of image.
gchar * gpiv_imgproc_smooth(GpivImage *image, const GpivImageProcPar *image_proc_par)
Smoothing filter by taking mean value of surrounding window x window pixels.
gchar * gpiv_imgproc_check_parameters_read(GpivImageProcPar *image_proc_par, const GpivImageProcPar *image_proc_par_default)
GpivImgSmoothOperator
Operator type when smoothing is performed.
@ GPIV_IMGOP_EQUAL
No action.
@ GPIV_IMGOP_ADD
Add avarage.
@ GPIV_IMGOP_SUBTRACT
Subtract avarage.
@ GPIV_IMGOP_DIVIDE
Divide by avarage.
@ GPIV_IMGOP_MULTIPLY
Multiply with avarage.
gchar * gpiv_imgproc_clip(GpivImage *image, const GpivImageProcPar *image_proc_par)
Sets all pixel values lower than threshold to zero.
Piv image header and data.
Definition gpiv-img.h:194
Image parameters or header info.
Definition gpiv-img.h:122
Image processing parameters.
guint bit
bit number
gboolean smooth_operator__set
flag smooth_operator if has been defined
enum GpivImgFilter filter
Filter type.
guint threshold
minimum or maximum (intensity) value
gboolean filter__set
flag if filter has been defined
gboolean threshold__set
flag if threshold has been defined
guint window
geographic window in pixels
enum GpivImgSmoothOperator smooth_operator
Type of sooting operaor.
gboolean bit__set
flag if has bit been defined
gboolean window__set
flag if window has been defined
Holds the variables of PIV data.
Definition gpiv.h:267

Generated for libgpiv-0.6.1 by doxygen 1.9.8