You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
961 B
44 lines
961 B
6 years ago
|
#ifndef COMMONMODEL_H
|
||
|
#define COMMONMODEL_H
|
||
|
|
||
|
#include <CL/cl.h>
|
||
|
|
||
|
#include "common/mat.h"
|
||
|
#include "common/modeldata.h"
|
||
6 years ago
|
#include "transforms/transform.h"
|
||
|
#include "transforms/loadyuv.h"
|
||
6 years ago
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
6 years ago
|
float softplus(float input);
|
||
|
float sigmoid(float input);
|
||
6 years ago
|
|
||
|
typedef struct ModelInput {
|
||
|
cl_device_id device_id;
|
||
|
cl_context context;
|
||
|
|
||
|
// input
|
||
|
Transform transform;
|
||
|
int transformed_width, transformed_height;
|
||
|
cl_mem transformed_y_cl, transformed_u_cl, transformed_v_cl;
|
||
|
LoadYUVState loadyuv;
|
||
|
cl_mem net_input;
|
||
|
size_t net_input_size;
|
||
|
} ModelInput;
|
||
|
|
||
|
void model_input_init(ModelInput* s, int width, int height,
|
||
|
cl_device_id device_id, cl_context context);
|
||
|
float *model_input_prepare(ModelInput* s, cl_command_queue q,
|
||
|
cl_mem yuv_cl, int width, int height,
|
||
|
mat3 transform);
|
||
|
void model_input_free(ModelInput* s);
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif
|
||
|
|