openvino
openvino copied to clipboard
[Good First Issue]: Extend C API interface
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
@riverlijunjie
Ticket
No response
Hi i like to start with this issue
Hi @Aditya-Choudhry, the task is yours.
Best regards, Roman
@Aditya-Choudhry please go ahead! Let me know if you have any problem.
@Aditya-Choudhry please go ahead! Let me know if you have any problem.
I am solving it i hope i have atleast 1 week to work on it i am currently studying it and if you have any update or connect with me i am leaving my discord id for connection https://discord.com/invite/QTSkgUUc
Hello @Aditya-Choudhry, are you still working on that issue?
"Indeed, I am actively addressing the issue by expanding the library to incorporate additional features. I've recently become engaged with some college-related commitments, but rest assured, I am committed to completing the task by the end of February."
Hello @Aditya-Choudhry, are there any updates?
.take
Thank you for looking into this issue! Please let us know if you have any questions or require any help.
Hello @Pranshu-S, are you still working on this?
Wellp, looks interesting and spicy, I'd like to try myself to complete this task :D I don't have any particular completion date, but I'll try to fit in 1,5 weeks. Wish me good luck :DDD
it's yours now @MenCodermin :)
Hi @mlukasze I am new to the community want to work on this issue please assign it to me
sure thing, good luck @Anirudh77715
I'm unassigning the task due to assignee's inactivity.
@p-wysocki I was looking at taking this as my first issue but to me it looks like it's already implemented by https://github.com/openvinotoolkit/openvino/pull/23718 ?
@p-wysocki I was looking at taking this as my first issue but to me it looks like it's already implemented by #23718 ?
This PR is for multi_channels scale and mean of preprocess, besides them, we also need extend more C API interfaces from C++.
Thank you for looking into this issue! Please let us know if you have any questions or require any help.
Thanks for being interested in this issue. It looks like this ticket is already assigned to a contributor. Please communicate with the assigned contributor to confirm the status of the issue.
@mlukasze could you assign this issue to me ?
@mlukasze , I was working on it from my previous account which got suspended, would appreciate it if you could assign it to me on this account. Thank!!
@p-wysocki, I was working on this issue from my previous account until it got suspended, would appreciate it if you could assign it to this account of mine !! Thanks
Hello @Raghavyadav17, I assigned the issue to you. :)
Hi @p-wysocki thanks for assigning it to me, really appreciate it !!! Thanks
Hello @Raghavyadav17, are you still working on that issue?
@p-wysocki hi, yes i am still working on this issue, a PR would be created for this issue and all the others ones by today itself
Reopening the task due to inactivity.
@p-wysocki @mlukasze I am thinking to take this task up. But I am not sure of the scope of this task. Could you guys clarify as to what needs to be done and please assign this to me?
@riverlijunjie please answer for @nashez
C API is used to encapsulate native C++ API, any C++ API that is in demand can be encapsulated into C API, I think it depends on the demand of C application, according to the previous requirement, we can encapsulate more API about preprocessing.