Emgu CV
ספריית עיבוד תמונה בקוד פתוח .NET
C# API מאפשר למפתחי תוכנה ללכוד תמונות ממצלמה או מקובץ וידאו, תמיכה בטרנספורמציה גיאומטרית ועוד.
Emgu CV הוא עטיפת .NET חוצה פלטפורמות בקוד פתוח לספריית עיבוד התמונה של OpenCV המעניקה למפתחי תוכנה את היכולת לבצע יצירה ומניפולציה פשוטה ומתקדמת של תמונות בתוך יישומי .NET משלהם. ניתן להפעיל אותו בצורה חלקה על Windows, Linux, Mac OS, iOS ו- Android בקלות.
Emgu CV הוא מימוש C# טהור שניתן להשתמש בו במספר שפות שונות, כולל C#, VB.NET, C++ ו-IronPython. הספרייה כללה מספר תכונות חשובות הקשורות לעיבוד תמונה כגון יצירת תמונה חדשה, שינוי תמונות, לכידת תמונות ממצלמה או מקובץ וידאו, כתיבת תמונות לפורמט וידאו, פילוח רקע, תמיכה בטרנספורמציה גיאומטרית, תמיכה בזיהוי תווים אופטי, תפירת תמונות , ועוד רבים.
תחילת העבודה עם Emgu CV
כדי להריץ את הפרויקט שלך באמצעות Emgu CV, קודם כל, עליך להתקין זמן ריצה של .NET. לאחר מכן, תוכל להוריד את המאגר באופן ידני מ-GitHub. השתמש בפקודה הבאה כדי להתקין אותו.
התקן Emgu CV באמצעות GitHub
git clone https://github.com/emgucv/emgucv.git
יצירה וניהול תמונה באמצעות NET
ספריית Emgu CV החינמית מאפשרת למתכנתי תוכנה ליצור אפליקציות שיכולות ליצור ולעבד תמונות בקלות. אתה יכול ליצור תמונה בקלות אבל מומלץ לבנות אובייקט תמונה. באמצעות המחלקה המנוהלת ניתן לקבל מספר יתרונות כמו ניהול זיכרון אוטומטי, איסוף זבל אוטומטי ומכיל שיטות מתקדמות כמו פעולה גנרית על פיקסלים של תמונה, המרה ל-Bitmap וכדומה. אתה יכול בקלות להתאים את הגודל, להחיל צבע, לציין עומק תמונה ועוד הרבה יותר
צור תמונה באמצעות 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
}