تشخیص خط در پردازش تصویر - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

وبـــلاگ هــفت خــط کــد


آموزش های برنامه نویسی
۳۳ نفر آنلاین
۰ عضو و ۳۳ مهمان در سایت حاضرند

تشخیص خط در پردازش تصویر

+3 امتیاز
683 بازدید

سلام

چحوری میشه یک خط مستقیم رو توی یک تصویر پیدا کرد ؟

مثلا تو این تصویر من می خوام اون 2 تا خط سفید مربوط به جاده رو پیدا کنم

سوال شده آذر 24, 1392  بوسیله ی coders (امتیاز 49)   1 1 10
شما باید اول از لبه یابی استفاده کنید تا لبه های تصویر مشخص بشه بعد باید ببینی اون لبه رو چطور تشخیص بدی یعنی نرم افزار تشخیصش بده یک روش استفاده از شبکه عصبی هست.
سوالی که شما پرسیدی خیلی کلی هست باید بگی با چی می خوای کار کنی مثلا متلب، سی شارپ و ... تا بشه بهتر راهنمایی کرد. همین دو خطی که من نوشتم تا بری متوجه بشی کلی طول میکشه. فعلا کلمه لبه یاب رو سرچ کن (edge detection) البته اگه از قبل اطلاعات داشته باشی خوب فرق می کنه در هر حال منظورم این هست که به همین سادگی که من نوشتم نیست
 موفق باشی
به نظر من هم سوال خیلی کل هست و ارجاع ایشون برای سرچ Edge detection خودش کافیه.

1 پاسخ

+5 امتیاز
 
بهترین پاسخ
برای یافتن خطوط شما بایستی از تبدیل hough استفاده کنید تبدیل هاف بر روی کلیه نقاط تصویر اعمال می شود پس در لبتدا بایستی این نقاط مشخص شود تا حد امکان بایستی این نقاط را کاهش دهیم اولین چیزی که به ذهنمان میرسه روش های لبه یابی هستش که یکی از بهترین کاندید برای اینکار لبه یاب canny هستش.
 
hough transfrom به 2 صورت استفاده میشه در روش اول که روش هاف استاندار هستش و روش دیگر روش هاف احتمالی پیشرونده هستش.
 
 
به شکل زیر نگاه کنید هر خط را به دو پارامتر می توان نشان داد r و tehta نشان داده می شود.p فاصله خط تا مبدا مختصات هستش.
 r به صورت قطبی تعریف می شود به صورت زیر.
 
 
tehta هم زاویه خط عمود هستش.
 
حالا شما با هر 2 نقطه در صفحه یک خط تشکیل می دید و سپس این 2 پارامتر را برای هر خط استخراج کنید. سپس مجموعه این نقاط بدست آمده را بر روی یک
انباشتگر دو بعدی انباشت کنید و نقاط peak محلی را در این انباشتگر پیدا کنید و سپس هر 2 مقدار قطبی را به مقادیر کارتزین معادل تبدیل کنید.
اما در روش احتمالی خیلی نسبت به روش استاندار خیلی سریع تر هستش بجای از همه نقاط سفید استفاده شه و برای همه نقاط r و tehta محاسبه شه میانگین درصد از نقاط سفید موجود در تصویر را براش r و tehta محاسبه می کنند و سپس نقاطی که در این مجموعه نقاط peak باشن محاسبات را برای تلرانسی از r و tehta آنها انجام میدن.
پاسخ داده شده دی 2, 1392 بوسیله ی مصطفی ساتکی (امتیاز 16,267)   16 24 65
...