Emgu CV 

 
 

โอเพ่นซอร์ส .NET Image Processing Library 

C# API ช่วยให้นักพัฒนาซอฟต์แวร์สามารถจับภาพจากกล้องหรือไฟล์วิดีโอ รองรับการแปลงรูปเรขาคณิต และอื่นๆ อีกมากมาย

Emgu CV เป็น wrapper .NET ข้ามแพลตฟอร์มแบบโอเพนซอร์สไปยังไลบรารีประมวลผลภาพ OpenCV ที่ช่วยให้นักพัฒนาซอฟต์แวร์สามารถสร้างและจัดการรูปภาพที่เรียบง่ายและขั้นสูงภายในแอป .NET ของตนเองได้ สามารถทำงานได้อย่างราบรื่นบน Windows, Linux, Mac OS, iOS และ Android ได้อย่างง่ายดาย

Emgu CV เป็นการนำ C# ไปใช้ในหลายภาษา รวมถึง C#, VB.NET, C++ และ IronPython ไลบรารีได้รวมคุณสมบัติที่สำคัญหลายประการที่เกี่ยวข้องกับการประมวลผลภาพ เช่น การสร้างภาพใหม่ การแก้ไขภาพ การจับภาพจากกล้องหรือไฟล์วิดีโอ การเขียนภาพไปยังรูปแบบวิดีโอ การแบ่งส่วนพื้นหลัง รองรับการแปลงทางเรขาคณิต รองรับการรู้จำอักขระด้วยแสง การต่อภาพ , และอื่น ๆ อีกมากมาย.

Previous Next

เริ่มต้นกับ Emgu CV

ในการรันโปรเจ็กต์ของคุณโดยใช้ Emgu CV ก่อนอื่น คุณต้องติดตั้ง .NET runtime หลังจากนั้น คุณสามารถดาวน์โหลดที่เก็บด้วยตนเองจาก GitHub ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง

ติดตั้ง Emgu CV ผ่าน GitHub

git clone https://github.com/emgucv/emgucv.git

การสร้างและจัดการภาพผ่าน .NET

ไลบรารี Emgu CV ฟรีช่วยให้โปรแกรมเมอร์ซอฟต์แวร์สร้างแอปที่สามารถสร้างและประมวลผลภาพได้อย่างง่ายดาย คุณสามารถสร้างภาพได้อย่างง่ายดาย แต่ขอแนะนำให้สร้างวัตถุรูปภาพ เมื่อใช้คลาสที่มีการจัดการ คุณจะมีข้อดีหลายประการ เช่น การจัดการหน่วยความจำอัตโนมัติ การรวบรวมขยะอัตโนมัติ และมีวิธีขั้นสูง เช่น การทำงานทั่วไปบนพิกเซลของรูปภาพ การแปลงเป็นบิตแมป และอื่นๆ คุณสามารถปรับขนาด ใช้สี ระบุความลึกของภาพ และอื่นๆ ได้อย่างง่ายดาย

สร้างภาพผ่าน .NET


  //Create an image of 400x200 of Blue color
  using (Image img = new Image(400, 200, new Bgr(255, 0, 0))) 
  {
    //Create the font
    MCvFont f = new MCvFont(CvEnum.FONT.CV_FONT_HERSHEY_COMPLEX, 1.0, 1.0);
    //Draw "Hello, world." on the image using the specific font
    img.Draw("Hello, world", ref f, new Point(10, 80), new Bgr(0, 255, 0)); 
    //Show the image using ImageViewer from Emgu.CV.UI
    ImageViewer.Show(img, "Test Window");
  }
  

การตรวจจับสัญญาณจราจรผ่าน .NET API

Emgu CV API โอเพ่นซอร์สได้รวมการสนับสนุนสำหรับการตรวจจับการร้องเพลงของทราฟฟิกอย่างง่ายดายโดยใช้คำสั่ง .NET ห้องสมุดช่วยให้นักพัฒนาตรวจจับสัญญาณหยุดจากภาพที่ถ่ายโดยกล้องซึ่งเป็นส่วนสำคัญของระบบนำทางรถยนต์อัตโนมัติ มีประโยชน์มากและสามารถช่วยให้รถยนต์เคลื่อนที่ได้อย่างปลอดภัยในสภาพแวดล้อมในเมือง ในขั้นตอนแรก นักพัฒนาจำเป็นต้องแยกสัญญาณไฟจราจรแปดเหลี่ยมสีแดง และพวกเขาสามารถใช้ SURF เพื่อจับคู่คุณลักษณะในภูมิภาคที่สมัครรับข้อมูลเพื่อให้ตรงกันได้

ทำการต่อภาพผ่าน CSharp

ไลบรารี Emgu CV ช่วยให้นักพัฒนาทำการต่อภาพภายในแอพของตนเองโดยใช้โค้ด C# เป็นกระบวนการที่มีประโยชน์มากในการรวมภาพถ่ายหลายภาพเข้าด้วยกันเพื่อสร้างภาพพาโนรามาแบบแบ่งส่วนหรือภาพความละเอียดสูง ไลบรารี่ต้องใช้โค้ดสองสามบรรทัดในการดำเนินการ แต่สิ่งสำคัญคือต้องจำไว้ว่าเพื่อให้ได้ผลลัพธ์ที่แม่นยำ จำเป็นต้องมีการซ้อนทับกันระหว่างรูปภาพและการเปิดรับแสงที่เหมือนกันเกือบทั้งหมด

เปลี่ยนภาพผ่าน .NET


    using (Stitcher stitcher = new Stitcher(
    //This indicate if the Stitcher should use GPU for processing. 
    //There is currently a bug in Open CV such that GPU processing cannot produce the correct result. 
    //Must specify false as parameter. Hope this will be fixed soon to enable GPU processing
    false 
    ))
  {
    Image result = stitcher.Stitch(sourceImages);
    // code to display or save the result 
  }
 ไทย