Skip to content

Commit f0700dc

Browse files
BulbaWarriorVlad Kalmykov
andauthored
add read_network_from buffers example (#138)
Co-authored-by: Vlad Kalmykov <[email protected]>
1 parent 7ef481c commit f0700dc

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

crates/openvino/tests/setup.rs

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
mod fixtures;
33

44
use fixtures::alexnet::Fixture;
5-
use openvino::Core;
5+
use openvino::{Core, Shape, Tensor};
6+
7+
use std::fs;
68

79
#[test]
810
fn read_network() {
@@ -18,3 +20,23 @@ fn read_network() {
1820
assert_eq!(read_model.get_inputs_len(), Ok(1));
1921
assert_eq!(read_model.get_outputs_len(), Ok(1));
2022
}
23+
24+
#[test]
25+
fn read_network_from_buffers() {
26+
let mut core = Core::new().unwrap();
27+
let graph = fs::read(&Fixture::graph()).unwrap();
28+
let weights = {
29+
let weights = fs::read(&Fixture::weights()).unwrap();
30+
let shape = Shape::new(&[1, weights.len() as i64]).unwrap();
31+
let mut tensor = Tensor::new(openvino::ElementType::U8, &shape).unwrap();
32+
let buffer = tensor.get_raw_data_mut().unwrap();
33+
buffer.copy_from_slice(&weights);
34+
tensor
35+
};
36+
37+
let read_model = core.read_model_from_buffer(&graph, Some(&weights)).unwrap();
38+
39+
// Check the number of inputs and outputs.
40+
assert_eq!(read_model.get_inputs_len(), Ok(1));
41+
assert_eq!(read_model.get_outputs_len(), Ok(1));
42+
}

0 commit comments

Comments
 (0)