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

استخراج خودکار رنگ سفید در تصاویر زیر

0 امتیاز

سلام و درود بر شما.

 

من می خوام این جسم که وسط تصویر رو از تصویر جدا کنم و یه سری پردازش روش انجام بدم. رنگ پس زمنه سفید. آیا راهی وجود داره که بشه رنگ سفید مایل به حاکستری رو از تصویر پاک کرد و فقط جسم مورد نظر بمونه؟

 

با تشکر

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

2 پاسخ

0 امتیاز

سلام.

سوالات مشابه به سوال شما در سایت وجود داره مثلاً این سوال.

همانطوری هم که در جواب دوستمان گفتم به انتقال تصویر به فضای hsv یا lab به راحتی می تونید رنگ پشت زمینه را از آبجکت متمایز کنید.

یکی از راهکارهای دیگر استفاده فراوانی و تکرار رنگ ها می باشد یعنی ناحیه اولیه خود را به این ماسک مشخص کنید گام بعدی هم استفاده از روش های clustering همچون k-mean یا GMM هستش که ناحیه ماسک اولیه به انواع نقاط اولیه کلاستر صفر مشخص کنید.

توضیحات با برای مسائلی با نویز بالا هستش برای مثال شما با اعمال یک فیلتر پایین گذر بر روی تصویر و استفاده از لبه یابی همچون canny هم می تونید آبجکت خدتون را استخراج کنید.

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

سلام مجدد.

 

آقای ساتکی من برای تبدیل rgb به lab به این شکل عمل کردمه:

 colorTransform = makecform('srgb2lab');
 lab = applycform(pic, colorTransform);

 

و برای تبدیل rgb به hsv هم به این شکل:
 
pic=rgb2hsv(pic);

بنظرم hsv بهتر باشه چون پس زمینه رو بخوبی شناسایی می کنه حالا مسئله ای که هست اینه که من چطور باید این پس زمینه زمینه بیشتر یه آبی و صورتی هست میزنه رو جدا کنم؟ یا اگه بخوام بهتر بگم این شی رو چطوری باید بیرون بیارم. کیفیت بیرون کشیدنش خیلی مهمه چون قرار پردازش های زیادی روش انجام بشه.

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

و برای gmm یا  kmean نمی دونم چطوره.

لطفا راهنمایی کنید.

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