金字塔向上、下采樣(圖片的大小轉換)
程式碼:
OpenFileDialog of = new OpenFileDialog();
if (of.ShowDialog() != DialogResult.OK)
{ return; }
Mat scr = new Mat(of.FileName, Emgu.CV.CvEnum.LoadImageType.AnyColor);
Mat dst = new Mat();
CvInvoke.PyrDown(scr, dst);//金字塔向下取樣,使dst圖片的長,寬是scr圖片的一半,面積是以前的1/4(4分之1)
Mat dst1 = new Mat();
imageBox1.Image = scr ;
imageBox2.Image = dst;
CvInvoke.PyrUp (scr, dst1);//金字塔向上取樣,使dst圖片的長、寬是scr圖片的2倍,面積是以前的4倍
imageBox3.Image = dst1;
API:
/// <summary>
/// 高斯金字塔向下取樣 長度、寬度是原來的一半,面積是以前的1/4(4分之1)
/// </summary>
/// <param name="src">源圖</param>
/// <param name="dst">輸出影象</param>
/// <param name="borderType">邊界型別 default</param>
public static void PyrDown(IInputArray src, IOutputArray dst, BorderType borderType = BorderType.Default);
/// <summary>
/// 高斯金字塔向上取樣 長度、寬度是原來的2倍,面積是以前的4倍.
/// </summary>
/// <param name="src">源圖</param>
/// <param name="dst">輸出影象</param>
/// <param name="borderType">邊界型別 default</param>
public static void PyrUp(IInputArray src, IOutputArray dst, BorderType borderType = BorderType.Default);