From 95807cef855738ca481ace30f32ed9f245a098dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89anna=20=C3=93=20Cath=C3=A1in?= Date: Mon, 12 Nov 2018 17:14:43 +0000 Subject: Tidying up multiple issues * Fixed error in InferOutputShape implementation * Added better error checking to the BatchToSpace implementation. * Added defaults to the batchToSpace descriptors. * Changed crops to be a vector of pairs to align with the SpaceToBatch implementation Change-Id: Ib1c16d871f0898a1caeb6629c1fee6380a773e14 --- .../reference/workloads/BatchToSpaceNd.cpp | 24 ++++++++++------------ 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'src/backends/reference/workloads/BatchToSpaceNd.cpp') diff --git a/src/backends/reference/workloads/BatchToSpaceNd.cpp b/src/backends/reference/workloads/BatchToSpaceNd.cpp index bedf8418ef..4313085ba5 100644 --- a/src/backends/reference/workloads/BatchToSpaceNd.cpp +++ b/src/backends/reference/workloads/BatchToSpaceNd.cpp @@ -34,23 +34,17 @@ void BatchToSpaceNd(const DataLayoutIndexed& dataLayout, const TensorInfo& inputTensorInfo, const TensorInfo& outputTensorInfo, const std::vector& blockShape, - const std::vector>& cropsData, + const std::vector>& cropsData, const float* inputData, float* outputData) { TensorShape inputShape = inputTensorInfo.GetShape(); - unsigned int inputNumDims = inputShape.GetNumDimensions(); - if (inputNumDims != 4) - { - throw armnn::InvalidArgumentException("Expected Input with 4 Dimensions"); - } + + BOOST_ASSERT_MSG(inputShape.GetNumDimensions() == 4, "Expected Input with 4 Dimensions"); TensorShape outputShape = outputTensorInfo.GetShape(); - unsigned int outputNumDims = outputShape.GetNumDimensions(); - if (outputNumDims != 4) - { - throw armnn::InvalidArgumentException("Expected Output with 4 Dimensions"); - } + + BOOST_ASSERT_MSG(outputShape.GetNumDimensions() == 4, "Expected Output with 4 Dimensions"); const unsigned int inputBatchSize = inputShape[0]; const unsigned int channels = inputShape[dataLayout.GetChannelsIndex()]; @@ -59,11 +53,15 @@ void BatchToSpaceNd(const DataLayoutIndexed& dataLayout, const unsigned int outputHeight = outputShape[dataLayout.GetHeightIndex()]; const unsigned int outputWidth = outputShape[dataLayout.GetWidthIndex()]; + BOOST_ASSERT_MSG(blockShape.size() > 0, "BlockShape must contain 1 or more entries"); + const unsigned int blockShapeHeight = blockShape[0]; const unsigned int blockShapeWidth = blockShape[1]; - const unsigned int cropsTop = cropsData[0][0]; - const unsigned int cropsLeft = cropsData[1][0]; + BOOST_ASSERT_MSG(cropsData.size() > 0, "Crops must contain 1 or more entries"); + + const unsigned int cropsTop = cropsData[0].first; + const unsigned int cropsLeft = cropsData[1].first; for (unsigned int inBatch = 0; inBatch < inputBatchSize; ++inBatch) { -- cgit v1.2.1