Skip to content
/ nshare Public

Provides an interface layer to convert between n-dimensional types in different Rust crates

License

Notifications You must be signed in to change notification settings

rust-cv/nshare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nshare

Discord Crates.io MIT/Apache docs.rs LoC ci

Provides traits that allow conversion between n-dimensional types in different Rust crates

NOTE: By default, this crate includes conversions for all supported crates. If you want to limit compilation, use no-default-features = true enable the corresponding feature for each dependency:

  • nalgebra
  • ndarray
  • image

When two crate features are enabled, any available conversions between the two crates are turned on.

Limitations

Right now this crate really only provides conversions to owned and borrowed ndarray types. Some limitations exist with nalgebra, as it only utilizes positive strides, while ndarray supports negative strides as well. The image crate has no concept of strides. Due to this, the ndarray crate is the most flexible, and is ideal for interoperability between these various crates.

nalgebra currently does not offer a solution to directly pass it an owned vector from ndarray, so into conversions do perform a copy. It is recommended to create the owned copy in nalgebra and then borrow a mutable array view of it using ndarray. You can then populate it accordingly without any copies of the data.

About

Provides an interface layer to convert between n-dimensional types in different Rust crates

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages