Can you explain values of imgIdx and trainIdx in this example of cv.match?

My question was answered on Wrong order of fields in DMatch. · Issue #27336 · opencv/opencv · GitHub.

The issue was caused by too “shallow” input arrays, they have to be 3D as shown below:

bf.add(np.array([[[0], [1], [2]]], dtype='f4'))  # train image 0
bf.add(np.array([[[0.1], [1.1], [2.1]]], dtype='f4'))  # train image 1

Forcing matches to use variable length descriptor arrays from individual images is not possible in this example.