![]() |
نیاز:الگوریتم برای کاهش تعداد رنگهای تصویر
سلام خدمت تمام اساتید
نیاز به یه الگوریتم دارم که بتونم باهاش تعداد رنگهای موجود در یه تصویر رنگی رو کاهش بدم (یعنی در کل میخوام رنگهای تصویر رو محدود و واقعی سازی کنم مثل نرم افزار های تبدیل عکس به نقشه تابلوفرش کامپیوتری که می خوام بدونم از چه الگوریتم و روشی واسه این کار استفاده می کنن؟؟؟) مثلا عکسی که 500 نوع رنگ داره رو بازتولید کنم با 50 تا رنگ طوریکه کیفیت زیاد افت نکنه محیطی که توش کار میکنم c# هست ولی اگه الگوریتم رو در سایر محیط ها هم داشته باشین خیلی کمکم می کنه واسه پروژه پایانیم میخوام ضروریه ( هرنوع کمک شما (مثلا اسم الگوریتم و...)خیلی واسم مفیده فایده است پس لطفا کمک کنید) با تشکر |
نقل قول:
من فکر میکنم ماهیت مسئله مورد نظر شما فشرده سازی با رویکرد با اتلاف (Lossy) هستش. یکی از مناسب ترین روش ها برای این کار استفاده از Vector Quantization هستش که میتونه یک Codebook برای رنگ های شما بوجود بیاره. به طور کلی این مسائل از الگوریتم های clustering مثل K-means برای این کار استفاده میکنن. موفق باشید. |
نقل قول:
مهندس فقط اینکه من می خام اون 50 تا رنگی رو هم که مثال زدم خودم تعیین کنم تا رنگهای مشابه و نزدیک به هر کدوم از این 50 تا رنگ یه جوری (با یهالگوریتم) سریع و بهینه به این رنگهای مشخص شده(که بعنوان الگو هست ) گرد بشه و در تصویر نهایی که میخام چاپش کنم کلا 50 نوع رنگ باشه بازم دنبال همون الگوریتم clustering مثل K-means بگردم؟؟؟ تشکر |
اینا با فیلترهای متوسط گیر به راحتی انجام میشن. مشکل تعیین همون 50 رنگته. باید طوری انتخاب کنی به میانگین رنگهات نزدیک باشه
|
نقل قول:
اگه میخوای ۵۰ تا رنگ دست خودت باشه پس مشکلی نیست. در واقع این ۵۰ تا نقطه میشه مرکز خوشه ها و شما با یک فاصله مناسب مثل اقلیدسی رنگها رو به مقادیر در نظر گرفته شده گرد میکنی(Quantization). با الگوریتمی مثل K-means میتونید رنگ ها (مراکز خوشه ها) رو توسط خود الگوریتم تعیین کنید. موفق باشید. |
منم دقیقا با آقا بابک موافقم. الگوریتم kmeans یک الگوریتم خوشه بندیه. الگوریتم ساده ای هم هست و وقتی کاربرد داره که تو تعداد خوشه ها اینجا تعداد رنگها رو داری و مثلا در این مثال می خوای تصویرو به این تعداد رنگها خوشه بندی کنی. الگوریتمش هست جستجو کن kmeans algorithm in matlab
اصلا تو خود متلب تابعش هست. بازم کمک خواستی بگو. تعداد مراکز خوشه 50تاست (همون رنگها) که اول تصادفی انتخاب میشن تو بازه بین 0 تا 255 و برای سه رنگ قرمز سبز آبی یعنی فضات سه بعدیه (وکتوره) مثلا یکیش میشه (10و100و12) 50 تا مرکز خوشه داری و بعد به الگوریتم میدی اون برات برای هر پیکسل رنگهای نهاییشو تعیین می کنه که مثلا رنگهای نزدیک به قرمز و قهوه ای یه مقدار دارن و همین طور بقیه رنگها موفق باشی. |
نقل قول:
اگه 50 رنگ رو می خواهی خودت انتخاب کنی، الگوریتم خیلی ساده میشه. به این صورت که برای تک تک نقاط، فاصله از هریک از 50 رنگ رو پیدا میکنی و کمترین رو انتخاب می کنی. اما اگه 50 رنگ رو دستی بدی تصویری که درمیاد خیلی زشت میشه و شبیه تصویر اصلی نمیشه یک راه برای بهبود استفاده از الگوریتم هایی هست که از dithering ایده میگیره این لینک dithering: Dithered Images اما چیزی که شما ممکنه بخواهید استفاده کنید dithering نیست بلکه ایده ای شبیه به اونه |
زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۱۰:۱۷ قبل از ظهر ميباشد. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.