Instead of using the Mat type, I suggest using the IplImage type. Take the following code example as a link (I am using VisualStudio2013 with OpenCvSharp2):
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using OpenCvSharp; using System.Drawing; namespace TestOpenCVSharp { class Program { static void Main(string[] args) {
This is your Lenna image input:

And this is bitmap.png created from the Bitmap type:

Hope this helps!
Update:
Using OpenCVSharp3, the following code can also convert a Mat type to a Bitmap type:
Mat image = new Mat(@"Lenna.png"); Cv2.ImShow("image", image); Cv2.WaitKey(); Bitmap bitimg = MatToBitmap(image);
with function:
public static Bitmap MatToBitmap(Mat image) { return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(image); }
And the result will be the same as shown above.
Derman
source share