I am struggling to understand what is an IInputArrayOfArrays.
It's a bit confusing when you check the docs of OpenCV or EmguCV and most of the functions got IInputArray or IOutputArray on the function parameters, but with some search you get to know that it means basically a Mat.
But in this case, I thought that a IInputArrayOfArrays must be an array of Mat, but this is not working on C#:
Mat[] channels = hsv.Split();
channels[1] = customMask;
CvInvoke.Merge(channels, hsv);
Because Can't convert from Emgu.CV.Mat[] to Emgu.CV.IInputArrayOfArrays.
Since the Split() function returns Mat[], it would be logical that the Merge() function (that is exactly the opposite of the Split()) needs a Mat[] also...