aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/QuantizerVisitor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/QuantizerVisitor.cpp')
-rw-r--r--src/armnn/QuantizerVisitor.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/armnn/QuantizerVisitor.cpp b/src/armnn/QuantizerVisitor.cpp
index 110594c1ab..95f7c50735 100644
--- a/src/armnn/QuantizerVisitor.cpp
+++ b/src/armnn/QuantizerVisitor.cpp
@@ -11,9 +11,10 @@
namespace armnn
{
-QuantizerVisitor::QuantizerVisitor(const RangeTracker& rangeTracker)
+QuantizerVisitor::QuantizerVisitor(const RangeTracker& rangeTracker, const IQuantizationScheme* quantizationScheme)
: m_Ranges(rangeTracker)
, m_QuantizedNetwork(INetwork::Create())
+ , m_QuantizationScheme(quantizationScheme)
{
}
@@ -45,11 +46,11 @@ void QuantizerVisitor::SetQuantizedInputConnections(const IConnectableLayer* src
// Fetch the min/max ranges that were computed earlier
auto range = m_Ranges.GetRange(layerToFind.GetGuid(), slotIdx);
- auto qParams = ComputeQAsymmParams(8, range.first, range.second);
+ OffsetScalePair qParams = m_QuantizationScheme->ComputeScheme(range.first, range.second);
// Set the quantization params
TensorInfo info(newOutputSlot.GetTensorInfo());
- info.SetDataType(DataType::QuantisedAsymm8);
+ info.SetDataType(m_QuantizationScheme->GetDataType());
info.SetQuantizationOffset(qParams.second);
info.SetQuantizationScale(qParams.first);
newOutputSlot.SetTensorInfo(info);