JeVois
1.20
JeVois Smart Embedded Machine Vision Toolkit
|
Share this page: |
|
|
|
 |
 |
|
Go to the documentation of this file.
31 void loadpy(std::string
const & pypath);
35 std::vector<cv::Mat>
doprocess(std::vector<cv::Mat>
const & outs, std::vector<std::string> & info);
56 LINFO(
"Loaded " << pypath);
70 std::vector<std::string> & info)
75 boost::python::tuple rett = boost::python::extract<boost::python::tuple>(ret);
76 if (boost::python::len(rett) != 2)
LFATAL(
"Expected tuple(list of output blobs, list of info strings)");
78 std::vector<cv::Mat> retm = jevois::python::pyListToVec<cv::Mat>(rett[0]);
79 info = jevois::python::pyListToVec<std::string>(rett[1]);
89 itsImpl = addSubComponent<jevois::dnn::NetworkPythonImpl>(
"pynet");
103 itsImpl->freeze(doit);
110 std::string
const & newval)
112 if (newval.empty() ==
false) itsImpl->loadpy(newval);
117 std::vector<std::string> & info)
118 {
return itsImpl->doprocess(outs, info); }
friend class Component
Allow Component and DynamicParameter to access our registry data, everyone else is locked out.
boost::python::list pyVecToList(std::vector< T > const &v)
Helper to convert std::vector<T> to python list.
boost::python::object & pyinst()
Get the python class pyinst, or throw if construction error occurred (e.g., file not found)
A component of a model hierarchy.
std::vector< vsi_nn_tensor_attr_t > outputShapes() override
Get shapes of all output tensors.
virtual void freeze(bool doit)
Freeze/unfreeze parameters that users should not change while running.
std::vector< vsi_nn_tensor_attr_t > parseTensorSpecs(std::string const &specs)
Parse tensor specification.
std::vector< cv::Mat > doprocess(std::vector< cv::Mat > const &blobs, std::vector< std::string > &info) override
Process input blobs and obtain output blobs.
virtual ~NetworkPythonImpl()
void loadpy(std::string const &pypath)
bool hasattr(boost::python::object &o, char const *name)
Check whether a boost::python::object has an attribute.
std::vector< vsi_nn_tensor_attr_t > inputShapes() override
Get shapes of all input tensors.
std::vector< cv::Mat > doprocess(std::vector< cv::Mat > const &outs, std::vector< std::string > &info)
#define LFATAL(msg)
Convenience macro for users to print out console or syslog messages, FATAL level.
virtual ~NetworkPython()
Destructor.
void pythonload(std::string const &path)
Init from path if default constructor was used.
void freeze(bool doit) override
Freeze/unfreeze parameters that users should not change while running.
void onParamChange(network::pynet const ¶m, std::string const &newval) override
std::shared_ptr< NetworkPythonImpl > itsImpl
Helper class to run python code from C++.
NetworkPython(std::string const &instance)
Constructor.
#define LINFO(msg)
Convenience macro for users to print out console or syslog messages, INFO level.
void load() override
Load from disk.
Abstract class to represent a neural network.