arm_compute v17.12
diff --git a/utils/Utils.cpp b/utils/Utils.cpp
index 5316690..f6aff6f 100644
--- a/utils/Utils.cpp
+++ b/utils/Utils.cpp
@@ -167,5 +167,25 @@
 
     return std::make_tuple(width, height, max_val);
 }
+
+std::tuple<std::vector<unsigned long>, bool, std::string> parse_npy_header(std::ifstream &fs) //NOLINT
+{
+    std::vector<unsigned long> shape; // NOLINT
+
+    // Read header
+    std::string header = npy::read_header(fs);
+
+    // Parse header
+    bool        fortran_order = false;
+    std::string typestr;
+    npy::parse_header(header, typestr, fortran_order, shape);
+
+    if(!fortran_order)
+    {
+        std::reverse(shape.begin(), shape.end());
+    }
+
+    return std::make_tuple(shape, fortran_order, typestr);
+}
 } // namespace utils
 } // namespace arm_compute