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

جدا کردن پس زمینه رنگی یکنواخت

0 امتیاز
سلام و درود.

 

من یه تصویر رنگی  دارم که اومدم اون تصویر رنگی رو به HSV و lab تبدیل کردن. خود تصویر این تصویر پایینی قبل از تبدیل هست:

 

این تصویر ذر مد HSV قرار داره:

 

و این یکی هم در مد lab قرار داره

 

 

حالا مسئله ای که وحود داره اینه که من می خوام این شی رو از این تصویر جدا کنم و روش یک سری پردازش انجام بدم. راه حلی که به دهنم می رسید این بود که تصویر رو با آستانه اوتسو اون رو به سیاه سفید تبدیل کنم یا اینکه با ئو حلقه for بیام پیمایش کنم و پیکسل هایی که بزرگتر از یه مقدار مشخصی باشه رو سفید کنم(پس زمینه) و این که لبه یابی کنم و... ولی با هیچ کدومشون نتونستم موفق شم.

برای جداسازی فکر کنم lab بهتر باشه.

راه حل پیشنهادی شما چیه؟ چکارش باید کنم؟

 

با تشکر
سوال شده خرداد 7, 1394  بوسیله ی Manam (امتیاز 35)   4 6 7
ویرایش شده خرداد 11, 1394 بوسیله ی Manam

1 پاسخ

0 امتیاز
 
بهترین پاسخ

سلام.

نکته 1 :دوست عزیز دیگران اگر مایل باشند جواب میدن لطفاً پست های اسپم تولید نکنید.

نکته 2 : پست هایی که جواب داده میشه را لطفاً نبندید آن پست دیگه فقط متعلق به شما نیست!!!

در ضمن در پستی که حذف کردید را جواب شما را داده بودم.

شما در ابتدا بایستی میزان نویزی که در پشت زمینه وجود داره را با یک فیلتر پائین گذر حذف کنید .بعد از آن باید ناحیه تقریبی آبجکت را مکان یابی کنید چون پیدا کردن این ناحیه اهمیت خاصی نداره پس شما می تونید با چندین بار down sample کرده و سپس با جمع کردن  ماسک هایی که از طریق  Otsu و adaptivethreshold بدست میاد سپس این ناحیه را به عنوان ناحیه اولیه الگوریتم grabcut قرار بدید ایم الگوریتم به صورت تکرار شونده هستش که با 2 بار تکرار مشکل شما حل میشه.

در ضمن ابعاد تصویر شما بسیار بزرگ هستش شما بایستی تصویر ها را با ابعاد کمتری پردازش کنید.

نتیجه خروجی grabcut در زیر نمایش داده شده:

grabcut,بخش بندی

پاسخ داده شده خرداد 8, 1394 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
ویرایش شده خرداد 8, 1394 بوسیله ی مصطفی ساتکی
...