Apollo
6.0
Open source self driving car software
|
Classes | |
class | ArgMax1Plugin |
class | BatchStream |
class | CaffeNet |
struct | ConvParam |
class | CudaUtil |
class | DFMBPSROIAlignPlugin |
class | GPUL2Norm |
class | Inference |
class | Layer |
class | Logger |
class | ObstacleDetector |
class | OnnxObstacleDetector |
class | RCNNProposalPlugin |
class | ReLUPlugin |
class | ROIPoolingLayer |
class | RPNProposalSSDPlugin |
class | RTNet |
class | SLICEPlugin |
class | SoftmaxPlugin |
class | TorchDet |
class | TorchNet |
Typedefs | |
using | BlobPtr = std::shared_ptr< apollo::perception::base::Blob< float > > |
typedef std::map< std::string, std::shared_ptr< apollo::perception::base::Blob< float > > > | BlobMap |
typedef std::map< std::string, std::vector< nvinfer1::Weights > > | WeightMap |
typedef std::map< std::string, nvinfer1::ITensor * > | TensorMap |
typedef std::map< std::string, nvinfer1::DimsCHW > | TensorDimsMap |
typedef std::map< std::string, std::string > | TensorModifyMap |
Functions | |
Inference * | CreateInferenceByName (const std::string &name, const std::string &proto_file, const std::string &weight_file, const std::vector< std::string > &outputs, const std::vector< std::string > &inputs, const std::string &model_root="") |
void | bbox_transform_inv_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *deltas, const int num_box, const int num_channel, float *out_boxes) |
void | clip_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, float *boxes, const float height, const float width) |
void | filter_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *scores, const float *all_probs, const int num_box, const int num_channel, const int num_class, const int num_prob, const int filter_channel, const int filter_class, const int min_size_mode, const float min_size_h, const float min_size_w, const float threshold_score, float *filtered_boxes, float *filtered_scores, float *filtered_all_probs, int *filtered_count) |
void | keep_topN_boxes_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *boxes, const float *scores, const float *all_probs, const int *indexes, const int *count, const bool keep_score, const int num_box, const int num_prob, const int topN, float *out_boxes, float *out_scores, float *out_all_probs) |
void | repeatedly_add_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const float *add_vec, int add_vec_size) |
void | repeatedly_mul_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const float *mul_vec, int mul_vec_size) |
void | slice2d_cuda (int block_size, int thread_size, int shared_mem, cudaStream_t stream, const int nthreads, const float *in_data, float *out_data, const int *slice_axises, int slice_axis_num, int input_axis_size) |
void | NmsForward (bool rpn_proposal_output_score, int host_filter_count, int num_box_corners, float nms_overlap_threshold, int num_candidate, int top_n, int batch_id, int num_prob, float *dev_sorted_box_for_nms, float *scores, float *all_probs, float *out_boxes, int *acc_box_num, cudaStream_t stream) |
GPU Non-Maximum Suppresion for network output. More... | |
nvinfer1::DimsCHW | ReshapeDims (const nvinfer1::DimsCHW &dims, const nvinfer1::DimsCHW &inputDims) |
void | ParseNetParam (const NetParameter &net_param, TensorDimsMap *tensor_dims_map, std::map< std::string, std::string > *tensor_modify_map, std::vector< LayerParameter > *order) |
bool | modify_pool_param (PoolingParameter *pool_param) |
bool | ParserConvParam (const ConvolutionParameter &conv, ConvParam *param) |
nvinfer1::DimsCHW | getCHW (const nvinfer1::Dims &d) |
bool | ReadProtoFromTextFile (const std::string &filename, google::protobuf::Message *proto) |
bool | ReadProtoFromBinaryFile (const std::string &filename, google::protobuf::Message *proto) |
bool | loadNetParams (const std::string ¶m_file, NetParameter *param) |
std::string | locateFile (const std::string &path, const std::string &input) |
size_t | BinaryReadString (FILE *fp, char *name) |
size_t | BinaryWriteString (FILE *fp, const std::string &str) |
template<typename Dtype > | |
std::shared_ptr< base::Blob< Dtype > > | BinaryReadBlob (FILE *fp) |
template<typename Dtype > | |
void | BinaryWriteBlob (FILE *fp, const base::Blob< Dtype > &blob) |
template<typename Dtype > | |
std::map< std::string, std::shared_ptr< base::Blob< Dtype > > > | BinaryReadFile (const char *file_path) |
template<typename Btype > | |
bool | BinaryWriteFile (const char *file_path, const std::map< std::string, Btype > &data_dict) |
void | GPUGemmFloat (const CBLAS_TRANSPOSE TransA, const CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const float alpha, const float *A, const float *B, const float beta, float *C) |
void | GPUMultiFloat (const int n, const float *a, const float *b, float *result) |
void | GPUMSetFloat (const int n, const float alpha, float *result) |
bool | ResizeGPU (const base::Image8U &src, std::shared_ptr< apollo::perception::base::Blob< float >> dst, int stepwidth, int start_axis) |
bool | ResizeGPU (const apollo::perception::base::Blob< uint8_t > &src_gpu, std::shared_ptr< apollo::perception::base::Blob< float >> dst, int stepwidth, int start_axis, int mean_b, int mean_g, int mean_r, bool channel_axis, float scale) |
bool | ResizeGPU (const base::Image8U &src, std::shared_ptr< apollo::perception::base::Blob< float >> dst, int stepwidth, int start_axis, float mean_b, float mean_g, float mean_r, bool channel_axis, float scale) |
template<typename T > | |
void | load_data (const std::string &filename, std::vector< T > *outputs) |
std::shared_ptr< float > | load_binary_data (const std::string &filename) |
bool | write_result (const std::string &out_path, const std::vector< float > &results) |
bool | write_result (const std::string &out_path, const std::map< std::string, std::vector< float >> &results) |
Variables | |
const std::map< EltwiseParameter::EltwiseOp, nvinfer1::ElementWiseOperation > | eltwise_map |
const std::map< std::string, nvinfer1::ActivationType > | active_map |
const std::vector< std::string > | _gpu_checklist |
constexpr size_t | kMaxStrLen = 64 |
constexpr int | kMinDim = 1 |
constexpr int | kMaxDim = std::numeric_limits<int>::max() |
typedef std::map<std::string, std::shared_ptr<apollo::perception::base::Blob<float> > > apollo::perception::inference::BlobMap |
typedef std::shared_ptr< apollo::perception::base::Blob< float > > apollo::perception::inference::BlobPtr |
typedef std::map< std::string, nvinfer1::DimsCHW > apollo::perception::inference::TensorDimsMap |
typedef std::map< std::string, nvinfer1::ITensor * > apollo::perception::inference::TensorMap |
typedef std::map<std::string, std::string> apollo::perception::inference::TensorModifyMap |
typedef std::map< std::string, std::vector< nvinfer1::Weights > > apollo::perception::inference::WeightMap |
void apollo::perception::inference::bbox_transform_inv_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | boxes, | ||
const float * | deltas, | ||
const int | num_box, | ||
const int | num_channel, | ||
float * | out_boxes | ||
) |
std::shared_ptr<base::Blob<Dtype> > apollo::perception::inference::BinaryReadBlob | ( | FILE * | fp | ) |
std::map<std::string, std::shared_ptr<base::Blob<Dtype> > > apollo::perception::inference::BinaryReadFile | ( | const char * | file_path | ) |
size_t apollo::perception::inference::BinaryReadString | ( | FILE * | fp, |
char * | name | ||
) |
void apollo::perception::inference::BinaryWriteBlob | ( | FILE * | fp, |
const base::Blob< Dtype > & | blob | ||
) |
bool apollo::perception::inference::BinaryWriteFile | ( | const char * | file_path, |
const std::map< std::string, Btype > & | data_dict | ||
) |
size_t apollo::perception::inference::BinaryWriteString | ( | FILE * | fp, |
const std::string & | str | ||
) |
void apollo::perception::inference::clip_boxes_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
float * | boxes, | ||
const float | height, | ||
const float | width | ||
) |
Inference* apollo::perception::inference::CreateInferenceByName | ( | const std::string & | name, |
const std::string & | proto_file, | ||
const std::string & | weight_file, | ||
const std::vector< std::string > & | outputs, | ||
const std::vector< std::string > & | inputs, | ||
const std::string & | model_root = "" |
||
) |
void apollo::perception::inference::filter_boxes_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | boxes, | ||
const float * | scores, | ||
const float * | all_probs, | ||
const int | num_box, | ||
const int | num_channel, | ||
const int | num_class, | ||
const int | num_prob, | ||
const int | filter_channel, | ||
const int | filter_class, | ||
const int | min_size_mode, | ||
const float | min_size_h, | ||
const float | min_size_w, | ||
const float | threshold_score, | ||
float * | filtered_boxes, | ||
float * | filtered_scores, | ||
float * | filtered_all_probs, | ||
int * | filtered_count | ||
) |
|
inline |
void apollo::perception::inference::GPUGemmFloat | ( | const CBLAS_TRANSPOSE | TransA, |
const CBLAS_TRANSPOSE | TransB, | ||
const int | M, | ||
const int | N, | ||
const int | K, | ||
const float | alpha, | ||
const float * | A, | ||
const float * | B, | ||
const float | beta, | ||
float * | C | ||
) |
void apollo::perception::inference::GPUMSetFloat | ( | const int | n, |
const float | alpha, | ||
float * | result | ||
) |
void apollo::perception::inference::GPUMultiFloat | ( | const int | n, |
const float * | a, | ||
const float * | b, | ||
float * | result | ||
) |
void apollo::perception::inference::keep_topN_boxes_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | boxes, | ||
const float * | scores, | ||
const float * | all_probs, | ||
const int * | indexes, | ||
const int * | count, | ||
const bool | keep_score, | ||
const int | num_box, | ||
const int | num_prob, | ||
const int | topN, | ||
float * | out_boxes, | ||
float * | out_scores, | ||
float * | out_all_probs | ||
) |
std::shared_ptr<float> apollo::perception::inference::load_binary_data | ( | const std::string & | filename | ) |
void apollo::perception::inference::load_data | ( | const std::string & | filename, |
std::vector< T > * | outputs | ||
) |
bool apollo::perception::inference::loadNetParams | ( | const std::string & | param_file, |
NetParameter * | param | ||
) |
std::string apollo::perception::inference::locateFile | ( | const std::string & | path, |
const std::string & | input | ||
) |
bool apollo::perception::inference::modify_pool_param | ( | PoolingParameter * | pool_param | ) |
void apollo::perception::inference::NmsForward | ( | bool | rpn_proposal_output_score, |
int | host_filter_count, | ||
int | num_box_corners, | ||
float | nms_overlap_threshold, | ||
int | num_candidate, | ||
int | top_n, | ||
int | batch_id, | ||
int | num_prob, | ||
float * | dev_sorted_box_for_nms, | ||
float * | scores, | ||
float * | all_probs, | ||
float * | out_boxes, | ||
int * | acc_box_num, | ||
cudaStream_t | stream | ||
) |
GPU Non-Maximum Suppresion for network output.
[in] | rpn_proposal_output_score | Whether to output scores |
[in] | host_filter_count | Number of filtered output |
[in] | num_box_corners | Number of corners for 2D box |
[in] | nms_overlap_threshold | IOU threshold for NMS |
[in] | num_candidate | Pre-defined maximum number of candidates |
[in] | top_n | Pre-defined maximum number of output boxes |
[in] | batch_id | Id of current batch instance |
[in] | num_prob | Number of probs |
[in] | dev_sorted_box_for_nms | Bounding box output sorted by score |
[in] | scores | Scores of boxes |
[in] | all_probs | Probs of boxes for all classes and objectness |
[in] | out_boxes | Output boxes |
[in] | acc_box_num | Accumulated box num |
NMS in GPU and postprocessing for selecting box in CPU
void apollo::perception::inference::ParseNetParam | ( | const NetParameter & | net_param, |
TensorDimsMap * | tensor_dims_map, | ||
std::map< std::string, std::string > * | tensor_modify_map, | ||
std::vector< LayerParameter > * | order | ||
) |
bool apollo::perception::inference::ParserConvParam | ( | const ConvolutionParameter & | conv, |
ConvParam * | param | ||
) |
bool apollo::perception::inference::ReadProtoFromBinaryFile | ( | const std::string & | filename, |
google::protobuf::Message * | proto | ||
) |
bool apollo::perception::inference::ReadProtoFromTextFile | ( | const std::string & | filename, |
google::protobuf::Message * | proto | ||
) |
void apollo::perception::inference::repeatedly_add_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | in_data, | ||
float * | out_data, | ||
const float * | add_vec, | ||
int | add_vec_size | ||
) |
void apollo::perception::inference::repeatedly_mul_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | in_data, | ||
float * | out_data, | ||
const float * | mul_vec, | ||
int | mul_vec_size | ||
) |
nvinfer1::DimsCHW apollo::perception::inference::ReshapeDims | ( | const nvinfer1::DimsCHW & | dims, |
const nvinfer1::DimsCHW & | inputDims | ||
) |
bool apollo::perception::inference::ResizeGPU | ( | const base::Image8U & | src, |
std::shared_ptr< apollo::perception::base::Blob< float >> | dst, | ||
int | stepwidth, | ||
int | start_axis | ||
) |
bool apollo::perception::inference::ResizeGPU | ( | const apollo::perception::base::Blob< uint8_t > & | src_gpu, |
std::shared_ptr< apollo::perception::base::Blob< float >> | dst, | ||
int | stepwidth, | ||
int | start_axis, | ||
int | mean_b, | ||
int | mean_g, | ||
int | mean_r, | ||
bool | channel_axis, | ||
float | scale | ||
) |
bool apollo::perception::inference::ResizeGPU | ( | const base::Image8U & | src, |
std::shared_ptr< apollo::perception::base::Blob< float >> | dst, | ||
int | stepwidth, | ||
int | start_axis, | ||
float | mean_b, | ||
float | mean_g, | ||
float | mean_r, | ||
bool | channel_axis, | ||
float | scale | ||
) |
void apollo::perception::inference::slice2d_cuda | ( | int | block_size, |
int | thread_size, | ||
int | shared_mem, | ||
cudaStream_t | stream, | ||
const int | nthreads, | ||
const float * | in_data, | ||
float * | out_data, | ||
const int * | slice_axises, | ||
int | slice_axis_num, | ||
int | input_axis_size | ||
) |
bool apollo::perception::inference::write_result | ( | const std::string & | out_path, |
const std::vector< float > & | results | ||
) |
bool apollo::perception::inference::write_result | ( | const std::string & | out_path, |
const std::map< std::string, std::vector< float >> & | results | ||
) |
const std::vector<std::string> apollo::perception::inference::_gpu_checklist |
const std::map<std::string, nvinfer1::ActivationType> apollo::perception::inference::active_map |
const std::map<EltwiseParameter::EltwiseOp, nvinfer1::ElementWiseOperation> apollo::perception::inference::eltwise_map |
constexpr int apollo::perception::inference::kMaxDim = std::numeric_limits<int>::max() |
constexpr size_t apollo::perception::inference::kMaxStrLen = 64 |
constexpr int apollo::perception::inference::kMinDim = 1 |