PDA

View Full Version : مبتدی: مشتق و پییدا کردن لبه های تصویر



skyzare
دوشنبه 10 مرداد 1390, 12:44 عصر
با سلام ..... http://www.eca.ir/forum2/Smileys/phpbb/icon_smile.gif

نمیدونم کجا باید سوالم رو بپرسم امیدوارم جاش درست باشه ....:ناراحت:

من میخواستم بدونم مفهوم مشتق در حوزه دیجیتال چیه ؟؟!! http://www.eca.ir/forum2/Smileys/phpbb/2.gif توی کتاب گنزالس که میخونم گفته برای پیدا کردن لبه های تصویر باید مکان هایی رو پیدا کنیم که شدت در اون جا سریع تغییر کنه که برای یافتن این مقادیر باید دو کار رو انجام بدیم مکانهایی رو پیدا کنیم که بزرگی مشتق مرتبه اول شدت از یه حدی بزرگتر باشه و مکانهایی که مشتق دوم شدت دارای تقاطع صفر باشه ...

1- حالا اصلا مشتق تو حوزه گسسته چی تعریف میشه ؟؟؟!! مثلا تو پیوسته در واقع تانژانت زاویه ای هست که خط مماس با محور x میسازه ... حالا تو گسسته چیه !!! http://www.eca.ir/forum2/Smileys/phpbb/cry2.gif

2- تقاطع صفر یعنی چی ؟؟

