openvinotoolkit/openvino

[Good First Issue]: Extend C API interface

Open

#22,001 建立於 2024年1月6日

在 GitHub 查看
 (37 留言) (0 反應) (1 負責人)C++ (3,229 fork)auto 404
category: C APIgood first issueno_stale

倉庫指標

Star
 (10,286 star)
PR 合併指標
 (平均合併 14天 3小時) (30 天內合併 305 個 PR)

描述

Context

  Thank you very much to OpenVINO for providing the C API interface, which has been very helpful for us to use OpenVINO in C language. The dynamic link library files encapsulated by the C language interface can be called in C # language.

  In previous development, I have also launched the OpenVINO CSharp API project, whose underlying implementation is to call the C API interface provided by OpenVINO and encapsulate it in the upper layer.

  However, currently the C API provided by OpenVINO only implements most of the interfaces, some of which have not yet been implemented, so we are unable to experience all the features of OpenVINO in C # and C language.

  So I hope to work together with the help of all developers to improve the unimplemented C API interface.

What needs to be done?

  For example, in the currently released C API, interfaces for setting "scale" and "mean" are provided, but currently only support setting all channels to the same parameter, and cannot set each channel parameter to be different, as shown below: https://github.com/openvinotoolkit/openvino/blob/b85c329554ddba68f760dbdb10882eac85d6bf68/src/bindings/c/include/openvino/c/ov_prepostprocess.h#L208-L226   In the C++interface, it provides interfaces that set the same parameters as all channels, as well as interfaces that set different parameters for different channels, as shown below: https://github.com/openvinotoolkit/openvino/blob/b85c329554ddba68f760dbdb10882eac85d6bf68/src/core/include/openvino/core/preprocess/preprocess_steps.hpp#L53-L81

  The above is just an example to illustrate a situation, and other interfaces also have the same situation, such as "InputTensorInfo&set_shape (const ov:: PartialShape&shape)" and other interfaces that have not been implemented. So I hope that through the efforts of all developers, we can implement interfaces that are not currently implemented in the C API.

Example Pull Requests

No response

Resources

Contact points

Ticket

No response

貢獻者指南