mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-07-11 18:12:06 +08:00
89b03fa2ee
* template funcion fill_meta
* add function get_plan_max_idx
* add function get_mdn_max_idx
* remove temp builder variables
* get_mdn_max_idx->get_lead_data
* get_pan_max_idx->get_plan_data
* fill_lane_line
* combine fill_lane_line&fill_path into one function
* fill_lead_vw
* using unique_ptr
* prefer using constexpr
* more constexpr,remove duplicate defined TRAJECTORY_SIZE
* remove suffix _arr from variable name
* misc
* remove extern c
* refactor model_publish
* remove unused paramaters
* traffic_convention to c style array
* c style array:prev_desire&pulse_desire
* fix error&make easy for review
* const mat3 &transform
* move cl_command_queue into ModelState
* use maco LEAD_MHP_SELECTION
* move constexpr from .h to .cc
* remove #define MODEL_NAME
* modeldata.h: contexpr
* remove param temporal from model_init
* helper function get_best_data
* fix probs
* int
Co-authored-by: deanlee <deanlee3@gmail.com>
old-commit-hash: 630c7309a5
36 lines
1018 B
C
36 lines
1018 B
C
#pragma once
|
|
#define CL_USE_DEPRECATED_OPENCL_1_2_APIS
|
|
#ifdef __APPLE__
|
|
#include <OpenCL/cl.h>
|
|
#else
|
|
#include <CL/cl.h>
|
|
#endif
|
|
|
|
#include <float.h>
|
|
#include <stdlib.h>
|
|
#include "common/mat.h"
|
|
#include "transforms/transform.h"
|
|
#include "transforms/loadyuv.h"
|
|
|
|
const bool send_raw_pred = getenv("SEND_RAW_PRED") != NULL;
|
|
|
|
void softmax(const float* input, float* output, size_t len);
|
|
float softplus(float input);
|
|
float sigmoid(float input);
|
|
|
|
typedef struct ModelFrame {
|
|
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;
|
|
} ModelFrame;
|
|
|
|
void frame_init(ModelFrame* frame, int width, int height,
|
|
cl_device_id device_id, cl_context context);
|
|
float *frame_prepare(ModelFrame* frame, cl_command_queue q,
|
|
cl_mem yuv_cl, int width, int height,
|
|
const mat3 &transform);
|
|
void frame_free(ModelFrame* frame);
|