Correct (fast) way to convert `Array2<RGBA8>` into `Array3<u8>`?
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 20/100
Research direction
Start by reproducing the .to_pyarray() failure with an Array2<RGBA8> and inspect the existing ndarray-to-NumPy conversion entry points. Determine whether a zero-copy or one-copy conversion is supported, then document or implement the accepted approach and verify its performance and resulting shape.
Written by the indexing model from the issue text.
Description
Hi thanks for the lib!
Context: I have a color image Array2<RGBA8>, and want to visualize it using rust-numpy lib (a binding to python numpy). However, .to_pyarray() complains, so I should convert it into Array3<u8>.
Question: How can I do that - what is the correct/fast way to do so? IMHO the fastest way should even have no memory copy at all, since RGBA8 is compact 4-byte data. But one memory copy is also acceptable.
I have come up with a very slow method but I hope there are other ways: extract Array2<RGBA8> into four Array<u8> for each of 4 channels, and stack! them together. Its performance seems to be quite slow.
- Dominant language
- Rust
- Stars
- 4.3k
- Forks
- 391
- PR merge metrics
- No merged PRs in 30d
Getting set up
We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from rust-ndarray/ndarray
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
rust-ndarray/ndarray#1612 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
rust-ndarray/ndarray#1617 · 1 comment ·
-
bug good first issue
Difficulty 3/5 1-2 days Newbie friendliness 68/100
rust-ndarray/ndarray#1615 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
rust-ndarray/ndarray#1610 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 72/100
rust-ndarray/ndarray#1609 ·
All issues in rust-ndarray/ndarray
Similar issues
-
`categorize_command` has no `uv` arm, so every `rtk uv …` row counts as `other` in the ecosystem mixOpenarea:api bug good first issue priority:low
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
area/cli kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
good first issue open-endedness: low type: new feature
Difficulty 2/5 1-3 hours Newbie friendliness 72/100