مصطفی ساتکی
چهارشنبه 12 مرداد 1390, 14:44 عصر
در ابتدا پست 1 (http://www.7khatcode.com/index.php?qa=1368&qa_1=sobel-operator-%D8%B4%D9%86%D8%A7%D8%B3%D8%A7%DB%8C%DB%8C-%D9%84%D8%A8%D9%87-%D8%A8%D8%A7-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-sobel&show=1368#q1368) و پست 2 (http://www.7khatcode.com/index.php?qa=1693&qa_1=%D9%86%D9%88%D8%B4%D8%AA%D9%86-%D8%A7%D9%84%DA%AF%D9%88%D8%B1%DB%8C%D8%AA%D9%85-%D9%BE%D8%B1%D8%AF%D8%A7%D8%B2%D8%B4-%D8%AA%D8%B5%D9%88%DB%8C%D8%B1-sobel&show=1693#q1693) را مطالعه کنید.
جواب اول : تو گسسته همون kernel sobel در راستای x و y و جمعشون میشه مشتق در هر دو راستا
جواب دوم . همون نقطه ماکزیماست

skyzare
چهارشنبه 12 مرداد 1390, 16:01 عصر
جواب اول : تو گسسته همون kernel sobel در راستای x و y و جمعشون میشه مشتق در هر دو راستا
جواب دوم . همون نقطه ماکزیماست

با سلام .....:لبخندساده:

با تشکر از پاسختون ....

حالا اگه من بخوام خودم به صورت دستی از یه ماتریس مشتق بگیریم باید فیلتر سوبل رو به تصویر اعمال کنم

؟؟ یعنی این فیلتر رو روی کل تصویر حرکت بدم دیگه درسته ؟؟ اگه این جوری باشه .... چه جوری باید محاسباتش رو انجام

بدم ؟؟ فکر کنم باید یه مرکز هم تایین کینم که همون پیکسل مرکزی هست ....بعد در مورد مسئله مرزهای ماتریس باید

چی کار کنم ؟؟ در کل میخوام به صورت دستی از یه تصویر مشتق بگیرم ....


73248


این هم یه تصویر از فیلتر سوبل که تو کتاب بو د همین هست دیگه ..درسته ؟؟؟

تقاطع صفر که فرمودید همون نقطه ماکزیمم هست یعنی برای ماتریس حاصل از یه تصویر فقط یه عدد هست ؟؟؟ منظورم

بیشتر نمیشه که باشه ؟؟؟؟ در کل میخوام بگم من فرضا از ماترسیم به صورت دستی مشتق گرفتم بعد تقاطع صفرهام رو

چه جوری پیدا کنم ؟؟

باز هم تشکر ....

مصطفی ساتکی
پنج شنبه 13 مرداد 1390, 12:58 عصر
حالا اگه من بخوام خودم به صورت دستی از یه ماتریس مشتق بگیریم باید فیلتر سوبل رو به تصویر اعمال کنم

؟؟ یعنی این فیلتر رو روی کل تصویر حرکت بدم دیگه درسته ؟؟ اگه این جوری باشه .... چه جوری باید محاسباتش رو انجام

بدم ؟؟ فکر کنم باید یه مرکز هم تایین کینم که همون پیکسل مرکزی هست ....بعد در مورد مسئله مرزهای ماتریس باید

چی کار کنم ؟؟ در کل میخوام به صورت دستی از یه تصویر مشتق بگیرم ....


[/RIGHT]
[/CENTER]

در هر مرحله از پیمایش تصویرlمرکز کرنل sobel رو با pixel جاری منطبق کنید و ضرایب sobel رو در Intensity مربوط مختصات متناظر در تصویر اصلی ضرب کرده و در نهایت سیگما رو بدست بیارید که به این عمل convolution گفته میشه.
پر کردن مقادیر در همه فیلتر ها از روش های padding استفاده میشه که از روش های رایج zero padding یا روش میانگین گیری می باشد.



این هم یه تصویر از فیلتر سوبل که تو کتاب بو د همین هست دیگه ..درسته ؟؟؟

[/RIGHT]
[/CENTER]
بله تصاویر موردنظر مربوط به کرنل در راستای x , y مربوط به sobel هستش




تقاطع صفر که فرمودید همون نقطه ماکزیمم هست یعنی برای ماتریس حاصل از یه تصویر فقط یه عدد هست ؟؟؟ منظورم

بیشتر نمیشه که باشه ؟؟؟؟ در کل میخوام بگم من فرضا از ماترسیم به صورت دستی مشتق گرفتم بعد تقاطع صفرهام رو

چه جوری پیدا کنم ؟؟


[/RIGHT]
[/CENTER]
zero crossing در مشتق دوم معنی پیدا می کنه یعنی نقاطیه در منحني که تقعر منحنی عوض میشه مثلاً در یک موچ سینوسی کلیه صفرها همین نقاط zero crossing و این نقاط همون نقاط لبه هستند

skyzare
پنج شنبه 13 مرداد 1390, 18:42 عصر
با سلام .....:لبخندساده:

بی نهایت سپاسگذار ....با تشکر از پاسختون ....:لبخندساده:

من هم همون مطالب شما رو با تصویر بیان میکنم و با عرض معذرت یه چند تا سوال .....

تصاویر از سایت زیر گرفته شده ....


http://www.cs.uregina.ca/Links/class-info/425/Lab3/index.html




در هر مرحله از پیمایش تصویرlمرکز کرنل sobel رو با pixel جاری منطبق کنیدhttp://dc354.4shared.com/img/kLnCv4z7/s3/imag_data.jpg




ضرایب sobel رو در Intensity مربوط مختصات متناظر در تصویر اصلی ضرب کرده و در نهایت سیگما رو بدست بیارید که به این عمل convolution گفته میشه.http://dc346.4shared.com/img/aTzqp_2P/s3/original_image.jpg



پر کردن مقادیر در همه فیلتر ها از روش های padding استفاده میشه که از روش های رایج zero padding یا روش میانگین گیری می باشد.
این مشکل مرز ها و د رتصویر بعد هم همون روش zero padding


http://dc344.4shared.com/img/SQwq4-gK/s3/boundary_prob.jpg



http://dc348.4shared.com/img/bHCnOmga/s3/pad_zero_color.jpg



تو ی کتاب گنزالس برای مشکل مرزها سه روش دیگه هم گفته :

1- replicated

symmetric-2

circular-3



مورد اول رو میدونم یعنی هر عددی که در گوشه ها باشه همون رو تکرار میکنند یه چیزی مثل شکل زیر اما اون دو مورد دیگه یعنی 2 و 3 چه جوری هست ؟؟؟

اون روش میانگیری چی هست ؟؟منظورم چه جوری هست ؟؟


http://dc392.4shared.com/img/84UEwCQ7/s3/pad_replicate_color.jpg


zero crossing در مشتق دوم معنی پیدا می کنه در در مشتق اول یعنی نقاطیه که تقعر منحنی عوض میشه مثلاً در یک موچ سینوسی کلیه صفرها همین نقاط zero crossing و این نقاط هون ناط لبه هستند
وقتی میفرمایید در مشتق دوم معنی پیدا میکنه یعنی من باید دوبار کرنل سوبل رو اعمال کنم درسته ؟؟ ولی

من هنوز نمیدونم تقاطع صفر رو بعد از اعمال دو بار کرنل چی میشه ؟؟ خوب ما با گرفتن مشتق دوم دو تا

ماتریس داریم که یکی مشتق دوم x هست یکی هم مشتق دوم y هست ...حالا تقاطع صفر چی میشه ؟؟

یعنی بزرگترین x و y مروبط به ماتریس رو به عنوان تقاطع صفر در نظر بگیرم ؟؟؟ با این حساب که تنها یک تقاطع

صفر به دست میاد .... درسته همین جوری هست ؟؟؟

باز هم تشکر ........:لبخندساده:

skyzare
جمعه 14 مرداد 1390, 10:19 صبح
با سلام ....:لبخندساده:

ببخشید من یه سوال دیگه برام پیش اومده ....الان توی کتاب گنزالس برای تشخیص لبه یه چند تا فیلتر دیگه هم

نام برد مثل فیلتر prewitt و Robert و توی توضیحش هم گفته که برای مشتق اول استفاده میشن ....حالا سوالم

اینه چه جوری هست اخه این جوری که نمیشه الان مثل اینکه 3 نوع مختلف از مشتق اول ماتریس یه تصویر وجود

داره ....منظورم این هست که خوب مشتق اول باید یه چیز باشه دیگه صد تا چیز که نمیشه !!! :لبخند:

مصطفی ساتکی
یک شنبه 16 مرداد 1390, 17:58 عصر
جواب اول : در روش replicated لبه هاي رو تكرار مي نمايد در روش symmetric به صورت آينه اي در 2 جهت تكرار مي نمايد و در روش circulrar
نسبت به مبداء موردنظر و ابعاد به صورت دايرهاي مقدار جايگزين مي گردد.
جواب دوم :منظور اينه كه در لپالسين تابع نقاط zero crossing نقاطي هستند كه لبه در آنها رخ مي ده و تو رياضيات جايي كه تعقر منحني تغيير مي كنه

جواب سوم :مشتق جهت محاسبه ميزان اختلاف مورد استفاده قرار مي گيره فيلتر هاي لبه ياب مختلف در واقع تقريب هاي مختلفي از مشتق هستند كه
sobel در حالتي كلي از ديگر فيلترهاي لبه ياب تقريبي دقيق تري رو به ما ميده.

skyzare
یک شنبه 16 مرداد 1390, 18:29 عصر
با سلام ....:لبخندساده:

با تشکر از پاسختون .....:لبخندساده:

خیلی ببخشید من کلا دوزاریم پیش از اندازه کج هست !!!! :گریه: دیر میفته !!!!!



در روش symmetric به صورت آينه اي در 2 جهت تكرار مي نمايد و در روش circulrar نسبت به مبداء موردنظر و ابعاد به صورت دايرهاي مقدار جايگزين مي گردد.1-بخشید میشه روی شکل نشون بدید من درست متوجه نشدم :گریه:....چه جوری هست ..:ناراحت::ناراحت:



منظور اينه كه در لپالسين تابع نقاط zero crossing نقاطي هستند كه لبه در آنها رخ مي ده و تو رياضيات جايي كه تعقر منحني تغيير مي كنه2-من هنوز دوزاریم نیوفتاده !!!! :گریه: خوب توی کتاب گفته لاپلاسین یعنی مشتق دوم ؛ خوب حالا من باید برای لاپلاسین دوبار فیلتر سوبل رو اعمال کنم ؟؟؟

3-این که میفرمایید zero crossing نقاطی هست که لبه رخ داده ؛ خوب مثلا من لاپلاسین ماتریس تصویر رو به دست اوردم بعد چه جوری بفهمم که کدام درایه ماتریس تصویر خروجی حاصل از لاپلاسین zero crossing هست ؟؟