From f84353bccfa0dfbb278cc2d975e7154357ae060a Mon Sep 17 00:00:00 2001 From: Bin Liu Date: Thu, 2 May 2024 11:36:24 +0200 Subject: [PATCH] use non-square matrix to understand Size and range better --- test/OpenCvSharp.Tests/core/MatTest.cs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/test/OpenCvSharp.Tests/core/MatTest.cs b/test/OpenCvSharp.Tests/core/MatTest.cs index c921cb3c9..37c2b96b9 100644 --- a/test/OpenCvSharp.Tests/core/MatTest.cs +++ b/test/OpenCvSharp.Tests/core/MatTest.cs @@ -264,22 +264,22 @@ public void ColRange() public void SubMatRange() { var values = new byte[,] { - {1, 2, 3}, - {4, 5, 6}, - {7, 8, 9}}; + {1, 2, 3, 4}, + {5, 6, 7, 8}, + {9, 10,11,12}}; using var mat = Mat.FromArray(values); - Assert.Equal(new Size(3, 3), mat.Size()); + Assert.Equal(new Size(4, 3), mat.Size()); // OK - using var subMat1 = mat.SubMat(0..2, 1..3); - Assert.Equal(new Size(2, 2), subMat1.Size()); + using var subMat1 = mat.SubMat(0..2, 1..4); + Assert.Equal(new Size(3, 2), subMat1.Size()); Assert.True(subMat1.GetArray(out byte[] subMat1Array)); - Assert.Equal(new byte[] { 2, 3, 5, 6 }, subMat1Array); + Assert.Equal(new byte[] { 2, 3,4, 6,7,8 }, subMat1Array); using var subMat2 = mat[1..2, ..]; - Assert.Equal(new Size(3, 1), subMat2.Size()); + Assert.Equal(new Size(4, 1), subMat2.Size()); Assert.True(subMat2.GetArray(out byte[] subMat2Array)); - Assert.Equal(new byte[] { 4, 5, 6 }, subMat2Array); + Assert.Equal(new byte[] { 5, 6,7,8 }, subMat2Array); // out of range Assert.Throws(() => @@ -515,7 +515,7 @@ public void MatOfIntFromArray() [Fact] public void MatOfIntFromRectangularArray() { - var array = new[,] { { 1, 2 }, { 3, 4 } }; + var array = new[,] { { 1, 2 }, { 3, 4 },{ 5,6} }; using var m = Mat.FromArray(array); var indexer = m.GetIndexer();