-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Good First Issue][TF FE]: Support AdjustHue operation for TensorFlow #24033
Comments
#WLB#+ .take |
Thank you for looking into this issue! Please let us know if you have any questions or require any help. |
Hi @psmaxwell, any update on this task? |
Hi @psmaxwell, I released this one ticket because you have another one. Please complete that one. Best regards, |
.take |
Thank you for looking into this issue! Please let us know if you have any questions or require any help. |
Hi @oxkitsune, any update on this task? |
Yes! It took me a bit to get my environment set up on macos, but I got it working. Working on this issue now! |
Good reference how it was implemented for |
.take |
Thank you for looking into this issue! Please let us know if you have any questions or require any help. |
### Details: - Adapt from #24511 . Converting code repeated. Instead import from there? - Converting logic a little different from https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/image/adjust_hue_op.cc . Maybe less efficient? ### Tickets: - #24033 Sorry, commit history is wrong, should have created branch from latest upstream. --------- Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
@duydl, congrats with another one merge. Let us go back to Best regards, |
### Details: - Using #24033, implemented and registered loader for HSVToRGB using already existing logic. - Created unit test test_tf_HSVToRGB.py ### Tickets: - #24791 Currently, my pytest is saying that for the unit test and for test_tf_AdjustHue.py and test_tf_AdjustSaturation.py the loader is not found. --------- Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
) ### Details: - Using openvinotoolkit#24033, implemented and registered loader for HSVToRGB using already existing logic. - Created unit test test_tf_HSVToRGB.py ### Tickets: - openvinotoolkit#24791 Currently, my pytest is saying that for the unit test and for test_tf_AdjustHue.py and test_tf_AdjustSaturation.py the loader is not found. --------- Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
### Details: - Adapt from openvinotoolkit#24511 . Converting code repeated. Instead import from there? - Converting logic a little different from https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/image/adjust_hue_op.cc . Maybe less efficient? ### Tickets: - openvinotoolkit#24033 Sorry, commit history is wrong, should have created branch from latest upstream. --------- Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
) ### Details: - Using openvinotoolkit#24033, implemented and registered loader for HSVToRGB using already existing logic. - Created unit test test_tf_HSVToRGB.py ### Tickets: - openvinotoolkit#24791 Currently, my pytest is saying that for the unit test and for test_tf_AdjustHue.py and test_tf_AdjustSaturation.py the loader is not found. --------- Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
Context
OpenVINO component responsible for support of TensorFlow models is called as TensorFlow Frontend (TF FE). TF FE converts a model represented in TensorFlow opset to a model in OpenVINO opset.
In order to infer TensorFlow models with AdjustHue operation by OpenVINO, TF FE needs to be extended with this operation support.
What needs to be done?
For AdjustHue operation support, you need to implement the corresponding loader into TF FE op directory and to register it into the dictionary of Loaders. One loader is responsible for conversion (or decomposition) of one type of TensorFlow operation.
Here is an example of loader implementation for TensorFlow
Einsum
operation:In this example,
translate_einsum_op
converts TFEinsum
into OVEinsum
.NodeContext
object passed into the loader packs all info about inputs and attributes ofEinsum
operation. The loader retrieves an attribute of the equation by using theNodeContext::get_attribute()
method, prepares input vector, createsEinsum
operation from OV opset and returns a vector of outputs.Responsibility of a loader is to parse operation attributes, prepare inputs and express TF operation via OV operations sub-graph. Example for
Einsum
demonstrates the resulted sub-graph with one operation. In PR #19007 you can see operation decomposition into multiple node sub-graph.Once you are done with implementation of the translator, you need to implement the corresponding layer tests
test_tf_AdjustHue.py
and put it into layer_tests/tensorflow_tests directory. Example how to run some layer test:Example Pull Requests
Resources
Contact points
Ticket
No response
The text was updated successfully, but these errors were encountered: