bytedeco/javacpp

Mat indexer ignores 4th dimension

Open

#701 aperta il 7 ago 2023

Vedi su GitHub
 (2 commenti) (0 reazioni) (1 assegnatario)Java (620 fork)batch import
enhancementhelp wanted

Metriche repository

Star
 (4279 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

I create a 4dim matrix and then print the elements using createIndexer.toString() code:

	public void testToString4D() {

		Mat mat = mat4d(5, 4, 2, 3);
		System.out.println(mat.createIndexer().toString());
	}

	private Mat mat4d(int s1, int s2, int s3, int s4) {
		int[] data = new int[s1 * s2 * s3 * s4];
		for (int n = 0; n < s1 * s2 * s3 * s4; n++)
			data[n] = n;
		Mat mat = new Mat(data).reshape(1, 4, new int[] { s1, s2, s3, s4 });
		return mat;
	}


It shows

[ (0.0, 3.0), (6.0, 9.0), (12.0, 15.0), (18.0, 21.0)
  (24.0, 27.0), (30.0, 33.0), (36.0, 39.0), (42.0, 45.0)
  (48.0, 51.0), (54.0, 57.0), (60.0, 63.0), (66.0, 69.0)
  (72.0, 75.0), (78.0, 81.0), (84.0, 87.0), (90.0, 93.0)
  (96.0, 99.0), (102.0, 105.0), (108.0, 111.0), (114.0, 117.0) ]

The deepest dimension is completely missing, instead it shows just a single double with what looks like the forst element of the deepest dimension

Guida contributor