برای یافتن خطوط شما بایستی از تبدیل hough استفاده کنید تبدیل هاف بر روی کلیه نقاط تصویر اعمال می شود پس در لبتدا بایستی این نقاط مشخص شود تا حد امکان بایستی این نقاط را کاهش دهیم اولین چیزی که به ذهنمان میرسه روش های لبه یابی هستش که یکی از بهترین کاندید برای اینکار لبه یاب canny هستش.
hough transfrom به 2 صورت استفاده میشه در روش اول که روش هاف استاندار هستش و روش دیگر روش هاف احتمالی پیشرونده هستش.
به شکل زیر نگاه کنید هر خط را به دو پارامتر می توان نشان داد r و tehta نشان داده می شود.p فاصله خط تا مبدا مختصات هستش.
r به صورت قطبی تعریف می شود به صورت زیر.
tehta هم زاویه خط عمود هستش.
حالا شما با هر 2 نقطه در صفحه یک خط تشکیل می دید و سپس این 2 پارامتر را برای هر خط استخراج کنید. سپس مجموعه این نقاط بدست آمده را بر روی یک
انباشتگر دو بعدی انباشت کنید و نقاط peak محلی را در این انباشتگر پیدا کنید و سپس هر 2 مقدار قطبی را به مقادیر کارتزین معادل تبدیل کنید.
اما در روش احتمالی خیلی نسبت به روش استاندار خیلی سریع تر هستش بجای از همه نقاط سفید استفاده شه و برای همه نقاط r و tehta محاسبه شه میانگین درصد از نقاط سفید موجود در تصویر را براش r و tehta محاسبه می کنند و سپس نقاطی که در این مجموعه نقاط peak باشن محاسبات را برای تلرانسی از r و tehta آنها انجام میدن.