Anonymizer  7.0
SDK for anonymization of human faces and licence plates in images.
Anonymizer.h
1 /* **************************************************************** */
2 /* **************************************************************** */
3 /* * * */
4 /* * Header file to Anonymizer library * */
5 /* * Version 5.x 2016-10-10 * */
6 /* * -------------------------------------------------------- * */
7 /* * * */
8 /* * Eyedea Recognition s.r.o. (C) 2016 * */
9 /* * * */
10 /* * Contact: * */
11 /* * web: http://www.eyedea.cz * */
12 /* * email: info@eyedea.cz * */
13 /* * * */
14 /* **************************************************************** */
15 /* **************************************************************** */
16 
17 #ifndef _ANONIMIZER_H
18 #define _ANONIMIZER_H
19 
20 #include <er_explink.h>
21 #include <er_type.h>
22 
30 typedef void* ANState;
31 
32 
37 typedef struct
38 {
39  unsigned char *raw_data;
40  size_t length;
41 } AnBuffer;
42 
56 typedef struct {
57  int anonymize;
58  float threshold;
60  /* Filters to reduce unwanted detections */
61  int min_length;
62  int max_length;
67 
74  AN_FACE = 0,
77 };
78 
91 typedef struct
92 {
93  ERRoI roi;
94  int show;
96  int keep_exif;
97  int panoramic;
98  int verbose;
101 } AnParams;
102 
108 typedef struct
109 {
110  ERComputationMode computation_mode;
113 } AnConfig;
114 
115 
134 ER_FUNCTION_PREFIX int anInit(const char* sdk_directory, const char* ini_filename, const AnConfig *config, ANState *state);
135 
136 
140 typedef int (*fcn_anInit)(const char*, const char*, const AnConfig *, ANState *);
141 
145 ER_FUNCTION_PREFIX void anFree(ANState state);
146 
150 typedef void (*fcn_anFree)(ANState);
151 
163 ER_FUNCTION_PREFIX int anAnonymize(const char* src_image_filename,
164  const char* dst_image_filename,
165  AnParams* params,
166  ANState state);
167 
171 typedef int(*fcn_anAnonymize)(const char*, const char*, AnParams*, ANState);
172 
173 
188 ER_FUNCTION_PREFIX int anAnonymizeImageBuffer(AnBuffer src_buffer,
189  unsigned int width,
190  unsigned int height,
191  AnParams* params,
192  ANState state,
193  AnBuffer* dst_buffer);
194 
199 
212 ER_FUNCTION_PREFIX int anAnonymizeJpegBuffer(AnBuffer src_buffer,
213  AnParams* params,
214  ANState state,
215  AnBuffer* dst_buffer);
216 
221 
228 ER_FUNCTION_PREFIX void anFreeBuffer(AnBuffer buffer);
229 
233 typedef void (*fcn_anFreeBuffer)(AnBuffer buffer);
234 
243 ER_FUNCTION_PREFIX int anGetDefaultParams(AnParams *parameters);
244 
250 
253 ER_FUNCTION_PREFIX const char* anVersion(int verbose);
254 
258 typedef const char* (*fcn_anVersion)(int);
259 
263 ER_FUNCTION_PREFIX const char* anGetErrorMsg(int ern);
264 
268 typedef const char*(*fcn_anGetErrorMsg)(int);
269 
281 ER_FUNCTION_PREFIX int anPlotLayouts(ANState state, const char *image_filename, AnObjectType type);
282 
286 typedef int (*fcn_anPlotLayouts)(ANState, const char *, AnObjectType);
287 
291 #endif
292 
anPlotLayouts
ER_FUNCTION_PREFIX int anPlotLayouts(ANState state, const char *image_filename, AnObjectType type)
Print colorized tiles for current layouts into an image.
anGetDefaultParams
ER_FUNCTION_PREFIX int anGetDefaultParams(AnParams *parameters)
Fill AnParams structure with default values.
fcn_anAnonymizeImageBuffer
int(* fcn_anAnonymizeImageBuffer)(AnBuffer, int, int, AnParams *, ANState, AnBuffer *)
anAnonymizeImageBuffer function pointer
Definition: Anonymizer.h:198
anAnonymize
ER_FUNCTION_PREFIX int anAnonymize(const char *src_image_filename, const char *dst_image_filename, AnParams *params, ANState state)
Anonymization function for image file to jpeg file.
AnConfig
Configuration structure for Anonymizer state initialization.
Definition: Anonymizer.h:108
fcn_anPlotLayouts
int(* fcn_anPlotLayouts)(ANState, const char *, AnObjectType)
anGetErrorMsg function pointer
Definition: Anonymizer.h:286
AnParams::num_object_types
int num_object_types
Definition: Anonymizer.h:99
AnConfig::gpu_device_id
int gpu_device_id
Definition: Anonymizer.h:111
fcn_anFreeBuffer
void(* fcn_anFreeBuffer)(AnBuffer buffer)
anFreeBuffer function pointer
Definition: Anonymizer.h:233
ANState
void * ANState
Handle to Anonymizer SDK library.
Definition: Anonymizer.h:30
AnDetectionParams::threshold
float threshold
Definition: Anonymizer.h:58
AnParams::panoramic
int panoramic
Definition: Anonymizer.h:97
AnDetectionParams::anonymize
int anonymize
Definition: Anonymizer.h:57
AnDetectionParams::blur_size_factor
float blur_size_factor
Definition: Anonymizer.h:64
AN_LP
@ AN_LP
Definition: Anonymizer.h:75
AnDetectionParams
Control parameters for detected objects to be anonymized.
Definition: Anonymizer.h:56
AN_NUM_OBJECT_TYPES
@ AN_NUM_OBJECT_TYPES
Definition: Anonymizer.h:76
anAnonymizeImageBuffer
ER_FUNCTION_PREFIX int anAnonymizeImageBuffer(AnBuffer src_buffer, unsigned int width, unsigned int height, AnParams *params, ANState state, AnBuffer *dst_buffer)
Anonymization function for RAW image buffer to RAW image buffer.
AnBuffer
Image buffer enclosing structure.
Definition: Anonymizer.h:37
anInit
ER_FUNCTION_PREFIX int anInit(const char *sdk_directory, const char *ini_filename, const AnConfig *config, ANState *state)
Initializes/loads Anonymizer engine.
AnDetectionParams::min_length
int min_length
Definition: Anonymizer.h:61
AnParams::jpeg_quality
int jpeg_quality
Definition: Anonymizer.h:95
AnParams::roi
ERRoI roi
Definition: Anonymizer.h:93
AnObjectType
AnObjectType
Objects to anonymize.
Definition: Anonymizer.h:73
AnParams::verbose
int verbose
Definition: Anonymizer.h:98
AnParams::show
int show
Definition: Anonymizer.h:94
AnParams
Control parameters for the anonymization process.
Definition: Anonymizer.h:91
anFreeBuffer
ER_FUNCTION_PREFIX void anFreeBuffer(AnBuffer buffer)
Frees the image buffer filled by Anonymizer SDK functions.
fcn_anInit
int(* fcn_anInit)(const char *, const char *, const AnConfig *, ANState *)
anInit function pointer
Definition: Anonymizer.h:140
anVersion
const ER_FUNCTION_PREFIX char * anVersion(int verbose)
Get Anonymizer version string.
fcn_anAnonymizeJpegBuffer
int(* fcn_anAnonymizeJpegBuffer)(AnBuffer, AnParams *, ANState, AnBuffer *)
anAnonymizeJpegBuffer function pointer
Definition: Anonymizer.h:220
fcn_anAnonymize
int(* fcn_anAnonymize)(const char *, const char *, AnParams *, ANState)
anAnonymize function pointer
Definition: Anonymizer.h:171
anGetErrorMsg
const ER_FUNCTION_PREFIX char * anGetErrorMsg(int ern)
Return error message for suplied error code.
AN_FACE
@ AN_FACE
Definition: Anonymizer.h:74
fcn_anFree
void(* fcn_anFree)(ANState)
anFree function pointer
Definition: Anonymizer.h:150
anFree
ER_FUNCTION_PREFIX void anFree(ANState state)
Frees engine state structure.
AnBuffer::length
size_t length
Definition: Anonymizer.h:40
AnConfig::computation_mode
ERComputationMode computation_mode
Definition: Anonymizer.h:110
anAnonymizeJpegBuffer
ER_FUNCTION_PREFIX int anAnonymizeJpegBuffer(AnBuffer src_buffer, AnParams *params, ANState state, AnBuffer *dst_buffer)
JPEG buffer anonymization API function.
AnConfig::num_threads
int num_threads
Definition: Anonymizer.h:112
fcn_anGetDefaultParams
int(* fcn_anGetDefaultParams)(AnParams *)
anGetDefaultParams function pointer
Definition: Anonymizer.h:249
AnParams::keep_exif
int keep_exif
Definition: Anonymizer.h:96
AnDetectionParams::max_length
int max_length
Definition: Anonymizer.h:62
AnDetectionParams::blur_num_passes
int blur_num_passes
Definition: Anonymizer.h:65
AnBuffer::raw_data
unsigned char * raw_data
Definition: Anonymizer.h:39