ToBitmap() public static method

Converts Mat to System.Drawing.Bitmap
public static ToBitmap ( this src ) : Bitmap
src this Mat
return System.Drawing.Bitmap
Exemplo n.º 1
0
        /// <summary>
        /// MatをBitmapSourceに変換する.
        /// </summary>
        /// <param name="src">変換するMat</param>
        /// <returns>WPFのBitmapSource</returns>
#else
        /// <summary>
        /// Converts Mat to BitmapSource.
        /// </summary>
        /// <param name="src">Input Mat</param>
        /// <returns>BitmapSource</returns>
#endif
        public static BitmapSource ToBitmapSource(this Mat src)
        {
            if (src == null)
            {
                throw new ArgumentNullException("src");
            }

            using (Bitmap bitmap = BitmapConverter.ToBitmap(src))
            {
                return(ToBitmapSource(bitmap));
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// IplImageをWriteableBitmapに変換する. 引数はWriteableBitmapのコンストラクタに相当する.
        /// </summary>
        /// <param name="src">変換するIplImage</param>
        /// <returns>WPFのWriteableBitmap</returns>
#else
        /// <summary>
        /// Converts IplImage to BitmapSource.
        /// </summary>
        /// <param name="src">Input IplImage</param>
        /// <returns>BitmapSource</returns>
#endif
        public static BitmapSource ToBitmapSource(this IplImage src)
        {
            if (src == null)
            {
                throw new ArgumentNullException("src");
            }

            using (System.Drawing.Bitmap bitmap = BitmapConverter.ToBitmap(src))
            {
                IntPtr hBitmap = bitmap.GetHbitmap();

                BitmapSource bs = Imaging.CreateBitmapSourceFromHBitmap(
                    hBitmap,
                    IntPtr.Zero,
                    Int32Rect.Empty,
                    BitmapSizeOptions.FromEmptyOptions()
                    );

                DeleteObject(hBitmap);
                return(bs);
            }
        }