Upload
faradars
View
230
Download
95
Embed Size (px)
Citation preview
باتصویر پردازش
faradars.org/fvimg9405
: جلسه ششماستخراج خطوط، کانتورها و اجزاء
الهام شعبانی نیا:مدرسدانشجوی دکترای هوش مصنوعی
دانشگاه اصفهان
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
مقدمهصویر،تتشکیلدهندهپیکسلهایازمجموعهایازتااستضروریمحتوایی،لحاظازتصاویرتحلیلمنظوربه•
یکمحتوایکههستندپایهایالمانهای...وحبابهاخطوط،کانتورها،.نموداستخراجرامعناداریویژگیهای.شدهدخوادادهآموزششمابهمهمویژگیهایاینازبعضیاستخراجچگونگیجلسهایندر.میسازندراتصویر
2
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تشخیص کانتورهای تصویر با استفاده از عملگر کنی
3
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
عملگر کنی.کنیمشناساییتصویریکدررالبههاچگونهکهگرفتیمیادقبال•بههایلازباینریتصویریگرادیان،اندازهرویبرآستانهحدیکاعمالباچگونهکهدادیمنشانخاص،طوربه•
.میآیددستبهتصویراصلی.میباشندمهمیبصریاطالعاتشاملپسهستند،تصاویرالمانهایکنندهترسیملبههاکهآنجاییاز•خیمضمعموالًشدهشناساییلبههایآنکهاول:میبردرنجاساسیمشکلدوازلبههاباینریتصویرهرچند•
آستانهحدیافتنمهمتر،ودوممشکل.نیستامکانپذیراشیامرزهایدقیقمحلتعیینکهمعنااینبههستند،افیکحدبههمزمانودهدتشخیصراشیءمهملبههایتمامیکهباشدپایینکافیحدبهکهاستمناسبی
الگوریتمکهاستمسئلهایاین.نشودشاملنهاییباینریتصویردرراشیءمهمغیروناچیزلبههایتاباشدباال.کندحلراآنتااستکردهسعیکنی
4
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تابع کنی
آنازcv::CannyتابعطریقازمیتوانواستشدهپیادهسازیOpenCVتوسطمستقیماًکنیالگوریتم•.کردصمشخراآستانهحددوبایدالگوریتماینازاستفادهبرایشد،بیانقبالًکههمانگونه.نموداستفاده:استزیرصورتبهتابعاینفراخوانی
5
C++: void Canny(InputArray image, OutputArray edges, double threshold1,
double threshold2, int apertureSize=3, boolL2gradient=false )
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تابع کنی
.میکندعملسوبلعملگرپایهبرعموماًکنیعملگر•عملگرایناصلیایدهمیباشد،لبههابهمتعلقکهنقاطیتشخیصبرایپایین،وباالآستانهحددوازاستفاده•
.است.شودشاملراتصویردرموجوداصلیلبههایکهشودانتخابصورتیبهبایدپایینآستانهحد•تمامییستیباآستانهحداین.هستندمهمکانتورهایبهمتعلقکهاستلبههاییشناساییدومآستانهحدنقش•
.نمایدحذفنهایینتیجهازرامیشوندمحسوبغیرضروریکهلبههاییحدازلحاصلبههایازالگوریتماین.مینمایدتولیدلبههاازبهینهتصویرینتیجه،2اینترکیبباکنیالگوریتم•
ههایلبباراآنهاونمایندایجادرالبهازمتصلمسیریککهمیداردنگهرانقاطیآنتنهاپایینآستانه.مینمایدمتصلباال،آستانهحداعمالازحاصلشدهدادهتشخیص
6
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
مثال
.کنیممیامتحانتصویریکرویبرراکنیعملگر•
7
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تشخیص خطوط در تصاویر با استفاده از تبدیل هاف
8
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تبدیل هاف
پارامتریمعادلهیکصورتبهراآنهابتوانکههندسییاشکالتمامیتشخیصبرایهافالگوریتمحقیقتدر•.استمناسبیکاندیدای،نمودبیان
9
خطدایره
...
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
هافبا تبدیل تشخیص خطوط
:گیریممینظردرزیرفرمبهپارامتریمعادلهیکصورتبهراخطهاف،تبدیلازاستفادهبرای•𝑝 = 𝑥𝑐𝑜𝑠𝜃 + 𝑦𝑠𝑖𝑛𝜃
وخطایننبیزاویهبیانکنندهθو(چپسمتباالیگوشه)تصویرمرکزوخطبینفاصلهبیانکنندهpپارامتر•πتا0بازهدررادیانθزاویهدارایتصویردرموجودخطوطبیان،نحوهایناساسبر.میباشدافقخط
.باشدتصویرقطربابرابرمقداریحداکثردارایمیتواندpکهحالیدر.میباشند
10
𝑝
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تشخیص خطوط با تبدیل هاف
باینریویرتصدرموجودنقاطازکافیتعدادبهکهاستباینریتصویرازخطوطیتمامیافتنهاف،تبدیلهدف•کندبورعآنهاازمیتوانندکهراخطوطیتمامیتصویر،درموجودنقاطتمامیازایبهالگوریتماین.کنندعبوراندازهبهخطاینکهاستمعنااینبهکند،عبورنقاطاززیادیتعدادازخطیککهزمانیو.میکندمشخصرا
.شودگرفتهنظردرتصویردرموجودخطیکعنوانبهکهاستمهمکافیاست،دهششناساییتصویردرخطیککهدفعاتیتعدادشمارشبرایدوبعدیکنندهانباریکازهافتبدیل•
,p)پارامترهایبرایشدهمشخصجستجویبازههایاندازهاساسبرانبارهایناندازه.مینمایداستفاده θ)،.میشودتعریف
قابلمقداردارایکهراانبارهایندرمحلیبیشینهمقادیرتصویر،خطوطشناساییبرایاستالزمتنهانهایتدر•.کنیمشناساییراهستندتوجهی
11
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
هاف استانداردتشخیص خطوط با تبدیل
•OpenCVاستکردهارائههافتبدیلازاستفادهباخطتشخیصبرایپیادهسازینوعدو..استتبدیلاینبرایپایهایحالتcv::HoughLinesتابع•
برآنهازابرخیکه(هستندصفرغیرمقادیریدارایکه)نقاطیمجموعهشاملباینریاستتصویریتابعاینورودی•کنیملگرعازحاصلنتیجهمیتواندمثالبرایکهمیباشدلبههاتصویرتصویر،اینمعموالً.شدهاندترازخطیکروی.باشد
استاعشاریاعدادازتایی2مجموعهشاملالمانهرکهمیباشدcv::Vec2fالمانهایازبرداریتابعاینخروجی•,p)پارامترهایمعرفکه θ)استشدهدادهتشخیصخطوط.
•rho, thetaکنندمیتعیینانبارهدررازاویهوفاصلهرزولوشن..آورددستبهبایدشدنپذیرفتهبرایخطیککهاسترأییمقدارحداقلcv::HoughLinesتابعآخرپارامتر•
12
C++: void HoughLines(InputArray image, OutputArray lines, double rho, double theta, int threshold)فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
هاف احتماالتیتشخیص خطوط با تبدیل
اصحیحینتشخیصهایباعثمیتواندنتیجهدرکهمیگردد،خطیکدرشدهترازلبههایدنبالبههافتبدیل•سطتوهمجوارترازچندینایجاددلیلبهاینکهیاو.شودپیکسلهابرخیتصادفیشدنترازهمدلیلبه
.شوددادهتشخیصهمکناردرهمجوارخطچندینپیکسلها،نسخه،(انتهانقاطباخطوطی)تصویردرپارهخطهاتشخیصامکانهمچنینومشکالتاینازبرخیرفعبرای•
تابعتوسطOpenCVدروداردنامهافاحتمالیتبدیلتبدیل،این.استشدهارائهتبدیلاینازدیگریcv::HoughLinesPاستشدهارائه.
انتهایینقطهدومشخصکنندهآنالمانهرکهمیگرداندبرcv::Vec4iجنسازمقادیریبابرداریتابع،این•.هستنیزدادهشدهتشخیصخطپارهیک
13
C++: void HoughLinesP(InputArray image, OutputArray lines, double rho, double theta,
int threshold, double minLineLength=0, double maxLineGap=0 )
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
تشخیص خطوط با تبدیل هاف احتماالتی
.استشدهاعمالپایهالگوریتمرویبرجزئیتغییرچندهافاحتمالیتبدیلدر•کهمانیزدوماً،.میشوندانتخابتصادفیصورتبهنقاطباینری،تصویرسطربهسطرجستجویجایبهاوالً،•
پیمایشطخاینراستایدرتصویرتمامییابد،دستقبولقابلمقداربهانبارکنندهماتریسدرایههایازیکیهنشدبررسیاگرحتی)میشوندحذفبررسیروندازدارند،قرارخطاینرویبرکهنقاطیتمامیوشده.شودمشخصشده،شناساییخطانتهایوابتداتامیشودباعثهمچنینپویشاین.(باشند
ولقبقابلطولحداقلکردنمشخصبرایپارامتریکدارد؛دیگرپارامتر2تعریفبهنیازالگوریتممنظوراینبه•.خطیکنقاطبینقبولقابلفاصلهحداکثردیگریوخطپارهیکبرای
تعداداهشکخاطربهپیچیدگیاینازبخشیامامیشود،الگوریتمروندشدنپیچیدهترباعثاضافیمراحلاین•.میشودجبرانمیشوند،پردازشکهنقاطی
14
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
با تبدیل هاف دوایر تشخیص
.میباشدزیرصورتبهدایرهپارامتریمعادله•𝑟2 = 𝑥 − 𝑥0
2 + 𝑦 − 𝑦02
.باشددبعسهدارایبایدانبارکنندهمعناستاینبهکه(دایرهمرکزمختصاتوشعاع)داردپارامتر3معادلهاین•.استشدهپیادهسازیباالاستراتژیاساسبرcv::HoughCirclesتابع•
15
C++: void HoughCircles(InputArray image, OutputArray circles, int method, double dp,
double minDist, double param1=100, double param2=100, int minRadius=0, int maxRadius=0 )
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
با تبدیل هاف دوایر تشخیص
16
C++: void HoughCircles(InputArray image, OutputArray circles, int method, double dp,
double minDist, double param1=100, double param2=100, int minRadius=0, int maxRadius=0 )
•src_gray: Input image (grayscale)
•circles: A vector that stores sets of 3 values: for each detected circle.
•CV_HOUGH_GRADIENT: Define the detection method. Currently this is the only one available in OpenCV
•dp = 1: The inverse ratio of resolution
•min_dist = src_gray.rows/8: Minimum distance between detected centers
•param_1 = 200: Upper threshold for the internal Canny edge detector
•param_2 = 100*: Threshold for center detection.
•min_radius = 0: Minimum radio to be detected. If unknown, put zero as default.
•max_radius = 0: Maximum radius to be detected. If unknown, put zero as default
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
مثال
.کنیداستخراجرادوایروزیرخطوطویراتصدر•
17
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
به مجموعه ای از نقاطبرازش
18
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
برازش خط
بردار)خطمعادلهپارامترهایبهمتعلقاولمقداردوآندرکهمیگرداندبرراcv::Vec4fمقداریکتابعاین•تابعاینآخرپارامتر2.میباشدخطاینازاینقطهمختصاتبعدیمقداردووبودهآمدهدستبه(خطجهتدررهشدهذخینقاطکهداشتتوجهنکتهاینبهباید.میباشدآمدهدستبهخطدقتمیزانکردنمشخصبرای
std::vectorیکفرمبهبایستیتابعایندراستفادهبرایcv::Matشوندتبدیل.زمینهنایدرخوبمثالیککالیبراسیون)شودمیاستفادهخصوصیاتبرخیمحاسبهبرایخطمعادلهازعموماً•
.(است
19
C++: void fitLine(InputArray points, OutputArray line, int distType, double param, double reps,
double aeps) فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
برازش خط
باکهاست،یاقلیدسفاصلهمحاسبهآنهاسریعترینکهاستشدهارائهفاصلهمحاسبهبرایمتفاوتتابعچندین•CV_DIST_L2اصلهفمربعاتمجموعکمترینیافتنباخطوطانطباقپرچم،اینازاستفادهبا.میشودمشخص
.میگیردانجاموابعتازمیتواننباشند،خطبهمتعلقکهباشدداشتهوجودنقاطینقاط،مجموعهدراستممکنکهزمانی•
روشازصلهفامقدارکمینهیافتنبرای.کرداستفادهدارند،کمتریتأثیردورترنقاطآنهادرکهدیگریفاصلهM-estimatorکه)اردوزنمربعاتمجموعمقدارکمینهیافتنمسئلهتکراریروندیدرآندرکهمیشوداستفاده
.میگیردقرارحلمورد(هستندخطازنقاطفاصلهمعکوسبامتناسبوزنهاآندرازهایمجموعورودی،حالتایندر.کرداستفادهنیزبعدیسهخطوطیافتنبرایتابعاینازمیتوانهمچنین•
cv::Point3iیاوcv::Point3fیکقالبدرخروجیوبودهcv::Vec6fمیشودارائه.
20
C++: void fitLine(InputArray points, OutputArray line, int distType, double param, double reps,
double aeps) فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
برازش بیضی
cv::fitEllipseتابعازمیتوانمیشود،منطبقبعدیدونقاطازایمجموعهرویبهکهبیضییکیافتنبرای•درنظرموردبیضیکه(cv::RotatedRect)استیافتهچرخشمستطیلیتابعاینخروجی.کرداستفاده.میشودمحاطآنداخل
:مثال•
.نماییداستفادهآمدهدستبهبیضیرسمبرایمیتوانیدcv::ellipseتابعاز•
21
C++: RotatedRect fitEllipse(InputArray points) فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور اجزاء
22
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
کانتور چیست؟
پیراموناطنقتواندمیمنحنیینا.دندهمینمایشتصویردرمنحنییککهاستنقاطازلیستیکانتوریک•.باشدشیئیک
.باشندمفیدتوانندمیاشکالشناساییوشکلتحلیلدرکانتورها•
-قسمتکهایلبههایپیکسلکردنپیدابرایتواندمیcannyلبهدهندهتشخیصمثلهاییالگوریتماگرچه•یتموجوددرموردچیزیهاالگوریتمایناماگیرند،قراراستفادهموردکنند،میجداهمازراتصویرمختلفهای
.استکانتورهاشکلبهلبههایپیکسلاینکردنسرهمبعدیمرحله.گویندنمیهالبهخودبخودیآنوداردوجودکاراینانجامبرایOpenCVدرآسانتابعیکرود،میانتظارکههمانطور•
cvFindContours()است.
23
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
درخت کانتور
24
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور •OpenCVشاملتابعیبهنامcv::findContoursاستکهبهسادگیمیتواندکانتوراجرایمتصلرادرتصویر
.استخراجنماید
هایلبهراداراستیاباشد،کهپیکسل()cvCannyتواندتصویریحاصلازمیاستکهورودییکتصویرباینری•کهدرآنلبههاصراحتابهعنوانمرزنواحیمثبتومنفیباشد ()cvThresholdتصویرحاصلازتوابعیمثل
.مشخصهستند.نمایشدادهمیشودcv::Pointوخروجیآنبرداریشاملکانتورهاستکههرکانتوربابرداریازنوع••Hierarchyیکبردارخروجیاختیاریاستکهاطالعاتیدرموردتوپولوژیتصویرشاملمیشود.
واولینپرچممشخصکنندهآناستکهکانتورهایاشیاءتاچهسطح.عالوهبراینهادوپرچمبایدمشخصشود•.چگونهدردرختاستخراجشود
25
C++: void findContours(InputOutputArray image, OutputArrayOfArrays contours,
OutputArray hierarchy, int mode, int method, Point offset=Point()) فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
26
C++: void findContours(InputOutputArray image, OutputArrayOfArrays contours,
OutputArray hierarchy, int mode, int method, Point offset=Point())
,CV_RETR_EXTERNAL:هایچهارگانهزیرتنظیمشودتواندبههریکازگزینهمی modeمتغیر•
CV_RETR_LIST, CV_RETR_CCOMP, یاCV_RETR_TREE.
مخواهیخواهیمچهکانتورهاییپیداکنیموچگونهمیدهدکهدقیقامیبهتابعنشانمیmodeمقدار• ,h_prev, h_next)بهخصوص،روشیکهباآنمتغیرهایگرهدرخت.نتیجهبرایمانمایشدادهشود
v_prev, and v_next) شوند،توسطمقداربرایاتصالکانتورهایپیداشدهاستفادهمیmodeتعیین.شودمی
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
27
C++: void findContours(InputOutputArray image, OutputArrayOfArrays contours,
OutputArray hierarchy, int mode, int method, Point offset=Point())
•CV_RETR_EXTERNALکندمیبازیابیراکانتورترینخارجیتنها.•CV_RETR_LISTدهدمیقرارلیستدرراهاآنوکردهبازیابیراکانتورهاهمه.•CV_RETR_CCOMPیساماندهسطحیدومراتبسلسلهیکدرراهاآنوکردهبازیابیراکانتورهاهمه
هاحفرهمرزهایدومسطحمرزهایواجزاخارجیمرزهایسطح،باالترینمرزهایکهطوریبه.کندمی.هستند
•CV_RETR_TREEدر.دسازمیراتودرتوکانتورهایکاملمراتبسلسلهوکردهبازیابیراکانتورهاهمهکهاست،یمراتبسلسلهساختارایندرآنوضعیتکنندهمشخصکهاستالمانیشاملکانتورهرحالتاینسطحهماندرقبلیوبعدیکانتورشمارهکنندهمشخصاولعدد2.استشدهتشکیلصحیحعددچهاراز
نبیامنفیعددوجود.میباشدکانتورآنوالدوفرزنداولینشمارهکنندهمشخصبعدیعدد2واست.میباشدجهتآندرکانتورهالیستپایانکننده
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
28
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
.میشونداستخراجسادهالگوریتمیکاساسبرکانتورها•.برسدجزءیکبهکهزمانیتامیکندپویشراتصویرالگوریتماین•آنمرزیپیکسلهایبهکهزمانیتاکردهجزءآنکانتورگسترشبهشروعجزء،نقطهاینازالگوریتمسپس•
.برسدجزءادامهدیدججزءیافتنبرایراخودپویشبازمانده،نقطهآخرینازالگوریتمجزء،آنبرایکانتورتکمیلازپس•
.میدهد
29
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
30
C++: void findContours(InputOutputArray image, OutputArrayOfArrays contours,
OutputArray hierarchy, int mode, int method, Point offset=Point())
(.یعنیچگونگیتخمینکانتورها)تعلقدارد methodبهپارامترپنجمقداربعدی••CV_CHAIN_CODEهمهمتدهایدیگرخروجیچند.خروجیبهفرمکدزنجیریفریمنکانتورهای
(.ایازرئوسدنباله)ضلعیدارند•CV_CHAIN_APPROX_NONEکندنقاطراازکدزنجیریبهنقاطترجمهمیهمه.••CV_CHAIN_APPROX_SIMPLEافقی،عمودیوقطریرافشردهکردهوتنهانقاطنهاییقطعات
.مانندمیهاباقیآن•CV_CHAIN_APPROX_TC89_L1یاCV_CHAIN_APPROX_TC89_KCOSازیکی
.بردرابهکارمیTeh-Chinهایالگوریتمتخمینزنجیرویژگی•CV_LINK_RUNSها1هایافقیکهقسمت(هاکهدربااللیستشدهباآن)کامالمتفاوتالگوریتم
.استCV_RETR_LISTکند،تنهاحالتبازیابیاینروشراپیوندمی
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
فریمنایزنجیرهکد•
31
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
استخراج کانتور
32
C++: void findContours(InputOutputArray image, OutputArrayOfArrays contours,
OutputArray hierarchy, int mode, int method, Point offset=Point())
.ذخیرهمیشودhierrachyوcontoursبنابراینخروجیتابعدر••Contoursودکانتورهایتشخیصدادهشدههستندکههرکانتوربهشکلبرداریازنقاطذخیرهمیش.•Hierarchyمثالفرضکنیدبرایکانتور.مقدارراذخیرهمیکند4برایهرکانتورiام
hierarchy[i][0]کانتوربعدیدرسطحافقhierarchy[i][1]افقدرسطحقبلیکانتورhierarchy[i][2]عمودیکانتوربعدیدرسطحhierarchy[i][3]عمودیدرسطحقبلیکانتور
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
کانتور رسم
.کندرسمتصاویررویبرراکانتورهااینمیتواندکهداردوجودتابعیOpenCVدرخوشبختانه•
ابمیتوانهمچنین.شدخواهدرسمکانتورهاتمامیشود،دادهتابعاینسومپارامتربهمنفیمقداریاگر•.نمودرسمراخاصکانتورآنتنهاکانتور،یکشمارهنمودنمشخص
.شودمیپرکانتورهاداخلباشد،thickness=CV_FILLEDیامنفیمقداریکبرابرthicknessکهصورتیدر•
.شودمیاستفادهمشخصسطحتاخاصکانتورهایترسیمبرایmaxLevelوhierarchyپارامتراز•
33
void drawContours(InputOutputArray image, InputArrayOfArrays contours, int contourIdx,
const Scalar& color, int thickness=1, int lineType=8, InputArray hierarchy=noArray(),
int maxLevel=INT_MAX, Point offset=Point() )
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
مثالافکنشپساززیرباینریتصویرکنیدفرض•
چپسمتتصویررویبردستپوستهیستوگرامرادستکانتورباینریتصویرایندرباشد،آمدهبدست.کنیممیپیدا
34
راماشینیکپالکباینریتصویرکنیدفرض•راپالکارقامکانتور.آوریمبدستزیرروشبه
فرادرس.آوریدبدست
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
گرهای شکلیتوصیف
35
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
توصیف گرهای شکل
.نموداستفادهشکلیکتوصیفبرایتوانمیکانتورهااز•.گیرندقراراستفادهردوماشکالبازشناسیبرایتوانندمیگرهاتوصیف•.هستندتصویردرشیءیکمعرفهم،بهمتصلاجزایمعمولصورتبه•آنهارویبرمحاسباتیکسریانجاممعموالًتصویر،المانهایدیگرباآنهامقایسهیاواشیااینتشخیصبرای•
.میباشدمفیدآنها،خصوصیاتازبرخیآوردندستبهمنظوربه
36
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
توصیف گرهای شکل
:همچونشکلگرهایتوصیف•Bounding)کنندهمحاطجعبه– box)کانتوریک
کانتوریککنندهمحاطدایرهکوچکترین–
37
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
توصیف گرهای شکل
:همچونشکلگرهایتوصیف•Polygonalکانتورچندضلعیتقریب– approximation
محدبپوستهیاقشر–
38
فرادرس
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
توصیف گرهای شکل
:همچونشکلگرهایتوصیف•کانتوریکهایممان–
جرممرکز
39
C++: Moments moments(InputArray array, bool binaryImage=false فرادرس(
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
مثال
40
تلفمخهایکنندهتوصیفزیرپالکتصویردر• فرادرس.کنیدرسمراآمدهبدستکانتورهایرویبر
FaraDars.org
باتصویر پردازش
faradars.org/fvimg9405
41
فرادرس این اسالید ها بر مبنای نکات مطرح شده در « آموزش پردازش تصویر با »
.تهیه شده است
.نماییدلینک زیر مراجعه برای کسب اطالعات بیشتر در مورد این آموزش به
faradars.org/fvimg9405
باتصویر پردازش
faradars.org/fvimg9405
فرادرس
FaraDars.org