Skip to content
This repository was archived by the owner on Nov 27, 2024. It is now read-only.

Commit da3a66d

Browse files
committed
Support for DenseTensor<bool>
1 parent 9f42b0e commit da3a66d

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

OnnxStack.Core/Extensions/OrtValueExtensions.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,31 @@ public static OrtValue ToOrtValue(this DenseTensor<long> tensor, OnnxNamedMetada
5959
return OrtValue.CreateTensorValueFromMemory(OrtMemoryInfo.DefaultInstance, tensor.Buffer, tensor.Dimensions.ToLong());
6060
}
6161

62+
63+
/// <summary>
64+
/// Converts DenseTensor<double> to OrtValue.
65+
/// </summary>
66+
/// <param name="tensor">The tensor.</param>
67+
/// <param name="metadata">The metadata.</param>
68+
/// <returns></returns>
6269
public static OrtValue ToOrtValue(this DenseTensor<double> tensor, OnnxNamedMetadata metadata)
6370
{
6471
return OrtValue.CreateTensorValueFromMemory(OrtMemoryInfo.DefaultInstance, tensor.Buffer, tensor.Dimensions.ToLong());
6572
}
6673

6774

75+
/// <summary>
76+
/// Converts DenseTensor<bool> to OrtValue.
77+
/// </summary>
78+
/// <param name="tensor">The tensor.</param>
79+
/// <param name="metadata">The metadata.</param>
80+
/// <returns></returns>
81+
public static OrtValue ToOrtValue(this DenseTensor<bool> tensor, OnnxNamedMetadata metadata)
82+
{
83+
return OrtValue.CreateTensorValueFromMemory(OrtMemoryInfo.DefaultInstance, tensor.Buffer, tensor.Dimensions.ToLong());
84+
}
85+
86+
6887
/// <summary>
6988
/// Creates and allocates the output tensors buffer.
7089
/// </summary>

OnnxStack.Core/Model/OnnxInferenceParameters.cs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,18 @@ public void AddInput(OrtValue value)
3535
}
3636

3737

38+
/// <summary>
39+
/// Adds the input parameter.
40+
/// </summary>
41+
/// <param name="index">The index.</param>
42+
/// <param name="value">The value.</param>
43+
public void AddInput(int index, OrtValue value)
44+
{
45+
var metadata = _metadata.Inputs[index];
46+
_inputs.Add(metadata, value);
47+
}
48+
49+
3850
/// <summary>
3951
/// Adds the input tensor.
4052
/// </summary>
@@ -89,6 +101,17 @@ public void AddInputTensor(DenseTensor<long> value)
89101
}
90102

91103

104+
/// <summary>
105+
/// Adds the input tensor.
106+
/// </summary>
107+
/// <param name="value">The value.</param>
108+
public void AddInputTensor(DenseTensor<bool> value)
109+
{
110+
var metaData = GetNextInputMetadata();
111+
_inputs.Add(metaData, value.ToOrtValue(metaData));
112+
}
113+
114+
92115
/// <summary>
93116
/// Adds an output parameter with known output size.
94117
/// </summary>

0 commit comments

Comments
 (0)