summaryrefslogtreecommitdiff
path: root/libavfilter/dnn_interface.h
Commit message (Collapse)AuthorAge
* avfilter/dnn: add a new interface to query dnn model's input infoGuo, Yejun2019-10-30
| | | | | | | | | | | | to support dnn networks more general, we need to know the input info of the dnn model. background: The data type of dnn model's input could be float32, uint8 or fp16, etc. And the w/h of input image could be fixed or variable. Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* avfilter/dnn: get the data type of network output from dnn execution resultGuo, Yejun2019-10-30
| | | | | | | | | | | so, we can make a filter more general to accept different network models, by adding a data type convertion after getting data from network. After we add dt field into struct DNNData, it becomes the same as DNNInputData, so merge them with one struct: DNNData. Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* dnn: export operand info in python script and load in c codeGuo, Yejun2019-08-30
| | | | | Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter/dnn: add more data type support for dnn model inputGuo, Yejun2019-05-08
| | | | | | | | currently, only float is supported as model input, actually, there are other data types, this patch adds uint8. Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter/dnn: support multiple outputs for tensorflow modelGuo, Yejun2019-05-08
| | | | | | | | | | | | some models such as ssd, yolo have more than one output. the clean up code in this patch is a little complex, it is because that set_input_output_tf could be called for many times together with ff_dnn_execute_model_tf, we have to clean resources for the case that the two interfaces are called interleaved. Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter/dnn: determine dnn output during execute_model instead of ↵Guo, Yejun2019-05-08
| | | | | | | | | | | | | | | | | | | set_input_output Currently, within interface set_input_output, the dims/memory of the tensorflow dnn model output is determined by executing the model with zero input, actually, the output dims might vary with different input data for networks such as object detection models faster-rcnn, ssd and yolo. This patch moves the logic from set_input_output to execute_model which is suitable for all the cases. Since interface changed, and so dnn_backend_native also changes. In vf_sr.c, it knows it's srcnn or espcn by executing the model with zero input, so execute_model has to be called in function config_props Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter/dnn: remove limit for the name of DNN model input/outputGuo, Yejun2019-05-08
| | | | | | | | remove the requirment that the name of DNN model input/output should be "x"/"y", Signed-off-by: Guo, Yejun <yejun.guo@intel.com> Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter: Removes stored DNN models. Adds support for native backend ↵Sergey Lavrushkin2018-09-17
| | | | | | model file format in tf backend. Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* libavfilter: Code style fixes for pointers in DNN module and sr filter.Sergey Lavrushkin2018-08-07
| | | | Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* Adds ESPCN super resolution filter merged with SRCNN filter.Sergey Lavrushkin2018-07-02
| | | | Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* Adds TensorFlow backend for dnn inference module.Sergey Lavrushkin2018-06-05
| | | | Signed-off-by: Pedro Arthur <bygrandao@gmail.com>
* Adds dnn inference module for simple convolutional networks. Reimplements ↵Sergey Lavrushkin2018-05-29
srcnn filter based on it. Signed-off-by: Pedro Arthur <bygrandao@gmail.com>