diff options
Diffstat (limited to 'src/armnn/QuantizerVisitor.cpp')
-rw-r--r-- | src/armnn/QuantizerVisitor.cpp | 7 |
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); |